This commit is contained in:
jnunez 2018-09-10 06:34:53 +00:00
parent 477b130f75
commit 61f1c673ad
13 changed files with 483 additions and 27 deletions

View file

@ -135,6 +135,10 @@ namespace AYA.SlnSinort.WCF
[OperationContract] [OperationContract]
CatalogosPostJSON VerificarUsuarioBD(CatalogosPostJSON model); CatalogosPostJSON VerificarUsuarioBD(CatalogosPostJSON model);
[OperationContract]
CatalogosPostJSON VerificarUsuarioBDExterno(CatalogosPostJSON model);
[OperationContract] [OperationContract]
List<Pantallas> ObtenerPermisos(CatalogosPostJSON model); List<Pantallas> ObtenerPermisos(CatalogosPostJSON model);
#endregion #endregion

View file

@ -79,6 +79,11 @@ namespace AYA.SlnSinort.WCF
#region Usuario #region Usuario
[OperationContract] [OperationContract]
List<Usuario> ObtenerUsuario(); List<Usuario> ObtenerUsuario();
[OperationContract]
List<Usuario> ObtenerUsuarioExterno();
#endregion #endregion
#region UsuarioExterno #region UsuarioExterno

View file

@ -1338,6 +1338,53 @@ namespace AYA.SlnSinort.WCF
return model; return model;
} }
public CatalogosPostJSON VerificarUsuarioBDExterno(CatalogosPostJSON model)
{
UsuarioExternoDAL usuario = new UsuarioExternoDAL();
PermisosUsuarioDAL pantallas = new PermisosUsuarioDAL();
Encriptar encriptar = new Encriptar();
try
{
model.UsuarioExterno = usuario.BuscarUsuario(model);
if (model.UsuarioExterno != null)
{
if (encriptar.desencriptaConstrasena(model.UsuarioExterno.Password) == model.filtro)
{
model.pantallas = pantallas.ObtenerPermisos(model);
if (model.pantallas != null && model.pantallas.Count > 0)
{
model.DescripcionRespuesta = "Bienvenido.";
model.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO;
}
else
{
model.DescripcionRespuesta = "Para iniciar sesión debe tener un rol asignado.";
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ADVERTENCIA;
}
}
else
{
model.DescripcionRespuesta = "El usuario o la contraseña son incorrectos.";
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ADVERTENCIA;
}
}
else
{
model.DescripcionRespuesta = "El usuario no está registrado.";
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ADVERTENCIA;
}
}
catch (Exception ex)
{
log.Error(ex);
}
return model;
}
public List<Pantallas> ObtenerPermisos(CatalogosPostJSON model) public List<Pantallas> ObtenerPermisos(CatalogosPostJSON model)
{ {
List<Pantallas> respuesta = null; List<Pantallas> respuesta = null;

View file

@ -291,6 +291,20 @@ namespace AYA.SlnSinort.WCF
} }
return respuesta; return respuesta;
} }
public List<Usuario> ObtenerUsuarioExterno()
{
List<Usuario> respuesta = null;
try
{
respuesta = new UsuarioDAL().ObtenerUsuarioExterno();
}
catch (Exception ex)
{
log.Error(ex);
}
return respuesta;
}
#endregion #endregion
#region UsuarioExterno #region UsuarioExterno
@ -350,7 +364,9 @@ namespace AYA.SlnSinort.WCF
} }
if (respuesta2 == null) if (respuesta2 == null)
{ {
model = new UsuarioDAL().InsertarUsuarioExterno(model);
model = new UsuarioExternoDAL().InsertarUsuarioExterno(model); model = new UsuarioExternoDAL().InsertarUsuarioExterno(model);
}else }else
{ {
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ADVERTENCIA.ToString(); model.CodigoRespuesta = EnumTipoCodigoRespuesta.ADVERTENCIA.ToString();
@ -547,7 +563,7 @@ namespace AYA.SlnSinort.WCF
usuarios_base = new UsuarioDAL().ObtenerUsuario(); usuarios_base = new UsuarioDAL().ObtenerUsuario();
var lista_base = usuarios_base.Select(p => p.UsuarioSistema).ToList(); var lista_base = usuarios_base.Select(p => p.UsuarioSistema).ToList();
ds = respuestaAyA.obtenerUsuariosActiveDirectory(); ds = respuestaAyA.obtenerUsuariosActiveDirectory();
usuarios_aya = ds.Tables[0].AsEnumerable().Select(dataRow => new Usuario { UsuarioSistema = dataRow.Field<string>("Login"), NombreUsuario = dataRow.Field<string>("Nombre"), EmailUsuario = dataRow.Field<string>("Login") + dominio, Estado = true, FechaCreacion = System.DateTime.Now }).ToList(); usuarios_aya = ds.Tables[0].AsEnumerable().Select(dataRow => new Usuario { UsuarioSistema = dataRow.Field<string>("Login"), NombreUsuario = dataRow.Field<string>("Nombre"), EmailUsuario = dataRow.Field<string>("Login") + dominio,Externo = false, Estado = true, FechaCreacion = System.DateTime.Now }).ToList();
var lista_aya = usuarios_aya.Select(p => p.UsuarioSistema).ToList(); var lista_aya = usuarios_aya.Select(p => p.UsuarioSistema).ToList();
var compara = lista_aya.Except(lista_base).ToList(); var compara = lista_aya.Except(lista_base).ToList();
foreach (var lista in compara) foreach (var lista in compara)

View file

@ -59,7 +59,7 @@ function validarFormulario() {
if (Contador >= 2) { if (Contador >= 2) {
enviado = true; enviado = true;
ObtenerUsuarioAD(); VerificarUsurarioBD();
} else { } else {
toastr.warning('Los campos son obligatorio', Message_Warning); toastr.warning('Los campos son obligatorio', Message_Warning);
@ -73,19 +73,7 @@ $('#txtUsuarioUnico').change(function () {
$('#txtUsuarioUnico').val(txtUsuarioUnico.trim()); $('#txtUsuarioUnico').val(txtUsuarioUnico.trim());
}); });
this.ObtenerUsuarioAD = function () {
var uri = SinorLoginWCF + '/api/ObtenerUsuarioAD';
model = {
Usuario: $('#txtUsuarioUnico').val(),
Contrasena: $('#txtContrasena').val()
}
AjaxPostData(uri, model, false, true, VerificarUsurarioBD, null, null);
}
function recuperarContrasena() { function recuperarContrasena() {
model = { model = {
@ -112,23 +100,24 @@ this.EnviarCorreoContrasena = function (data) {
ENDREQUEST(); ENDREQUEST();
} }
} }
this.VerificarUsurarioBD = function (data) { this.VerificarUsurarioBD = function () {
if (data.CodigoRespuesta == 'EXITOSO') {
var uri = SinorLoginWCF + '/api/VerificarUsuarioBD';
var uri = SinorLoginWCF + '/api/VerificarUsuarioBDExterno';
model = { model = {
codigo: data.LoginUsuario codigo: $('#txtUsuarioUnico').val(),
filtro: $('#txtContrasena').val()
} }
AjaxPostData(uri, model, false, false, IniciarSesion, null, null); AjaxPostData(uri, model, false, true, IniciarSesion, null, null);
}
} }
this.IniciarSesion = function (data) { this.IniciarSesion = function (data) {
if (data.usuario.UsuarioSistema != null) { if (data.UsuarioExterno.Usuario != null) {
var ArrayPermisos = []; var ArrayPermisos = [];
var lista = data.pantallas; var lista = data.pantallas;
@ -139,8 +128,8 @@ this.IniciarSesion = function (data) {
var uri = server + 'Login/InicioSesion'; var uri = server + 'Login/InicioSesion';
model = { model = {
UserName: data.usuario.UsuarioSistema, UserName: data.UsuarioExterno.Usuario,
UserFullName: data.usuario.NombreUsuario, UserFullName: data.UsuarioExterno.Nombre + " " + data.UsuarioExterno.Apellido1 + " " + data.UsuarioExterno.Apellido2,
PermisosUsuario: ArrayPermisos PermisosUsuario: ArrayPermisos
}; };
localStorage['ListaOpciones'] = ArrayPermisos; localStorage['ListaOpciones'] = ArrayPermisos;

View file

@ -17,6 +17,7 @@ this.getDataModel = function () {
CargarEmisor(); CargarEmisor();
CargarAplicacion(); CargarAplicacion();
CargarUsuarios(); CargarUsuarios();
CargarUsuariosSistemaExterno();
$("#btnBuscarUsuario").unbind("click"); $("#btnBuscarUsuario").unbind("click");
$("#btnBuscarUsuario").click(function () { $("#btnBuscarUsuario").click(function () {
@ -28,6 +29,16 @@ this.getDataModel = function () {
AgregarUsuario(); AgregarUsuario();
}); });
$("#btnBuscarUsuarioExterno").unbind("click");
$("#btnBuscarUsuarioExterno").click(function () {
BuscarUsuarioExterno();
});
$("#btnAgregarUsuarioExterno").unbind("click");
$("#btnAgregarUsuarioExterno").click(function () {
AgregarUsuarioExterno();
});
$("#btnBuscarEmisor").unbind("click"); $("#btnBuscarEmisor").unbind("click");
$("#btnBuscarEmisor").click(function () { $("#btnBuscarEmisor").click(function () {
@ -186,6 +197,36 @@ this.CargarGridUsuarios = function (data) {
ENDREQUEST(); ENDREQUEST();
} }
this.CargarUsuariosSistemaExterno = function (filtro) {
var uri = CatalogosWCF + '/api/ObtenerUsuarioExterno';
AjaxPostData(uri, null, false, false, CargarGridUsuariosExternos, null, null);
}
this.CargarGridUsuariosExternos = function (data) {
if (data != null) {
var Seleccionar = $("#ucBtnSeleccionarCatalogo").html();
var columnDefinition = [
{ "data": "UsuarioSistema", className: "center" },
{ "data": "NombreUsuario", className: "center" },
{ "data": null, className: "center", defaultContent: Seleccionar }
];
$('#tableUsuariosExterno').TableInit(0, false, true, true, false, columnDefinition, data, false);
}
else {
toastr.error("Ha ocurrido un error inesperado. Vuelva a intentarlo mas tarde", Message_Error);
}
ENDREQUEST();
}
this.BuscarUsuario = function () { this.BuscarUsuario = function () {
SelectedCatalog = 'Usuarios'; SelectedCatalog = 'Usuarios';
@ -201,6 +242,11 @@ this.BuscarUsuario = function () {
this.AgregarUsuario = function () { this.AgregarUsuario = function () {
if ($("#txtUsuario").val() == '') {
toastr.warning("Debe seleccionar un usuario", Message_Warning);
return;
}
if (!confirm("¿Desea convocar a un nuevo participante?")) return; if (!confirm("¿Desea convocar a un nuevo participante?")) return;
var tableParticipantes = $('#tableParticipantes').DataTable(); var tableParticipantes = $('#tableParticipantes').DataTable();
@ -223,6 +269,61 @@ this.LimpiarUsuario = function () {
$('#txtUsuario').val(''); $('#txtUsuario').val('');
} }
this.BuscarUsuarioExterno = function () {
SelectedCatalog = 'UsuariosExterno';
if ($.fn.DataTable.isDataTable('#tableUsuariosExterno')) {
LoadMessage();
$('#tableUsuariosExterno').DataTable().search('').draw();
$('#modalUsuarioExterno').modal('show');
ENDREQUEST();
}
}
this.AgregarUsuarioExterno = function () {
if ($("#txtUsuarioExterno").val() == '') {
toastr.warning("Debe seleccionar un usuario", Message_Warning);
return;
}
if (!confirm("¿Desea convocar a un nuevo participante?")) return;
var tableParticipantes = $('#tableParticipantes').DataTable();
var option = $("#ucbtnRemoverParticipante").html();
var a = $("#hiddenusuarioExterno").val();
tableParticipantes.row.add(
[$("#hiddenusuarioExterno").val(),
$("#txtUsuarioExterno").val(),
option])
.draw();
toastr.success(Message_Default, Message_Success);
$('#hiddenusuarioExterno').val('');
$('#txtUsuarioExterno').val('');
}
this.LimpiarUsuarioExterno = function () {
$('#hiddenusuarioExterno').val('');
$('#txtUsuarioExterno').val('');
}
$('#tableUsuariosExterno').on('click', 'button', function () {
var data = $('#tableUsuariosExterno').DataTable().row($(this).parents('tr')).data();
if (SelectedCatalog == "UsuariosExterno") {
$('#hiddenUsuarioExterno').val(data.UsuarioSistema);
$('#txtUsuarioExterno').val(data.NombreUsuario);
}
$('#modalUsuarioExterno').modal('hide');
});
//TABLES //TABLES
$('#tableAplicacion').on('click', 'button', function () { $('#tableAplicacion').on('click', 'button', function () {

View file

@ -48,6 +48,16 @@ this.getDataModel = function () {
ValidarRolesUsuario(); ValidarRolesUsuario();
}); });
$("#btnBuscarUsuarioExterno").unbind("click");
$("#btnBuscarUsuarioExterno").click(function () {
BuscarUsuarioExterno();
});
$("#btnAgregarUsuarioExterno").unbind("click");
$("#btnAgregarUsuarioExterno").click(function () {
ValidarRolesUsuarioExterno();
});
$("#btnBuscarOpcion").unbind("click"); $("#btnBuscarOpcion").unbind("click");
$("#btnBuscarOpcion").click(function () { $("#btnBuscarOpcion").click(function () {
BuscarPantalla(); BuscarPantalla();
@ -64,6 +74,7 @@ this.getDataModel = function () {
$('#GridRolesUsuarios').TableInit(0, false, true, true, false, null, null); $('#GridRolesUsuarios').TableInit(0, false, true, true, false, null, null);
ObtenerRoles(); ObtenerRoles();
CargarUsuariosSistema(); CargarUsuariosSistema();
CargarUsuariosSistemaExterno();
@ -799,6 +810,38 @@ this.CargarGridUsuarios = function (data) {
ENDREQUEST(); ENDREQUEST();
} }
this.CargarUsuariosSistemaExterno = function (filtro) {
var uri = CatalogosWCF + '/api/ObtenerUsuarioExterno';
AjaxPostData(uri, null, false, false, CargarGridUsuariosExternos, null, null);
}
this.CargarGridUsuariosExternos = function (data) {
if (data != null) {
var Seleccionar = $("#ucBtnSeleccionarCatalogo").html();
var columnDefinition = [
{ "data": "UsuarioSistema", className: "center" },
{ "data": "NombreUsuario", className: "center" },
{ "data": null, className: "center", defaultContent: Seleccionar }
];
$('#tableUsuariosExterno').TableInit(0, false, true, true, false, columnDefinition, data, false);
}
else {
toastr.error("Ha ocurrido un error inesperado. Vuelva a intentarlo mas tarde", Message_Error);
}
ENDREQUEST();
}
this.BuscarUsuario = function () { this.BuscarUsuario = function () {
SelectedCatalog = 'Usuarios'; SelectedCatalog = 'Usuarios';
@ -815,6 +858,22 @@ this.BuscarUsuario = function () {
} }
} }
this.BuscarUsuarioExterno = function () {
SelectedCatalog = 'UsuariosExterno';
if ($.fn.DataTable.isDataTable('#tableUsuarios')) {
LoadMessage();
var table = $('#tableUsuariosExterno').DataTable();
$('#tableUsuariosExterno').DataTable().search('').draw();
$('#modalUsuarioExterno').modal('show');
ENDREQUEST();
}
}
this.ValidarRolesUsuario = function (id) { this.ValidarRolesUsuario = function (id) {
if ($("#txtUsuario").val() == '') { if ($("#txtUsuario").val() == '') {
@ -831,6 +890,21 @@ this.ValidarRolesUsuario = function (id) {
} }
this.ValidarRolesUsuarioExterno = function (id) {
if ($("#txtUsuarioExterno").val() == '') {
toastr.warning("Debe seleccionar un usuario", Message_Warning);
return;
}
var uri = CatalogosWCF + '/api/ValidarRolesUsuario';
model = {
codigo: $("#hiddenUsuarioExterno").val()
};
AjaxPostData(uri, model, false, false, AgregarUsuarioExterno, null, null);
}
this.AgregarUsuario = function (data) { this.AgregarUsuario = function (data) {
ENDREQUEST(); ENDREQUEST();
@ -859,6 +933,35 @@ this.AgregarUsuario = function (data) {
$('#hiddenUsuario').val(''); $('#hiddenUsuario').val('');
$('#txtUsuario').val(''); $('#txtUsuario').val('');
} }
this.AgregarUsuarioExterno = function (data) {
ENDREQUEST();
if (!confirm("¿Desea agregar un nuevo usuario?")) return;
if (data.length > 0) {
toastr.warning("El usuario seleccionado ya tiene un rol asignado", Message_Warning);
return;
}
var GridRolesUsuarios = $('#GridRolesUsuarios').DataTable();
var option = $("#ucbtnRemoverParticipante").html();
var stateIcon = $("#ucItemsIcon").html();
stateIcon = replaceAll("[$icon]", "fa-check-circle", stateIcon);
stateIcon = replaceAll("[$state_color]", "muted", stateIcon);
GridRolesUsuarios.row.add(
[stateIcon,
0,
$("#hiddenUsuarioExterno").val(),
$("#txtUsuarioExterno").val(),
option])
.draw();
toastr.success(Message_Default, Message_Success);
$('#hiddenUsuarioExterno').val('');
$('#txtUsuarioExterno').val('');
}
$('#tableUsuarios').on('click', 'button', function () { $('#tableUsuarios').on('click', 'button', function () {
var data = $('#tableUsuarios').DataTable().row($(this).parents('tr')).data(); var data = $('#tableUsuarios').DataTable().row($(this).parents('tr')).data();
@ -871,10 +974,28 @@ $('#tableUsuarios').on('click', 'button', function () {
$('#modalUsuario').modal('hide'); $('#modalUsuario').modal('hide');
}); });
$('#tableUsuariosExterno').on('click', 'button', function () {
var data = $('#tableUsuariosExterno').DataTable().row($(this).parents('tr')).data();
if (SelectedCatalog == "UsuariosExterno") {
$('#hiddenUsuarioExterno').val(data.UsuarioSistema);
$('#txtUsuarioExterno').val(data.NombreUsuario);
}
$('#modalUsuarioExterno').modal('hide');
});
this.LimpiarUsuario = function () { this.LimpiarUsuario = function () {
$('#hiddenUsuario').val(''); $('#hiddenUsuario').val('');
$('#txtUsuario').val(''); $('#txtUsuario').val('');
} }
this.LimpiarUsuarioExterno = function () {
$('#hiddenUsuarioExterno').val('');
$('#txtUsuarioExterno').val('');
}
$('#GridRolesUsuarios').on('click', 'button', function () { $('#GridRolesUsuarios').on('click', 'button', function () {
var data = $('#GridRolesUsuarios').DataTable().row($(this).parents('tr')).data(); var data = $('#GridRolesUsuarios').DataTable().row($(this).parents('tr')).data();

View file

@ -119,6 +119,7 @@ var normalize = (function () {
})(); })();
this.BuscarUsuario = function (model) { this.BuscarUsuario = function (model) {
LoadMessage();
model.UsuarioExterno = { model.UsuarioExterno = {
Usuario: usuario, Usuario: usuario,
@ -129,6 +130,13 @@ this.BuscarUsuario = function (model) {
Email: $('#txtEmail').val() Email: $('#txtEmail').val()
} }
model.usuario = {
UsuarioSistema: usuario,
NombreUsuario: $('#txtNombre').val() + " " + $('#txtApellido1').val() + " " + $('#txtApellido2').val() ,
EmailUsuario: $('#txtEmail').val()
}
var uri = SinorSignupWCF + '/api/VerificarUsuario'; var uri = SinorSignupWCF + '/api/VerificarUsuario';
AjaxPostData(uri, model, false, true, EnviarCorreo, null, null); AjaxPostData(uri, model, false, true, EnviarCorreo, null, null);

View file

@ -249,6 +249,24 @@
</button> </button>
</span> </span>
</div> </div>
<br />
<label class="col-lg-2 col-md-2 col-sm-2 col-xs-2 control-label ControlsForms" id="lblUsuario" for="txtBuscar">Buscar Externo</label>
<div class="input-group input-group-sm col-md-6">
<input id="hiddenUsuarioExterno" type="hidden">
<input name="txtUsuarioExterno" title="" class="form-control TextBoxCatalogo" id="txtUsuarioExterno" type="text" readonly>
<span class="input-group-btn">
<button class="btn btn-default btn-medium" id="btn_eliminarUsuarioExterno" type="button" onclick="javascript: LimpiarUsuarioExterno()">
<i class="fa fa-close"></i>
</button>
<button class="btn btn-info btn-medium btn-margin-catalogo" id="btnBuscarUsuarioExterno" type="button">
<i class="fa fa-search"></i>
</button>
<button class="btn btn-success btn-medium btn-margin-catalogo" id="btnAgregarUsuarioExterno" type="button">
<i class="fa fa-plus"></i>
</button>
</span>
</div>
</div> </div>
<br /> <br />
@ -330,6 +348,36 @@
</div> </div>
</div> </div>
</div> </div>
@*---------------------UsuariosExterno---------------------------------------------------------*@
<div class="modal fade" id="modalUsuarioExterno" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" style="display: none;">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title">Catálogo Usuarios Externos</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-12">
<table id="tableUsuariosExterno" class="table table-striped">
<thead>
<tr>
<th class="col-sm-2">Usuario</th>
<th class="col-sm-4">Nombre</th>
<th></th>
</tr>
</thead>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="ucbtnRemoverParticipante" style=" display:none;"> <div id="ucbtnRemoverParticipante" style=" display:none;">
<button type="button" id="btnRemover" class="btn btn-default btn-xs"> <button type="button" id="btnRemover" class="btn btn-default btn-xs">
<i class="fa fa-remove"></i>&nbsp;&nbsp;Remover <i class="fa fa-remove"></i>&nbsp;&nbsp;Remover

View file

@ -237,8 +237,7 @@
</div> </div>
<div class="form-group" id="divUsuario"> <div class="form-group" id="divUsuario">
<br /> <br />
<label class="col-lg-2 col-md-2 col-sm-2 col-xs-2 control-label ControlsForms"></label> <label class="col-lg-2 col-md-2 col-sm-2 col-xs-2 control-label ControlsForms" id="lblUsuario" for="txtBuscar">Buscar</label>
<label class="col-lg-1 col-md-1 col-sm-1 col-xs-1 control-label ControlsForms"></label>
<div class="input-group input-group-sm col-lg-6 col-md-6 col-sm-6 col-xs-6"> <div class="input-group input-group-sm col-lg-6 col-md-6 col-sm-6 col-xs-6">
<input id="hiddenusuario" type="hidden"> <input id="hiddenusuario" type="hidden">
<input name="txtUsuario" title="" class="form-control TextBoxCatalogo" id="txtUsuario" type="text" readonly> <input name="txtUsuario" title="" class="form-control TextBoxCatalogo" id="txtUsuario" type="text" readonly>
@ -255,6 +254,25 @@
</button> </button>
</span> </span>
</div> </div>
<br />
<label class="col-lg-2 col-md-2 col-sm-2 col-xs-2 control-label ControlsForms" id="lblUsuario" for="txtBuscarExterno">Buscar Externo</label>
<div class="input-group input-group-sm col-md-6">
<input id="hiddenUsuarioExterno" type="hidden">
<input name="txtUsuarioExterno" title="" class="form-control TextBoxCatalogo" id="txtUsuarioExterno" type="text" readonly>
<span class="input-group-btn">
<button class="btn btn-default btn-medium" id="btn_eliminarUsuarioExterno" type="button" onclick="javascript: LimpiarUsuarioExterno()">
<i class="fa fa-close"></i>
</button>
<button class="btn btn-info btn-medium btn-margin-catalogo" id="btnBuscarUsuarioExterno" type="button">
<i class="fa fa-search"></i>
</button>
<button class="btn btn-success btn-medium btn-margin-catalogo" id="btnAgregarUsuarioExterno" type="button">
<i class="fa fa-plus"></i>
</button>
</span>
</div>
</div> </div>
<br /> <br />
@ -323,6 +341,37 @@
</div> </div>
@*---------------------UsuariosExterno---------------------------------------------------------*@
<div class="modal fade" id="modalUsuarioExterno" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" style="display: none;">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title">Catálogo Usuarios Externos</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-12">
<table id="tableUsuariosExterno" class="table table-striped">
<thead>
<tr>
<th class="col-sm-2">Usuario</th>
<th class="col-sm-4">Nombre</th>
<th></th>
</tr>
</thead>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
@*---------------------Adjuntos---------------------------------------------------------*@ @*---------------------Adjuntos---------------------------------------------------------*@
<div class="modal fade" id="modalAdjuntos" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" style="display: none;"> <div class="modal fade" id="modalAdjuntos" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static" style="display: none;">
<div class="modal-dialog modal-lg" style="width:40%;"> <div class="modal-dialog modal-lg" style="width:40%;">

View file

@ -17,6 +17,40 @@ namespace AYA.SlnSinortModel.DAL.Sinort
{ {
Log log = new Log("UsuarioDAL"); Log log = new Log("UsuarioDAL");
public CatalogosPostJSON InsertarUsuarioExterno(CatalogosPostJSON model)
{
Encriptar encriptar = new Encriptar();
try
{
using (SinortContex Conn = new SinortContex())
{
model.usuario.UsuarioSistema = model.codigo;
model.usuario.NombreUsuario = model.usuario.NombreUsuario;
model.usuario.EmailUsuario = model.usuario.EmailUsuario;
model.usuario.Estado = true;
model.usuario.Externo = true;
model.usuario.FechaCreacion = DateTime.Now;
Conn.Usuario.Add(model.usuario);
Conn.SaveChanges();
Conn.Commit();
model.CodigoRespuesta = EnumTipoCodigoRespuesta.EXITOSO.ToString();
}
}
catch (DbEntityValidationException ex)
{
log.Error(ex);
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ERROR.ToString();
}
catch (Exception ex)
{
log.Error(ex);
model.CodigoRespuesta = EnumTipoCodigoRespuesta.ERROR.ToString();
}
return model;
}
#region ObtenerUsuariosRol #region ObtenerUsuariosRol
public List<RolesUsuario> ValidarRolesUsuario(CatalogosPostJSON model) public List<RolesUsuario> ValidarRolesUsuario(CatalogosPostJSON model)
{ {
@ -53,7 +87,25 @@ namespace AYA.SlnSinortModel.DAL.Sinort
{ {
using (SinortContex db = new SinortContex()) using (SinortContex db = new SinortContex())
{ {
registros = db.Usuario.Where(t => t.Estado == true).OrderByDescending(q => q.NombreUsuario).ToList(); registros = db.Usuario.Where(t => t.Estado == true && t.Externo == false).OrderByDescending(q => q.NombreUsuario).ToList();
}
}
catch (Exception ex)
{
log.Error(ex);
}
return registros;
}
public List<Usuario> ObtenerUsuarioExterno()
{
List<Usuario> registros = null;
try
{
using (SinortContex db = new SinortContex())
{
registros = db.Usuario.Where(t => t.Estado == true && t.Externo == true).OrderByDescending(q => q.NombreUsuario).ToList();
} }
} }
@ -83,6 +135,20 @@ namespace AYA.SlnSinortModel.DAL.Sinort
if (model != null && !string.IsNullOrWhiteSpace(model.codigo)) if (model != null && !string.IsNullOrWhiteSpace(model.codigo))
{ {
//var opciones = (from ru in db.RolesUsuario
// join u in db.Usuario on ru.UsuarioSistema equals u.UsuarioSistema
// join ue in db.UsuarioExterno on ru.UsuarioSistema equals ue.Usuario into user from us in user.DefaultIfEmpty()
// where ru.UsuarioSistema == model.codigo
// select new
// {
// IdRolesUsuario = ru.IdRolesUsuario,
// Usuario = (user == null) ? ru.UsuarioSistema : us.Usuario,
// Nombre = (user == null) ? ru.Usuario.NombreUsuario : us.Nombre + " " + us.Apellido1 + " " + us.Apellido2,
// Estado = (user == null) ? ru.Usuario.Estado : us.
// }
// ).ToList();
//registros = opciones.ToList();
registros = db.RolesUsuario.Where(r => r.IdRol.ToString() == model.codigo).Include(u => u.Usuario).OrderBy(u => u.IdRolesUsuario).AsNoTracking().ToList(); registros = db.RolesUsuario.Where(r => r.IdRol.ToString() == model.codigo).Include(u => u.Usuario).OrderBy(u => u.IdRolesUsuario).AsNoTracking().ToList();
} }

View file

@ -42,7 +42,7 @@ namespace AYA.SlnSinortModel.DAL.Sinort
log.Error(ex); log.Error(ex);
} }
usuario.Password = encriptar.desencriptaConstrasena(usuario.Password); //usuario.Password = encriptar.desencriptaConstrasena(model);
return usuario; return usuario;
} }

View file

@ -34,6 +34,8 @@ namespace AYA.SlnSinortModel.Sinort
public bool? Estado { get; set; } public bool? Estado { get; set; }
public bool? Externo { get; set; }
public DateTime? FechaCreacion { get; set; } public DateTime? FechaCreacion { get; set; }
[StringLength(200)] [StringLength(200)]