From 139bcfb59d6bbf1a71d5916f5cea32bbcfb610fa Mon Sep 17 00:00:00 2001 From: Marcus Date: Thu, 16 Feb 2023 12:24:27 -0300 Subject: [PATCH] Teste Cron --- controle/cron.py | 28 ++++++++++++++++++++++++++++ controle/crons/cron.py | 28 ---------------------------- 2 files changed, 28 insertions(+), 28 deletions(-) create mode 100644 controle/cron.py delete mode 100644 controle/crons/cron.py diff --git a/controle/cron.py b/controle/cron.py new file mode 100644 index 0000000..b3ebdb2 --- /dev/null +++ b/controle/cron.py @@ -0,0 +1,28 @@ +from datetime import datetime + +from django.contrib.admin.models import LogEntry, ContentType, CHANGE +# from django.contrib.contenttypes.models import ContentType +from controle.models import Boleto, Cliente +from django.db.models import Count + + +def my_cron_job(): + print('my cron job is working!') + + +def check_boletos_vencidos_cron_job(): + boletos = Boleto.objects.filter(situacao='A', data_vencimento__lt=datetime.today( + ).date()).values('cliente_id').annotate(ccount=Count('cliente')).order_by() + for boleto in boletos: + cliente = Cliente.objects.get(pk=boleto['cliente_id']) + cliente.situacao = 'A' + cliente.save() + LogEntry.objects.log_action( + user_id=1, + content_type_id=ContentType.objects.get_for_model( + cliente, False).pk, + object_id=cliente.pk, + object_repr=str(cliente), + action_flag=CHANGE, + change_message='Situação atualizada para ATRASADO pelo cronjob.' + ) diff --git a/controle/crons/cron.py b/controle/crons/cron.py deleted file mode 100644 index b3ebdb2..0000000 --- a/controle/crons/cron.py +++ /dev/null @@ -1,28 +0,0 @@ -from datetime import datetime - -from django.contrib.admin.models import LogEntry, ContentType, CHANGE -# from django.contrib.contenttypes.models import ContentType -from controle.models import Boleto, Cliente -from django.db.models import Count - - -def my_cron_job(): - print('my cron job is working!') - - -def check_boletos_vencidos_cron_job(): - boletos = Boleto.objects.filter(situacao='A', data_vencimento__lt=datetime.today( - ).date()).values('cliente_id').annotate(ccount=Count('cliente')).order_by() - for boleto in boletos: - cliente = Cliente.objects.get(pk=boleto['cliente_id']) - cliente.situacao = 'A' - cliente.save() - LogEntry.objects.log_action( - user_id=1, - content_type_id=ContentType.objects.get_for_model( - cliente, False).pk, - object_id=cliente.pk, - object_repr=str(cliente), - action_flag=CHANGE, - change_message='Situação atualizada para ATRASADO pelo cronjob.' - )