From 847e0dac237944fea8c80d3d2bba63693cf55f83 Mon Sep 17 00:00:00 2001 From: jmoya Date: Fri, 27 Jul 2018 18:19:28 +0000 Subject: [PATCH] Correos Generar consulta. Y Ver solicitudes de Compra git-tfs-id: [http://192.168.1.10:8080/tfs/AyA]$/SINORT;C335 --- AYA.SlnSynor/AYA.SlnSynor.WCF/ISinort.cs | 2 + AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs | 63 ++++++ .../AYA.SlnSynor/AYA.SlnSinort.csproj | 2 + ...ormativaReglamentacionTecnicaController.cs | 6 + .../AYA.SlnSynor/Sinort-Scripts/Global.js | 12 +- .../MisSolicitudes.js | 20 +- .../Solicitud.js | 56 +----- .../VerSolicitudes.js | 12 +- .../VerSolicitudesCompra.js | 149 ++++++++++++++ .../MisSolicitudes.cshtml | 2 +- .../Solicitud.cshtml | 47 ----- .../VerSolicitudesCompra.cshtml | 181 ++++++++++++++++++ .../AYA.SlnSynor/Views/Shared/_Layout.cshtml | 2 +- .../AYA.SlnSynorModel.DAL/Sinort/EstadoDAL.cs | 2 +- .../Sinort/SolicitudDAL.cs | 2 + .../AYA.SlnSynorModel/Entidades/Json.cs | 2 +- 16 files changed, 446 insertions(+), 114 deletions(-) create mode 100644 AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudesCompra.js create mode 100644 AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/VerSolicitudesCompra.cshtml diff --git a/AYA.SlnSynor/AYA.SlnSynor.WCF/ISinort.cs b/AYA.SlnSynor/AYA.SlnSynor.WCF/ISinort.cs index 94bbdf885..ace48e73e 100644 --- a/AYA.SlnSynor/AYA.SlnSynor.WCF/ISinort.cs +++ b/AYA.SlnSynor/AYA.SlnSynor.WCF/ISinort.cs @@ -119,6 +119,8 @@ namespace AYA.SlnSinort.WCF [OperationContract] SolicitudJSON ObtenerPorTipo(SolicitudJSON model); + [OperationContract] + SolicitudJSON EnviarCorreoGeneraSolicitud(SolicitudJSON model); #endregion } diff --git a/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs b/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs index 50977ca8e..61d78eca2 100644 --- a/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs +++ b/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs @@ -502,6 +502,69 @@ namespace AYA.SlnSinort.WCF model.CodigoRespuesta = (respuesta == 1) ? EnumTipoCodigoRespuesta.EXITOSO : EnumTipoCodigoRespuesta.ERROR; ; return model; } + + public SolicitudJSON EnviarCorreoGeneraSolicitud(SolicitudJSON model) + { + PlantillaEmailDAL PlantillalDAL = new PlantillaEmailDAL(); + UsuarioDAL UsuarioDAL = new UsuarioDAL(); + List Listaplantillas = new List(); + PlantillaEmail plantilla = new PlantillaEmail(); + Usuario usuario = new Usuario(); + CatalogosPostJSON catalogo = new CatalogosPostJSON(); + List ListaUsuariosCorreo = new List(); + + + int respuesta = 0; + + string email; + string body; + try + { + + //Obtener parametros + + ServiciosUsuariosWCF.ServicioUsuariosClient respuestaAyA = new ServiciosUsuariosWCF.ServicioUsuariosClient(); + ServiciosUsuariosWCF.correoEL correo = new ServiciosUsuariosWCF.correoEL(); + Listaplantillas = PlantillalDAL.ObtenerPlantillasEmail(); + + + switch (model.PlantillaEmail.NombrePlatilla) + { + case "Correo Generar Solicitud": + plantilla = Listaplantillas.Where(p => p.NombrePlatilla == model.PlantillaEmail.NombrePlatilla).FirstOrDefault(); + correo = new ServiciosUsuariosWCF.correoEL(); + correo.FORMATO = "html"; + correo.ASUNTO = plantilla.Subject.Replace("$DescTipoSolicitud", model.Solicitud.DescripcionTipoSolicitud).Replace("$IdSolicitud", model.IdSolicitud.ToString()) + .Replace("$Usuario", model.Solicitud.UsuarioSistema); + + + foreach (var usuarios in model.ListaUsuariosCorreo) + { + catalogo.codigo = usuarios.UsuarioSistema; + usuario = UsuarioDAL.BuscarUsuario(catalogo); + body = plantilla.Body.Replace("$DescTipoSolicitud", model.Solicitud.DescripcionTipoSolicitud).Replace("$IdSolicitud", model.IdSolicitud.ToString()) + .Replace("$Usuario", model.Solicitud.UsuarioSistema).Replace("|", "
"); + correo.CUERPO = body; + email = usuario.EmailUsuario; + correo.DESTINATARIOS = "randyguti1995@gmail.com"; + + respuesta = respuestaAyA.enviarCorreo(correo); + } + + + break; + + } + + } + catch (Exception ex) + { + model.CodigoRespuesta = EnumTipoCodigoRespuesta.ERROR; + throw; + } + model.CodigoRespuesta = (respuesta == 1) ? EnumTipoCodigoRespuesta.EXITOSO : EnumTipoCodigoRespuesta.ERROR; ; + return model; + } #endregion #region Adjuntos diff --git a/AYA.SlnSynor/AYA.SlnSynor/AYA.SlnSinort.csproj b/AYA.SlnSynor/AYA.SlnSynor/AYA.SlnSinort.csproj index 43f8702de..fba193252 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/AYA.SlnSinort.csproj +++ b/AYA.SlnSynor/AYA.SlnSynor/AYA.SlnSinort.csproj @@ -7346,6 +7346,7 @@ + @@ -7444,6 +7445,7 @@ + diff --git a/AYA.SlnSynor/AYA.SlnSynor/Controllers/NormativaReglamentacionTecnicaController.cs b/AYA.SlnSynor/AYA.SlnSynor/Controllers/NormativaReglamentacionTecnicaController.cs index 9ca3548cb..47ae601b0 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Controllers/NormativaReglamentacionTecnicaController.cs +++ b/AYA.SlnSynor/AYA.SlnSynor/Controllers/NormativaReglamentacionTecnicaController.cs @@ -38,5 +38,11 @@ namespace AYA.SlnSinort.Controllers.NormativaReglamentacionTecnica return View(); } + public ActionResult VerSolicitudesCompra() + { + InitControllers(); + return View(); + } + } } \ No newline at end of file diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js index f20140adf..008ef8aaf 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/Global.js @@ -35,10 +35,14 @@ var isMobile = { //Catalogos var Estados = { - Activo: { Codigo: 1, Descripcion: "Activo" }, - Inicial: { Codigo: 2, Descripcion: "Inicial" }, - Contruccion: { Codigo: 3, Descripcion: "Construccion" }, - Eliminado: { Codigo: 4, Descripcion: "Historico" } + Activo: { Codigo: 1, Descripcion: "Activo", IdTipoEstado: 1 }, + Inicial: { Codigo: 2, Descripcion: "Inicial", IdTipoEstado: 1 }, + Contruccion: { Codigo: 3, Descripcion: "Construccion", IdTipoEstado: 1 }, + Eliminado: { Codigo: 4, Descripcion: "Historico", IdTipoEstado: 1 }, + Pendiente: { Codigo: 5, Descripcion: "Pendiente de Autorizacion", IdTipoEstado: 2 }, + Confirmado: { Codigo: 6, Descripcion: "Confirmada", IdTipoEstado: 2 }, + NoAutorizado: { Codigo: 7, Descripcion: "No Autorizada", IdTipoEstado: 2 }, + Rechazado: { Codigo: 8, Descripcion: "Rechazada", IdTipoEstado: 2 } }; var Proyectos = { PropuestaNormativa: { Codigo: 1, Descripcion: "Propuesta Normativa" }, diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisSolicitudes.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisSolicitudes.js index db63d524b..1bb64271d 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisSolicitudes.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisSolicitudes.js @@ -7,11 +7,21 @@ var InfoIdProyectoNormativo; jQuery(document).ready(function () { - + getDataModel(); CargarSolicitudes(); }); +this.getDataModel = function () { + + $("#btnCerrarVer").unbind("click"); + $("#btnCerrarVer").click(function () { + EsconderEstado(); + }); +} +this.EsconderEstado = function () { + $('#divEstadoSolicitud').hide(); +} this.CargarSolicitudes = function () { @@ -113,11 +123,11 @@ this.CargarFormulario = function (data) { - //if (model.Solicitud.DescripcionTipoSolicitud == "Compra") { + if (model.Solicitud.DescripcionTipoSolicitud == "Compra") { - // $('#divEstadoSolicitud').show(); - // $("#txtEstadoSolicitud").val(model.Solicitud.IdEstadoSolicitud); - //} + $('#divEstadoSolicitud').show(); + $("#txtEstadoSolicitud").val(model.Solicitud.Estado1.Descripcion); + } ENDREQUEST(); } diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/Solicitud.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/Solicitud.js index 401bc4120..da9246f76 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/Solicitud.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/Solicitud.js @@ -5,6 +5,7 @@ var DescTipoSolicitud; var IdSolicitud; var DescTipoproyecto; var modelDocumentoAdjunto; +var ListaUsuariosCorreo; jQuery(document).ready(function () { @@ -111,38 +112,10 @@ this.getDataModel = function () { this.CargarEstado = function (filtro) { - var uri = CatalogosWCF + '/api/ObtenerEstadoPopUp'; - var model = { - IdTipo: 1, - filtro: filtro == null ? '' : '&filtro=' + filtro - } - - AjaxPostData(uri, model, false, false, CargarGridEstado, null, null); - + $('#txtEstadoSolicitud').val(Estados.Pendiente.Descripcion); + $('#hiddenEstadoSolicitud').val(Estados.Pendiente.Codigo); } -this.CargarGridEstado = function (data) { - - if (data != null) { - - listaEstado = data; - - var Seleccionar = $("#ucBtnSeleccionarCatalogo").html(); - - var columnDefinition = [ - { "data": null, className: "center", defaultContent: Seleccionar }, - { "data": "codigo" }, - { "data": "descripcion" } - ]; - - $('#tableEstado').TableInit(0, false, true, true, false, columnDefinition, listaEstado, false); - } - - else { - - toastr.error("Ha ocurrido un error inesperado. Vuelva a intentarlo mas tarde", Message_Error); - } -} this.CargarSuperior = function (filtro) { @@ -237,18 +210,6 @@ $('#tableNombreSuperior').on('click', 'button', function () { }); -$('#tableEstado').on('click', 'button', function () { - - var data = $('#tableEstado').DataTable().row($(this).parents('tr')).data(); - - if (SelectedCatalog == "Estado") { - - $('#hiddenEstadoSolicitud').val(data.codigo); - $('#txtEstadoSolicitud').val(data.descripcion); - } - $('#modalEstado').modal('hide'); - -}); $('#tableAreaAplicacionDocumentoTecnico').on('click', 'button', function () { @@ -316,7 +277,7 @@ this.ObtenerUsuarioRol = function (data) { ///// this.GuardarTareasPendientes = function (data) { - + ListaUsuariosCorreo = data; //if (data.CodigoRespuesta == 'EXITOSO'){ var ArrayUsuarios = []; @@ -345,7 +306,7 @@ this.GuardarTareasPendientes = function (data) { AjaxPostData(uri, model, false, false, null, null, null); - //EnviarCorreo(); + EnviarCorreo(); LimpiarSolicitud(); location.reload(); //} @@ -355,10 +316,13 @@ this.EnviarCorreo = function () { var Plantilla = { - NombrePlatilla: 'Correo Proyecto Normativo', + NombrePlatilla: 'Correo Generar Solicitud', } - var uri = SinortWCF + '/api/EnviarCorreo'; + + var uri = SinortWCF + '/api/EnviarCorreoGeneraSolicitud'; model.PlantillaEmail = Plantilla; + model.ListaUsuariosCorreo = ListaUsuariosCorreo; + model.IdSolicitud = IdSolicitud; AjaxPostData(uri, model, false, false, null, null, null); ENDREQUEST(); diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudes.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudes.js index e01be482f..28f7be85c 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudes.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudes.js @@ -68,14 +68,17 @@ this.CargarTablaSolicitudes = function (data) { }); + + var columnDefinition = [ { "data": 'IdSolicitud', "visible": false }, { "data": "Titulo" }, { "data": "AreaAplicacionDocumentoTecnico.Descripcion" }, - { "data": "Usuario1.NombreUsuario"}, + { "data": "Usuario1.NombreUsuario" }, { "data": null, className: "center", defaultContent: Seleccionar } ]; + $('#tableSolicitudes').DataTable({ initComplete: function () { @@ -116,13 +119,6 @@ this.CargarFormulario = function (data) { $("#txtAreaJustifiacion").val(model.Solicitud.JustifiacionSolicitud); - - //if (model.Solicitud.DescripcionTipoSolicitud == "Compra") { - - // $('#divEstadoSolicitud').show(); - // $("#txtEstadoSolicitud").val(model.Solicitud.IdEstadoSolicitud); - //} - ENDREQUEST(); } diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudesCompra.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudesCompra.js new file mode 100644 index 000000000..9c1393be6 --- /dev/null +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/VerSolicitudesCompra.js @@ -0,0 +1,149 @@ +var Item = {}; +var data; +var model = {}; +var InfoIContenidoRelacionado; +var InfoIdProyectoNormativo; +var IdTipoSolicitud; +var DescTipoSolicitud; +var IdSolicitud; + +jQuery(document).ready(function () { + + + CargarSolicitudes(); + +}); +this.CargarSolicitudes = function () { + + + + var uri = SinortWCF + '/api/ObtenerPorTipo'; + + var model = { + UsuarioSistema: UsuarioSistema, + IdTipoSolicitud: 2 + } + + + AjaxPostData(uri, model, true, true, CargarTablaSolicitudes, null, null); +} + +this.CargarTablaSolicitudes = function (data) { + + if (data != null && data.Solicitudes != null) { + Solicitudes = data.Solicitudes; + + + var Seleccionar = $("#ucbtnVista").html(); + $.each(Solicitudes, function (key, item) { + var texto = "Solicitud de " + item.DescripcionTipoSolicitud + " #" + item.IdSolicitud + " - " + item.NombreDocumentoTecnico; + item.Titulo = texto; + + }); + + + var columnDefinition = [ + { "data": 'IdSolicitud', "visible": false }, + { "data": "Titulo" }, + { "data": "AreaAplicacionDocumentoTecnico.Descripcion" }, + { "data": "Usuario1.NombreUsuario" }, + { "data": "Estado1.Descripcion" }, + { "data": null, className: "center", defaultContent: Seleccionar } + ]; + var contador = 0; + + $('#tableSolicitudes').DataTable({ + + initComplete: function () { + $('#tableSolicitudes').TableInit(1, false, true, true, true, columnDefinition, Solicitudes); + + + this.api().columns().every(function () { + + var column = this; + if (column.selector.cols == 4) { + + var select = $('') + .appendTo($(column.header()).empty()) + .on('change', function () { + var val = $.fn.dataTable.util.escapeRegex( + $(this).val() + ); + + column + .search(val ? '^' + val + '$' : '', true, false) + .draw(); + }); + + column.data().unique().sort().each(function (d, j) { + select.append('') + }); + } + + }); + } + }); + + + if ($.fn.DataTable.isDataTable('#tableSolicitudes')) { + + $('#tableSolicitudes').DataTable().search('').draw(); + ENDREQUEST(); + } + + } +} + +this.ObtenerSolicitud = function (id) { + var uri = SinortWCF + '/api/ObtenerSolicitud'; + + + + model = { Solicitud: { IdSolicitud: id } } + AjaxPostData(uri, model, false, false, CargarFormulario, null, null); +} +this.CargarFormulario = function (data) { + + var model = data; + + $("#txtDocumentoAdjunto").val(model.Solicitud.DescripcionDocumento); + $("#txtUsuarioSistema").val(model.Solicitud.UsuarioSistema); + $("#txtCargoActual").val(model.Solicitud.CargoActual); + $("#txtNombreAreaFuncional").val(model.Solicitud.NombreAreaFuncional); + $("#txtNombreSubgerencia").val(model.Solicitud.NombreSubgerencia); + $("#txtNombreSuperior").val(model.Solicitud.NombreSuperior); + $("#txtNombreDocumentoTecnico").val(model.Solicitud.NombreDocumentoTecnico); + $("#txtAreaAplicacionDocumentoTecnico").val(model.Solicitud.AreaAplicacionDocumentoTecnico.Descripcion); + $("#txtAreaJustifiacion").val(model.Solicitud.JustifiacionSolicitud); + $('#divEstadoSolicitud').show(); + $("#txtEstadoSolicitud").val(model.Solicitud.Estado1.Descripcion); + + + + + ENDREQUEST(); +} + +$('#tableSolicitudes').on('click', 'button', function () { + + + var tabla = $('#tableSolicitudes').DataTable().row($(this).parents('tr')).data(); + + InfoIContenidoRelacionado = tabla.Titulo; + InfoIdProyectoNormativo = tabla.IdSolicitud; + + var solicitud = $("#ucSolicitud").html(); + solicitud = replaceAll('[$Solicitud]', InfoIContenidoRelacionado, solicitud); + $('#solicitudVer').empty(); + $('#solicitudVer').append(solicitud); + + $('#modalVer').modal('show'); + + $("#txtTitulo").val(InfoIContenidoRelacionado); + + + ObtenerSolicitud(InfoIdProyectoNormativo); + + + +}); \ No newline at end of file diff --git a/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisSolicitudes.cshtml b/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisSolicitudes.cshtml index 09de8a607..eb0621315 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisSolicitudes.cshtml +++ b/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisSolicitudes.cshtml @@ -165,7 +165,7 @@ diff --git a/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/Solicitud.cshtml b/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/Solicitud.cshtml index d9ff8c31a..e302dcfa4 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/Solicitud.cshtml +++ b/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/Solicitud.cshtml @@ -115,15 +115,6 @@
- - - - -
@@ -239,46 +230,8 @@ -@*---------------------Catalogo Estado-----------------------------------------------------*@ - - @*---------------------Catalogo Superior-----------------------------------------------------*@