/// <summary> /// Metodo para actualizar la informacion de inicio de sesion /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="id"></param> /// <param name="username"></param> /// <param name="password"></param> /// <param name="passwordNuevo"></param> /// <param name="passwordNuevoRepite"></param> public bool ActualizarInformacionUsuario(int id, String username, String password, String passwordNuevo, String passwordNuevoRepite) { FondoLoginDao fondoLoginDao = new FondoLoginDao(); if (!passwordNuevo.Equals(passwordNuevoRepite)) { throw new BusinessException(Constantes.MsjPasswordNoCoincide); } //Se consulta el usuario FondoLoginEntity usuarioFiltro = new FondoLoginEntity { N_Id = id, V_Usuario = username, V_Password = General.EncriptarCadena(password) }; FondoLoginEntity respuesta = fondoLoginDao.ConsultarUsuarioPorId(usuarioFiltro); if (respuesta == null) { throw new BusinessException(Constantes.MsjLoginInvalido); } //Se actualiza con la nueva contraseña usuarioFiltro.V_Password = General.EncriptarCadena(passwordNuevo); return(fondoLoginDao.ActualizarInformacionUsuario(usuarioFiltro)); }
public FormOptConsultarUsuarios(FondoLoginEntity usuario) { InitializeComponent(); StartPosition = FormStartPosition.CenterScreen; //Centrar panel panelConsultaUsuarios.Location = new Point( this.ClientSize.Width / 2 - panelConsultaUsuarios.Size.Width / 2, this.ClientSize.Height / 2 - panelConsultaUsuarios.Size.Height / 3); panelConsultaUsuarios.Anchor = AnchorStyles.None; //Cambiar Tema form General.InicializarTema(this); //Valores por defecto usuarioSesion = usuario; CargarCombobox(); //Se consulta todos los usuarios FondoUsuarioEntity filtro = new FondoUsuarioEntity(); FondoDominiosEntity consultarUsuarioTipoIdentificacion = (FondoDominiosEntity)comboBoxConsultaUsuariosTipoIdentificacion.SelectedItem; filtro.V_Tipo_Identificacion = consultarUsuarioTipoIdentificacion.V_Codigo; filtro.F_Fecha_Registro_Inicio = datePickerConsultaUsuariosFechaRegistroDesde.Value; filtro.F_Fecha_Registro_Fin = datePickerConsultaUsuariosFechaRegistroHasta.Value; BuscarUsuarios(filtro); }
/// <summary> /// Metodo para registrar, enviar email y llamar a insertar el usuario /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> /// <param name="enviarCorreo"></param> public bool RegistrarUsuarioLogin(FondoLoginEntity usuario, bool enviarCorreo) { EmailService emailService = new EmailService(); FondoLoginEntity usuarioCrear = new FondoLoginEntity { V_Usuario = usuario.V_Usuario, V_Password = General.EncriptarCadena(usuario.V_Password), V_Nombre_Usuario = usuario.V_Nombre_Usuario }; //Se valida si ya tiene un usuario Administrador List <FondoLoginEntity> usuariosConsulta = ConsultarTodosUsuarios(); if (usuariosConsulta.Count > 0) { throw new BusinessException(Constantes.MsjCrearUsuarioYaTieneAdministrador); } //Se inserta el usuario InsertarUsuarioLogin(usuarioCrear); //Se envia correo if (enviarCorreo) { if (General.TestConexionInternet()) { emailService.enviarEmailCreacionUsuario(usuario); } else { throw new BusinessException(Constantes.MsjNoInternetErrorEnviarCorreo); } } return(true); }
/// <summary> /// Ejecuta la opcion de Eliminar usuario /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> private void EliminarUsuario(object sender, EventArgs e) { try { if (ValidarInformacionUsuario()) { //Se retorna el objeto con el usuario FondoLoginEntity crearUsuario = new FondoLoginEntity(); crearUsuario.V_Usuario = textBoxEliminarUsuarioUsuario.Text; crearUsuario.V_Password = textBoxEliminarUsuarioPassword.Text; jsonUsuario = new JavaScriptSerializer().Serialize(crearUsuario); Close(); } else { General.MostrarPanelError(Constantes.CodigoWarning, Constantes.MsjCamposObligatorios); } } catch (BusinessException ex) { General.MostrarPanelError(Constantes.CodigoWarning, ex.Message); } catch (Exception ex) { LimpiarDatosFormulario(); Log.Registrar_Log(ex.Message, "FormModalEliminarUsuario - EliminarUsuario", LogErrorEnumeration.Critico); General.MostrarPanelError(Constantes.CodigoError, Constantes.MsjErrorInesperado); } }
// <summary> /// Metodo para insertar un ahorro de un usuario /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="ahorroMensual"></param> public bool InsertarAhorroUsuario(FondoAhorroMensualEntity ahorroMensual) { FondoAhorroMensualDao fondoAhorroMensualDao = new FondoAhorroMensualDao(); //Se valida si el usuario ya ingreso su ahorro para el mes correspondiente FondoLoginEntity validarAhorroMes = ConsultarAhorroMensualUsuario(ahorroMensual); if (validarAhorroMes != null) { throw new BusinessException(Constantes.MsjAhorroExistenteMes); } //Se valida los topes maximos y minimos de la cuota decimal valorMinimoCuota = Convert.ToDecimal(fondoParametrosService.ConsultarParametroPorNombre(Constantes.ParametroAhorroCuotaMinima).V_Valor); decimal valorMaximoCuota = Convert.ToDecimal(fondoParametrosService.ConsultarParametroPorNombre(Constantes.ParametroAhorroCuotaMaxima).V_Valor); if (ahorroMensual.N_Valor_Cuota < valorMinimoCuota) { throw new BusinessException(Constantes.MsjValidarMinimoCuota.Replace("<minimoCuota>", valorMinimoCuota.ToString())); } if (ahorroMensual.N_Valor_Cuota > valorMaximoCuota) { throw new BusinessException(Constantes.MsjValidarMaximoCuota.Replace("<maximoCuota>", valorMaximoCuota.ToString())); } return(fondoAhorroMensualDao.InsertarAhorroUsuario(ahorroMensual)); }
public FormOptIngresoAsociado(FondoLoginEntity usuario) { InitializeComponent(); StartPosition = FormStartPosition.CenterScreen; //Cambiar Tema form General.InicializarTema(this); //Width del tabControl tabIngresarAsociado.ItemSize = new Size(tabIngresarAsociado.Width / tabIngresarAsociado.TabCount, 0); //Ajustar height var bounds = Screen.FromControl(this).Bounds; this.Height = bounds.Height - 100; tabIngresarAsociado.Left = (this.ClientSize.Width - tabIngresarAsociado.Width) / 2; tabIngresarAsociado.Top = (this.ClientSize.Height - tabIngresarAsociado.Height) / 2; //Valores por defecto InicializarTooltips(); usuarioSesion = usuario; CargarCombobox(); //Inicializar fechas datePickerDatosPersonaFechaNacimiento.Value = DateTime.Now; datePickerNucleoFamiliarConyugeFechaNacimiento.Value = DateTime.Now; dataGridNucleoFamiliarIntegrantes.ColumnHeadersDefaultCellStyle.Font = new Font("Arial", 10F, FontStyle.Bold); dataGridNucleoFamiliarIntegrantes.DefaultCellStyle.Font = new Font("Arial", 10F); }
/// <summary> /// Metodo para eliminar un usuario mediante el id usuario /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public bool EliminarUsuarioPorId(FondoLoginEntity usuario) { using (var cnn = SqlLiteConexion.SimpleDbConnection()) { int result = cnn.Execute( @"DELETE FROM FONDOLOGIN WHERE N_ID = @N_ID", new { usuario.N_Id }); return(result > 0); } }
/// <summary> /// Metodo para consultar un usuario mediante el id usuario /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public FondoLoginEntity ConsultarUsuarioPorId(FondoLoginEntity usuario) { using (var cnn = SqlLiteConexion.SimpleDbConnection()) { FondoLoginEntity result = cnn.Query <FondoLoginEntity>( @"SELECT N_ID, V_USUARIO, V_PASSWORD, F_ULTIMO_INICIO_SESION, V_NOMBRE_USUARIO FROM FONDOLOGIN WHERE N_ID = @N_ID", new { usuario.N_Id }).FirstOrDefault(); return(result); } }
/// <summary> /// Metodo para actualizar la fecha de inicio de sesion /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public bool ActualizarFechaInicioSesion(FondoLoginEntity usuario) { using (var cnn = SqlLiteConexion.SimpleDbConnection()) { int result = cnn.Execute( @"UPDATE FONDOLOGIN SET F_ULTIMO_INICIO_SESION = @F_ULTIMO_INICIO_SESION WHERE N_ID = @N_ID", new { usuario.F_Ultimo_Inicio_Sesion, usuario.N_Id }); return(result > 0); } }
/// <summary> /// Metodo para actualizar la informacion del usuario de sesion /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public bool ActualizarInformacionUsuario(FondoLoginEntity usuario) { using (var cnn = SqlLiteConexion.SimpleDbConnection()) { int result = cnn.Execute( @"UPDATE FONDOLOGIN SET V_USUARIO = @V_USUARIO, V_PASSWORD = @V_PASSWORD WHERE N_ID = @N_ID", new { usuario.V_Usuario, usuario.V_Password, usuario.N_Id }); return(result > 0); } }
// <summary> /// Metodo para insertar el usuario para el login /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public bool InsertarUsuarioLogin(FondoLoginEntity usuario) { using (var cnn = SqlLiteConexion.SimpleDbConnection()) { int result = cnn.Execute( @"INSERT INTO FONDOLOGIN (V_USUARIO, V_PASSWORD, V_NOMBRE_USUARIO) VALUES(@V_USUARIO, @V_PASSWORD, @V_NOMBRE_USUARIO)", new { usuario.V_Usuario, usuario.V_Password, usuario.V_Nombre_Usuario }); return(result > 0); } }
/// <summary> /// Metodo para consultar un ahorro de un usuario mediante identificacion, mes y año /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="ahorroMensual"></param> public FondoLoginEntity ConsultarAhorroMensualUsuario(FondoAhorroMensualEntity ahorroMensual) { using (var cnn = SqlLiteConexion.SimpleDbConnection()) { FondoLoginEntity result = cnn.Query <FondoLoginEntity>( @"SELECT N_ID, N_ID_USUARIO, N_VALOR_CUOTA, F_FECHA_REGISTRO, N_MES_AHORRO, N_ANIO_AHORRO FROM FONDOAHORROMENSUAL WHERE N_ID_USUARIO = @N_ID_USUARIO AND N_MES_AHORRO = @N_MES_AHORRO AND N_ANIO_AHORRO = @N_ANIO_AHORRO", new { ahorroMensual.N_Id_Usuario, ahorroMensual.N_Mes_Ahorro, ahorroMensual.N_Anio_Ahorro }).FirstOrDefault(); return(result); } }
/// <summary> /// Metodo para actualizar la fecha de inicio de sesion /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="id"></param> public bool ActualizarFechaInicioSesion(int id) { FondoLoginDao fondoLoginDao = new FondoLoginDao(); FondoLoginEntity usuarioFiltro = new FondoLoginEntity { N_Id = id, F_Ultimo_Inicio_Sesion = DateTime.Now }; return(fondoLoginDao.ActualizarFechaInicioSesion(usuarioFiltro)); }
/// <summary> /// Inicializa el componente de Opciones /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public FormMenu(FondoLoginEntity usuario) { InitializeComponent(); StartPosition = FormStartPosition.CenterScreen; usuarioSesion = usuario; //Datos del usuario opcionLabelUsername.Text = usuario.V_Nombre_Usuario; //Tooltips InicializarTooltips(); }
/// <summary> /// Metodo para borrar la informacion del usuario administrador /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public bool EliminarUsuario(FondoLoginEntity usuario) { //Se valida si ya tiene un usuario Administrador List <FondoLoginEntity> usuariosConsulta = ConsultarTodosUsuarios(); if (usuariosConsulta.Count <= 0) { throw new BusinessException(Constantes.MsjNoTieneAdministrador); } //Se consulta mediante las credenciales FondoLoginEntity usuarioConsulta = ConsultarUsuario(usuario.V_Usuario, usuario.V_Password); return(EliminarUsuarioPorId(usuarioConsulta)); }
/// <summary> /// Metodo para enviar el correo con la recuperacion de su password /// Author: Miguel /// 2019-04-04 /// </summary> /// <param name="loginUsuario"></param> /// <returns></returns> public void enviarEmailRecuperarPassword(FondoLoginEntity loginUsuario) { EmailDTO emailDTO = new EmailDTO(); FondoParametrosService fondoParametrosService = new FondoParametrosService(); // se lee la plantila de html string template = fondoParametrosService.ConsultarParametroPorNombre(Constantes.ParametroPlantillaCorreoRecuperarPassword).V_Valor; // se reemplazan los codigos claves de la plantilla por los datos del usuario template = template.Replace("{usuario}", loginUsuario.V_Nombre_Usuario); template = template.Replace("{username}", loginUsuario.V_Usuario); template = template.Replace("{password}", General.DesencriptarCadena(loginUsuario.V_Password)); //se envia el destinatario y el mensaje al metodo de envio de correo electrónico emailDTO.Asunto = "Recuperar Password"; emailDTO.Destinatarios = fondoParametrosService.ConsultarParametroPorNombre(Constantes.ParametroCorreoEmpresa).V_Valor; enviarEmail(template, emailDTO); }
public FormOptAmortizacionCredito(FondoLoginEntity usuario) { InitializeComponent(); StartPosition = FormStartPosition.CenterScreen; //Centrar panel panelAmortizacionCredito.Location = new Point( this.ClientSize.Width / 2 - panelAmortizacionCredito.Size.Width / 2, this.ClientSize.Height / 2 - panelAmortizacionCredito.Size.Height / 3); panelAmortizacionCredito.Anchor = AnchorStyles.None; //Cambiar Tema form General.InicializarTema(this); //Valores por defecto usuarioSesion = usuario; CargarCombobox(); }
public FormOptCambiarClave(FondoLoginEntity usuario) { InitializeComponent(); StartPosition = FormStartPosition.CenterScreen; //Centrar panel panelCambiarContrasenia.Location = new Point( this.ClientSize.Width / 2 - panelCambiarContrasenia.Size.Width / 2, this.ClientSize.Height / 2 - panelCambiarContrasenia.Size.Height / 3); panelCambiarContrasenia.Anchor = AnchorStyles.None; //Cambiar Tema form General.InicializarTema(this); //Valores por defecto usuarioSesion = usuario; textBoxCambiarClaveUsuario.Text = usuarioSesion.V_Usuario; buttonCambiarClaveLimpiar.Focus(); }
public FormOptAhorroCuotaMensual(FondoLoginEntity usuario) { InitializeComponent(); StartPosition = FormStartPosition.CenterScreen; //Centrar panel panelIngresoCuotaMensual.Location = new Point( this.ClientSize.Width / 2 - panelIngresoCuotaMensual.Size.Width / 2, this.ClientSize.Height / 2 - panelIngresoCuotaMensual.Size.Height / 3); panelIngresoCuotaMensual.Anchor = AnchorStyles.None; //Cambiar Tema form General.InicializarTema(this); //Valores por defecto usuarioSesion = usuario; InicializarTooltips(); CargarCombobox(); }
/// <summary> /// Metodo para iniciar sesion /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param></param> private void Login(object sender, EventArgs e) { try { loginButtonAceptar.Enabled = false; //Validar Seguridad Seguridad seguridad = new Seguridad(); seguridad.CrackActivo(); FondoLoginService fondoLoginServie = new FondoLoginService(); //Consulta de usuario FondoLoginEntity respuesta = fondoLoginServie.ConsultarUsuario(textBoxUsuario.Text, textBoxPassword.Text); //Actualizacion inicio de sesion fondoLoginServie.ActualizarFechaInicioSesion(respuesta.N_Id); //Se inicia el formulario de opciones FormMenu formOpciones = new FormMenu(respuesta); Hide(); formOpciones.ShowDialog(); Close(); } catch (BusinessException ex) { textBoxPassword.Text = ""; textBoxUsuario.Text = ""; labelVerPassword.Text = "Ver"; loginButtonAceptar.Enabled = true; General.MostrarPanelError(Constantes.CodigoWarning, ex.Message); } catch (Exception ex) { textBoxPassword.Text = ""; textBoxUsuario.Text = ""; labelVerPassword.Text = "Ver"; loginButtonAceptar.Enabled = true; Log.Registrar_Log(ex.Message, "FormLogin - Login", LogErrorEnumeration.Critico); General.MostrarPanelError(Constantes.CodigoError, Constantes.MsjErrorInesperado); } }
/// <summary> /// Permite la Creacion del Usuario Administrador /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> private void CrearUsuario(object sender, EventArgs e) { try { if (ValidarInformacionUsuario()) { //Validar igualdad password if (!textBoxCrearUsuarioPassword.Text.Equals(textBoxCrearUsuarioPasswordRepetir.Text)) { throw new BusinessException(Constantes.MsjPasswordCrearUsuarioNoCoincide); } //Se retorna el objeto con el usuario FondoLoginEntity crearUsuario = new FondoLoginEntity(); crearUsuario.V_Usuario = textBoxCrearUsuarioUsuario.Text; crearUsuario.V_Nombre_Usuario = textBoxCrearUsuarioNombreUsuario.Text; crearUsuario.V_Password = textBoxCrearUsuarioPassword.Text; jsonUsuario = new JavaScriptSerializer().Serialize(crearUsuario); //Enviar correo enviarCorreo = checkBoxCrearUsuarioEnviarCorreo.Checked; Close(); } else { General.MostrarPanelError(Constantes.CodigoWarning, Constantes.MsjCamposObligatorios); } } catch (BusinessException ex) { General.MostrarPanelError(Constantes.CodigoWarning, ex.Message); } catch (Exception ex) { LimpiarDatosFormulario(); Log.Registrar_Log(ex.Message, "FormModalCrearUsuario - CrearUsuario", LogErrorEnumeration.Critico); General.MostrarPanelError(Constantes.CodigoError, Constantes.MsjErrorInesperado); } }
public FormOptParametrizacion(FondoLoginEntity usuario) { InitializeComponent(); StartPosition = FormStartPosition.CenterScreen; //Centrar panel panelParametrizacion.Location = new Point( this.ClientSize.Width / 2 - panelParametrizacion.Size.Width / 2, this.ClientSize.Height / 2 - panelParametrizacion.Size.Height / 3); panelParametrizacion.Anchor = AnchorStyles.None; //Cambiar Tema form General.InicializarTema(this); //Valores por defecto usuarioSesion = usuario; //Consultar los parametros del sistema dataGridParametrizacion.ColumnHeadersDefaultCellStyle.Font = new Font("Arial", 10F, FontStyle.Bold); dataGridParametrizacion.DefaultCellStyle.Font = new Font("Arial", 10F); ConsultarParametrosSistema(); }
/// <summary> /// Metodo para consultar un usuario mediante usuario y password /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="username"></param> /// <param name="password"></param> public FondoLoginEntity ConsultarUsuario(String username, String password) { if (General.EsVacioNulo(username) || General.EsVacioNulo(password)) { throw new BusinessException(Constantes.MsjCamposObligatorios); } FondoLoginDao fondoLoginDao = new FondoLoginDao(); FondoLoginEntity usuarioFiltro = new FondoLoginEntity { V_Usuario = username, V_Password = General.EncriptarCadena(password) }; FondoLoginEntity respuesta = fondoLoginDao.ConsultarUsuario(usuarioFiltro); if (respuesta == null) { throw new BusinessException(Constantes.MsjLoginInvalido); } return(respuesta); }
/// <summary> /// Metodo para insertar el usuario para el login /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public bool InsertarUsuarioLogin(FondoLoginEntity usuario) { FondoLoginDao fondoLoginDao = new FondoLoginDao(); return(fondoLoginDao.InsertarUsuarioLogin(usuario)); }
/// <summary> /// Metodo para eliminar un usuario mediante el id usuario /// Autor: Anderson Benavides /// 2019-05-23 /// </summary> /// <param name="usuario"></param> public bool EliminarUsuarioPorId(FondoLoginEntity usuario) { FondoLoginDao fondoLoginDao = new FondoLoginDao(); return(fondoLoginDao.EliminarUsuarioPorId(usuario)); }