private bool Validaciones() { this.cntError.LimpiarErrores(); try { var item = Datos.GetEntity <Usuario>(m => m.NombreUsuario.Equals(txtNombreUsuario.Text)); if (EsNuevo.Equals(true) && item != null) { Util.MensajeError("Ya existe un Usuario con ese nombre, intente con otro.", GlobalClass.NombreApp); return(false); } else if ((EsNuevo.Equals(false) && item != null) && item.UsuarioID != Usuario.UsuarioID) { Util.MensajeError("Ya existe un Usuario con ese nombre, intente con otro.", GlobalClass.NombreApp); return(false); } // Se valida que la contraseña no se repita string sContraseniaEnc = UtilLocal.Encriptar(txtContrasenia.Text); item = Datos.GetEntity <Usuario>(m => m.Contrasenia.Equals(sContraseniaEnc)); if (EsNuevo.Equals(true) && item != null) { this.cntError.PonerError(this.txtContrasenia, "Error al validar la contraseña. Intenta agregando o modificando algún caracter."); } else if ((EsNuevo.Equals(false) && item != null) && item.UsuarioID != Usuario.UsuarioID) { this.cntError.PonerError(this.txtContrasenia, "Error al validar la contraseña. Intenta agregando o modificando algún caracter."); } } catch (Exception ex) { Util.MensajeError(ex.Message, GlobalClass.NombreApp); } if (this.txtNombrePersona.Text == "") { this.cntError.PonerError(this.txtNombrePersona, "El campo es necesario.", ErrorIconAlignment.MiddleRight); } if (this.txtNombreUsuario.Text == "") { this.cntError.PonerError(this.txtNombreUsuario, "El campo es necesario.", ErrorIconAlignment.MiddleRight); } if (this.txtContrasenia.Text == "") { this.cntError.PonerError(this.txtContrasenia, "El campo es necesario.", ErrorIconAlignment.MiddleRight); } if (this.clbPerfiles.CheckedItems.Count < 1) { this.cntError.PonerError(this.clbPerfiles, "Debe seleccionar al menos un Perfil.", ErrorIconAlignment.MiddleRight); } return(this.cntError.NumeroDeErrores == 0); }
protected override void btnGuardar_Click(object sender, EventArgs e) { if (!Validaciones()) { return; } try { var lista = new List <int>(); foreach (object itemChecked in clbPerfiles.CheckedItems) { Perfil castedItem = itemChecked as Perfil; lista.Add(castedItem.PerfilID); } if (EsNuevo) { var usr = new Usuario() { NombrePersona = txtNombrePersona.Text, NombreUsuario = txtNombreUsuario.Text, Contrasenia = UtilLocal.Encriptar(txtContrasenia.Text), FechaRegistro = DateTime.Now, Activo = cboEstatus.SelectedValue.Equals(1), TipoUsuarioID = (int?)this.cmbTipoDeUsuario.SelectedValue, Estatus = true, Actualizar = true, AlertaCalendarioClientes = this.clbAlertas.GetItemChecked(0), AlertaPedidos = this.clbAlertas.GetItemChecked(1), Alerta9500 = this.clbAlertas.GetItemChecked(2), AlertaTraspasos = this.clbAlertas.GetItemChecked(3), AlertaDevFacturaCreditoAnt = this.clbAlertas.GetItemChecked(4) }; Datos.SaveOrUpdate <Usuario>(usr); UpdateUsuarioPerfiles(usr.UsuarioID, lista); // Se crean las cuentas auxiliares indispensables ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Salarios, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.TiempoExtra, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.PremioDeAsistencia, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.PremioDePuntualidad, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Vacaciones, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.PrimaVacacional, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Aguinaldo, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Ptu, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Imss, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Ispt, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Infonavit, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.RetencionImss, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.SubsidioAlEmpleo, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.RetencionInfonavit, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.DeudoresDiversos, usr.UsuarioID); ContaProc.CrearCuentaAuxiliar(usr.NombrePersona, Cat.ContaCuentasDeMayor.Nomina2Por, usr.UsuarioID); } else { Usuario.NombrePersona = txtNombrePersona.Text; Usuario.NombreUsuario = txtNombreUsuario.Text; Usuario.Contrasenia = UtilLocal.Encriptar(txtContrasenia.Text); Usuario.FechaModificacion = DateTime.Now; Usuario.Activo = cboEstatus.SelectedValue.Equals(1); Usuario.TipoUsuarioID = (int?)this.cmbTipoDeUsuario.SelectedValue; //alertas Usuario.AlertaCalendarioClientes = this.clbAlertas.GetItemChecked(0); Usuario.AlertaPedidos = this.clbAlertas.GetItemChecked(1); Usuario.Alerta9500 = this.clbAlertas.GetItemChecked(2); Usuario.AlertaTraspasos = this.clbAlertas.GetItemChecked(3); Usuario.AlertaDevFacturaCreditoAnt = this.clbAlertas.GetItemChecked(4); Datos.SaveOrUpdate <Usuario>(Usuario); UpdateUsuarioPerfiles(Usuario.UsuarioID, lista); } new Notificacion("Usuario Guardado exitosamente", 2 * 1000).Mostrar(Principal.Instance); usuarios.Instance.CustomInvoke <usuarios>(m => m.ActualizarListado()); } catch (Exception ex) { Util.MensajeError(ex.Message, GlobalClass.NombreApp); } this.Close(); }