diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js index 57c953b70..88faeebac 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js @@ -36,6 +36,10 @@ var Proyectos = { PropuestaNormativa: { Codigo: 1, Descripcion: "Propuesta Normativa" }, Foro: { Codigo: 2, Descripcion: "Foro" } }; +var Comentarios = { + Foro: { Codigo: 1, Descripcion: "Comentario Foro" }, + Matriz: { codigo: 2, Descripcion: "Comentario Matriz" } +}; // //#region MOMENT CONFIGURATION (DATE AND TIME CONFIGURATION) diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/PropuestaNormativa/DetallePropuestaNormativa.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/PropuestaNormativa/DetallePropuestaNormativa.js index f11e2882c..3cbab6e74 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/PropuestaNormativa/DetallePropuestaNormativa.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/PropuestaNormativa/DetallePropuestaNormativa.js @@ -1,11 +1,20 @@ var IDPropuesta; +var IDTipoProyecto; var model = {}; var EsRespuesta = false; var IDComentario = 0; +var EsForo = false; jQuery(document).ready(function () { + $('#tableParticipantes').TableInit(0, false, true, true, false, null, null); + $('#tableParticipantes').DataTable().column(1).visible(false); + $('#tableDocAuxiliares').TableInit(0, false, false, false, false, null, null); + + $("#tabs").tabs(); + IDPropuesta = ObtenerParametros().propuesta; + IDTipoProyecto = ObtenerParametros().tipo; if (IsNullOrEmpty(IDPropuesta)) { alert("No ha seleccionado una propuesta"); @@ -13,7 +22,17 @@ jQuery(document).ready(function () { return; } + if (IsNullOrEmpty(IDTipoProyecto)) { + alert("No se ha encontrado el tipo de propuesta"); + $("#formDetallePropuesta").FormReadOnly(); + return; + } + $("#formDetallePropuesta").EnableValidationToolTip(); + IDTipoProyecto = ROT47(IDTipoProyecto.toString()); + + EsForo = (IDTipoProyecto == Proyectos.Foro.Codigo); + model.ProyectoNormativo = { IdProyectoNormativo: ROT47(IDPropuesta.toString()) }; @@ -24,12 +43,6 @@ jQuery(document).ready(function () { this.getDataModel = function () { - $('#tableParticipantes').TableInit(0, false, true, true, false, null, null); - $('#tableParticipantes').DataTable().column(1).visible(false); - $('#tableDocAuxiliares').TableInit(0, false, false, false, false, null, null); - - $("#tabs").tabs(); - $("#btnBuscarUsuario").unbind("click"); $("#btnBuscarUsuario").click(function () { BuscarUsuario(); @@ -53,6 +66,19 @@ this.getDataModel = function () { GuardarComentario(); }); + $("#btnAgregarElemento").unbind("click"); + $("#btnAgregarElemento").click(function () { + $("#divRespuestaMatriz").empty(); + $("#lblComentarioMatriz").text("Comentario"); + EsRespuesta = false; + $('#modalElemento').modal('show'); + }); + + $("#btnGuardarComentarioMatriz").unbind("click"); + $("#btnGuardarComentarioMatriz").click(function () { + GuardarComentarioMatriz(); + }); + Datepicker("#txtFechaInicio"); $("#txtNombreProyecto").readOnly(); $("#txtPromotorProyecto").readOnly(); @@ -124,6 +150,16 @@ this.CargarFormulario = function (data) { CargarConvocados(); CargarForo(); + if (EsForo) { + $("#txtEmisor").css("display", "none"); + $("#txtAplicacion").css("display", "none"); + $("#divMatriz").css("display", "none"); + $("#divMatrizCambios").css("display", "none"); + $("#divComentarios").css("height", "450px"); + } else + CargarMatriz(); + + ENDREQUEST(); } @@ -177,11 +213,15 @@ this.CargarConvocados = function () { this.CargarForo = function () { $("#divComentarios").empty(); - $.each(model.ProyectoNormativo.ComentariosProyecto, function (key, item) { + var listaComentarios = $.grep(model.ProyectoNormativo.ComentariosProyecto, function (data) { + return data.IdTipoComentario == Comentarios.Foro.Codigo; + }); + + $.each(listaComentarios, function (key, item) { var comentario = $("#ucForo").html(); - var respuestas = $.grep(model.ProyectoNormativo.ComentariosProyecto, function (data) { + var respuestas = $.grep(listaComentarios, function (data) { return data.Respuesta == item.IdComentarioProyecto; }); @@ -250,7 +290,9 @@ this.GuardarComentario = function () { IdProyectoNormativo: model.ProyectoNormativo.IdProyectoNormativo, Asunto: $("#txtAsunto").val(), Comentario: $("#txtComentario").val(), - Respuesta: EsRespuesta ? IDComentario : null + Respuesta: EsRespuesta ? IDComentario : null, + IdTipoComentario: Comentarios.Foro.Codigo, + DescTipoComentario: Comentarios.Foro.Descripcion } AjaxPostData(uri, model, false, true, ComentarioGuardado, null, null); @@ -327,6 +369,110 @@ this.VisualizarRespuestas = function (IdComentario) { $('#modalRespuestasComentario').modal('show'); } +//MATRIZ +this.CargarMatriz = function () { + + $("#divMatrizCambios").empty(); + var listaComentarios = $.grep(model.ProyectoNormativo.ComentariosProyecto, function (data) { + return data.IdTipoComentario == Comentarios.Matriz.Codigo; + }); + + $.each(listaComentarios, function (key, item) { + + var comentario = $("#ucMatriz").html(); + + var respuestas = $.grep(listaComentarios, function (data) { + return data.Respuesta == item.IdComentarioProyecto; + }); + + comentario = replaceAll("[$IdComentario]", item.IdComentarioProyecto, comentario); + comentario = replaceAll("[$Usuario]", item.UsuarioSistema, comentario); + comentario = replaceAll("[$Asunto]", item.Asunto, comentario); + comentario = replaceAll("[$Comentario]", item.Comentario, comentario); + comentario = replaceAll("[$Fecha]", DateFormat(item.FechaCreacion), comentario); + comentario = replaceAll("[$Respuestas]", respuestas.length, comentario); + + $("#divMatrizCambios").append(comentario); + + }); +} + +this.GuardarComentarioMatriz = function () { + + if (!$("#formElemento").valid()) { + toastr.warning("Ingresar todos los campos que son requeridos."); + return false; + } + + if (!confirm("Va a ingresar un nuevo elemento. ¿Desea continuar?")) return; + + var uri = SinortWCF + '/api/GuardarComentarioProyectoNormativo'; + + model.Comentario = { + IdProyectoNormativo: model.ProyectoNormativo.IdProyectoNormativo, + Asunto: $("#txtAsuntoMatriz").val(), + Capitulo: $("#txtCapituloMatriz").val(), + Apartadado: $("#txtApartadoMatriz").val(), + TextoOriginal: $("#txtTextoOriginal").val(), + TextoPropuesto: $("#txtTextoPropuesto").val(), + Comentario: $("#txtComentarioMatriz").val(), + Respuesta: EsRespuesta ? IDComentario : null, + IdTipoComentario: Comentarios.Matriz.Codigo, + DescTipoComentario: Comentarios.Matriz.Descripcion + } + + AjaxPostData(uri, model, false, true, ComentarioMatrizGuardado, null, null); + +} + +this.ComentarioMatrizGuardado = function (data) { + + if (data.CodigoRespuesta == "EXITOSO") { + model = data; + } + + $("#txtAsuntoMatriz").val(''); + $("#txtComentarioMatriz").val(''); + $("#txtCapituloMatriz").val(''); + $("#txtApartadoMatriz").val(''); + $("#txtTextoOriginal").val(''); + $("#txtTextoPropuesto").val(''); + $("#txtComentarioMatriz").val(''); + + $('#modalElemento').modal('hide'); + + CargarMatriz(); + ENDREQUEST(); +} + +this.ResponderComentarioMatriz = function (IdComentario) { + + EsRespuesta = true; + IDComentario = IdComentario; + + var comentario = $("#Comentario_" + IdComentario).html().trim(); + var respuesta = $("#ucRespuesta").html(); + + $("#divRespuestaMatriz").empty(); + + if (comentario.lastIndexOf("\n") > 0) { + comentario = comentario.substring(0, comentario.lastIndexOf("\n")); + } + + //Obtener comentario anterior + respuesta = replaceAll("[$Contenido]", comentario, respuesta); + + $("#divRespuestaMatriz").append(respuesta); + + $("#btnMostrarCita").unbind("click"); + $("#btnMostrarCita").click(function () { + $("#divContenidoCita").toggle("slow"); + }); + + $("#lblComentarioMatriz").text("Respuesta"); + $('#modalElemento').modal('show'); +} + $('#tableUsuarios').on('click', 'button', function () { var data = $('#tableUsuarios').DataTable().row($(this).parents('tr')).data(); diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/ProyectoNormativo.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/ProyectoNormativo.js index 38f45d137..6efa7aabf 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/ProyectoNormativo.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/ProyectoNormativo.js @@ -21,7 +21,8 @@ this.CargarTablaSitios = function (data) { var columnDefinition = [ { "data": "IdProyectoNormativo","visible":false }, { "data": "NombreProyectoNormativo" }, - { "data": "TipoProyecto.Descripcion" }, + { "data": "IdTipoProyecto", "visible": false }, + { "data": "DescTipoProyecto" }, { "data": null, className: "center", defaultContent: Seleccionar } ]; @@ -43,6 +44,7 @@ $('#tableSitios').on('click', 'button', function () { url = url.replace("View", "DetallePropuesta"); url = url.replace("Controller", "PropuestaNormativa"); url = url.replace("[$ID]", ROT47(data.IdProyectoNormativo.toString())); + url = url.replace("[$TIPO]", ROT47(data.IdTipoProyecto.toString())); document.location.href = url; diff --git a/AYA.SlnSynor/AYA.SlnSynor/Views/Home/Proyecto_Normativo.cshtml b/AYA.SlnSynor/AYA.SlnSynor/Views/Home/Proyecto_Normativo.cshtml index 2040ae432..6e9f0292b 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Views/Home/Proyecto_Normativo.cshtml +++ b/AYA.SlnSynor/AYA.SlnSynor/Views/Home/Proyecto_Normativo.cshtml @@ -4,7 +4,7 @@ Layout = "~/Views/Shared/_Layout.cshtml"; } - +