[[sigaa:graduacao:documentacao_tecnica:aba_ddp| << Voltar]] echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Listar / Alterar Componente Curricular ====== Esse caso de uso é usado para busca e alteração dos dados de um [[desenvolvimento:especificacoes:sigaa:graduacao:casos_de_uso:ddp:componentes_curriculares:cadastrar|Componente Curricular]] já existente. É utilizado pelos administradores do DAE e do CDP. ===== Descrição do Caso de Uso ===== Este caso de uso inicia-se quando o usuário acessa a opção SIGAA -> Graduação -> DDP -> Componentes Curriculares -> Listar/Alterar. Primeiramente é feita uma busca com os seguintes parâmetros: * **Código**: Tipo - TEXTO e NUMÉRICO. * **Nome**: Tipo - TEXTO. * **Tipo**: Tipo - TEXTO. * **Modalidade**:Tipo - TEXTO. Com as Opções:''DISTANCIAL, PRESENCIAL. '' * **Unidade Responsável**: Tipo - TEXTO. É possível escolher mais de um parâmetro para uma busca mais refinada. Com o resultado da busca serão listados os seguinte dados: * **Código**: Deve ser ser composto de três letras e quatro algarismos * **Nome**: Nome do componente curricular * **CH Total**: Carga Horária Total * **Tipo**: Define o componente curricular como disciplina, atividade, módulo, bloco, ou atividade especial coletiva * **Mod. Educação**: Modalidade da educação, presencial ou distancial. * **Ativo**: Define se está ativo ou não Exibidos em formato de tabela de acordo com o modelo abaixo: ^ Código ^ Nome ^ Carga Horária Total ^ Tipo^Mod. Educação ^ Ativo | | XXX9999 | NOME DA DISCIPLINA | 99 | TIPO | PRESENCIAL ou DISTANCIAL|SIM ou NÃO | | ------ | ------ | ------ | ------ | ------ | ------ | Onde em cada registro, existe a possibilidade de: * [[desenvolvimento:especificacoes:sigaa:graduacao:casos_de_uso:ddp:componentes_curriculares:alterar_componente_curricular|Alterar Dados do Componente]] * [[.::remover_componente_curricular|Remover Componente Curricular]] * [[.::visualizar_componente_curricular|Detalhar Componente Curricular ]] * [[.::program_atual_componente_curricular|Programa Atual do Componente ]] ===== Principais Regras de Negócio ===== * **RN01** - Administrador DAE poder mudar tipo de componente, quando o componente não tiver sido oferecido em turmas. * **RN02** - Caso existam turmas criadas ou alguma matrícula de discente de/em um componente curricular, nenhum dado relativo à Carga Horária pode ser alterado. ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sigaa.ensino.dominio.ComponenteCurricular | sigaa.ensino.componente_curricular | ====== Plano de Teste ====== Sistema: SIGAA Módulo: Graduação Link(s): Graduação -> DDP -> Componentes Curriculares -> Listar/Alterar Usuário: adelardo (ADMINISTRADOR_DAE), vanessa (ADMINISTRADOR_DAE), jufrn(CDP) Papel que usuário deve ter: SigaaPapeis.ADMINISTRADOR_DAE ou SigaaPapeis.CDP ===== Cenários de Teste ===== Selecionar um componente curricular do tipo atividade sem alunos matriculados para o mesmo, em seguida realizar a alteração deste, modificando o valor da carga horária para valores superiores e inferiores, no qual não deve haver impedimento deste processo pela validação de existência de alunos matriculados no componente. ===== Dados para o Teste ===== Pode-se utilizar a seguinte consulta para retornar a quantidade de alunos com matrícula no componente curricular informado através do seu código. select count(mc.id_matricula_componente) from ensino.matricula_componente mc inner join ensino.componente_curricular cc ON cc.id_disciplina = mc.id_componente_curricular where cc.codigo = 'CCS0810' -- Código do componente curricular and mc.id_situacao_matricula not in (3,10,11) -- (CANCELADO, EXCLUIDA, INDEFERIDA) Consulta para retornar componentes curriculares que não possuem alunos com matrículas. select c.codigo from ensino.componente_curricular c where c.id_tipo_componente = 1 and c.nivel = 'G' and c.ativo = trueValue() and not exists ( select mc.id_matricula_componente from ensino.matricula_componente mc inner join ensino.componente_curricular cc ON cc.id_disciplina = mc.id_componente_curricular where cc.id_disciplina = c.id_disciplina and mc.id_situacao_matricula not in (3,10,11) ) limit 100