Advertisement
LovelessIsma

Your love

Dec 6th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 5.94 KB | None | 0 0
  1. DROP TABLE IF EXISTS td_notificacion;
  2.  
  3. CREATE TABLE `td_notificacion` (
  4.   `td_idnotificacion` int(11) NOT NULL AUTO_INCREMENT,
  5.   `td_tipo_notificacion` varchar(20) DEFAULT NULL,
  6.   `td_accion_notificacion` varchar(20) DEFAULT NULL,
  7.   `td_idusuario_destino` int(11) DEFAULT NULL,
  8.   `td_idusuario_origen` int(11) DEFAULT NULL,
  9.   `td_imagen` varchar(200) DEFAULT NULL,
  10.   `td_titulo` varchar(150) DEFAULT NULL,
  11.   `td_content` varchar(200) DEFAULT NULL,
  12.   `td_urlredirect` varchar(200) DEFAULT NULL,
  13.   `td_metadata` TEXT DEFAULT NULL,
  14.   `Activo` tinyint(1) DEFAULT NULL,
  15.   `IdUsuarioReg` int(11) NOT NULL,
  16.   `FechaReg` datetime NOT NULL,
  17.   `IdUsuarioAct` int(11) NOT NULL,
  18.   `FechaAct` datetime NOT NULL,
  19.   PRIMARY KEY (`td_idnotificacion`)
  20. ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
  21.  
  22. DROP PROCEDURE IF EXISTS `pa_notificacion_listar`;
  23. DELIMITER //
  24. CREATE PROCEDURE `pa_notificacion_listar`(
  25. IN `tipo` VARCHAR(10),
  26. IN `idusuario` INT(11)
  27. )
  28. BEGIN
  29.     IF tipo = '1' THEN
  30.         SELECT `td_idnotificacion` AS id, `td_tipo_notificacion` AS typeNotification, `td_idusuario_origen` AS idusuario_origen, `td_imagen` AS image, `td_titulo` AS title, `td_content` AS content, `td_urlredirect` AS urlredirect, `td_metadata` AS metadata
  31.          FROM td_notificacion WHERE td_idusuario_destino = idusuario AND Activo = 1
  32.          ORDER BY FechaReg DESC LIMIT 5;
  33.     ELSEIF tipo = '2' THEN
  34.         SELECT `td_idnotificacion` AS id, `td_tipo_notificacion` AS typeNotification, `td_idusuario_origen` AS idusuario_origen, `td_imagen` AS image, `td_titulo` AS title, `td_content` AS content, `td_urlredirect` AS urlredirect, `td_metadata` AS metadata
  35.          FROM td_notificacion WHERE td_idusuario_destino = idusuario AND Activo = 1;
  36.     END IF;
  37. END//
  38. DELIMITER ;
  39.  
  40. DROP PROCEDURE IF EXISTS `pa_notificacion_register`;
  41. DELIMITER //
  42. CREATE PROCEDURE `pa_notificacion_register`(
  43.     IN tipo_notificacion VARCHAR(20),
  44.     IN accion_notificacion VARCHAR(20),
  45.     IN idusuario_destino INT,
  46.     IN idusuario_origen INT,
  47.     IN imagen VARCHAR(200),
  48.     IN titulo VARCHAR(150),
  49.     IN content varchar(200),
  50.     IN urlredirect varchar(200),
  51.     IN metadata TEXT,
  52.     IN `idusuario` INT(11),
  53.     OUT `rpta` INT(11), OUT `titulomsje` VARCHAR(200), OUT `contenidomsje` VARCHAR(200)
  54. )
  55. BEGIN
  56.     INSERT INTO td_notificacion (td_tipo_notificacion, td_accion_notificacion, td_idusuario_destino, td_idusuario_origen, td_imagen, td_titulo, td_content, td_urlredirect, td_metadata, Activo, IdUsuarioReg, FechaReg , IdUsuarioAct, FechaAct)
  57.     VALUES (tipo_notificacion, accion_notificacion, idusuario_destino, idusuario_origen, imagen, titulo, content, urlredirect, metadata, 1, idusuario, NOW(), idusuario, NOW());
  58.    
  59.     SELECT LAST_INSERT_ID() into rpta;
  60.     SELECT 'Registrado correctamente' INTO titulomsje;
  61.     SELECT 'La operación se realizo con éxito' INTO contenidomsje;
  62. END//
  63. DELIMITER ;
  64.  
  65.  
  66. DROP PROCEDURE IF EXISTS sp_detailAnnouncement_state_change;
  67. DELIMITER //
  68. CREATE PROCEDURE sp_detailAnnouncement_state_change
  69. (
  70.     IN detailAnnouncementId INT,
  71.     IN state VARCHAR(2),
  72.     IN userId INT,
  73.     OUT rpta INT
  74. )
  75. BEGIN
  76.     UPDATE td_requerimiento SET ta_estado_facilitador = state, IdUsuarioAct = userId, FechaAct = NOW() WHERE td_idrequerimiento = detailAnnouncementId;
  77.     SET rpta = detailAnnouncementId;
  78. END//
  79. DELIMITER ;
  80.  
  81.  
  82.  
  83. DROP PROCEDURE IF EXISTS pa_contacted_list;
  84. DELIMITER //
  85. CREATE PROCEDURE pa_contacted_list
  86. (
  87.     IN tipo VARCHAR(10),
  88.     IN _tipousuario VARCHAR(2),
  89.     IN employerId INT,
  90.     IN pagina INT
  91. )
  92. BEGIN
  93.     DECLARE firstLimit INT(11) DEFAULT 42;
  94.     DECLARE vstart INT(11) DEFAULT 0;
  95.  
  96.     set vstart = (pagina * firstLimit) - firstLimit;
  97.    
  98.     SELECT
  99.                 dr.td_idrequerimiento,
  100.                 a.tm_idusuario,
  101.                 a.tm_login as descripcion,
  102.                 a.tm_nombres, a.tm_apellidos,
  103.                 a.tm_foto,
  104.                 a.tm_email,
  105.                 a.tm_telefono,
  106.                 a.tm_nrodocumento,
  107.                 YEAR(CURRENT_TIMESTAMP) - YEAR(a.tm_nacimiento) - (RIGHT(CURRENT_TIMESTAMP, 5) < RIGHT(a.tm_nacimiento, 5)) as edad,
  108.                 a.ta_estado_usuario,
  109.                 b.tm_nombre AS actividad,
  110.                 COALESCE(vp.ta_tipo_negociacion, '03') AS ta_tipo_negociacion,
  111.                 COALESCE(vp.TipoNegociacion, 'Ninguna') AS TipoNegociacion,
  112.                 CASE COALESCE(vp.ta_tipo_negociacion, '03') WHEN '01' THEN
  113.                     CASE WHEN _tipousuario IN ('01','02') THEN COALESCE(vp.td_preciomax, 0) ELSE COALESCE(vp.td_preciomin, 0) END
  114.                 ELSE
  115.                     COALESCE(vp.td_precio, 0)
  116.                 END AS precio_fijo,
  117.                 r.tm_idrequerimiento,
  118.                 er.ta_codigo AS codigo_estado_requerimiento,
  119.                 er.ta_denominacion AS text_estado_requerimiento,
  120.                 er.ta_colorleyenda AS color_estado_requerimiento,
  121.                 vp.td_precio,
  122.                 vp.td_preciomin,
  123.                 vp.td_preciomax,
  124.                 a.FechaReg,
  125.                 COALESCE(pais.tp_nombre, 'Sin país') AS pais,
  126.                 COALESCE(pais.tp_icono, 'no-set') AS bandera_pais,
  127.                 COALESCE(ubi.tp_nombre, 'Sin ciudad') AS ciudad
  128.             FROM tm_usuario AS a
  129.                 INNER JOIN tm_actividad AS b ON a.tm_idactividad = b.tm_idactividad
  130.                 LEFT JOIN tp_pais AS pais ON a.tp_idpais = pais.tp_idpais
  131.                 LEFT JOIN tp_ubigeo AS ubi ON a.tp_idubigeo = ubi.tp_idubigeo
  132.                 LEFT JOIN (
  133.                     SELECT vprecio.tm_idusuario,
  134.                         vprecio.ta_tipo_negociacion,
  135.                         tn.ta_denominacion AS TipoNegociacion,
  136.                         vprecio.td_precio,
  137.                         vprecio.td_preciomin,
  138.                         vprecio.td_preciomax
  139.                     FROM td_vigencia_precio AS vprecio
  140.                         INNER JOIN ta_tabla AS tn ON vprecio.ta_tipo_negociacion = tn.ta_codigo AND tn.ta_campo = 'ta_tipo_negociacion'
  141.                     WHERE NOW() BETWEEN vprecio.td_fechainicio AND vprecio.td_fechafin AND vprecio.Activo = 1
  142.                 ) AS vp ON a.tm_idusuario = vp.tm_idusuario
  143.                 INNER JOIN td_requerimiento AS dr ON a.tm_idusuario = dr.tm_idusuariofacilitador
  144.                 INNER JOIN tm_requerimiento AS r ON r.tm_idrequerimiento = dr.tm_idrequerimiento
  145.                 INNER JOIN ta_tabla AS er ON dr.ta_estado_facilitador = er.ta_codigo AND er.ta_campo = 'ta_estado_facilitador'
  146.             WHERE a.ta_interfazusuario = '01' AND r.tm_idusuario = employerId
  147.             AND a.tm_login <> ''
  148.             ORDER BY dr.FechaReg DESC
  149.                      LIMIT vstart, firstLimit;
  150. END//
  151. DELIMITER ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement