コード例 #1
0
 def listar_proyectos_x_parametro(self, request):
     parametro = request.GET.get('parametro')
     qs = None
     search_fields = ['id_proyecto', 'nombre']
     if search_fields:
         qs = query_varios_campos(self.queryset, search_fields, parametro)
     qs = qs.filter(cotizacion__isnull=True)
     serializer = self.get_serializer(qs, many=True)
     return Response(serializer.data)
コード例 #2
0
 def listar_cotizaciones_x_parametro(self, request):
     self.queryset = self.queryset.using('read_only')
     parametro = request.GET.get('parametro')
     qs = None
     search_fields = ['nro_cotizacion', 'unidad_negocio', 'estado']
     if search_fields:
         qs = query_varios_campos(self.queryset, search_fields, parametro)
     self.serializer_class = CotizacionSerializer
     serializer = self.get_serializer(qs, many=True)
     return Response(serializer.data)
コード例 #3
0
 def listar_x_parametro_activos(self, request):
     parametro = request.GET.get('parametro')
     search_fields = ['nombre_catalogo', 'referencia_catalogo']
     qs = query_varios_campos(
         self.queryset.using('read_only'), search_fields, parametro).filter(
             Q(activo=True)
             & ((Q(unidades_disponibles__gt=0) & Q(origen='SIS_INF'))
                | ~Q(origen='SIS_INF')))
     serializer = self.get_serializer(qs, many=True)
     return Response(serializer.data)
コード例 #4
0
 def listar_x_parametro(self, request):
     parametro = request.GET.get('parametro')
     search_fields = [
         'nombre_catalogo', 'referencia_catalogo',
         'margen__proveedor__nombre'
     ]
     qs = query_varios_campos(self.queryset.using('read_only'),
                              search_fields, parametro)
     serializer = self.get_serializer(qs, many=True)
     return Response(serializer.data)
コード例 #5
0
    def listar_x_origen(self, request):
        origen = request.GET.get('origen')
        parametro = request.GET.get('parametro', None)
        con_costos_mayores_sistema_informacion = request.GET.get(
            'con_costos_mayores_sistema_informacion', False)
        search_fields = [
            'nombre_catalogo', 'referencia_catalogo',
            'margen__proveedor__nombre'
        ]
        qs = self.queryset
        if parametro and parametro.upper() != 'TODO':
            qs = query_varios_campos(self.queryset.using('read_only'),
                                     search_fields, parametro)
        # if con_costos_mayores_sistema_informacion:
        #qs = qs.filter(item_sistema_informacion__isnull=False)
        qs = qs.filter(origen=origen)

        serializer = self.get_serializer(qs, many=True)
        return Response(serializer.data)
コード例 #6
0
    def listar_items_x_parametro(self, request):
        parametro = request.GET.get('parametro')
        tipo_parametro = int(request.GET.get('tipo_parametro'))
        search_fields = None
        qs = None

        if (tipo_parametro == 2 and parametro.isnumeric()):
            qs = self.queryset.filter(id_item=int(parametro))

        if (tipo_parametro == 1 and len(parametro) >= 3):
            search_fields = [
                'descripcion', 'nombre_tercero', 'descripcion_dos'
            ]

        if (tipo_parametro == 3 and len(parametro) >= 3):
            search_fields = ['=id_referencia']

        if search_fields:
            qs = query_varios_campos(self.queryset, search_fields, parametro)
        serializer = self.get_serializer(qs, many=True)
        return Response(serializer.data)