Browse Source

Adiciona informações de importação no Convênio

pull/108/head
Sesostris Vieira 3 years ago
parent
commit
72ee63fc36
  1. 9
      sigi/apps/convenios/admin.py
  2. 26
      sigi/apps/convenios/migrations/0016_auto_20210909_0732.py
  3. 29
      sigi/apps/convenios/models.py
  4. 5
      sigi/apps/convenios/views.py

9
sigi/apps/convenios/admin.py

@ -58,11 +58,14 @@ class ConvenioAdmin(BaseModelAdmin):
{'fields': ('servico_gestao', 'servidor_gestao',)} {'fields': ('servico_gestao', 'servidor_gestao',)}
), ),
(_(u'Datas'), (_(u'Datas'),
{'fields': ('data_retorno_assinatura', 'data_termino_vigencia', {'fields': ('data_retorno_assinatura', 'data_termino_vigencia',
'data_pub_diario',)} 'data_pub_diario',)}
), ),
(_(u'Gescon'),
{'fields': ('atualizacao_gescon', 'observacao_gescon',)}
),
) )
readonly_fields = ('data_sigi',) readonly_fields = ('data_sigi', 'atualizacao_gescon', 'observacao_gescon',)
actions = ['adicionar_convenios'] actions = ['adicionar_convenios']
inlines = (AnexosInline,) inlines = (AnexosInline,)
list_display = ('num_convenio', 'casa_legislativa', 'get_uf', list_display = ('num_convenio', 'casa_legislativa', 'get_uf',

26
sigi/apps/convenios/migrations/0016_auto_20210909_0732.py

@ -0,0 +1,26 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
class Migration(migrations.Migration):
dependencies = [
('convenios', '0015_remove_convenio_search_text'),
]
operations = [
migrations.AddField(
model_name='convenio',
name='atualizacao_gescon',
field=models.DateTimeField(null=True, verbose_name='Data de atualiza\xe7\xe3o pelo Gescon', blank=True),
preserve_default=True,
),
migrations.AddField(
model_name='convenio',
name='observacao_gescon',
field=models.TextField(verbose_name='Observa\xe7\xf5es da atualiza\xe7\xe3o do Gescon', blank=True),
preserve_default=True,
),
]

29
sigi/apps/convenios/models.py

@ -181,6 +181,15 @@ class Convenio(models.Model):
) )
conveniada = models.BooleanField(default=False) conveniada = models.BooleanField(default=False)
equipada = models.BooleanField(default=False) equipada = models.BooleanField(default=False)
atualizacao_gescon = models.DateTimeField(
_(u"Data de atualização pelo Gescon"),
blank=True,
null=True
)
observacao_gescon = models.TextField(
_(u"Observações da atualização do Gescon"),
blank=True
)
def get_status(self): def get_status(self):
if self.status and self.status.cancela: if self.status and self.status.cancela:
@ -628,13 +637,18 @@ class Gescon(models.Model):
observacao=contrato['objeto'], observacao=contrato['objeto'],
data_retorno_assinatura=contrato['inicioVigencia'], data_retorno_assinatura=contrato['inicioVigencia'],
data_termino_vigencia=contrato['terminoVigencia'], data_termino_vigencia=contrato['terminoVigencia'],
data_pub_diario=contrato['publicacao'] data_pub_diario=contrato['publicacao'],
atualizacao_gescon=datetime.now(),
observacao_gescon=_(u"Importado integralmente do"
u"Gescon")
) )
convenio.save() convenio.save()
novos += 1 novos += 1
continue continue
elif chk == 1: elif chk == 1:
convenio = convenios.get() convenio = convenios.get()
convenio.atualizacao_gescon = datetime.now()
convenio.observacao_gescon = ''
if convenio.casa_legislativa != orgao: if convenio.casa_legislativa != orgao:
self.add_message( self.add_message(
_(u"\tO órgao no convênio {url} diverge do que " _(u"\tO órgao no convênio {url} diverge do que "
@ -647,6 +661,10 @@ class Gescon(models.Model):
nome=contrato['nomeFornecedor'] nome=contrato['nomeFornecedor']
) )
) )
convenio.observacao_gescon = _(
u'ERRO: Órgão diverge do Gescon. Não atualizado!'
)
convenio.save()
erros += 1 erros += 1
continue continue
@ -666,6 +684,9 @@ class Gescon(models.Model):
) )
) )
convenio.num_processo_sf = sigad convenio.num_processo_sf = sigad
convenio.observacao_gescon += _(
u"Número do SIGAD atualizado.\n"
)
alertas += 1 alertas += 1
if convenio.num_convenio != numero: if convenio.num_convenio != numero:
@ -685,10 +706,16 @@ class Gescon(models.Model):
) )
) )
convenio.num_convenio = numero convenio.num_convenio = numero
convenio.observacao_gescon += _(
u"Número do convênio atualizado.\n"
)
alertas += 1 alertas += 1
if contrato['objeto'] not in convenio.observacao: if contrato['objeto'] not in convenio.observacao:
convenio.observacao += "\n" + contrato['objeto'] convenio.observacao += "\n" + contrato['objeto']
convenio.observacao_gescon += _(
u"Observação atualizada.\n"
)
convenio.data_sigad = contrato['assinatura'] convenio.data_sigad = contrato['assinatura']
convenio.data_retorno_assinatura = contrato[ convenio.data_retorno_assinatura = contrato[

5
sigi/apps/convenios/views.py

@ -2,6 +2,7 @@
import csv import csv
import datetime import datetime
from django.http.response import HttpResponseForbidden
import ho.pisa as pisa import ho.pisa as pisa
from django.conf import settings from django.conf import settings
from django.core.paginator import Paginator, InvalidPage, EmptyPage from django.core.paginator import Paginator, InvalidPage, EmptyPage
@ -373,7 +374,11 @@ def export_csv(request):
return response return response
@login_required
def importar_gescon(request): def importar_gescon(request):
if not request.user.is_superuser:
return HttpResponseForbidden()
action = request.GET.get('action', "") action = request.GET.get('action', "")
gescon = Gescon.load() gescon = Gescon.load()

Loading…
Cancel
Save