|
|
|
@ -1279,137 +1279,6 @@ class ListarProtocolosDuplicadosView(PermissionRequiredMixin, ListView): |
|
|
|
return context |
|
|
|
|
|
|
|
|
|
|
|
class ListarInconsistenciasView(PermissionRequiredMixin, ListView): |
|
|
|
model = get_user_model() |
|
|
|
template_name = 'base/lista_inconsistencias.html' |
|
|
|
context_object_name = 'tabela_inconsistencias' |
|
|
|
permission_required = ('base.list_appconfig',) |
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
tabela = [] |
|
|
|
tabela.append( |
|
|
|
('protocolos_duplicados', |
|
|
|
'Protocolos duplicados', |
|
|
|
len(protocolos_duplicados())) |
|
|
|
) |
|
|
|
tabela.append( |
|
|
|
('protocolos_com_materias', |
|
|
|
'Protocolos que excedem o limite de matérias vinculadas', |
|
|
|
len(protocolos_com_materias())) |
|
|
|
) |
|
|
|
tabela.append( |
|
|
|
('materias_com_protocolo_inexistente', |
|
|
|
'Matérias Legislativas com protocolo inexistente', |
|
|
|
len(materias_com_protocolo_inexistente()) |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
return tabela |
|
|
|
|
|
|
|
|
|
|
|
def materias_com_protocolo_inexistente(): |
|
|
|
materias = [] |
|
|
|
for materia in MateriaLegislativa.objects.all().order_by('-ano'): |
|
|
|
if materia.numero_protocolo: |
|
|
|
exists = Protocolo.objects.filter( |
|
|
|
ano=materia.ano, numero=materia.numero_protocolo).exists() |
|
|
|
if not exists: |
|
|
|
materias.append( |
|
|
|
(materia, materia.ano, materia.numero_protocolo)) |
|
|
|
return materias |
|
|
|
|
|
|
|
|
|
|
|
class ListarMateriasCProtocoloInexistenteV(PermissionRequiredMixin, ListView): |
|
|
|
model = get_user_model() |
|
|
|
template_name = 'base/materias_com_protocolo_inexistente.html' |
|
|
|
context_object_name = 'materias_com_protocolo_inexistente' |
|
|
|
permission_required = ('base.list_appconfig',) |
|
|
|
paginate_by = 10 |
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
return materias_com_protocolo_inexistente() |
|
|
|
|
|
|
|
def get_context_data(self, **kwargs): |
|
|
|
context = super( |
|
|
|
ListarProtocolosComMateriasView, self).get_context_data(**kwargs) |
|
|
|
paginator = context['paginator'] |
|
|
|
page_obj = context['page_obj'] |
|
|
|
context['page_range'] = make_pagination( |
|
|
|
page_obj.number, paginator.num_pages) |
|
|
|
context[ |
|
|
|
'NO_ENTRIES_MSG' |
|
|
|
] = '--.' |
|
|
|
return context |
|
|
|
|
|
|
|
|
|
|
|
def protocolos_com_materias(): |
|
|
|
protocolos = [] |
|
|
|
for protocolo in Protocolo.objects.all(): |
|
|
|
materias_protocolo = MateriaLegislativa.objects.filter( |
|
|
|
ano=protocolo.ano, numero_protocolo=protocolo.numero) |
|
|
|
if len(materias_protocolo) > 1: |
|
|
|
protocolos.append((protocolo, len(materias_protocolo))) |
|
|
|
return protocolos |
|
|
|
|
|
|
|
|
|
|
|
class ListarProtocolosComMateriasView(PermissionRequiredMixin, ListView): |
|
|
|
model = get_user_model() |
|
|
|
template_name = 'base/protocolos_com_materias.html' |
|
|
|
context_object_name = 'protocolos_com_materias' |
|
|
|
permission_required = ('base.list_appconfig',) |
|
|
|
paginate_by = 10 |
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
return protocolos_com_materias() |
|
|
|
|
|
|
|
def get_context_data(self, **kwargs): |
|
|
|
context = super( |
|
|
|
ListarProtocolosComMateriasView, self).get_context_data(**kwargs) |
|
|
|
paginator = context['paginator'] |
|
|
|
page_obj = context['page_obj'] |
|
|
|
context['page_range'] = make_pagination( |
|
|
|
page_obj.number, paginator.num_pages) |
|
|
|
context[ |
|
|
|
'NO_ENTRIES_MSG' |
|
|
|
] = '--.' |
|
|
|
return context |
|
|
|
|
|
|
|
|
|
|
|
def protocolos_duplicados(): |
|
|
|
protocolos = {} |
|
|
|
for p in Protocolo.objects.all(): |
|
|
|
key = "{}/{}".format(p.numero, p.ano) |
|
|
|
val = protocolos.get(key, list()) |
|
|
|
val.append(p) |
|
|
|
protocolos[key] = val |
|
|
|
|
|
|
|
lista_duplicados = [v for (k, v) in protocolos.items() if len(v) > 1] |
|
|
|
return [(v[0], len(v)) for v in lista_duplicados] |
|
|
|
|
|
|
|
|
|
|
|
class ListarProtocolosDuplicadosView(PermissionRequiredMixin, ListView): |
|
|
|
model = get_user_model() |
|
|
|
template_name = 'base/protocolos_duplicados.html' |
|
|
|
context_object_name = 'protocolos_duplicados' |
|
|
|
permission_required = ('base.list_appconfig',) |
|
|
|
paginate_by = 10 |
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
return protocolos_duplicados() |
|
|
|
|
|
|
|
def get_context_data(self, **kwargs): |
|
|
|
context = super( |
|
|
|
ListarProtocolosDuplicadosView, self).get_context_data(**kwargs) |
|
|
|
paginator = context['paginator'] |
|
|
|
page_obj = context['page_obj'] |
|
|
|
context['page_range'] = make_pagination( |
|
|
|
page_obj.number, paginator.num_pages) |
|
|
|
context[ |
|
|
|
'NO_ENTRIES_MSG' |
|
|
|
] = 'Nenhum protocolo duplicado cadastrado no sistema.' |
|
|
|
return context |
|
|
|
|
|
|
|
|
|
|
|
class ListarUsuarioView(PermissionRequiredMixin, ListView): |
|
|
|
model = get_user_model() |
|
|
|
template_name = 'auth/user_list.html' |
|
|
|
|