# encoding:utf-8 from rest_framework import serializers from bienes.models import * from django.contrib.auth.models import User, Group from django.conf import settings from rest_framework.serializers import ModelSerializer, SerializerMethodField # import requests # class MostrarPersona(serializers.ModelSerializer): # # class Meta: # model = Persona # fields = ('id','nombre','apellidopaterno','apellidomaterno') class MostrarOficio(serializers.ModelSerializer): persona_entrega = serializers.SerializerMethodField('get_data_persona') def get_data_persona(self, obj): return obj.persona_entrega autoridad = serializers.SerializerMethodField('get_data_autoridad') def get_data_autoridad(self, obj): return obj.autoridad class Meta: model = Oficios # fields = ('id','fecha','numero_averiguacion') class MostrarBienes(serializers.ModelSerializer): oficio = MostrarOficio() calidad_bien = serializers.SerializerMethodField('get_data_calidad') autoridad = serializers.SerializerMethodField('get_data_autoridad') numero_averiguacion = serializers.SerializerMethodField('get_data_averiguacion') def get_data_averiguacion(self, obj): return obj.oficio.numero_averiguacion numero_oficio = serializers.SerializerMethodField('get_data_oficio') def get_data_oficio(self, obj): return obj.oficio.numero_oficio def get_data_calidad(self, obj): return obj.calidad_bien.calidad_bien def get_data_persona(self, obj): return obj.oficio.persona_entrega.nombre tipo_bien = serializers.SerializerMethodField('get_data_tipo') def get_data_tipo(self, obj): return obj.tipo_bien.tipo_bien class Meta: model = Bienes fields = ('id', 'calidad_bien', 'tipo_bien', 'oficio', 'descripcion', 'situacion_juridica', 'observaciones', 'fecha_devolucion', 'no_inventario') class MostrarRecepcion(serializers.ModelSerializer): oficio = MostrarOficio() numero_averiguacion = serializers.SerializerMethodField('get_data_numero') def get_data_numero(self, obj): return obj.oficio.numero_averiguacion class Meta: model = Recepcion # fields = ('numero_acta','fecha','hora') class MostrarDevolucion(serializers.ModelSerializer): recepcion = serializers.SerializerMethodField('get_data_recepcion') bien = serializers.SerializerMethodField('get_data_bien') numero_averiguacion = serializers.SerializerMethodField('get_data_numero') def get_data_recepcion(self, obj): return obj.recepcion def get_data_numero(self, obj): return obj.recepcion.oficio.numero_averiguacion def get_data_bien(self, obj): return obj.bien class Meta: model = Devolucion # fields = ('numero_acta','fechahora') class MostrarPersona(serializers.ModelSerializer): nombrecompleto = serializers.SerializerMethodField('get_data_nombrecompleto') def get_data_nombrecompleto(self, obj): return str(obj.nombre.encode('utf-8') + ' ' + obj.apellidopaterno.encode('utf-8') + ' ' + obj.apellidomaterno.encode('utf-8')) dependencia = serializers.SerializerMethodField('get_data_dependencia') def get_data_dependencia(self, obj): return obj.dependencia.autoridad class Meta: model = Persona # fields = ('nombre') class MostrarDirecciones(serializers.ModelSerializer): tipo_bien = serializers.SerializerMethodField('get_data_tipo_bien') def get_data_tipo_bien(self, obj): return str(obj.tipo_bien) class Meta: model = Enlace class GroupSerializer(serializers.ModelSerializer): class Meta: model = Group fields = ('id','name') class MostrarUsuario(ModelSerializer): groups = GroupSerializer(many=True) class Meta: model = User fields = ('id','username','first_name','last_name', 'is_active', 'groups') class HistorialBienesSerialize(serializers.ModelSerializer): nombre_usuario = serializers.SerializerMethodField('get_nombre_usuario') descripcion = serializers.SerializerMethodField('get_descripcion') def get_nombre_usuario(self, obj): usuario = User.objects.get(pk=obj.usuario_id) return usuario.username def get_descripcion(self, obj): return obj.get_descripcion_display() class Meta: model = HistoricoBienes fields = ('id', 'fecha_registro', 'nombre_usuario', 'descripcion',) class MostrarDirector(serializers.ModelSerializer): nombrecompleto = serializers.SerializerMethodField('get_data_nombrecompleto') def get_data_nombrecompleto(self,obj): return str(obj.nombre.encode('utf-8')+' '+ obj.apellidopaterno.encode('utf-8')+' ' + obj.apellidomaterno.encode('utf-8')) estatus = serializers.SerializerMethodField('get_data_estatus') def get_data_estatus(self, obj): texto = obj.estatus valor = None if texto == True: valor = "Activo" else: valor = "Inactivo" return valor class Meta: model = Director