Browse Source

adicionados loggings nos apps crud e compilacao

pull/2307/head
Cesar Carvalho 7 years ago
parent
commit
e43acc8b2b
  1. 4
      sapl/audiencia/forms.py
  2. 42
      sapl/compilacao/views.py
  3. 43
      sapl/crud/base.py

4
sapl/audiencia/forms.py

@ -72,17 +72,19 @@ class AudienciaForm(forms.ModelForm):
if materia and ano_materia and tipo_materia: if materia and ano_materia and tipo_materia:
try: try:
logger.info("- Tentando obter matéria correspondente.")
materia = MateriaLegislativa.objects.get( materia = MateriaLegislativa.objects.get(
numero=materia, numero=materia,
ano=ano_materia, ano=ano_materia,
tipo=tipo_materia) tipo=tipo_materia)
except ObjectDoesNotExist: except ObjectDoesNotExist:
msg = _('A matéria %s%s/%s não existe no cadastro' msg = _('- A matéria %s%s/%s não existe no cadastro'
' de matérias legislativas.' % (tipo_materia, materia, ano_materia)) ' de matérias legislativas.' % (tipo_materia, materia, ano_materia))
logger.error('- A matéria %s%s/%s não existe no cadastro' logger.error('- A matéria %s%s/%s não existe no cadastro'
' de matérias legislativas.' % (tipo_materia, materia, ano_materia)) ' de matérias legislativas.' % (tipo_materia, materia, ano_materia))
raise ValidationError(msg) raise ValidationError(msg)
else: else:
logger.info("- Matéria obtida com sucesso.")
cleaned_data['materia'] = materia cleaned_data['materia'] = materia
else: else:

42
sapl/compilacao/views.py

