Browse Source

fix: ajuste expediente materia e ordemdia para salvar tramitacao nula

pull/3596/head
joao 2 years ago
parent
commit
cc85c2624f
  1. 16
      sapl/sessao/forms.py
  2. 2
      sapl/templates/sessao/expedientemateria_form.html

16
sapl/sessao/forms.py

@ -368,8 +368,6 @@ class ExpedienteMateriaForm(ModelForm):
if not self.is_valid(): if not self.is_valid():
return cleaned_data return cleaned_data
sessao = self.instance.sessao_plenaria
try: try:
materia = MateriaLegislativa.objects.get( materia = MateriaLegislativa.objects.get(
numero=self.cleaned_data['numero_materia'], numero=self.cleaned_data['numero_materia'],
@ -383,28 +381,26 @@ class ExpedienteMateriaForm(ModelForm):
cleaned_data['materia'] = materia cleaned_data['materia'] = materia
try: try:
id_t = self.cleaned_data['tramitacao_select'] if self.cleaned_data['tramitacao_select'] != '' else -1 if materia.tramitacao_set.exists() and self.cleaned_data['tramitacao_select']:
tramitacao = materia.tramitacao_set.get( tramitacao = materia.tramitacao_set.get(
pk=self.cleaned_data['tramitacao_select'] if self.cleaned_data['tramitacao_select'] != '' else -1) pk=self.cleaned_data['tramitacao_select'])
cleaned_data['tramitacao'] = tramitacao
except ObjectDoesNotExist: except ObjectDoesNotExist:
if self.cleaned_data['tramitacao_select'] != '':
raise ValidationError( raise ValidationError(
_('Tramitação selecionada não existe para a Matéria: %(value)s'), _('Tramitação selecionada não existe para a Matéria: %(value)s'),
code='invalid', code='invalid',
params={'value': self.cleaned_data['tramitacao_select']}, params={'value': self.cleaned_data['tramitacao_select']},
) )
else:
cleaned_data['tramitacao'] = False
else:
cleaned_data['tramitacao'] = tramitacao
return cleaned_data return cleaned_data
def save(self, commit=False): def save(self, commit=False):
expediente = super(ExpedienteMateriaForm, self).save(commit) expediente = super(ExpedienteMateriaForm, self).save(commit)
expediente.materia = self.cleaned_data['materia'] expediente.materia = self.cleaned_data['materia']
if self.cleaned_data['tramitacao'] is not False: if 'tramitacao' in self.cleaned_data and self.cleaned_data['tramitacao']:
expediente.tramitacao = self.cleaned_data['tramitacao'] expediente.tramitacao = self.cleaned_data['tramitacao']
else:
expediente.tramitacao = None
expediente.save() expediente.save()
return expediente return expediente

2
sapl/templates/sessao/expedientemateria_form.html

@ -67,7 +67,7 @@
if (status == 'success') { if (status == 'success') {
$('#id_tramitacao_select').off('change') $('#id_tramitacao_select').off('change')
$('#id_tramitacao_select').find('option').remove() $('#id_tramitacao_select').find('option').remove()
$('#id_tramitacao_select').append('<option value="-1">Selecione uma opção..</option>'); $('#id_tramitacao_select').append('<option value="">Selecione uma opção..</option>');
for (const property in data) { for (const property in data) {
console.log(tramitacao_salvo + "===" + property) console.log(tramitacao_salvo + "===" + property)
const option = $(`<option value="${property}">${data[property].data_tramitacao} - ${data[property].status}</option>`) const option = $(`<option value="${property}">${data[property].data_tramitacao} - ${data[property].status}</option>`)

Loading…
Cancel
Save