114 lines
3.8 KiB
Plaintext
114 lines
3.8 KiB
Plaintext
IMPORT util
|
|
IMPORT os
|
|
IMPORT security
|
|
DEFINE j INT,
|
|
url_folder STRING,
|
|
tmpfile STRING
|
|
FUNCTION empleados_data(pdata)
|
|
|
|
DEFINE pdata STRING,
|
|
foto_empleado BYTE
|
|
DEFINE empleado RECORD
|
|
num_emp INT,
|
|
nombre,
|
|
puesto ,
|
|
cedula ,
|
|
alias,
|
|
departamento VARCHAR(100),
|
|
url_foto VARCHAR(255),
|
|
id string
|
|
END RECORD
|
|
DEFINE credenciales RECORD
|
|
usuario,clave,cedula VARCHAR(50)
|
|
END RECORD
|
|
DEFINE p RECORD
|
|
empleados DYNAMIC ARRAY OF RECORD
|
|
num_emp INT,
|
|
nombre,
|
|
puesto,
|
|
cedula,
|
|
alias,
|
|
departamento VARCHAR(100),
|
|
url_foto VARCHAR(255),
|
|
id string
|
|
|
|
END RECORD,
|
|
mensajes RECORD
|
|
cod_msg INT,
|
|
descripcion STRING
|
|
END RECORD
|
|
END RECORD,
|
|
selec STRING,
|
|
url_files STRING,
|
|
pdepartamento INT
|
|
|
|
CALL util.JSON.parse(pdata,credenciales)
|
|
IF STATUS < 0 THEN
|
|
LET p.mensajes.cod_msg=STATUS
|
|
LET p.mensajes.descripcion = 'ERROR EN CONEXION ',SQLCA.sqlerrm
|
|
RETURN util.JSON.stringify(p)
|
|
|
|
END IF
|
|
LET url_folder = FGL_GETENV("IMAGENES")
|
|
CONNECT TO "smarmotech" USER credenciales.usuario USING credenciales.clave
|
|
IF STATUS < 0 THEN
|
|
LET p.mensajes.cod_msg=STATUS
|
|
LET p.mensajes.descripcion = 'ERROR EN CONEXION ',SQLCA.sqlerrm
|
|
DISCONNECT CURRENT
|
|
RETURN util.JSON.stringify(p)
|
|
END IF
|
|
DISPLAY "<EMPLEADOS:>USUARIO: ",credenciales.usuario," pass ",credenciales.clave
|
|
# BUSCA EL DEPARTAMENTO EMPLEADO
|
|
SELECT a.departamento INTO pdepartamento FROM adtb00003 a WHERE a.cedula = credenciales.cedula
|
|
|
|
LET selec =
|
|
"SELECT a.num_emp,RTRIM(ISNULL(a.nom1_emp,' '))+' '+RTRIM(ISNULL(a.nom2_emp,' '))+' '+
|
|
RTRIM(ISNULL(a.apell1_emp,' '))+' '+RTRIM(ISNULL(a.apell2_emp,' ')),
|
|
RTRIM(b.nom_puesto),a.cedula,RTRIM(a.alias),RTRIM(c.nom_dpto), a.url_foto,'0',
|
|
a.foto_empleado
|
|
FROM adtb00003 a INNER JOIN adtb00004 b ON b.cod_puesto = a.cod_puesto,
|
|
adtb00001 c
|
|
where a.departamento = c.departamento and a.cedula <> '",credenciales.cedula CLIPPED,
|
|
"' and (a.status_t IS NULL OR a.status_t = 'I')
|
|
|
|
ORDER BY RTRIM(ISNULL(a.nom1_emp,' '))+' '+RTRIM(ISNULL(a.nom2_emp,' '))+' '+
|
|
RTRIM(ISNULL(a.apell1_emp,' '))+' '+RTRIM(ISNULL(a.apell2_emp,' ')) "
|
|
|
|
PREPARE comando FROM selec
|
|
DECLARE c2 CURSOR FOR comando
|
|
|
|
LET url_files = 'https://ws.marmotech.com.do/imagenessistema/nomina/'
|
|
|
|
LOCATE foto_empleado IN MEMORY
|
|
|
|
LET j = 1
|
|
FOREACH c2 INTO empleado.*,foto_empleado
|
|
|
|
IF foto_empleado IS NULL THEN
|
|
|
|
LET empleado.url_foto = url_files CLIPPED,'noimagen','.JPG'
|
|
ELSE
|
|
|
|
LET tmpfile = url_folder CLIPPED,"//",empleado.num_emp USING "&&&&&&&&",'.JPG'
|
|
|
|
LET empleado.url_foto = url_files CLIPPED,empleado.num_emp USING "&&&&&&&&",'.JPG'
|
|
IF os.Path.exists(tmpfile) THEN
|
|
|
|
ELSE
|
|
CALL foto_empleado.writeFile(tmpfile)
|
|
|
|
CALL comprimeImagen(tmpfile,' -resize 100x100 ')
|
|
END IF
|
|
END IF
|
|
LET empleado.id = j USING "<<<<"
|
|
LET p.empleados[j].* = empleado.*
|
|
LET j = j + 1
|
|
END FOREACH
|
|
DISCONNECT CURRENT
|
|
LET p.mensajes.cod_msg=200
|
|
LET p.mensajes.descripcion = 'GENERACION DATA SATISFACTORIA'
|
|
DISPLAY "NUMERO DE EMPLEADOS: ",j
|
|
RETURN util.JSON.stringify(p)
|
|
|
|
END FUNCTION
|