This commit is contained in:
jmoya 2018-08-07 16:57:58 +00:00
parent 395e7eebe7
commit 86af65d860
11 changed files with 267 additions and 99 deletions

View file

@ -7405,7 +7405,8 @@
<Content Include="Sinort-Scripts\Global.js" />
<Content Include="Sinort-Scripts\Login.js" />
<Content Include="Sinort-Scripts\Mantenimientos.js" />
<Content Include="Sinort-Scripts\NormativaReglamentacionTecnica\MisEncuestas.js" />
<Content Include="Sinort-Scripts\NormativaReglamentacionTecnica\ResponderMisEncuestas.js" />
<Content Include="Sinort-Scripts\NormativaReglamentacionTecnica\VerEncuestas.js" />
<Content Include="Sinort-Scripts\NormativaReglamentacionTecnica\MisSolicitudes.js" />
<Content Include="Sinort-Scripts\NormativaReglamentacionTecnica\ResponderEncuesta.js" />
<Content Include="Sinort-Scripts\NormativaReglamentacionTecnica\Solicitud.js" />
@ -7526,7 +7527,8 @@
<Content Include="Views\NormativaReglamentacionTecnica\CrearEncuesta.cshtml" />
<Content Include="Views\Reportes\Aplicacion.cshtml" />
<Content Include="Views\NormativaReglamentacionTecnica\ResponderEncuesta.cshtml" />
<Content Include="Views\NormativaReglamentacionTecnica\MisEncuestas.cshtml" />
<Content Include="Views\NormativaReglamentacionTecnica\VerEncuestas.cshtml" />
<Content Include="Views\NormativaReglamentacionTecnica\ResponderMisEncuestas.cshtml" />
</ItemGroup>
<ItemGroup>
<Folder Include="App_Data\" />

View file

@ -55,10 +55,17 @@ namespace AYA.SlnSinort.Controllers.NormativaReglamentacionTecnica
InitControllers();
return View();
}
public ActionResult MisEncuestas()
public ActionResult VerEncuestas()
{
InitControllers();
return View();
}
public ActionResult ResponderMisEncuestas()
{
InitControllers();
return View();
}
}
}

View file