@ -666,6 +666,7 @@ class NotasCreateView(NotaMixin, CreateView):
return super(NotasCreateView, self).get(request, *args, **kwargs) return super(NotasCreateView, self).get(request, *args, **kwargs)
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
logger = logging.getLogger(__name__)
self.object = None self.object = None
try: try:
ta_id = kwargs.pop('ta_id') ta_id = kwargs.pop('ta_id')
@ -683,7 +684,9 @@ class NotasCreateView(NotaMixin, CreateView):
else: else:
return self.form_invalid(form) return self.form_invalid(form)
except Exception as e: except Exception as e:
logger.error("- " + str(e))
print(e) print(e)
logger.error("- Error post.")
return HttpResponse("error post") return HttpResponse("error post")
@ -760,7 +763,7 @@ class PublicacaoMixin(CompMixin):
messages.error(request, _( messages.error(request, _(
'A funcionalidade de %s está desativada para %s.') % ( 'A funcionalidade de %s está desativada para %s.') % (
TipoTextoArticulado._meta.get_field( TipoTextoArticulado._meta.get_field(
'publicacao_func').verbose_name, 'publicacao_func').verbose_name,
ta.tipo_ta.descricao)) ta.tipo_ta.descricao))
return redirect(reverse('sapl.compilacao:ta_text', return redirect(reverse('sapl.compilacao:ta_text',
kwargs={'ta_id': self.kwargs['ta_id']})) kwargs={'ta_id': self.kwargs['ta_id']}))
@ -1518,6 +1521,7 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
return data return data
def remover_dispositivo(self, base, bloco): def remover_dispositivo(self, base, bloco):
logger = logging.getLogger(__name__)
base_ordem = base.ordem base_ordem = base.ordem
if base.dispositivo_subsequente or base.dispositivo_substituido: if base.dispositivo_subsequente or base.dispositivo_substituido:
p = base.dispositivo_substituido p = base.dispositivo_substituido
@ -1543,6 +1547,7 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
p.dispositivos_filhos_set.add(d) p.dispositivos_filhos_set.add(d)
p.save() p.save()
except Exception as e: except Exception as e:
logger.error("- " + str(e))
print(e) print(e)
base.delete() base.delete()
else: else:
@ -1577,6 +1582,8 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
dispositivo_pai=base).first() dispositivo_pai=base).first()
if not anterior: if not anterior:
logger.error("- Não é possível excluir este Dispositivo sem"
" excluir toda a sua estrutura!!!")
raise Exception( raise Exception(
_('Não é possível excluir este Dispositivo sem' _('Não é possível excluir este Dispositivo sem'
' excluir toda a sua estrutura!!!')) ' excluir toda a sua estrutura!!!'))
@ -1596,6 +1603,9 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
for candidato in parents: for candidato in parents:
if candidato == base: if candidato == base:
logger.error("- Não é possível excluir este "
"Dispositivo sem "
"excluir toda a sua estrutura!!!")
raise Exception( raise Exception(
_('Não é possível excluir este ' _('Não é possível excluir este '
'Dispositivo sem ' 'Dispositivo sem '
@ -1631,7 +1641,9 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
d.rotulo = d.rotulo_padrao() d.rotulo = d.rotulo_padrao()
break break
else: else:
logger.error("- Não é possível excluir este "
"Dispositivo sem "
"excluir toda a sua estrutura!!!")
raise Exception( raise Exception(
_('Não é possível excluir este ' _('Não é possível excluir este '
'Dispositivo sem ' 'Dispositivo sem '
@ -1677,7 +1689,8 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
profundidade=profundidade_base) profundidade=profundidade_base)
irmao.rotulo = irmao.rotulo_padrao() irmao.rotulo = irmao.rotulo_padrao()
irmao.save() irmao.save()
except: except Exception as e:
logger.error("- " + str(e))
break break
irmaos = pai_base.dispositivos_filhos_set.\ irmaos = pai_base.dispositivos_filhos_set.\
@ -1794,7 +1807,8 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
dr.rotulo = dr.rotulo_padrao() dr.rotulo = dr.rotulo_padrao()
try: try:
dr.save(clean=base != dr) dr.save(clean=base != dr)
except: except Exception as e:
logger.error("- " + str(e))
break break
# Pode não ser religavável # Pode não ser religavável
@ -1839,6 +1853,7 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
class ActionDispositivoCreateMixin(ActionsCommonsMixin): class ActionDispositivoCreateMixin(ActionsCommonsMixin):
def allowed_inserts(self, _base=None): def allowed_inserts(self, _base=None):
logger = logging.getLogger(__name__)
request = self.request request = self.request
try: try:
base = Dispositivo.objects.get( base = Dispositivo.objects.get(
@ -2092,14 +2107,15 @@ class ActionDispositivoCreateMixin(ActionsCommonsMixin):
return result return result
except Exception as e: except Exception as e:
logger.error("- " + str(e))
print(e) print(e)
return {} return {}
def json_set_dvt(self, context): def json_set_dvt(self, context):
logger = logging.getLogger(__name__)
# Dispositivo de Vigência do Texto Original e de Dpts Alterados # Dispositivo de Vigência do Texto Original e de Dpts Alterados
dvt = Dispositivo.objects.get(pk=self.kwargs['dispositivo_id']) dvt = Dispositivo.objects.get(pk=self.kwargs['dispositivo_id'])
if dvt.auto_inserido: if dvt.auto_inserido:
dvt = dvt.dispositivo_pai dvt = dvt.dispositivo_pai
@ -2140,6 +2156,8 @@ class ActionDispositivoCreateMixin(ActionsCommonsMixin):
return data return data
except: except:
data = {} data = {}
logger.error("- Ocorreu um erro na atualização do "
"Dispositivo de Vigência")
self.set_message(data, self.set_message(data,
'success', 'success',
_('Ocorreu um erro na atualização do ' _('Ocorreu um erro na atualização do '
@ -2156,6 +2174,7 @@ class ActionDispositivoCreateMixin(ActionsCommonsMixin):
def json_add_next( def json_add_next(
self, self,
context, local_add='json_add_next', create_auto_inserts=True): context, local_add='json_add_next', create_auto_inserts=True):
logger = logging.getLogger(__name__)
try: try:
dp_auto_insert = None dp_auto_insert = None
@ -2427,6 +2446,7 @@ class ActionDispositivoCreateMixin(ActionsCommonsMixin):
return data return data
except Exception as e: except Exception as e:
logger.error("- " + str(e))
print(e) print(e)
return {} return {}
@ -2586,6 +2606,7 @@ class ActionsEditMixin(ActionDragAndMoveDispositivoAlteradoMixin,
mudança, porém, após registro de alteração, a mudança de rótulo mudança, porém, após registro de alteração, a mudança de rótulo
pode ser feita no editor avançado. pode ser feita no editor avançado.
""" """
logger = logging.getLogger(__name__)
data = {} data = {}
data.update({'pk': bloco_alteracao.pk, data.update({'pk': bloco_alteracao.pk,
@ -2706,6 +2727,7 @@ class ActionsEditMixin(ActionDragAndMoveDispositivoAlteradoMixin,
_('Dispositivo de Revogação adicionado com sucesso.')) _('Dispositivo de Revogação adicionado com sucesso.'))
except Exception as e: except Exception as e:
logger.error("- " + str(e))
print(e) print(e)
data.update({'pk': ndp.pk, data.update({'pk': ndp.pk,
@ -3104,6 +3126,7 @@ class DispositivoEdicaoBasicaView(CompMixin, FormMessagesMixin, UpdateView):
return 'sapl.compilacao:dispositivo_edit' return 'sapl.compilacao:dispositivo_edit'
def run_actions(self, request): def run_actions(self, request):
logger = logging.getLogger(__name__)
if 'action' in request.GET and\ if 'action' in request.GET and\
request.GET['action'] == 'atualiza_rotulo': request.GET['action'] == 'atualiza_rotulo':
try: try:
@ -3131,6 +3154,7 @@ class DispositivoEdicaoBasicaView(CompMixin, FormMessagesMixin, UpdateView):
d.rotulo = d.rotulo_padrao() d.rotulo = d.rotulo_padrao()
except: except:
logger.error("- Ocorreu erro na atualização do rótulo.")
return True, JsonResponse({'message': str( return True, JsonResponse({'message': str(
_('Ocorreu erro na atualização do rótulo'))}, safe=False) _('Ocorreu erro na atualização do rótulo'))}, safe=False)
return True, JsonResponse({ return True, JsonResponse({
@ -3220,6 +3244,7 @@ class DispositivoDefinidorVigenciaView(CompMixin, FormMessagesMixin, FormView):
return context return context
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
logger = logging.getLogger(__name__)
self.object = get_object_or_404(Dispositivo, pk=kwargs['pk']) self.object = get_object_or_404(Dispositivo, pk=kwargs['pk'])
form = self.get_form() form = self.get_form()
@ -3232,7 +3257,8 @@ class DispositivoDefinidorVigenciaView(CompMixin, FormMessagesMixin, FormView):
d = Dispositivo.objects.get(pk=item) d = Dispositivo.objects.get(pk=item)
self.object.dispositivos_vigencias_set.add(d) self.object.dispositivos_vigencias_set.add(d)
return self.form_valid(form) return self.form_valid(form)
except: except Exception as e:
logger.error("- " + str(e))
return self.form_invalid(form) return self.form_invalid(form)
else: else:
return self.form_invalid(form) return self.form_invalid(form)
@ -3263,6 +3289,7 @@ class DispositivoEdicaoAlteracaoView(CompMixin, FormMessagesMixin, UpdateView):
kwargs={'ta_id': self.kwargs['ta_id'], 'pk': self.kwargs['pk']}) kwargs={'ta_id': self.kwargs['ta_id'], 'pk': self.kwargs['pk']})
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
logger = logging.getLogger(__name__)
self.object = get_object_or_404(Dispositivo, pk=kwargs['pk']) self.object = get_object_or_404(Dispositivo, pk=kwargs['pk'])
form = self.get_form() form = self.get_form()
@ -3270,7 +3297,8 @@ class DispositivoEdicaoAlteracaoView(CompMixin, FormMessagesMixin, UpdateView):
try: try:
with transaction.atomic(): with transaction.atomic():
return self.form_valid(form) return self.form_valid(form)
except: except Exception as e:
logger.error('- ' + str(e))
return self.form_invalid(form) return self.form_invalid(form)
else: else:
return self.form_invalid(form) return self.form_invalid(form)

43
sapl/crud/base.py

@ -113,6 +113,8 @@ class SearchMixin(models.Model):
def save(self, force_insert=False, force_update=False, using=None, def save(self, force_insert=False, force_update=False, using=None,
update_fields=None, auto_update_search=True): update_fields=None, auto_update_search=True):
logger = logging.getLogger(__name__)
if auto_update_search and hasattr(self, 'fields_search'): if auto_update_search and hasattr(self, 'fields_search'):
search = '' search = ''
for str_field in self.fields_search: for str_field in self.fields_search:
@ -120,7 +122,8 @@ class SearchMixin(models.Model):
if len(fields) == 1: if len(fields) == 1:
try: try:
search += str(getattr(self, str_field)) + ' ' search += str(getattr(self, str_field)) + ' '
except: except Exception as e:
logger.error("- " + str(e))
pass pass
else: else:
_self = self _self = self
@ -512,6 +515,7 @@ class CrudListView(PermissionRequiredContainerCrudMixin, ListView):
return context return context
def get_queryset(self): def get_queryset(self):
logger = logging.getLogger(__name__)
queryset = super().get_queryset() queryset = super().get_queryset()
# form_search_class # form_search_class
@ -556,7 +560,8 @@ class CrudListView(PermissionRequiredContainerCrudMixin, ListView):
fm = None fm = None
try: try:
fm = model._meta.get_field(fo) fm = model._meta.get_field(fo)
except: except Exception as e:
logger.error("- " + str(e))
pass pass
if fm and hasattr(fm, 'related_model')\ if fm and hasattr(fm, 'related_model')\
@ -621,11 +626,13 @@ class CrudCreateView(PermissionRequiredContainerCrudMixin,
return super(CrudCreateView, self).get_context_data(**kwargs) return super(CrudCreateView, self).get_context_data(**kwargs)
def form_valid(self, form): def form_valid(self, form):
logger = logging.getLogger(__name__)
self.object = form.instance self.object = form.instance
try: try:
self.object.owner = self.request.user self.object.owner = self.request.user
self.object.modifier = self.request.user self.object.modifier = self.request.user
except: except Exception as e:
logger.error("- " + str(e))
pass pass
if self.container_field: if self.container_field:
@ -681,6 +688,7 @@ class CrudDetailView(PermissionRequiredContainerCrudMixin,
return [self._as_row(obj) for obj in object_list] return [self._as_row(obj) for obj in object_list]
def get_headers(self): def get_headers(self):
logger = logging.getLogger(__name__)
if not self.object_list: if not self.object_list:
return [] return []
try: try:
@ -694,7 +702,8 @@ class CrudDetailView(PermissionRequiredContainerCrudMixin,
self.object, obj.model_set).model._meta.get_field( self.object, obj.model_set).model._meta.get_field(
fieldname).related_model._meta.verbose_name_plural) fieldname).related_model._meta.verbose_name_plural)
for fieldname in self.list_field_names_set] for fieldname in self.list_field_names_set]
except: except Exception as e:
logger.error("- " + str(e))
obj = self.crud if hasattr(self, 'crud') else self obj = self.crud if hasattr(self, 'crud') else self
return [getattr( return [getattr(
self.object, self.object,
@ -715,13 +724,15 @@ class CrudDetailView(PermissionRequiredContainerCrudMixin,
args=args) args=args)
def _as_row(self, obj): def _as_row(self, obj):
logger = logging.getLogger(__name__)
try: try:
return [( return [(
get_field_display(obj, name)[1], get_field_display(obj, name)[1],
self.resolve_model_set_url(ACTION_DETAIL, args=(obj.id,)) self.resolve_model_set_url(ACTION_DETAIL, args=(obj.id,))
if i == 0 else None) if i == 0 else None)
for i, name in enumerate(self.list_field_names_set)] for i, name in enumerate(self.list_field_names_set)]
except: except Exception as e:
logger.error("- " + str(e))
return [( return [(
getattr(obj, name), getattr(obj, name),
self.resolve_model_set_url(ACTION_DETAIL, args=(obj.id,)) self.resolve_model_set_url(ACTION_DETAIL, args=(obj.id,))
@ -734,9 +745,11 @@ class CrudDetailView(PermissionRequiredContainerCrudMixin,
return DetailView.get_object(self, queryset=queryset) return DetailView.get_object(self, queryset=queryset)
def get(self, request, *args, **kwargs): def get(self, request, *args, **kwargs):
logger = logging.getLogger(__name__)
try: try:
self.object = self.model.objects.get(pk=kwargs.get('pk')) self.object = self.model.objects.get(pk=kwargs.get('pk'))
except: except Exception as e:
logger.error("- " + str(e).)
raise Http404 raise Http404
obj = self.crud if hasattr(self, 'crud') else self obj = self.crud if hasattr(self, 'crud') else self
if hasattr(obj, 'model_set') and obj.model_set: if hasattr(obj, 'model_set') and obj.model_set:
@ -811,10 +824,12 @@ class CrudUpdateView(PermissionRequiredContainerCrudMixin,
permission_required = (RP_CHANGE, ) permission_required = (RP_CHANGE, )
def form_valid(self, form): def form_valid(self, form):
logger = logging.getLogger(__name__)
self.object = form.instance self.object = form.instance
try: try:
self.object.modifier = self.request.user self.object.modifier = self.request.user
except: except Exception as e:
logger.error("- " + str(e))
pass pass
return super().form_valid(form) return super().form_valid(form)
@ -851,6 +866,7 @@ class CrudDeleteView(PermissionRequiredContainerCrudMixin,
return self.list_url return self.list_url
def delete(self, request, *args, **kwargs): def delete(self, request, *args, **kwargs):
logger = logging.getLogger(__name__)
try: try:
return super(CrudDeleteView, self).delete(request, args, kwargs) return super(CrudDeleteView, self).delete(request, args, kwargs)
except models.ProtectedError as err: except models.ProtectedError as err:
@ -862,7 +878,8 @@ class CrudDeleteView(PermissionRequiredContainerCrudMixin,
i._meta.verbose_name, i i._meta.verbose_name, i
) )
error_msg += '</ul>' error_msg += '</ul>'
logger.error("Registro não pode ser removido, pois "
"é referenciado por outros registros")
messages.add_message(request, messages.add_message(request,
messages.ERROR, messages.ERROR,
error_msg) error_msg)
@ -1072,6 +1089,8 @@ class MasterDetailCrud(Crud):
return r'^(?P<pk>\d+)/%s$' % cls.model._meta.model_name return r'^(?P<pk>\d+)/%s$' % cls.model._meta.model_name
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
logger = logging.getLogger(__name__)
obj = self.crud if hasattr(self, 'crud') else self obj = self.crud if hasattr(self, 'crud') else self
context = CrudListView.get_context_data(self, **kwargs) context = CrudListView.get_context_data(self, **kwargs)
@ -1102,7 +1121,8 @@ class MasterDetailCrud(Crud):
try: try:
parent_object = parent_model.objects.get(**params) parent_object = parent_model.objects.get(**params)
except: except Exception as e:
logger.error("- " + str(e))
raise Http404() raise Http404()
context[ context[
@ -1148,6 +1168,8 @@ class MasterDetailCrud(Crud):
return form return form
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
logger = logging.getLogger(__name__)
obj = self.crud if hasattr(self, 'crud') else self obj = self.crud if hasattr(self, 'crud') else self
context = Crud.CreateView.get_context_data( context = Crud.CreateView.get_context_data(
self, **kwargs) self, **kwargs)
@ -1165,7 +1187,8 @@ class MasterDetailCrud(Crud):
try: try:
parent_object = parent_model.objects.get(**params) parent_object = parent_model.objects.get(**params)
except Exception: except Exception as e:
logger.error("- " + str(e))
raise Http404() raise Http404()
else: else:
parent_model = self.model parent_model = self.model

Loading…
Cancel
Save