gems-uff / sapos

SAPOS main goal is to ease the management of information related to graduate programs such as enrollments, courses, advisement, scholarships, requirements, among others.
http://gems-uff.github.io/sapos/
MIT License
28 stars 14 forks source link

Erro na tela de visualização de matrículas devido a consulta em conclusão de etapas. #266

Closed Carlos-Eduardo-Cabral-da-Cunha closed 6 years ago

Carlos-Eduardo-Cabral-da-Cunha commented 6 years ago

Ocorre um erro na tela visualização de matrículas de doutorado quando utilizado um banco de dados da Civil, semelhante ao erro abaixo:

Erro:

NoMethodError (undefined method `duration' for nil:NilClass):

app/models/phase.rb:36:in total_duration' app/models/phase_completion.rb:40:incalculate_due_date' app/models/phase_completion.rb:33:in `init'

O erro acontece durante a busca dos dados que alimentam a caixa de conclusão de etapas presente na tela de visualização.

Carlos-Eduardo-Cabral-da-Cunha commented 6 years ago

Antes de exibir as datas de validade das conclusões de etapa na tela de visualização de matrícula, a tela tenta atualizar a validade (due_date) de cada etapa com base na duração dessas etapas. Se a etapa não tiver duração definida, o valor da validade não é atualizado, e o valor já existente é exibido. Porém se a etapa tiver uma duração definida para nível qualquer (mesmo não sendo o mesmo da matrícula), ele tenta recalcular a validade, o que causa o erro se o nível não estiver definido para o mesmo nível da matrícula.

Foi acrescentada uma verificação de nível para evitar que ele tente recalcular a validade caso essa não esteja definida.