예제 #1
0
def centro(request, planta, centro):
    
    tcn = Trabajador.objects.filter(centroNegocios__codigo = centro)
#    s = FlatJsonSerializer()
    contenidos = []
    punto=None
    for tr in tcn:
        if tr.gps_id:
#        t = Trabajador.objects.get(id=trabajador) #Trabajadores con el id solicitado
            dev = Devices.objects.get(id=tr.gps_id) #Dispositivo correspondiente al trabajador
            punto = Positions.objects.get(id = dev.positionid)
        auxiliar=Posicionestrabajador()    
        auxiliar.lat=punto.lat    
        auxiliar.lon=punto.lon
        auxiliar.address=punto.address
        auxiliar.fixtime=punto.fixtime    
    
        auxiliar.nombre=tr.primer_nombre
        auxiliar.apellidop=tr.apellidop
        auxiliar.apellidom=tr.apellidom
        auxiliar.fecha_nac=tr.fecha_nac
        #auxiliar.estudios=t.estudios
        auxiliar.rut=tr.rut
        auxiliar.nivel_riesgo=tr.nivel_riesgo
        auxiliar.direccion=tr.direccion
        #auxiliar.centroNegocios=t.centroNegocios
        #auxiliar.gps=t.gps
        contenidos.append(auxiliar)
#    data = s.serialize(contenidos)
    #data = GeoJSONSerializer().serialize(contenidos, use_natural_keys=True, with_modelname=False)

#    return HttpResponse(data)#, content_type='application/json')
    return JsonResponse(contenidos, safe=False)
예제 #2
0
def centro(request, planta, centro):

    tcn = Trabajador.objects.filter(centroNegocios__codigo = centro)
#    s = FlatJsonSerializer()
    contenidos = []
    punto=None
    for tr in tcn:
        if tr.gps_id:
#        t = Trabajador.objects.get(id=trabajador) #Trabajadores con el id solicitado
            dev = Devices.objects.get(id=tr.gps_id) #Dispositivo correspondiente al trabajador
            punto = Positions.objects.get(id = dev.positionid)
        auxiliar=Posicionestrabajador()
        auxiliar.lat=punto.lat
        auxiliar.lon=punto.lon
        auxiliar.address=punto.address
        auxiliar.fixtime=punto.fixtime

        auxiliar.nombre=tr.primer_nombre
        auxiliar.apellidop=tr.apellidop
        auxiliar.apellidom=tr.apellidom
        auxiliar.fecha_nac=tr.fecha_nac
        #auxiliar.estudios=t.estudios
        auxiliar.rut=tr.rut
        auxiliar.nivel_riesgo=tr.nivel_riesgo
        auxiliar.direccion=tr.direccion
        #auxiliar.centroNegocios=t.centroNegocios
        #auxiliar.gps=t.gps
        contenidos.append(auxiliar)
#    data = s.serialize(contenidos)
    #data = GeoJSONSerializer().serialize(contenidos, use_natural_keys=True, with_modelname=False)

#    return HttpResponse(data)#, content_type='application/json')
    return JsonResponse(contenidos, safe=False)
예제 #3
0
def riesgotrabajador(request, planta, nro):
    #Posiciones de trabajadores con mayor riesgo
    #    s = FlatJsonSerializer()
    pl = Planta.objects.get(nombre=planta)
    empresa = Empresa.objects.get(planta=pl)
    trabs = Trabajador.objects.filter(empresa=empresa)
    tr = trabs.order_by('-nivel_riesgo')[:nro]
    contenidos = []

    for t in tr:
        dev = Devices.objects.get(
            id=t.gps_id)  #Dispositivo correspondiente al trabajador
        punto = Positions.objects.get(
            id=dev.positionid)  #Grupo de puntos relacionados a un trabajador
        if (punto):
            if (pl.geom.contains(punto.geom)):
                auxiliar = Posicionestrabajador()
                auxiliar.lat = punto.lat
                auxiliar.lon = punto.lon
                auxiliar.address = punto.address
                auxiliar.fixtime = punto.fixtime
                auxiliar.fono = t.fono
                auxiliar.nombre = t.primer_nombre
                auxiliar.apellidop = t.apellidop
                auxiliar.apellidom = t.apellidom
                auxiliar.fecha_nac = t.fecha_nac
                #auxiliar.estudios=t.estudios
                auxiliar.rut = t.rut
                auxiliar.nivel_riesgo = t.nivel_riesgo
                auxiliar.direccion = t.direccion
                #auxiliar.centroNegocios=t.centroNegocios
                #auxiliar.gps=t.gps
                contenidos.append(auxiliar)

#    data = s.serialize(contenidos)
#data = GeoJSONSerializer().serialize(contenidos, use_natural_keys=True, with_modelname=False)
#    return HttpResponse(data)
    return JsonResponse(contenidos, safe=True)
예제 #4
0
def riesgotrabajador(request, planta, nro):
#Posiciones de trabajadores con mayor riesgo
#    s = FlatJsonSerializer()
    pl = Planta.objects.get(nombre = planta)
    empresa= Empresa.objects.get(planta=pl)
    trabs=Trabajador.objects.filter(empresa=empresa)
    tr = trabs.order_by('-nivel_riesgo')[:nro]
    contenidos = []
    
    for t in tr:
        dev = Devices.objects.get(id=t.gps_id) #Dispositivo correspondiente al trabajador
        punto = Positions.objects.get(id = dev.positionid) #Grupo de puntos relacionados a un trabajador
        if(punto):              
            if(pl.geom.contains(punto.geom)):
                auxiliar=Posicionestrabajador()
                auxiliar.lat=punto.lat    
                auxiliar.lon=punto.lon
                auxiliar.address=punto.address
                auxiliar.fixtime=punto.fixtime    
                auxiliar.fono=t.fono
                auxiliar.nombre=t.primer_nombre
                auxiliar.apellidop=t.apellidop
                auxiliar.apellidom=t.apellidom
                auxiliar.fecha_nac=t.fecha_nac
                #auxiliar.estudios=t.estudios
                auxiliar.rut=t.rut
                auxiliar.nivel_riesgo=t.nivel_riesgo
                auxiliar.direccion=t.direccion
                #auxiliar.centroNegocios=t.centroNegocios
                #auxiliar.gps=t.gps
                contenidos.append(auxiliar)                                    
    
#    data = s.serialize(contenidos)
    #data = GeoJSONSerializer().serialize(contenidos, use_natural_keys=True, with_modelname=False)
#    return HttpResponse(data)
    return JsonResponse(contenidos,safe=True)