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

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):