@ -5,6 +5,7 @@ var RepositorioVirtual = $("#hiddenRepositorioVirtual").val();
var RepositorioLocal = $("#hiddenRepositorioLocal").val();
var UsuarioSistema = $("#hiddenUsuarioSistema").val();
var NombreUsuario = $("#hiddenNombreUsuario").val();
var esSuperUsuario = false;
var server = window.location.protocol + "//" + "localhost" + "/" + (window.location.pathname.split('/')[1]) + "/";
var SinorLoginWCF = "http://localhost/AYA.SlnSinort.WCF/Sinort.svc";
@ -194,6 +195,43 @@ this.ObtenerParametros = function (url) {
return obj;
}
//verifica si el usuario conectado es tiene el rol pantalla de superusuario
this.ObtenerRolPantalla = function () {
var uri = CatalogosWCF + '/api/ObtenerRolesPantalla';
var model = {
codigo: Pantallas.SuperUser.Codigo
};
AjaxPostData(uri, model, true, false, ObtenerUsuarioRol, null, null);
}
this.ObtenerUsuarioRol = function (data) {
var modelPost = {
listaCodigos: []
};
$.each(data, function (key, item) {
modelPost.listaCodigos.push(item.IdRol);
});
//funcional experto
//if (modelPost.listaCodigos.indexOf(1) == -1)
// modelPost.listaCodigos.push(Roles.FuncionalExperto.Codigo);
var uri = CatalogosWCF + '/api/ObtenerUsuariosRol';
AjaxPostData(uri, modelPost, true, false, VerificarSuperusuario, null, null);
}
this.VerificarSuperusuario = function (data) {
$.each(data, function (key, item) {
if (item.UsuarioSistema == UsuarioSistema) {
esSuperUsuario = true;
}
});
}
this.RequiredToDisabled = function (controlId) {
@ -1816,6 +1854,7 @@ this.ObtenerDatosUsuario = function () {
$('#nombreusuario').empty();
$('#nombreusuario').append(usuario);
}
this.ObtenerCantidadTareasPendientes = function () {

View file

@ -37,7 +37,7 @@ this.CrearEncuesta = function (data) {
.applyTheme("darkblue");
survey.locale = "es";
survey.title = data.DetalleEncuestas[0].EncabezadoEncuesta.Descripcion;
survey.title = data.DetalleEncuestas[0].EncabezadoEncuesta.Descripcion + " - Respuestas de: " + Usuario;
survey.showProgressBar = "top";
var page = {};

View file

@ -0,0 +1,82 @@
var Item = {};
var data;
var IdEncabezadoEncuesta;
var Estado;
jQuery(document).ready(function () {
getDataModel();
CargarEncuestas();
});
this.getDataModel = function () {
$('#tableEncuestas').TableInit(0, false, true, true, false, null, null);
$('#tableEncuestas').DataTable().column(0).visible(false);
$('#tableEncuestas').DataTable().column(1).visible(false);
Estado = 0;
}
this.CargarEncuestas = function () {
var uri = SinortWCF + '/api/ObtenerEncabezadoEncuesta';
var model = {
UsuarioSistema: UsuarioSistema,
Estado: Estado
}
AjaxPostData(uri, model, false, false, CargarTablaEncuestas, null, null);
}
this.CargarTablaEncuestas = function (data) {
if (data != null && data.UsuariosEncuestas != null) {
Encuesta = data.UsuariosEncuestas;
var TableItems = $('#tableEncuestas').DataTable();
$.each(Encuesta, function (key, item) {
var Seleccionar = $("#ucbtnRespuesta").html();
TableItems.row.add([item.IdEncabezadoEncuesta,
item.Estado,
item.EncabezadoEncuesta.Descripcion,
Seleccionar]).draw();
});
ENDREQUEST();
}
}
$('#tableEncuestas').on('click', 'button', function () {
var data = $('#tableEncuestas').DataTable().row($(this).parents('tr')).data();
//if (data.PromotorProyecto != UsuarioSistema) {
// if (ValidarPermisos('Accesar expediente de propuesta normativa').length <= 0 || data.IdEstado == Estados.Contruccion.Codigo) {
// toastr.warning(Message_NoGrants, Message_Warning);
// return;
// }
//}
IdEncabezadoEncuesta = data[0].toString();
url = $("#hiddenHref").val();
url = url.replace("View", "ResponderEncuesta");
url = url.replace("Controller", "NormativaReglamentacionTecnica");
url = url.replace("[$ID]", ROT47(data[0].toString()));
url = url.replace("[$ESTADO]", ROT47(Estado.toString()));
url = url.replace("[$USUARIO]", UsuarioSistema);
document.location.href = url;
});

View file

@ -1,34 +1,51 @@
var Item = {};
var data;
var esSu = false;
var IdEncabezadoEncuesta;
var Estado;
jQuery(document).ready(function () {
ObtenerRolPantalla();
CargarEncuestas();
getDataModel();
});
this.getDataModel = function ()
{
this.getDataModel = function () {
$('#tableEncuestas').TableInit(0, false, true, true, false, null, null);
$('#tableEncuestas').DataTable().column(0).visible(false);
$('#tableEncuestas').DataTable().column(1).visible(false);
Estado = 1;
//if (esSuperUsuario) {
//}
//else {
//}
CargarEncuestas();
}
this.CargarEncuestas = function () {
var uri = SinortWCF + '/api/ObtenerEncabezadoEncuesta';
if (esSu)
{
if (esSuperUsuario) {
var encabezado;
encabezado = $("#ucEnc").html();
encabezado = replaceAll('[$ENCABEZADO]', "Ver Encuestas", encabezado);
$('#encabezado').empty();
$('#encabezado').append(encabezado);
var model = {
UsuarioSistema: null
UsuarioSistema: null,
Estado: Estado
}
}
else {
var encabezado;
encabezado = $("#ucEnc").html();
encabezado = replaceAll('[$ENCABEZADO]', "Mis Encuestas", encabezado);
$('#encabezado').empty();
$('#encabezado').append(encabezado);
var model = {
UsuarioSistema: UsuarioSistema
UsuarioSistema: UsuarioSistema,
Estado: Estado
}
}
AjaxPostData(uri, model, false, false, CargarTablaEncuestas, null, null);
@ -48,12 +65,12 @@ this.CargarTablaEncuestas = function (data) {
var Seleccionar = $("#ucbtnRespuesta").html();
if (item.Estado == false) {
Seleccionar = replaceAll('[$DESCRIPCION]', 'Responder', Seleccionar);
}
else {
Seleccionar = replaceAll('[$DESCRIPCION]', 'Ver Respuestas', Seleccionar);
}
//if (item.Estado == false) {
// Seleccionar = replaceAll('[$DESCRIPCION]', 'Responder', Seleccionar);
//}
//else {
// Seleccionar = replaceAll('[$DESCRIPCION]', 'Ver Respuestas', Seleccionar);
//}
TableItems.row.add([item.IdEncabezadoEncuesta,
item.Estado,
item.EncabezadoEncuesta.Descripcion,
@ -65,42 +82,7 @@ this.CargarTablaEncuestas = function (data) {
}
}
this.ObtenerRolPantalla = function () {
var uri = CatalogosWCF + '/api/ObtenerRolesPantalla';
var model = {
codigo: Pantallas.SuperUser.Codigo
};
AjaxPostData(uri, model, false, false, ObtenerUsuarioRol, null, null);
}
this.ObtenerUsuarioRol = function (data) {
var modelPost = {
listaCodigos: []
};
$.each(data, function (key, item) {
modelPost.listaCodigos.push(item.IdRol);
});
if (modelPost.listaCodigos.indexOf(1) == -1)
modelPost.listaCodigos.push(Roles.FuncionalExperto.Codigo);
var uri = CatalogosWCF + '/api/ObtenerUsuariosRol';
AjaxPostData(uri, modelPost, false, false, VerificarSuperusuario, null, null);
}
this.VerificarSuperusuario = function (data) {
$.each(data, function (key, item) {
if (item.UsuarioSistema == UsuarioSistema)
{
esSu = true;
}
});
}
this.CargarUsuarios = function () {
var uri = SinortWCF + '/api/ObtenerUsuariosEncuestas';
@ -149,8 +131,8 @@ $('#tableEncuestas').on('click', 'button', function () {
//}
IdEncabezadoEncuesta = data[0].toString();
Estado = data[1];
if (esSu) {
if (esSuperUsuario) {
$('#modalUsuario').modal('show');
CargarUsuarios();
@ -161,7 +143,7 @@ $('#tableEncuestas').on('click', 'button', function () {
url = url.replace("View", "ResponderEncuesta");
url = url.replace("Controller", "NormativaReglamentacionTecnica");
url = url.replace("[$ID]", ROT47(data[0].toString()));
url = url.replace("[$ESTADO]", ROT47(data[1] != "true" ? "0" : "1"));
url = url.replace("[$ESTADO]", ROT47(Estado.toString()));
url = url.replace("[$USUARIO]", UsuarioSistema);
document.location.href = url;
}
@ -180,7 +162,7 @@ $('#tableUsuario').on('click', 'button', function () {
url = url.replace("View", "ResponderEncuesta");
url = url.replace("Controller", "NormativaReglamentacionTecnica");
url = url.replace("[$ID]", ROT47(IdEncabezadoEncuesta));
url = url.replace("[$ESTADO]", ROT47(Estado != "true" ? "0" : "1"));
url = url.replace("[$ESTADO]", ROT47(Estado.toString()));
url = url.replace("[$USUARIO]", datos.UsuarioSistema);
document.location.href = url;

View file

@ -0,0 +1,45 @@

@{
ViewBag.Title = "ResponderMisEncuestas";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<input type="hidden" id="hiddenHref" value="@string.Concat(Url.Action("View", "Controller", null), ViewBag.QueryEncripted)?encuestaid=[$ID]&estado=[$ESTADO]&usuario=[$USUARIO]">
<form id="formEncuestas" class="form-horizontal" role="form">
<div class="panel-body"> <h3 id="encabezado">&nbsp;<i class="glyphicon glyphicon-list-alt"></i>&nbsp; Responder mis encuestas </h3> </div>
<div style="background-color: #fff">
<div class="panel-body">
<br />
<div>
<table id="tableEncuestas" class="table table-condensed dataTable no-footer">
<thead>
<tr>
<th class="col-sm-1">ID</th>
<th class="col-sm-1">Estado</th>
<th class="col-sm-5">Título</th>
<th class="col-sm-5">Acción</th>
</tr>
</thead>
</table>
</div>
<div id="ucbtnRespuesta" style=" display:none;">
<button type="button" id="btnseleccionar" class="btn btn-default btn-xs">
<i class="fa fa-edit"></i>&nbsp;&nbsp;Responder
</button>
</div>
</div>
</div>
</form>
@section scripts{
@Scripts.Render("~/Sinort-Scripts/NormativaReglamentacionTecnica/ResponderMisEncuestas.js")
}

View file

@ -1,13 +1,13 @@

@{
ViewBag.Title = "MisEncuestas";
ViewBag.Title = "VerEncuestas";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<input type="hidden" id="hiddenHref" value="@string.Concat(Url.Action("View", "Controller", null), ViewBag.QueryEncripted)?encuestaid=[$ID]&estado=[$ESTADO]&usuario=[$USUARIO]">
<form id="formEncuestas" class="form-horizontal" role="form">
<div class="panel-body"> <h3>&nbsp;<i class="glyphicon glyphicon-list-alt"></i>&nbsp; Mis Encuestas </h3> </div>
<div class="panel-body" > <h3 id="encabezado">&nbsp;<i class="glyphicon glyphicon-list-alt"></i>&nbsp; [$ENCABEZADO] </h3> </div>
<div style="background-color: #fff">
<div class="panel-body">
<br />
@ -27,7 +27,7 @@
<div id="ucbtnRespuesta" style=" display:none;">
<button type="button" id="btnseleccionar" class="btn btn-default btn-xs">
<i class="fa fa-edit"></i>&nbsp;&nbsp;[$DESCRIPCION]
<i class="fa fa-edit"></i>&nbsp;&nbsp;Ver Respuestas
</button>
</div>
</div>
@ -37,9 +37,11 @@
</form>
<div id="ucDesc" style="display:none;">
<div id="ucEnc" style="display:none;">
<span>
[$DESCRIPCION]
[$ENCABEZADO]
</span>
</div>
@ -84,6 +86,6 @@
@section scripts{
@Scripts.Render("~/Sinort-Scripts/NormativaReglamentacionTecnica/MisEncuestas.js")
@Scripts.Render("~/Sinort-Scripts/NormativaReglamentacionTecnica/VerEncuestas.js")
}

View file

@ -163,8 +163,8 @@
<span><i class="fa fa-circle text-success"> Sitios</i> </span>
<li><a href="@Url.Action("CrearEncuesta", "NormativaReglamentacionTecnica")"> Crear encuesta </a></li>
@*<li><a href="@Url.Action("ResponderEncuesta", "NormativaReglamentacionTecnica")"> Responder encuesta </a></li>*@
<li><a href="@Url.Action("MisEncuestas", "NormativaReglamentacionTecnica")"> Ver mis encuestas </a></li>
<li><a href="@Url.Action("ResponderMisEncuestas", "NormativaReglamentacionTecnica")"> Responder mis encuestas </a></li>
<li><a href="@Url.Action("VerEncuestas", "NormativaReglamentacionTecnica")"> Ver encuestas </a></li>
<span><i class="fa fa-circle text-success"> Administar</i> </span>
<li><a href="@Url.Action("FichaTecnica", "NormativaReglamentacionTecnica")"> Ficha Técnica</a></li>
<li><a href="#"> Ver fichas técnicas inactivas</a></li>
@ -293,8 +293,10 @@
<script type="text/javascript">
$(document).ready(function () {
ObtenerDatosUsuario();
ObtenerRolPantalla();
ObtenerCantidadTareasPendientes();
ObtenerCantidadGotitasPendientes();
});
</script>

View file

@ -145,8 +145,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort
}
public EncuestaJSON ObtenerEncabezadoEncuesta(EncuestaJSON model)
{
EncuestaJSON registros = new EncuestaJSON();
List<UsuariosEncuesta> listaEncuestas = new List<UsuariosEncuesta>();
try
{
@ -154,31 +153,38 @@ namespace AYA.SlnSinortModel.DAL.Sinort
{
if (model.UsuarioSistema != null)
{
registros.UsuariosEncuestas = db.UsuariosEncuesta
model.UsuariosEncuestas = db.UsuariosEncuesta
.Include(q => q.EncabezadoEncuesta)
.Where(x => x.UsuarioSistema == model.UsuarioSistema).AsNoTracking()
.Where(x => x.UsuarioSistema == model.UsuarioSistema && x.Estado == model.Estado ).AsNoTracking()
.ToList();
}
else {
registros.UsuariosEncuestas = db.UsuariosEncuesta
else
{
model.UsuariosEncuestas = new List<UsuariosEncuesta>();
listaEncuestas = db.UsuariosEncuesta
.Include(q => q.EncabezadoEncuesta)
.Where(x => x.Estado == true).AsNoTracking()
.Where(x => x.Estado == model.Estado).AsNoTracking()
.ToList();
foreach (var encuesta in listaEncuestas)
{
if (!model.UsuariosEncuestas.Any(q => q.IdEncabezadoEncuesta == encuesta.IdEncabezadoEncuesta))
model.UsuariosEncuestas.Add(encuesta);
}
}
registros.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO;
model.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO;
}
}
catch (Exception ex)
{
registros.CodigoRespuesta = EnumTipoCodigoRespuesta.ERROR;
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ERROR;
log.Error(ex);
}
return registros;
return model;
}
public EncuestaJSON ObtenerDetalleEncuesta(EncuestaJSON model)
@ -325,7 +331,8 @@ namespace AYA.SlnSinortModel.DAL.Sinort
return model;
}
public EncuestaJSON ObtenerUsuariosEncuestas(EncuestaJSON model){
public EncuestaJSON ObtenerUsuariosEncuestas(EncuestaJSON model)
{
try