IMPORT util IMPORT os IMPORT security DEFINE j INT, url_folder STRING, tmpfile STRING FUNCTION respuestas(pdata) DEFINE pdata STRING, foto_empleado BYTE, cuenta_alegre,cuenta_malo int DEFINE p RECORD credenciales RECORD usuario,clave VARCHAR(50) END RECORD, repuesta RECORD num_emp INT, cedula, nombre, id_pregunta,pregunta,repuesta,departamento,fechaVence,motivo STRING, conteo int END RECORD END RECORD, mensajes RECORD cod_msg INT, descripcion STRING END RECORD, instString,selecString string CALL util.JSON.parse(pdata,p) IF STATUS < 0 THEN LET mensajes.cod_msg=STATUS LET mensajes.descripcion = 'ERROR EN CONEXION ',SQLCA.sqlerrm RETURN util.JSON.stringify(p) END IF DISPLAY "USUARIO: ",p.credenciales.usuario," pass ",p.credenciales.clave CONNECT TO "smarmotech" USER p.credenciales.usuario USING p.credenciales.clave IF STATUS < 0 THEN LET mensajes.cod_msg=STATUS LET mensajes.descripcion = 'ERROR EN CONEXION ',SQLCA.sqlerrm DISCONNECT CURRENT RETURN util.JSON.stringify(p) END IF IF p.repuesta.repuesta = "1" THEN LET selecString ="SELECT ISNULL(COUNT(*),0) FROM encuestas.dbo.respuestas a WHERE a.cedula = ? AND fechaVence = ? and a.respuesta = ?" PREPARE C_CUENTA FROM selecString EXECUTE c_cuenta INTO cuenta_malo USING p.repuesta.cedula,p.repuesta.fechaVence,P.repuesta.repuesta IF cuenta_malo =2 THEN LET mensajes.cod_msg=400 LET mensajes.descripcion = 'SOLO ES POSIBLE EVALUAR DOS COLABORADORES CON MAL SERVICIO' DISCONNECT CURRENT RETURN util.JSON.stringify(mensajes) END IF END IF IF p.repuesta.repuesta = "10" THEN LET selecString ="SELECT ISNULL(COUNT(*),0) FROM encuestas.dbo.respuestas a WHERE a.cedula = ? AND fechaVence = ? and a.respuesta = ?" PREPARE C_CUENTA1 FROM selecString EXECUTE c_cuenta1 INTO cuenta_alegre USING p.repuesta.cedula,p.repuesta.fechaVence,P.repuesta.repuesta IF cuenta_alegre =2 THEN LET mensajes.cod_msg=400 LET mensajes.descripcion = 'SOLO ES POSIBLE EVALUAR DOS COLABORADORES CON BUEN SERVICIO' DISCONNECT CURRENT RETURN util.JSON.stringify(mensajes) END IF END IF LET selecString = "SELECT DISTINCT a.fechaVence FROM encuestas.dbo.respuestas a WHERE a.cedula = ? AND fechaVence = ? AND a.num_emp = ? " DISPLAY "datos: ",p.repuesta.cedula," ",p.repuesta.fechaVence," ",p.repuesta.num_emp PREPARE existe FROM selecString EXECUTE existe USING p.repuesta.cedula,p.repuesta.fechaVence,p.repuesta.num_emp IF status = NOTFOUND THEN LET instString = "INSERT INTO encuestas.dbo.respuestas( cedula,created_at,nombre,num_emp,departamento,respuesta,pregunta, id_pregunta,fechaVence,motivo ) VALUES ( ?,GETDATE(),?,?,?,?,?,?,?,? ) " PREPARE comando FROM instString EXECUTE comando USING p.repuesta.cedula,p.repuesta.nombre,p.repuesta.num_emp,p.repuesta.departamento, p.repuesta.repuesta,p.repuesta.pregunta,p.repuesta.id_pregunta, p.repuesta.fechaVence,p.repuesta.motivo LET mensajes.descripcion = 'RESPUESTA ADICIONADA EXITOSAMENTE' ELSE LET instString = "UPDATE encuestas.dbo.respuestas SET updated_at =GETDATE(), departamento =?, respuesta =?, pregunta =?, id_pregunta =?, motivo =? WHERE cedula = ? AND fechaVence = ? AND num_emp = ? " PREPARE upcomando FROM instString EXECUTE upcomando USING p.repuesta.departamento, p.repuesta.repuesta,p.repuesta.pregunta,p.repuesta.id_pregunta, P.repuesta.motivo, P.repuesta.cedula,P.repuesta.fechaVence, P.repuesta.num_emp LET mensajes.descripcion = 'RESPUESTA ACTUALIZADA EXITOSAMENTE' END IF DISCONNECT CURRENT LET mensajes.cod_msg=200 RETURN util.JSON.stringify(mensajes) END FUNCTION