From c342897a398248a1bcebece91b52a7b3e1bef0df Mon Sep 17 00:00:00 2001 From: jmoya Date: Mon, 6 Aug 2018 15:34:46 +0000 Subject: [PATCH] git-tfs-id: [http://192.168.1.10:8080/tfs/AyA]$/SINORT;C386 --- AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs | 4 +- .../MisEncuestas.js | 19 ++++++++ .../ResponderEncuesta.js | 43 ++++++++++++++----- .../MisEncuestas.cshtml | 10 ++++- .../Sinort/EncuestaDAL.cs | 29 ++++++++----- .../AYA.SlnSynorModel/Entidades/Json.cs | 2 +- 6 files changed, 81 insertions(+), 26 deletions(-) diff --git a/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs b/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs index 54282449a..b190ae8fe 100644 --- a/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs +++ b/AYA.SlnSynor/AYA.SlnSynor.WCF/Sinort.svc.cs @@ -1210,7 +1210,7 @@ namespace AYA.SlnSinort.WCF { try { - if (model.RespuestaEncuesta == null) + if (model == null || model.ListaRespuestas == null) { model.CodigoRespuesta = EnumTipoCodigoRespuesta.ADVERTENCIA; @@ -1218,7 +1218,7 @@ namespace AYA.SlnSinort.WCF return model; } - model = new EncuestaDAL().GuardarEncuesta(model); + model = new EncuestaDAL().GuardarRespuestaEncuesta(model); } catch (Exception ex) diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisEncuestas.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisEncuestas.js index 5e85eea6f..3219b6c40 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisEncuestas.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/MisEncuestas.js @@ -21,6 +21,24 @@ this.CargarTablaEncuestas = function (data) { Encuesta = data.UsuariosEncuestas; var Seleccionar = $("#ucbtnRespuesta").html(); + if (data.UsuariosEncuestas[0].Estado == true) { + var descripcion; + descripcion = $("#ucDesc").html(); + + + descripcion = replaceAll('[$DESCRIPCION]','Ver Respuestas', descripcion); + $('#btnseleccionar').empty(); + $('#btnseleccionar').append(descripcion); + } + else { + var descripcion; + descripcion = $("#ucDesc").html(); + + + descripcion = replaceAll('[$DESCRIPCION]', 'Responder', descripcion); + $('#btnseleccionar').empty(); + $('#btnseleccionar').append(descripcion); + } var columnDefinition = [ { "data": 'IdEncabezadoEncuesta', "visible": false }, @@ -64,6 +82,7 @@ $('#tableEncuestas').on('click', 'button', function () { url = url.replace("View", "ResponderEncuesta"); url = url.replace("Controller", "NormativaReglamentacionTecnica"); url = url.replace("[$ID]", ROT47(data.IdEncabezadoEncuesta.toString())); + url = url.replace("[$ESTADO]", ROT47(data.Estado != true ? "0" : "1")); diff --git a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/ResponderEncuesta.js b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/ResponderEncuesta.js index 014640610..586fe1a52 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/ResponderEncuesta.js +++ b/AYA.SlnSynor/AYA.SlnSynor/Sinort-Scripts/NormativaReglamentacionTecnica/ResponderEncuesta.js @@ -5,9 +5,9 @@ var Titulo; jQuery(document).ready(function () { - + getDataModel(); - + }); @@ -23,17 +23,17 @@ this.getDataModel = function () { this.CrearEncuesta = function (data) { var body = data.questions; - + var survey = new Survey.Survey(); Survey .StylesManager .applyTheme("darkblue"); - + survey.locale = "es"; survey.title = data.DetalleEncuestas[0].EncabezadoEncuesta.Descripcion; survey.showProgressBar = "top"; - survey.surveyId='5af48e08-a0a5-44a5-83f4-1c90e8e98de1'; + survey.surveyId = '5af48e08-a0a5-44a5-83f4-1c90e8e98de1'; survey.surveyPostId = '3ce10f8b-2d8a-4ca2-a110-2994b9e697a1'; var page = {}; @@ -66,18 +66,32 @@ this.CrearEncuesta = function (data) { q.title = item.title; q.name = item.name; q.isRequired = item.isRequired; - + }); - + survey .onComplete .add(function (result) { var uri = SinortWCF + '/api/GuardarRespuestaEncuesta'; + + var ListaRespuestas = []; + + $.each(result.data, function (nombrePregunta, respuestaPregunta) { + + var respuesta = { + NombrePregunta: nombrePregunta, + Respuesta: JSON.stringify(respuestaPregunta), + IdEncabezadoEncuesta: EncuestaId, + UsuarioSistema: UsuarioSistema + }; + + ListaRespuestas.push(respuesta); + }); + + var model = { - ListaRespuestas: result.data, - IdEncabezadoEncuesta: EncuestaId, - UsuarioSistema: UsuarioSistema + ListaRespuestas: ListaRespuestas, }; AjaxPostData(uri, model, false, true, null, null, null); @@ -86,6 +100,15 @@ this.CrearEncuesta = function (data) { // .innerHTML = "result: " + JSON.stringify(result.data); }); + if(){ + survey.data = { + comentariopizza: 'John Doe', + Idioma: { "Inglés": "Intermedio", "Italiano": "Intermedio" }, + NIVEL: 4, + pregunta1: ["uno", "tres"] + }; + survey.mode = 'display'; + } $("#surveyElement").Survey({ model: survey }); diff --git a/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisEncuestas.cshtml b/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisEncuestas.cshtml index 0f6a3aef3..e8a3e7180 100644 --- a/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisEncuestas.cshtml +++ b/AYA.SlnSynor/AYA.SlnSynor/Views/NormativaReglamentacionTecnica/MisEncuestas.cshtml @@ -4,7 +4,7 @@ Layout = "~/Views/Shared/_Layout.cshtml"; } - +

   Mis Encuestas

@@ -26,7 +26,7 @@
@@ -36,6 +36,12 @@
+ + @section scripts{ diff --git a/AYA.SlnSynor/AYA.SlnSynorModel.DAL/Sinort/EncuestaDAL.cs b/AYA.SlnSynor/AYA.SlnSynorModel.DAL/Sinort/EncuestaDAL.cs index 1eda0f037..b0c4c9cdb 100644 --- a/AYA.SlnSynor/AYA.SlnSynorModel.DAL/Sinort/EncuestaDAL.cs +++ b/AYA.SlnSynor/AYA.SlnSynorModel.DAL/Sinort/EncuestaDAL.cs @@ -15,7 +15,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort public class EncuestaDAL { Log log = new Log("EncuestaDAL"); - + public List ObtenerTipoPregunta() { List respuesta = null; @@ -90,7 +90,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort model.DetalleEncuesta.UsuarioCreacion = model.UserName; model.DetalleEncuesta.FechaCreacion = DateTime.Now; Conn.DetalleEncuesta.Add(model.DetalleEncuesta); - + Conn.SaveChanges(); Conn.Commit(); model.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO; @@ -123,7 +123,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort registros.DetalleEncuestas = Conn.DetalleEncuesta .Include("EncabezadoEncuesta") //.FirstOrDefault(q => q.IdDetalleEncuesta == model.DetalleEncuesta.IdDetalleEncuesta); - .Where(x => x.Estado == true ).AsNoTracking() + .Where(x => x.Estado == true).AsNoTracking() .ToList(); registros.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO; @@ -155,7 +155,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort registros.UsuariosEncuestas = db.UsuariosEncuesta .Include(q => q.EncabezadoEncuesta) - .Where(x => x.Estado == true && x.UsuarioSistema == model.UsuarioSistema).AsNoTracking() + .Where(x => x.UsuarioSistema == model.UsuarioSistema).AsNoTracking() .ToList(); @@ -208,7 +208,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort model.questions.Add(json); } - + } } } @@ -271,12 +271,19 @@ namespace AYA.SlnSinortModel.DAL.Sinort { using (SinortContex Conn = new SinortContex()) { + if (model != null && model.ListaRespuestas != null) + { + + foreach (var respuesta in model.ListaRespuestas) + { + respuesta.UsuarioCreacion = model.UserName; + respuesta.FechaCreacion = DateTime.Now; + respuesta.Estado = true; + } + } + + Conn.RespuestaEncuesta.AddRange(model.ListaRespuestas); - - model.RespuestaEncuesta.UsuarioCreacion = model.UserName; - model.RespuestaEncuesta.FechaCreacion = DateTime.Now; - Conn.RespuestaEncuesta.Add(model.RespuestaEncuesta); - Conn.SaveChanges(); Conn.Commit(); model.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO; @@ -303,7 +310,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort using (SinortContex Conn = new SinortContex()) { Actual = Conn.UsuariosEncuesta - .FirstOrDefault(x => x.IdEncabezadoEncuesta == model.UsuariosEncuesta.IdEncabezadoEncuesta + .FirstOrDefault(x => x.IdEncabezadoEncuesta == model.UsuariosEncuesta.IdEncabezadoEncuesta && x.UsuarioSistema == model.UsuariosEncuesta.UsuarioSistema); if (Actual == null) { diff --git a/AYA.SlnSynor/AYA.SlnSynorModel/Entidades/Json.cs b/AYA.SlnSynor/AYA.SlnSynorModel/Entidades/Json.cs index 3c2cee26c..d86e2103b 100644 --- a/AYA.SlnSynor/AYA.SlnSynorModel/Entidades/Json.cs +++ b/AYA.SlnSynor/AYA.SlnSynorModel/Entidades/Json.cs @@ -109,7 +109,7 @@ namespace AYA.SlnSinortModel.Entidades public List ListaTareasPendientes { get; set; } public List ListaUsuariosCorreo { get; set; } - public List ListaRespuestas { get; set; } + public List ListaRespuestas { get; set; } public int IdEncabezadoEncuesta { get; set; } public string UsuarioSistema { get; set; } public string Mensaje { get; set; }