Import Timbres Admin Class

This commit is contained in:
rexcom28
2023-06-16 09:18:59 -06:00
parent fe82dbc029
commit 9e6416fecb
9 changed files with 48 additions and 767 deletions

3
.gitignore vendored
View File

@@ -7,7 +7,8 @@ db.sqlite3
media
# Backup files #
*.bak
*.bak
*.sql
# If you are using PyCharm #
# User-specific stuff

View File

@@ -35,6 +35,7 @@ INSTALLED_APPS = [
'allauth.socialaccount',
'widget_tweaks',
'import_export',
'Clientes',
'IMMEX',

View File

@@ -35,6 +35,7 @@ INSTALLED_APPS = [
'allauth.socialaccount',
'widget_tweaks',
'import_export',
'Clientes',
'IMMEX',

View File

@@ -1,18 +1,53 @@
from django.contrib import admin
from .models import Timbres, saldoModel, Clientes,ErroresTimbres
from import_export import resources,fields
from import_export.admin import ImportMixin
from datetime import datetime
from import_export import resources, fields
from datetime import datetime
from django.core.exceptions import ValidationError
class TimbresCSV(resources.ModelResource):
created_at = fields.Field(column_name='created_at', attribute='created_at')
class Meta:
model = Timbres
fields = ['uuid', 'rfcc', 'rfcp', 'fecha', 'folio', 'serie', 'tipo', 'created_at', 'modo']
import_id_fields = ('uuid',)
use_bulk = True
def clean_created_at(self, value):
try:
# Convertir el valor de 'created_at' a un objeto datetime
return datetime.strptime(value, '%Y-%m-%d %H:%M:%S')
except ValueError:
raise ValidationError("Formato de fecha incorrecto")
def save_instance(self, instance, is_create, using_transactions=True, dry_run=False):
created_at = instance.created_at
# super().after_save_instance(instance, using_transactions, dry_run)
# self.before_save_instance(instance, using_transactions, dry_run)
if is_create:
instance.save()
instance.created_at =created_at
instance.save()
class TimbresAdmin(admin.ModelAdmin):
list_display=['uuid','rfcc','rfcp','fecha','folio','serie','tipo','modo','created_at']
@admin.register(Timbres)
class TimbresAdmin(ImportMixin, admin.ModelAdmin):
list_display=['uuid', 'rfcc', 'rfcp', 'fecha', 'folio', 'serie', 'tipo', 'modo', 'created_at']
resource_class = TimbresCSV
list_filter=['modo','tipo']
search_fields =('uuid',)
search_fields = ('uuid',)
class ClientesAdmin(admin.ModelAdmin):
list_display= ['RFC','Nombre','Activo','fecha_baja']
list_filter =['RFC','Activo']
admin.site.register(Timbres,TimbresAdmin)
#admin.site.register(Timbres,TimbresAdmin)
admin.site.register(saldoModel)
admin.site.register(Clientes,ClientesAdmin)
admin.site.register(ErroresTimbres)

View File

@@ -21,6 +21,7 @@ class Timbres(models.Model):
modo = models.CharField(max_length=10,blank=True, null =True)
class Meta:
ordering = ('-created_at',)
class ErroresTimbres(models.Model):

View File

@@ -127,7 +127,7 @@ class RegistroUsuarios(APIView):
return Response({'access':True, 'message': f'Registro exitoso, te enviamos un correo electronico "{user.email}" favor confirme su correo. '})
else:
return Response({'access':False, 'message': 'Error de validación', 'errors': serializer.errors})
return Response({'access':False, 'message': 'Error de validación', 'Error': serializer.errors})
except Exception as E:
return Response({'Error':f'Error al registro con datos del usuario {E}', 'isError':True, 'access':False})

View File

@@ -1,5 +1,5 @@
from django.contrib import admin
from .models import Sistema, sistemas_por_cliente, Device,DeviceHistory, BitacoraErrores
from .models import Sistema, sistemas_por_cliente, Device,DeviceHistory, BitacoraErrores
class BitacoraErroresAdmin(admin.ModelAdmin):
list_display = ['level', 'message','timestamp']

File diff suppressed because one or more lines are too long

View File

@@ -22,4 +22,5 @@ requests-oauthlib==1.3.1
sqlparse==0.4.3
tzdata==2022.6
urllib3==1.26.13
python-dotenv
python-dotenv
django-import-export