private void btnNuevo_Click(object sender, EventArgs e) { ready = false; btnCancelar.Visible = true; btnRegistrar.Text = "Registrar"; cmbRol.DataSource = RolDAL.getRoles().Where(a => a.Nombre != "Main User" && a.Nombre != "Administrador").ToList(); cmbRol.DisplayMember = "Nombre"; cmbRol.ValueMember = "Id"; cmbRol.Enabled = true; txtLogin.Enabled = true; txtPass.Enabled = true; txtRepetir.Enabled = true; checkEstado.Enabled = true; btnEditarPermisos.Enabled = true; btnBuscarEmpleado.Enabled = true; txtEmpleado.Text = ""; txtLogin.Text = ""; txtPass.Text = ""; txtRepetir.Text = ""; btnNuevo.Enabled = false; dgvUsuarios.Enabled = false; btnRegistrar.Text = "Registrar"; currentUserEmp = new Useremp(); currentUserEmp.Sucursales = currentUserEmp.Sucursales == null ? new List <AcsSucursal>() : currentUserEmp.Sucursales; if (currentUserEmp.Sucursales.Count == 0) { Rol rol = cmbRol.SelectedItem as Rol; currentUserEmp.Sucursales.Add(new AcsSucursal(0, null, 0, rol.Id, Inicio.CurrentSucursal.Id, rol, null, new List <LstPermiso>())); } ready = true; }
public static bool InsertLibro(Libro item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertContrato = new MySqlCommand("Insert into libro (Nombre,Edicion,NActividades,Nivel) values (@Nombre,@Edicion,@NActividades,@Nivel)", _con, _trans); cmdInsertContrato.Parameters.AddWithValue("@Nombre", item.Nombre); cmdInsertContrato.Parameters.AddWithValue("@Edicion", item.Edicion); cmdInsertContrato.Parameters.AddWithValue("@NActividades", item.NActividades); cmdInsertContrato.Parameters.AddWithValue("@Nivel", item.Nivel); if (cmdInsertContrato.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registro libro nuevo titulado \"" + item.Nombre + "\" edicion \"" + item.Edicion + "\" nivel \"" + item.Nivel + "\"."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Libro"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
private void Usuarios_Load(object sender, EventArgs e) { try { cmbRol.DataSource = RolDAL.getRoles().Where(a => a.Nombre != "Administrador").ToList(); cmbRol.DisplayMember = "Nombre"; cmbRol.ValueMember = "Id"; users = UserempDAL.getUsersemp(); foreach (Useremp user in users) { dgvUsuarios.Rows.Add(user.Id, user.Login, user.Sucursales.Where(a => a.IdSucursal == Inicio.CurrentSucursal.Id).FirstOrDefault().Rol.Nombre); } if (dgvUsuarios.Rows.Count > 0) { currentUserEmp = users.Where(a => a.Id == (Int64)dgvUsuarios.CurrentRow.Cells[0].Value).FirstOrDefault(); txtEmpleado.Text = currentUserEmp.Contrato.Empleado.Persona.Nombre; txtLogin.Text = currentUserEmp.Login; string nombreRol = currentUserEmp.Sucursales.Where(a => a.IdSucursal == Inicio.CurrentSucursal.Id).FirstOrDefault().Rol.Nombre; for (int i = 0; i < cmbRol.Items.Count; i++) { cmbRol.SelectedIndex = (cmbRol.GetItemText(cmbRol.Items[i]) == nombreRol) ? i : cmbRol.SelectedIndex; } checkEstado.Checked = currentUserEmp.Estado == "A"; } } catch (Exception ex) { throw ex; } ready = true; }
private bool valUPDUsuario(Useremp pUsuario) { bool result = true; if (result) { if (pUsuario.Pass != "") { if (result) { if (txtPass.Text.Trim().ToUpper() != txtConfirmar.Text.Trim().ToUpper()) { result = false; MessageBox.Show("las contraseñas no coinsiden, por favor verifique los dos campos y vuelva a intentar.", "Alerta de validación", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } if (result) { if (txtPass.Text.Length < 5) { result = false; MessageBox.Show("la contraseña es muy corta, por favor elija una contraseña con 5 caracteres o más.", "Alerta de validación", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } else { MessageBox.Show("la contraseña esta vacia, por favor elija una contraseña con 5 caracteres o más.", "Alerta de validación", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } return(result); }
private void btnActualizar_Click(object sender, EventArgs e) { try { Useremp NewObject = new Useremp(user.Id, null, txtPass.Text, null, 0, new Contrato(), null); if (valUPDUsuario(NewObject)) { if (UserempDAL.UpdateUserEmp(NewObject, "pwd", Inicio.CurrentUser)) { MessageBox.Show("Contraseña actualizada exitosamente.", "Actualizacion satisfactoria", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); } else { MessageBox.Show("Ocurrio un error inesperado al intentar actualizar la contraseña, por favor cierre el formulario y vuelva a intentarlo. Si el problema persiste contacte con el desarrollador al correo [email protected].", "Registro interrumpido", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } catch (Exception ex) { string folderName = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Errores_" + Assembly.GetExecutingAssembly().GetName().Name + "_V_" + Assembly.GetExecutingAssembly().GetName().Version.ToString(); string fileName = "Exeptions_" + Name + ".txt"; Validation.FormManager frmManager = new Validation.FormManager(); frmManager.writeException(folderName, fileName, ex, "Ocurrio un error inesperado al intentar registrar el libro"); MessageBox.Show("Ocurrio un error inesperado al intentar registrar el libro, por favor cierre el formulario y vuelva a intentarlo. Si el problema persiste contacte con el desarrollador al correo " + Properties.Settings.Default.developerEmail, "Registro interrumpido", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public static bool insertDesersion(Desersion item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertDesersion = new MySqlCommand("Insert into desersion (FhRegistro, Nota, IdMatricula) values (@FhRegistro, @Nota, @IdMatricula)", _con, _trans); cmdInsertDesersion.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdInsertDesersion.Parameters.AddWithValue("@Nota", item.Nota); cmdInsertDesersion.Parameters.AddWithValue("@IdMatricula", item.IdMatricula); if (cmdInsertDesersion.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdUpdateMatricula = new MySqlCommand("Update matricula set Estado='D' where Id=@Id", _con, _trans); cmdUpdateMatricula.Parameters.AddWithValue("@Id", item.IdMatricula); if (cmdUpdateMatricula.ExecuteNonQuery() <= 0) { result = false; } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool anularEgreso(Int64 pIdEgreso, bool isParent, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdUpdateContrato = new MySqlCommand("update egreso set Estado='A' where Id=@pIdEgreso ", _con, _trans); cmdUpdateContrato.Parameters.AddWithValue("@pIdEgreso", pIdEgreso); if (cmdUpdateContrato.ExecuteNonQuery() <= 0) { result = false; } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Anuló el egreso con \"Nombre " + EgresoDAL.getEgresoById(pIdEgreso).Nombre + "\" con total de $" + EgresoDAL.getEgresoById(pIdEgreso).Total + "."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Anular Egreso"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Egreso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool habilitarCurso(Curso item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdUpdateCurso = new MySqlCommand("Update curso set Estado='A' where Id=@Id;", _con, _trans); cmdUpdateCurso.Parameters.AddWithValue("@Id", item.Id); if (cmdUpdateCurso.ExecuteNonQuery() <= 0) { result = false; } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "habilito el curso \"" + item.Nombre + "\" con un total de " + item.Libros + " libros con \"" + item.Contrato.Empleado.Persona.Nombre + "\" como encargado."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "habilitar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Curso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
private void dgvUsuarios_CurrentCellChanged(object sender, EventArgs e) { if (ready) { currentUserEmp = users.Where(a => a.Id == (Int64)dgvUsuarios.CurrentRow.Cells[0].Value).FirstOrDefault(); txtEmpleado.Text = currentUserEmp.Contrato.Empleado.Persona.Nombre; txtLogin.Text = currentUserEmp.Login; string nombreRol = currentUserEmp.Sucursales.Where(a => a.IdSucursal == Inicio.CurrentSucursal.Id).FirstOrDefault().Rol.Nombre; for (int i = 0; i < cmbRol.Items.Count; i++) { cmbRol.SelectedIndex = (cmbRol.GetItemText(cmbRol.Items[i]) == nombreRol) ? i : cmbRol.SelectedIndex; } checkEstado.Checked = currentUserEmp.Estado == "A"; } }
public static bool terminarContrato(Contrato item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdUpdateContrato = new MySqlCommand("update contrato set FhFin=CURRENT_TIME,Estado='F' where Id=@Id ", _con, _trans); cmdUpdateContrato.Parameters.AddWithValue("@Id", item.Id); if (cmdUpdateContrato.ExecuteNonQuery() <= 0) { result = false; } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Terminó Contrato del empleado con el \"Dui " + item.Empleado.Persona.Dui + "\" y el cargo " + CargoDAL.getCargos(100).Where(a => a.Id == item.IdCargo).FirstOrDefault().Nombre); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Terminar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Contrato"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } } catch (Exception) { result = false; _trans.Rollback(); _con.Close(); throw; } finally { _con.Close(); } } return(result); }
public static bool insertProducto(Producto item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertProducto = new MySqlCommand("Insert into producto (Nombre, Precio) values (@Nombre, @Precio)", _con, _trans); cmdInsertProducto.Parameters.AddWithValue("@Nombre", item.Nombre); cmdInsertProducto.Parameters.AddWithValue("@Precio", item.Precio); if (cmdInsertProducto.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool insertPersona(Persona item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertPersona = new MySqlCommand("Insert into persona (Nombre,Dui,Nit,FechaNac,Direccion) values (@Nombre,@Dui,@Nit,@FechaNac,@Direccion)", _con, _trans); cmdInsertPersona.Parameters.AddWithValue("@Nombre", item.Nombre); cmdInsertPersona.Parameters.AddWithValue("@Dui", ""); cmdInsertPersona.Parameters.AddWithValue("@Nit", ""); cmdInsertPersona.Parameters.AddWithValue("@FechaNac", DateTime.Today.ToString("yyyy/MM/dd")); cmdInsertPersona.Parameters.AddWithValue("@Direccion", ""); if (cmdInsertPersona.ExecuteNonQuery() <= 0) { result = false; } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
private void getLogin() { try { Useremp user = UserempDAL.getUseremp(txtLogin.Text, txtPass.Text); if (user != null) { if (user.Estado == "A") { Inicio inicio = new Inicio(); Inicio.CurrentUser = UserempDAL.getUseremp(txtLogin.Text, txtPass.Text); Inicio.CurrentSucursal = Inicio.CurrentUser.Sucursales.Where(a => a.IdSucursal == Properties.Settings.Default.Sucursal).FirstOrDefault().Sucursal; Inicio.CurrentYear = YearDAL.getCurrentYear(); Inicio.CurrentYear = YearDAL.getCurrentYear(); Properties.Settings.Default.LastUser = txtLogin.Text; Properties.Settings.Default.Save(); inicio.Show(); this.Hide(); } else { MessageBox.Show("Su cuenta de usuario ha expirado o se encuentra desactivada, si desea acceder al sistema comuniquese con el administrador para reactivar su cuenta de usuario. Sentimos el inconveniente", "Usuario Inhabilitado", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("El usuario o la contraseña es incorrecto", "Datos de usuario incorrectos", MessageBoxButtons.OK, MessageBoxIcon.Error); picLook.Visible = true; picLook.Enabled = true; } } catch (Exception ex) { string folderName = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Errores_" + Assembly.GetExecutingAssembly().GetName().Name + "_V_" + Assembly.GetExecutingAssembly().GetName().Version.ToString(); string fileName = "Exeptions_" + Name + ".txt"; Validation.FormManager frmManager = new Validation.FormManager(); frmManager.writeException(folderName, fileName, ex, "Ha ocurrido un error al intentar cargar la información de este control"); MessageBox.Show("Ha ocurrido un error al intentar cargar la información de este control, por favor comuniquese con el desarrollador al correo [email protected]", "Error fatal", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public static Useremp getUseremp(string pLogin, string pPass) { Useremp item = null; using (MySqlConnection _con = new Conexion().Conectar()) { try { _con.Open(); MySqlCommand cmdGetItemById = new MySqlCommand("select * from useremp where Login=@pLogin and Pass=md5(@pPass)", _con); cmdGetItemById.Parameters.AddWithValue("@pLogin", pLogin); cmdGetItemById.Parameters.AddWithValue("@pPass", pPass); MySqlDataReader _reader = cmdGetItemById.ExecuteReader(); while (_reader.Read()) { item = new Useremp( _reader.GetInt64(0), _reader.GetString(1), _reader.GetString(2), _reader.GetString(3), _reader.GetInt64(4), ContratoDAL.getContratoById(_reader.GetInt64(4)), AcsSucursalDAL.getAcsSucursalesByIdUser(_reader.GetInt64(0)) ); } _reader.Close(); } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(item); }
public static List <Useremp> getUsersemp() { List <Useremp> lista = new List <Useremp>(); using (MySqlConnection _con = new Conexion().Conectar()) { try { _con.Open(); MySqlCommand comando = new MySqlCommand("select * from useremp", _con); MySqlDataReader _reader = comando.ExecuteReader(); while (_reader.Read()) { Useremp item = new Useremp( _reader.GetInt64(0), _reader.GetString(1), _reader.GetString(2), _reader.GetString(3), _reader.GetInt64(4), ContratoDAL.getContratoById(_reader.GetInt64(4)), AcsSucursalDAL.getAcsSucursalesByIdUser(_reader.GetInt64(0)) ); lista.Add(item); } _reader.Close(); } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(lista); }
private void btnCancelar_Click(object sender, EventArgs e) { ready = false; btnNuevo.Enabled = true; btnEditarPermisos.Enabled = false; btnRegistrar.Text = "Editar"; btnCancelar.Visible = false; dgvUsuarios.Enabled = true; txtLogin.Enabled = false; txtPass.Enabled = false; txtRepetir.Enabled = false; cmbRol.Enabled = false; btnBuscarEmpleado.Enabled = false; checkEstado.Enabled = false; users = UserempDAL.getUsersemp(); dgvUsuarios.Rows.Clear(); foreach (Useremp user in users) { dgvUsuarios.Rows.Add(user.Id, user.Login, user.Sucursales.Where(a => a.IdSucursal == Inicio.CurrentSucursal.Id).FirstOrDefault().Rol.Nombre); } currentUserEmp = null; if (dgvUsuarios.Rows.Count > 0) { currentUserEmp = users.Where(a => a.Id == (Int64)dgvUsuarios.CurrentRow.Cells[0].Value).FirstOrDefault(); txtEmpleado.Text = currentUserEmp.Contrato.Empleado.Persona.Nombre; txtLogin.Text = currentUserEmp.Login; string nombreRol = currentUserEmp.Sucursales.Where(a => a.IdSucursal == Inicio.CurrentSucursal.Id).FirstOrDefault().Rol.Nombre; for (int i = 0; i < cmbRol.Items.Count; i++) { cmbRol.SelectedIndex = (cmbRol.GetItemText(cmbRol.Items[i]) == nombreRol) ? i : cmbRol.SelectedIndex; } checkEstado.Checked = currentUserEmp.Estado == "A"; } ready = true; }
public static bool updateMatricula(Matricula item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { Matricula matricula = getMatriculaById(item.Id); MySqlCommand cmdUpdatePersona = new MySqlCommand("update persona set Nombre=@Nombre,Dui=@Dui,Nit=@Nit,Direccion=@Direccion,FechaNac=@FechaNac where Id=@Id", _con, _trans); cmdUpdatePersona.Parameters.AddWithValue("@Id", item.Estudiante.Persona.Id); cmdUpdatePersona.Parameters.AddWithValue("@Nombre", item.Estudiante.Persona.Nombre); cmdUpdatePersona.Parameters.AddWithValue("@Dui", item.Estudiante.Persona.Dui); cmdUpdatePersona.Parameters.AddWithValue("@Nit", item.Estudiante.Persona.Nit); cmdUpdatePersona.Parameters.AddWithValue("@Direccion", item.Estudiante.Persona.Direccion); cmdUpdatePersona.Parameters.AddWithValue("@FechaNac", Convert.ToDateTime(item.Estudiante.Persona.FechaNac).ToString("yyyy-MM-dd")); if (cmdUpdatePersona.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdUpdateEstudiante = new MySqlCommand("update estudiante set ApPaterno=@ApPaterno,ApMaterno=@ApMaterno, " + "Telefono=@Telefono,Enfermedad=@Enfermedad,Correo=@Correo,TelEmergencia=@TelEmergencia,ParentEmergencia=@ParentEmergencia,IdPersona=@IdPersona " + "where Id=@Id", _con, _trans); cmdUpdateEstudiante.Parameters.AddWithValue("@Id", item.Estudiante.Id); cmdUpdateEstudiante.Parameters.AddWithValue("@ApPaterno", item.Estudiante.ApPaterno); cmdUpdateEstudiante.Parameters.AddWithValue("@ApMaterno", item.Estudiante.ApMaterno); cmdUpdateEstudiante.Parameters.AddWithValue("@Telefono", item.Estudiante.Telefono); cmdUpdateEstudiante.Parameters.AddWithValue("@Enfermedad", item.Estudiante.Enfermedad); cmdUpdateEstudiante.Parameters.AddWithValue("@Correo", item.Estudiante.Correo); cmdUpdateEstudiante.Parameters.AddWithValue("@TelEmergencia", item.Estudiante.TelEmergencia); cmdUpdateEstudiante.Parameters.AddWithValue("@ParentEmergencia", item.Estudiante.ParentEmergencia); cmdUpdateEstudiante.Parameters.AddWithValue("@IdPersona", item.Estudiante.IdPersona); if (cmdUpdateEstudiante.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdUpdateMatricula = new MySqlCommand("update matricula set FhRegistro=@FhRegistro,Becado=@Becado,DiaLimite=@DiaLimite,IdCurso=@IdCurso where Id=@Id", _con, _trans); cmdUpdateMatricula.Parameters.AddWithValue("@Id", item.Id); cmdUpdateMatricula.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdUpdateMatricula.Parameters.AddWithValue("@Becado", item.Becado); cmdUpdateMatricula.Parameters.AddWithValue("@DiaLimite", item.DiaLimite); cmdUpdateMatricula.Parameters.AddWithValue("@IdCurso", item.IdCurso); if (cmdUpdateMatricula.ExecuteNonQuery() <= 0) { result = false; } if (result) { foreach (Detmatricula detMatricula in item.Padres) { if (detMatricula.Id == 0) { if (detMatricula.encargado.Id == 0) { MySqlCommand cmdInsertPersona = new MySqlCommand("Insert into persona (Nombre,Dui,Nit,Direccion) values (@Nombre, @Dui, @Nit, @Direccion)", _con, _trans); cmdInsertPersona.Parameters.AddWithValue("@Nombre", detMatricula.encargado.Persona.Nombre); cmdInsertPersona.Parameters.AddWithValue("@Dui", ""); cmdInsertPersona.Parameters.AddWithValue("@Nit", ""); cmdInsertPersona.Parameters.AddWithValue("@Direccion", detMatricula.encargado.Persona.Direccion); if (cmdInsertPersona.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detMatricula.encargado.Persona.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); detMatricula.encargado.IdPersona = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertEncargado = new MySqlCommand("Insert into encargado (LugarTrabajo,Trabajo,Telefono,IdPersona) values (@LugarTrabajo,@Trabajo,@Telefono,@IdPersona)", _con, _trans); cmdInsertEncargado.Parameters.AddWithValue("@LugarTrabajo", detMatricula.encargado.LugarTrabajo); cmdInsertEncargado.Parameters.AddWithValue("@Trabajo", detMatricula.encargado.Trabajo); cmdInsertEncargado.Parameters.AddWithValue("@Telefono", detMatricula.encargado.Telefono); cmdInsertEncargado.Parameters.AddWithValue("@IdPersona", detMatricula.encargado.IdPersona); if (cmdInsertEncargado.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detMatricula.IdEncargado = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); detMatricula.encargado.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertDetMatricula = new MySqlCommand("Insert into detmatricula (Parentesco,IdMatricula,IdEncargado) values (@Parentesco,@IdMatricula,@IdEncargado)", _con, _trans); cmdInsertDetMatricula.Parameters.AddWithValue("@Parentesco", detMatricula.Parentesco); cmdInsertDetMatricula.Parameters.AddWithValue("@IdMatricula", item.Id); cmdInsertDetMatricula.Parameters.AddWithValue("@IdEncargado", detMatricula.IdEncargado); if (cmdInsertDetMatricula.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detMatricula.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } else { MySqlCommand cmdInsertDetMatricula = new MySqlCommand("Insert into detmatricula (Parentesco,IdMatricula,IdEncargado) values (@Parentesco,@IdMatricula,@IdEncargado)", _con, _trans); cmdInsertDetMatricula.Parameters.AddWithValue("@Parentesco", detMatricula.Parentesco); cmdInsertDetMatricula.Parameters.AddWithValue("@IdMatricula", detMatricula.IdMatricula); cmdInsertDetMatricula.Parameters.AddWithValue("@IdEncargado", detMatricula.IdEncargado); if (cmdInsertDetMatricula.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detMatricula.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } } else { //actualizar persona MySqlCommand cmdUpdatePersonaEnc = new MySqlCommand("update persona set Nombre=@Nombre,Direccion=@Direccion where Id=@Id", _con, _trans); cmdUpdatePersonaEnc.Parameters.AddWithValue("@Id", detMatricula.encargado.Persona.Id); cmdUpdatePersonaEnc.Parameters.AddWithValue("@Nombre", detMatricula.encargado.Persona.Nombre); cmdUpdatePersonaEnc.Parameters.AddWithValue("@Direccion", detMatricula.encargado.Persona.Direccion); if (cmdUpdatePersonaEnc.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdUpdateEncargado = new MySqlCommand("update encargado set LugarTrabajo=@LugarTrabajo,Trabajo=@Trabajo,Telefono=@Telefono where Id=@Id", _con, _trans); cmdUpdateEncargado.Parameters.AddWithValue("@Id", detMatricula.encargado.Id); cmdUpdateEncargado.Parameters.AddWithValue("@LugarTrabajo", detMatricula.encargado.LugarTrabajo); cmdUpdateEncargado.Parameters.AddWithValue("@Trabajo", detMatricula.encargado.Trabajo); cmdUpdateEncargado.Parameters.AddWithValue("@Telefono", detMatricula.encargado.Telefono); if (cmdUpdateEncargado.ExecuteNonQuery() <= 0) { result = false; } } } } if (result) { DateTime date = Convert.ToDateTime(item.FhRegistro); Curso curso = CursoDAL.getCursoById(item.IdCurso); foreach (Cuota cuota in item.Cuotas) { MySqlCommand cmdInsertCuota = new MySqlCommand("update cuota set FhRegistro=@FhRegistro where Id=@pId", _con, _trans); cmdInsertCuota.Parameters.AddWithValue("@FhRegistro", Convert.ToDateTime(cuota.FhRegistro).ToString("yyyy") + "/" + Convert.ToDateTime(cuota.FhRegistro).ToString("MM") + "/" + (Validation.Validation.getMaxDayMonth(Convert.ToDateTime(cuota.FhRegistro).Month) > Convert.ToInt32(item.DiaLimite) ? item.DiaLimite : Validation.Validation.getMaxDayMonth(Convert.ToDateTime(cuota.FhRegistro).Month).ToString())); cmdInsertCuota.Parameters.AddWithValue("@pId", cuota.Id); if (cmdInsertCuota.ExecuteNonQuery() <= 0) { result = false; } } } if (result) { foreach (Detmatricula detMatricula in matricula.Padres) { if (item.Padres.Where(a => a.Id == detMatricula.Id).FirstOrDefault() == null) { MySqlCommand cmdDeleteDetMatricula = new MySqlCommand("Delete from detmatricula where Id=@pId;", _con, _trans); cmdDeleteDetMatricula.Parameters.AddWithValue("@pId", detMatricula.Id); if (cmdDeleteDetMatricula.ExecuteNonQuery() <= 0) { result = false; } } } } if (result) { Estudiante est = matricula.Estudiante; MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Actualizó la información de inscripción del alumno \"" + est.Persona.Nombre + "\" valores antiguos: \n" + "Nombre: " + est.Persona.Nombre + ", Apellido Paterno: " + est.ApPaterno + ", Apellido Materno: " + est.ApMaterno + ", Fecha de Nacimiento: " + est.Persona.FechaNac + ", " + "Enfermedad: " + est.Enfermedad + ", Dirección: " + est.Persona.Direccion + ", Correo: " + est.Correo + ", Teléfono: " + est.Telefono + ", Teléfono de emergencias: " + est.TelEmergencia + ", Parentesco o nombre: " + est.ParentEmergencia + ", Curso: " + CursoDAL.getCursoById(matricula.IdCurso).Nombre + ", Dia limite de pago: " + matricula.DiaLimite + ", Becado: " + (matricula.Becado == 0 ? "No" : "Si") + (matricula.Padres.Where(a => a.Parentesco == "Padre").FirstOrDefault() == null ? "" : ", Padre:" + matricula.Padres.Where(a => a.Parentesco == "Padre").FirstOrDefault().encargado.Persona.Nombre) + (matricula.Padres.Where(a => a.Parentesco == "Madre").FirstOrDefault() == null ? ".\n" : ", Madre: " + matricula.Padres.Where(a => a.Parentesco == "Madre").FirstOrDefault().encargado.Persona.Nombre) + "Datos Nuevos: \n" + "Nombre: " + item.Estudiante.Persona.Nombre + ", Apellido Paterno: " + item.Estudiante.ApPaterno + ", Apellido Materno: " + item.Estudiante.ApMaterno + ", Fecha de Nacimiento: " + item.Estudiante.Persona.FechaNac + ", " + "Enfermedad: " + item.Estudiante.Enfermedad + ", Dirección: " + item.Estudiante.Persona.Direccion + ", Correo: " + item.Estudiante.Correo + ", Teléfono: " + item.Estudiante.Telefono + ", Teléfono de emergencias: " + item.Estudiante.TelEmergencia + ", Parentesco o nombre: " + item.Estudiante.ParentEmergencia + ", Curso: " + CursoDAL.getCursoById(item.IdCurso).Nombre + ", Dia limite de pago: " + item.DiaLimite + ", Becado: " + (item.Becado == 0 ? "No" : "Si") + (item.Padres.Where(a => a.Parentesco == "Padre").FirstOrDefault() == null ? "" : ", Padre:" + item.Padres.Where(a => a.Parentesco == "Padre").FirstOrDefault().encargado.Persona.Nombre) + (item.Padres.Where(a => a.Parentesco == "Madre").FirstOrDefault() == null ? ".\n" : ", Madre: " + item.Padres.Where(a => a.Parentesco == "Madre").FirstOrDefault().encargado.Persona.Nombre)); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Actualizar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Curso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool updateCurso(Curso item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdUpdateCurso = new MySqlCommand("Update curso set Nombre=@Nombre, Seccion=@Seccion, Publico=@Publico, Desde=@Desde, Hasta=@Hasta, Estado=@Estado, IdContrato=@IdContrato where Id=@Id;", _con, _trans); cmdUpdateCurso.Parameters.AddWithValue("@Id", item.Id); cmdUpdateCurso.Parameters.AddWithValue("@Nombre", item.Nombre); cmdUpdateCurso.Parameters.AddWithValue("@Seccion", item.Seccion); cmdUpdateCurso.Parameters.AddWithValue("@Publico", item.Publico); cmdUpdateCurso.Parameters.AddWithValue("@Desde", item.Desde); cmdUpdateCurso.Parameters.AddWithValue("@Hasta", item.Hasta); cmdUpdateCurso.Parameters.AddWithValue("@Estado", item.Estado); cmdUpdateCurso.Parameters.AddWithValue("@IdContrato", item.Contrato.Id); if (cmdUpdateCurso.ExecuteNonQuery() <= 0) { result = false; } if (result) { foreach (Dia dia in DiasDAL.getDiasByIdCurso(item.Id)) { if (item.Horario.Where(a => a.Id == dia.Id).FirstOrDefault() == null) { MySqlCommand cmdDeleteDia = new MySqlCommand("Delete from dias where Id=@Id", _con, _trans); cmdDeleteDia.Parameters.AddWithValue("@Id", dia.Id); if (cmdDeleteDia.ExecuteNonQuery() <= 0) { result = false; } } } foreach (Dia dia in item.Horario.Where(a => a.Id == 0).ToList()) { MySqlCommand cmdInsertDia = new MySqlCommand("Insert into dias (Nombre,HEntrada,HSalida,IdCurso) values (@Nombre,@HEntrada,@HSalida,@IdCurso)", _con, _trans); cmdInsertDia.Parameters.AddWithValue("@Nombre", dia.Nombre); cmdInsertDia.Parameters.AddWithValue("@HEntrada", dia.HEntrada); cmdInsertDia.Parameters.AddWithValue("@HSalida", dia.HSalida); cmdInsertDia.Parameters.AddWithValue("@IdCurso", item.Id); if (cmdInsertDia.ExecuteNonQuery() <= 0) { result = false; } } } if (result) { foreach (Detcurso detcurso in DetCursoDAL.getDetscursoByIdCurso(item.Id)) { if (item.Libros.Where(a => a.Id == detcurso.Id).FirstOrDefault() == null) { MySqlCommand cmdDeleteDetCurso = new MySqlCommand("update detcurso set Estado='E' where Id=@Id", _con, _trans); cmdDeleteDetCurso.Parameters.AddWithValue("@Id", detcurso.Id); if (cmdDeleteDetCurso.ExecuteNonQuery() <= 0) { result = false; } } } foreach (Detcurso detcurso in item.Libros.Where(a => a.Id == 0).ToList()) { MySqlCommand cmdInsertDia = new MySqlCommand("Insert into detcurso (IdLibro,IdCurso) values (@IdLibro,@IdCurso)", _con, _trans); cmdInsertDia.Parameters.AddWithValue("@IdLibro", detcurso.IdLibro); cmdInsertDia.Parameters.AddWithValue("@IdCurso", item.Id); if (cmdInsertDia.ExecuteNonQuery() <= 0) { result = false; } } } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registro el curso \"" + item.Nombre + "\" con un total de " + item.Libros + " libros y selecciono a \"" + item.Contrato.Empleado.Persona.Nombre + "\" como encargado."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Curso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool insertCurso(Curso item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertCurso = new MySqlCommand("Insert into curso (Nombre,Seccion,Publico,Desde,Hasta,Estado,IdContrato,IdSucursal,IdYear) values (@Nombre,@Seccion,@Publico,@Desde,@Hasta,@Estado,@IdContrato,@IdSucursal,@IdYear)", _con, _trans); cmdInsertCurso.Parameters.AddWithValue("@Nombre", item.Nombre); cmdInsertCurso.Parameters.AddWithValue("@Seccion", item.Seccion); cmdInsertCurso.Parameters.AddWithValue("@Publico", item.Publico); cmdInsertCurso.Parameters.AddWithValue("@Desde", item.Desde); cmdInsertCurso.Parameters.AddWithValue("@Hasta", item.Hasta); cmdInsertCurso.Parameters.AddWithValue("@Estado", item.Estado); cmdInsertCurso.Parameters.AddWithValue("@IdContrato", item.Contrato.Id); cmdInsertCurso.Parameters.AddWithValue("@IdSucursal", item.IdSucursal); cmdInsertCurso.Parameters.AddWithValue("@IdYear", item.IdYear); if (cmdInsertCurso.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } if (result) { foreach (Dia dia in item.Horario) { MySqlCommand cmdInsertDia = new MySqlCommand("Insert into dias (Nombre,HEntrada,HSalida,IdCurso) values (@Nombre,@HEntrada,@HSalida,@IdCurso)", _con, _trans); cmdInsertDia.Parameters.AddWithValue("@Nombre", dia.Nombre); cmdInsertDia.Parameters.AddWithValue("@HEntrada", dia.HEntrada); cmdInsertDia.Parameters.AddWithValue("@HSalida", dia.HSalida); cmdInsertDia.Parameters.AddWithValue("@IdCurso", item.Id); if (cmdInsertDia.ExecuteNonQuery() <= 0) { result = false; } } } if (result) { foreach (Detcurso detcurso in item.Libros) { MySqlCommand cmdInsertDia = new MySqlCommand("Insert into detcurso (IdLibro,IdCurso) values (@IdLibro,@IdCurso)", _con, _trans); cmdInsertDia.Parameters.AddWithValue("@IdLibro", detcurso.IdLibro); cmdInsertDia.Parameters.AddWithValue("@IdCurso", item.Id); if (cmdInsertDia.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detcurso.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); for (int i = 0; i < detcurso.Libro.NActividades; i++) { MySqlCommand cmdInsertActividad = new MySqlCommand("Insert into evaluacion (Nombre,Tipo,Porcentaje,IdDetCurso) values (@Nombre,@Tipo,@Porcentaje,@IdDetCurso)", _con, _trans); cmdInsertActividad.Parameters.AddWithValue("@Nombre", 1 + i == detcurso.Libro.NActividades?"Examen Final": "Evaluación " + (1 + i)); cmdInsertActividad.Parameters.AddWithValue("@Tipo", 1 + i == detcurso.Libro.NActividades ? "Examen Final" : "Evaluación "); cmdInsertActividad.Parameters.AddWithValue("@Porcentaje", ((decimal)100 / (decimal)detcurso.Libro.NActividades).ToString()); cmdInsertActividad.Parameters.AddWithValue("@IdDetCurso", detcurso.Id); if (cmdInsertActividad.ExecuteNonQuery() <= 0) { result = false; } } } } } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registro el curso \"" + item.Nombre + "\" con un total de " + item.Libros + " libros y selecciono a \"" + item.Contrato.Empleado.Persona.Nombre + "\" como encargado."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Curso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool insertEgreso(Egreso item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertEgreso = new MySqlCommand("Insert into egreso (FhRegistro,Tipo,Nombre,Total,Estado,IdSucursal) values (@FhRegistro,@Tipo,@Nombre,@Total,@Estado,@IdSucursal)", _con, _trans); if (item.Id != 0) { cmdInsertEgreso = new MySqlCommand("Update egreso set FhRegistro=@FhRegistro,Tipo=@Tipo,Nombre=@Nombre,Total=@Total where Id=@Id", _con, _trans); cmdInsertEgreso.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdInsertEgreso.Parameters.AddWithValue("@Tipo", item.Tipo); cmdInsertEgreso.Parameters.AddWithValue("@Nombre", item.Nombre); cmdInsertEgreso.Parameters.AddWithValue("@Total", item.Total); cmdInsertEgreso.Parameters.AddWithValue("@Id", item.Id); } else { cmdInsertEgreso.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdInsertEgreso.Parameters.AddWithValue("@Tipo", item.Tipo); cmdInsertEgreso.Parameters.AddWithValue("@Nombre", item.Nombre); cmdInsertEgreso.Parameters.AddWithValue("@Total", item.Total); cmdInsertEgreso.Parameters.AddWithValue("@Estado", "C"); cmdInsertEgreso.Parameters.AddWithValue("@IdSucursal", item.IdSucursal); } if (cmdInsertEgreso.ExecuteNonQuery() <= 0) { result = false; } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registró el egreso con \"Nombre " + item.Nombre + "\" de \"Tipo " + item.Tipo + "\" y con total de $" + item.Total + "."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar Egreso"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Egreso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
private void btnFinalizar_Click(object sender, EventArgs e) { try { List <AcsSucursal> sucursales = new List <AcsSucursal>(); sucursales.Add(new AcsSucursal(0, null, 0, 0, 0, new Rol(0, "Main User"), new Sucursal(0, null, txtNombreSucursal.Text, txtDireccionSucursal.Text), new List <LstPermiso>())); Useremp usuario = new Useremp(0, "Administrador", txtPass.Text, "A", 0, new Contrato( 0, "", DateTime.Now.ToString("yyyy/MM/dd"), "", "A", 1, 0, 0, new Cargo( 0, "", "Administración" ), new Empleado( 0, "", txtTelefono.Text, "", null, 0, new Persona( 0, txtNombre.Text, txtDui.Text, txtNit.Text, "", dtpFechaNac.Value.ToString("yyyy/MM/dd") )) ), sucursales ); if (UserempDAL.InsertUserEmpConf(usuario, new Sucursal(0, "", txtNombreSucursal.Text, txtDireccionSucursal.Text, null))) { MessageBox.Show("¡Felicidades ya puede comenzar a utilizar el sistema! Las configuariones han sido guardadas exitosamente.", "Registro satisfactorio", MessageBoxButtons.OK, MessageBoxIcon.Information); Exit = false; this.Close(); } else { MessageBox.Show("Ocurrio un error inesperado al intentar registrar las conficguraciones, por favor cierre el formulario y vuelva a intentarlo. Si el problema persiste contacte con el desarrollador al correo [email protected].", "Registro interrumpido", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { string folderName = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Errores_" + Assembly.GetExecutingAssembly().GetName().Name + "_V_" + Assembly.GetExecutingAssembly().GetName().Version.ToString(); string fileName = "Exeptions_" + Name + ".txt"; Validation.FormManager frmManager = new Validation.FormManager(); frmManager.writeException(folderName, fileName, ex, "Ocurrio un error inesperado al intentar registrar ls configuraciones iniciales del sistema"); MessageBox.Show("Ocurrio un error inesperado al intentar registrar ls configuraciones iniciales del sistema, por favor cierre el formulario y vuelva a intentarlo. Si el problema persiste contacte con el desarrollador al correo " + Properties.Settings.Default.developerEmail, "Registro interrumpido", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public static bool InsertFullContrato(Contrato item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { Empleado empleado = null; MySqlCommand cmdBuscarEmpleado = new MySqlCommand("select e.* from empleado as e inner join persona as p on p.Id = e.IdPersona where Dui=@Dui or Nit=@Nit", _con, _trans); cmdBuscarEmpleado.Parameters.AddWithValue("@Dui", item.Empleado.Persona.Dui); cmdBuscarEmpleado.Parameters.AddWithValue("@Nit", item.Empleado.Persona.Nit); MySqlDataReader _readerEmpleado = cmdBuscarEmpleado.ExecuteReader(); while (_readerEmpleado.Read()) { empleado = new Empleado(_readerEmpleado.GetInt64(0), _readerEmpleado.GetString(1), _readerEmpleado.GetString(2), _readerEmpleado.GetString(3), CvDAL.getCvByIdEmpleado(_readerEmpleado.GetInt64(0)), _readerEmpleado.GetInt64(4), PersonaDAL.getPersonaById(_readerEmpleado.GetInt64(4)) ); } _readerEmpleado.Close(); if (empleado == null) { MySqlCommand cmdInsertPersona = new MySqlCommand("Insert into persona (Nombre,Dui,Nit,FechaNac,Direccion) values (@Nombre,@Dui,@Nit,@FechaNac,@Direccion)", _con, _trans); cmdInsertPersona.Parameters.AddWithValue("@Nombre", item.Empleado.Persona.Nombre); cmdInsertPersona.Parameters.AddWithValue("@Dui", item.Empleado.Persona.Dui); cmdInsertPersona.Parameters.AddWithValue("@Nit", item.Empleado.Persona.Nit); cmdInsertPersona.Parameters.AddWithValue("@FechaNac", item.Empleado.Persona.FechaNac); cmdInsertPersona.Parameters.AddWithValue("@Direccion", item.Empleado.Persona.Direccion); if (cmdInsertPersona.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Empleado.Persona.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertEmpleado = new MySqlCommand("Insert into empleado (Telefono,Correo,IdPersona) values (@Telefono,@Correo,@IdPersona)", _con, _trans); cmdInsertEmpleado.Parameters.AddWithValue("@Telefono", item.Empleado.Telefono); cmdInsertEmpleado.Parameters.AddWithValue("@Correo", item.Empleado.Correo); cmdInsertEmpleado.Parameters.AddWithValue("@IdPersona", item.Empleado.Persona.Id); if (cmdInsertEmpleado.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Empleado.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertContrato = new MySqlCommand("Insert into contrato (FhInicio,FhFin,Estado,IdCargo,IdEmpleado,IdSucursal) values (@FhInicio,@FhFin,@Estado,@IdCargo,@IdEmpleado,@IdSucursal)", _con, _trans); cmdInsertContrato.Parameters.AddWithValue("@FhInicio", DateTime.Now.ToString("yyyy-MM-dd")); cmdInsertContrato.Parameters.AddWithValue("@FhFin", item.FhFin); cmdInsertContrato.Parameters.AddWithValue("@Estado", "A"); cmdInsertContrato.Parameters.AddWithValue("@IdCargo", item.IdCargo); cmdInsertContrato.Parameters.AddWithValue("@IdEmpleado", item.Empleado.Id); cmdInsertContrato.Parameters.AddWithValue("@IdSucursal", item.IdSucursal); if (cmdInsertContrato.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registro empleado con el \"Dui " + item.Empleado.Persona.Dui + "\" contratado con el cargo de " + CargoDAL.getCargos(100).Where(a => a.Id == item.IdCargo).FirstOrDefault().Nombre); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Empleado"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } } else { MySqlCommand cmdUpdatePersona = new MySqlCommand("update persona set Nombre=@Nombre,Dui=@Dui,Nit=@Nit,Direccion=@Direccion,FechaNac=@FechaNac where Id=@Id", _con, _trans); cmdUpdatePersona.Parameters.AddWithValue("@Id", item.Empleado.Persona.Id); cmdUpdatePersona.Parameters.AddWithValue("@Nombre", item.Empleado.Persona.Nombre); cmdUpdatePersona.Parameters.AddWithValue("@Dui", item.Empleado.Persona.Dui); cmdUpdatePersona.Parameters.AddWithValue("@Nit", item.Empleado.Persona.Nit); cmdUpdatePersona.Parameters.AddWithValue("@Direccion", item.Empleado.Persona.Direccion); cmdUpdatePersona.Parameters.AddWithValue("@FechaNac", Convert.ToDateTime(item.Empleado.Persona.FechaNac).ToString("yyyy-MM-dd")); if (cmdUpdatePersona.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdUpdateEmpleado = new MySqlCommand("update empleado set Telefono=@Telefono,Correo=@Correo where Id=@Id", _con, _trans); cmdUpdateEmpleado.Parameters.AddWithValue("@Id", item.Empleado.Id); cmdUpdateEmpleado.Parameters.AddWithValue("@Telefono", item.Empleado.Telefono); cmdUpdateEmpleado.Parameters.AddWithValue("@Correo", item.Empleado.Correo); if (cmdUpdateEmpleado.ExecuteNonQuery() <= 0) { result = false; } item.Empleado.Persona.Id = empleado.IdPersona; item.Empleado.Id = empleado.Id; MySqlCommand cmdInsertContrato = new MySqlCommand("Insert into contrato (FhRegistro,FhInicio,IdCargo,IdEmpleado,IdSucursal) values (@FhRegistro,@FhInicio,@IdCargo,@IdEmpleado,@IdSucursal)", _con, _trans); cmdInsertContrato.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdInsertContrato.Parameters.AddWithValue("@FhInicio", item.FhInicio); cmdInsertContrato.Parameters.AddWithValue("@IdEmpleado", item.Empleado.Id); cmdInsertContrato.Parameters.AddWithValue("@IdSucursal", item.IdSucursal); cmdInsertContrato.Parameters.AddWithValue("@IdCargo", item.Cargo.Id); if (cmdInsertContrato.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registro un contrato nuevo al empleado con el Dui " + item.Empleado.Persona.Dui + " con el cargo de " + CargoDAL.getCargos(100).Where(a => a.Id == item.IdCargo).FirstOrDefault().Nombre); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Contrato"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool updateEmpleado(Contrato item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdUpdatePersona = new MySqlCommand("update persona set Nombre=@Nombre,Dui=@Dui,Nit=@Nit,Direccion=@Direccion,FechaNac=@FechaNac where Id=@Id", _con, _trans); cmdUpdatePersona.Parameters.AddWithValue("@Id", item.Empleado.Persona.Id); cmdUpdatePersona.Parameters.AddWithValue("@Nombre", item.Empleado.Persona.Nombre); cmdUpdatePersona.Parameters.AddWithValue("@Dui", item.Empleado.Persona.Dui); cmdUpdatePersona.Parameters.AddWithValue("@Nit", item.Empleado.Persona.Nit); cmdUpdatePersona.Parameters.AddWithValue("@Direccion", item.Empleado.Persona.Direccion); cmdUpdatePersona.Parameters.AddWithValue("@FechaNac", item.Empleado.Persona.FechaNac); if (cmdUpdatePersona.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdUpdateEmpleado = new MySqlCommand("update empleado set Telefono=@Telefono,Correo=@Correo where Id=@Id", _con, _trans); cmdUpdateEmpleado.Parameters.AddWithValue("@Id", item.Empleado.Id); cmdUpdateEmpleado.Parameters.AddWithValue("@Telefono", item.Empleado.Telefono); cmdUpdateEmpleado.Parameters.AddWithValue("@Correo", item.Empleado.Correo); if (cmdUpdateEmpleado.ExecuteNonQuery() <= 0) { result = false; } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Actualizó empleado con el \"Dui " + item.Empleado.Persona.Dui + "\" con el cargo de " + CargoDAL.getCargos(100).Where(a => a.Id == item.IdCargo).FirstOrDefault().Nombre); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Actualizar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Empleado"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return result; }
public static bool UpdateUserEmp(Useremp item, string opc, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdUpdateUserEmp = null; MySqlCommand cmdInsertAuditoria = null; switch (opc) { case "pwd": cmdUpdateUserEmp = new MySqlCommand("update useremp set Pass=md5(@Pass) where Id=@Id;", _con, _trans); cmdUpdateUserEmp.Parameters.AddWithValue("@Pass", item.Pass); cmdUpdateUserEmp.Parameters.AddWithValue("@Id", item.Id); if (cmdUpdateUserEmp.ExecuteNonQuery() <= 0) { result = false; } cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Actualizó la contraseña para el usuario con Id \"" + item.Id + "\", Login \"" + item.Login + "\"."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Actualización de contraseña"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Usuario"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } break; case "all": if (item.Pass == "") { cmdUpdateUserEmp = new MySqlCommand("update useremp set Login=@Login,Estado=@Estado,IdContrato=@IdContrato where Id=@Id;", _con, _trans); cmdUpdateUserEmp.Parameters.AddWithValue("@Login", item.Login); cmdUpdateUserEmp.Parameters.AddWithValue("@IdContrato", item.IdContrato); cmdUpdateUserEmp.Parameters.AddWithValue("@Estado", item.Estado); cmdUpdateUserEmp.Parameters.AddWithValue("@Id", item.Id); if (cmdUpdateUserEmp.ExecuteNonQuery() <= 0) { result = false; } cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Actualizó la información para el usuario con Id \"" + item.Id + "\", Login \"" + item.Login + "\"."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Actualización de información"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Usuario"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } else { cmdUpdateUserEmp = new MySqlCommand("update useremp set Login=@Login,Estado=@Estado,IdContrato=@IdContrato,Pass=md5(@Pass) where Id=@Id;", _con, _trans); cmdUpdateUserEmp.Parameters.AddWithValue("@Login", item.Login); cmdUpdateUserEmp.Parameters.AddWithValue("@IdContrato", item.IdContrato); cmdUpdateUserEmp.Parameters.AddWithValue("@Pass", item.Pass); cmdUpdateUserEmp.Parameters.AddWithValue("@Estado", item.Estado); cmdUpdateUserEmp.Parameters.AddWithValue("@Id", item.Id); if (cmdUpdateUserEmp.ExecuteNonQuery() <= 0) { result = false; } cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Actualizó la información para el usuario con Id \"" + item.Id + "\", Login \"" + item.Login + "\"."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Actualización de información y contraseña"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Usuario"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } foreach (AcsSucursal suc in item.Sucursales) { foreach (LstPermiso obj in suc.Permisos) { if (obj.Id == 0) { cmdUpdateUserEmp = new MySqlCommand("insert into lstpermiso(null,null,@Otorgado,@IdPermiso,@IdAcsSucursal);", _con, _trans); cmdUpdateUserEmp.Parameters.AddWithValue("@Otorgado", obj.Otorgado ? 1 : 0); cmdUpdateUserEmp.Parameters.AddWithValue("@IdPermiso", obj.IdPermiso); cmdUpdateUserEmp.Parameters.AddWithValue("@IdAcsSucursal", suc.Id); if (cmdUpdateUserEmp.ExecuteNonQuery() <= 0) { result = false; } cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Se inserto un permiso con Id \"" + obj.Id + "\" descripción \"" + obj.Permiso.Nombre + "\" al Login \"" + item.Login + "\"."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Inserción de Permiso"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Permiso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } else { cmdUpdateUserEmp = new MySqlCommand("update lstpermiso set Otorgado=@Otorgado where Id=@Id;", _con, _trans); cmdUpdateUserEmp.Parameters.AddWithValue("@Otorgado", obj.Otorgado ? 1 : 0); cmdUpdateUserEmp.Parameters.AddWithValue("@Id", obj.Id); if (cmdUpdateUserEmp.ExecuteNonQuery() <= 0) { result = false; } if (LstPermisoDAL.getLstPermisoById(obj.Id).Otorgado != obj.Otorgado) { cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Se actualizó el registro de lstpermiso con Id \"" + obj.Id + "\" del permiso con descripción \"" + obj.Permiso.Nombre + "\" al Login \"" + item.Login + "\" ."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Actualización de Permisos"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Permiso"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } } } } if (cmdUpdateUserEmp.ExecuteNonQuery() <= 0) { result = false; } break; default: break; } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool InsertUserEmpConf(Useremp item, Sucursal itemSucursal) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertRol = new MySqlCommand("Insert into rol (Nombre) values (@Nombre)", _con, _trans); cmdInsertRol.Parameters.AddWithValue("@Nombre", item.Sucursales[0].Rol.Nombre); if (cmdInsertRol.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Sucursales[0].IdRol = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Sucursales[0].Rol.Id = item.Sucursales[0].IdRol; } MySqlCommand cmdInsertRoles = new MySqlCommand("Insert into rol values (2,'Secretario/a'),(3,'Docente'),(4,'Administrador')", _con, _trans); if (cmdInsertRoles.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdInsertSucursal = new MySqlCommand("Insert into sucursal (Nombre,Direccion) values (@Nombre,@Direccion)", _con, _trans); cmdInsertRol.Parameters.AddWithValue("@Nombre", itemSucursal.Nombre); cmdInsertRol.Parameters.AddWithValue("@Direccion", itemSucursal.Direccion); if (cmdInsertRol.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Sucursales[0].IdSucursal = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Sucursales[0].Sucursal.Id = item.Sucursales[0].IdSucursal; } MySqlCommand cmdInsertPersona = new MySqlCommand("Insert into persona (Nombre,Dui,Nit,FechaNac,Direccion) values (@Nombre,@Dui,@Nit,@FechaNac,@Direccion)", _con, _trans); cmdInsertPersona.Parameters.AddWithValue("@Nombre", item.Contrato.Empleado.Persona.Nombre); cmdInsertPersona.Parameters.AddWithValue("@Dui", item.Contrato.Empleado.Persona.Dui); cmdInsertPersona.Parameters.AddWithValue("@Nit", item.Contrato.Empleado.Persona.Nit); cmdInsertPersona.Parameters.AddWithValue("@FechaNac", item.Contrato.Empleado.Persona.FechaNac); cmdInsertPersona.Parameters.AddWithValue("@Direccion", item.Contrato.Empleado.Persona.Direccion); if (cmdInsertPersona.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Contrato.Empleado.Persona.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Contrato.Empleado.IdPersona = item.Contrato.Empleado.Persona.Id; } MySqlCommand cmdInsertEmpleado = new MySqlCommand("Insert into empleado (Telefono,Correo,IdPersona) values (@Telefono,@Correo,@IdPersona)", _con, _trans); cmdInsertEmpleado.Parameters.AddWithValue("@Telefono", item.Contrato.Empleado.Telefono); cmdInsertEmpleado.Parameters.AddWithValue("@Correo", item.Contrato.Empleado.Correo); cmdInsertEmpleado.Parameters.AddWithValue("@IdPersona", item.Contrato.Empleado.Persona.Id); if (cmdInsertEmpleado.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Contrato.Empleado.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Contrato.IdEmpleado = item.Contrato.Empleado.Id; } MySqlCommand cmdInsertCargo = new MySqlCommand("Insert into cargo (Nombre) values (@Nombre)", _con, _trans); cmdInsertCargo.Parameters.AddWithValue("@Nombre", item.Contrato.Cargo.Nombre); if (cmdInsertCargo.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Contrato.Cargo.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Contrato.IdCargo = item.Contrato.Cargo.Id; } MySqlCommand cmdInsertContrato = new MySqlCommand("Insert into contrato (FhInicio,Estado,IdCargo,IdEmpleado) values (@FhInicio,@Estado,@IdCargo,@IdEmpleado)", _con, _trans); cmdInsertContrato.Parameters.AddWithValue("@FhInicio", DateTime.Now.ToString("yyyy-MM-dd")); cmdInsertContrato.Parameters.AddWithValue("@Estado", "A"); cmdInsertContrato.Parameters.AddWithValue("@IdCargo", item.Contrato.IdCargo); cmdInsertContrato.Parameters.AddWithValue("@IdEmpleado", item.Contrato.Empleado.Id); if (cmdInsertContrato.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.IdContrato = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Contrato.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertUsuarioEmp = new MySqlCommand("Insert into useremp(Login,Pass,IdContrato)" + " values (@Login,md5(@Pass),@IdContrato)", _con, _trans); cmdInsertUsuarioEmp.Parameters.AddWithValue("@Login", item.Login); cmdInsertUsuarioEmp.Parameters.AddWithValue("@Pass", item.Pass); cmdInsertUsuarioEmp.Parameters.AddWithValue("@IdContrato", item.IdContrato); if (cmdInsertUsuarioEmp.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdInsertCargos = new MySqlCommand("Insert into cargo (Nombre) values ('Director');Insert into cargo (Nombre) values ('Docente');Insert into cargo (Nombre) values ('Secretario/a')", _con, _trans); if (cmdInsertCargos.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdInsertAcsSucursal = new MySqlCommand("Insert into acssucursal (IdUserEmp,IdRol,IdSucursal) values (@IdUserEmp,@IdRol,@IdSucursal)", _con, _trans); cmdInsertAcsSucursal.Parameters.AddWithValue("@IdUserEmp", item.Id); cmdInsertAcsSucursal.Parameters.AddWithValue("@IdRol", item.Sucursales[0].IdRol); cmdInsertAcsSucursal.Parameters.AddWithValue("@IdSucursal", item.Sucursales[0].IdSucursal); if (cmdInsertAcsSucursal.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Sucursales[0].Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } // asignacion de permisos al acceso de sucursal MySqlCommand cmdInsertPermisos = new MySqlCommand("Insert into permiso values" + "(1,'Gestionar Matriculas','Gestionar Matriculas')," + "(2,'Matricular Estudiantes','Gestionar Matriculas')," + "(3,'Editar Matriculas','Gestionar Matriculas')," + "(4,'Desertar Estudiantes','Gestionar Matriculas')," + "(5,'Gestionar Empleados','Gestionar Empleados')," + "(6,'Crear Empleados','Gestionar Empleados')," + "(7,'Editar Empleados','Gestionar Empleados')," + "(8,'Crear Contratos','Gestionar Empleados')," + "(9,'Editar Contratos','Gestionar Empleados')," + "(10,'Terminar Contratos','Gestionar Empleados')," + "(11,'Gestionar Cursos','Gestionar Cursos')," + "(12,'Crear Cursos','Gestionar Cursos')," + "(13,'Editar Cursos','Gestionar Cursos')," + "(14,'Anular Cursos','Gestionar Cursos')," + "(15,'Gestionar Ingresos','Gestionar Ingresos')," + "(16,'Registrar Ingresos','Gestionar Ingresos')," + "(17,'Anular Ingresos','Gestionar Ingresos')," + "(18,'Exportar Ingresos y Egresos del mes','Gestionar Ingresos')," + "(19,'Gestionar Egresos','Gestionar Egresos')," + "(20,'Registrar Egresos','Gestionar Egresos')," + "(21,'Editar Egresos','Gestionar Egresos')," + "(22,'Anular Egresos','Gestionar Egresos')," + "(23,'Gestionar Ajustes del Sistema','Gestionar Ajustes del Sistema')," + "(24,'Configurar Conexión de base de datos','Gestionar Ajustes del Sistema')," + "(25,'Importar base de datos','Gestionar Ajustes del Sistema')," + "(26,'Exportar base de datos','Gestionar Ajustes del Sistema')" , _con, _trans); if (cmdInsertUsuarioEmp.ExecuteNonQuery() <= 0) { result = false; } List <Permiso> permisos = PermisoDAL.getPermisos(); foreach (Permiso obj in permisos) { MySqlCommand cmdInsertLstPermiso = new MySqlCommand("Insert into lstpermiso values (null,CURRENT_TIMESTAMP,1,@Permiso,@AcsSucursal)", _con, _trans); cmdInsertContrato.Parameters.AddWithValue("@Permiso", obj.Id); cmdInsertContrato.Parameters.AddWithValue("@AcsSucursal", item.Sucursales[0].Id); if (cmdInsertCargos.ExecuteNonQuery() <= 0) { result = false; } } MySqlCommand cmdInsertLstPermisoRol1 = new MySqlCommand("Insert into lstpermisorol values " + "(null,CURRENT_TIMESTAMP,1,1)," + "(null,CURRENT_TIMESTAMP,1,2)," + "(null,CURRENT_TIMESTAMP,1,3)," + "(null,CURRENT_TIMESTAMP,1,4)," + "(null,CURRENT_TIMESTAMP,1,5)," + "(null,CURRENT_TIMESTAMP,1,6)," + "(null,CURRENT_TIMESTAMP,1,7)," + "(null,CURRENT_TIMESTAMP,1,8)," + "(null,CURRENT_TIMESTAMP,1,9)," + "(null,CURRENT_TIMESTAMP,1,10)," + "(null,CURRENT_TIMESTAMP,1,11)," + "(null,CURRENT_TIMESTAMP,1,12)," + "(null,CURRENT_TIMESTAMP,1,13)," + "(null,CURRENT_TIMESTAMP,1,14)," + "(null,CURRENT_TIMESTAMP,1,15)," + "(null,CURRENT_TIMESTAMP,1,16)," + "(null,CURRENT_TIMESTAMP,1,17)," + "(null,CURRENT_TIMESTAMP,1,18)," + "(null,CURRENT_TIMESTAMP,1,19)," + "(null,CURRENT_TIMESTAMP,1,20)," + "(null,CURRENT_TIMESTAMP,1,21)," + "(null,CURRENT_TIMESTAMP,1,22)," + "(null,CURRENT_TIMESTAMP,1,23)," + "(null,CURRENT_TIMESTAMP,1,24)," + "(null,CURRENT_TIMESTAMP,1,25)," + "(null,CURRENT_TIMESTAMP,1,26)" , _con, _trans); if (cmdInsertLstPermisoRol1.ExecuteNonQuery() <= 0) { result = false; } MySqlCommand cmdInsertLstPermisoRol2 = new MySqlCommand("Insert into lstpermisorol values " + "(null,CURRENT_TIMESTAMP,2,1)," + "(null,CURRENT_TIMESTAMP,2,2)," + "(null,CURRENT_TIMESTAMP,2,3)," + "(null,CURRENT_TIMESTAMP,2,4)," + "(null,CURRENT_TIMESTAMP,2,5)," + "(null,CURRENT_TIMESTAMP,2,6)," + "(null,CURRENT_TIMESTAMP,2,7)," + "(null,CURRENT_TIMESTAMP,2,8)," + "(null,CURRENT_TIMESTAMP,2,9)," + "(null,CURRENT_TIMESTAMP,2,11)," + "(null,CURRENT_TIMESTAMP,2,12)," + "(null,CURRENT_TIMESTAMP,2,13)," + "(null,CURRENT_TIMESTAMP,2,15)," + "(null,CURRENT_TIMESTAMP,2,16)," + "(null,CURRENT_TIMESTAMP,2,18)," + "(null,CURRENT_TIMESTAMP,2,19)," + "(null,CURRENT_TIMESTAMP,2,20)," + "(null,CURRENT_TIMESTAMP,2,21)," + "(null,CURRENT_TIMESTAMP,2,22)," + "(null,CURRENT_TIMESTAMP,2,23)" , _con, _trans); if (cmdInsertLstPermisoRol2.ExecuteNonQuery() <= 0) { result = false; } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool insertMatricula(Matricula item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { if (item.Estudiante.Id == 0) { MySqlCommand cmdInsertPersona = new MySqlCommand("Insert into persona (Nombre,Dui,Nit,FechaNac,Direccion) values (@Nombre,@Dui,@Nit,@FechaNac,@Direccion)", _con, _trans); cmdInsertPersona.Parameters.AddWithValue("@Nombre", item.Estudiante.Persona.Nombre); cmdInsertPersona.Parameters.AddWithValue("@Dui", ""); cmdInsertPersona.Parameters.AddWithValue("@Nit", ""); cmdInsertPersona.Parameters.AddWithValue("@FechaNac", item.Estudiante.Persona.FechaNac); cmdInsertPersona.Parameters.AddWithValue("@Direccion", item.Estudiante.Persona.Direccion); if (cmdInsertPersona.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Estudiante.Persona.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Estudiante.IdPersona = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertEstudiante = new MySqlCommand("Insert into estudiante (ApPaterno,ApMaterno,Telefono,Enfermedad,Correo,TelEmergencia,ParentEmergencia,IdPersona) values " + "(@ApPaterno,@ApMaterno,@Telefono,@Enfermedad,@Correo,@TelEmergencia,@ParentEmergencia,@IdPersona)", _con, _trans); cmdInsertEstudiante.Parameters.AddWithValue("@ApPaterno", item.Estudiante.ApPaterno); cmdInsertEstudiante.Parameters.AddWithValue("@ApMaterno", item.Estudiante.ApMaterno); cmdInsertEstudiante.Parameters.AddWithValue("@Telefono", item.Estudiante.Telefono); cmdInsertEstudiante.Parameters.AddWithValue("@Enfermedad", item.Estudiante.Enfermedad); cmdInsertEstudiante.Parameters.AddWithValue("@Correo", item.Estudiante.Correo); cmdInsertEstudiante.Parameters.AddWithValue("@TelEmergencia", item.Estudiante.TelEmergencia); cmdInsertEstudiante.Parameters.AddWithValue("@ParentEmergencia", item.Estudiante.ParentEmergencia); cmdInsertEstudiante.Parameters.AddWithValue("@IdPersona", item.Estudiante.IdPersona); if (cmdInsertEstudiante.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.IdEstudiante = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); item.Estudiante.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } if (result) { MySqlCommand cmdInsertMatricula = new MySqlCommand("Insert into matricula (FhRegistro,Becado,DiaLimite,IdCurso,IdEstudiante) values (@FhRegistro,@Becado,@DiaLimite,@IdCurso,@IdEstudiante)", _con, _trans); cmdInsertMatricula.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdInsertMatricula.Parameters.AddWithValue("@Becado", item.Becado); cmdInsertMatricula.Parameters.AddWithValue("@DiaLimite", item.DiaLimite); cmdInsertMatricula.Parameters.AddWithValue("@IdCurso", item.IdCurso); cmdInsertMatricula.Parameters.AddWithValue("@IdEstudiante", item.Estudiante.Id); if (cmdInsertMatricula.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } if (result) { foreach (Detmatricula detMatricula in item.Padres) { if (detMatricula.IdEncargado == 0) { MySqlCommand cmdInsertPersona = new MySqlCommand("Insert into persona (Nombre,Dui,Nit,Direccion) values (@Nombre,@Dui,@Nit,@Direccion)", _con, _trans); cmdInsertPersona.Parameters.AddWithValue("@Nombre", detMatricula.encargado.Persona.Nombre); cmdInsertPersona.Parameters.AddWithValue("@Dui", ""); cmdInsertPersona.Parameters.AddWithValue("@Nit", ""); cmdInsertPersona.Parameters.AddWithValue("@Direccion", detMatricula.encargado.Persona.Direccion); if (cmdInsertPersona.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detMatricula.encargado.Persona.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); detMatricula.encargado.IdPersona = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertEncargado = new MySqlCommand("Insert into encargado (LugarTrabajo,Trabajo,Telefono,IdPersona) values (@LugarTrabajo,@Trabajo,@Telefono,@IdPersona)", _con, _trans); cmdInsertEncargado.Parameters.AddWithValue("@LugarTrabajo", detMatricula.encargado.LugarTrabajo); cmdInsertEncargado.Parameters.AddWithValue("@Trabajo", detMatricula.encargado.Trabajo); cmdInsertEncargado.Parameters.AddWithValue("@Telefono", detMatricula.encargado.Telefono); cmdInsertEncargado.Parameters.AddWithValue("@IdPersona", detMatricula.encargado.IdPersona); if (cmdInsertEncargado.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detMatricula.IdEncargado = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); detMatricula.encargado.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } MySqlCommand cmdInsertDetMatricula = new MySqlCommand("Insert into detmatricula (Parentesco,IdMatricula,IdEncargado) values (@Parentesco,@IdMatricula,@IdEncargado)", _con, _trans); cmdInsertDetMatricula.Parameters.AddWithValue("@Parentesco", detMatricula.Parentesco); cmdInsertDetMatricula.Parameters.AddWithValue("@IdMatricula", item.Id); cmdInsertDetMatricula.Parameters.AddWithValue("@IdEncargado", detMatricula.IdEncargado); if (cmdInsertDetMatricula.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; detMatricula.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } } DateTime date = Convert.ToDateTime(item.FhRegistro); Curso curso = CursoDAL.getCursoById(item.IdCurso); int nCuotas = Math.Abs((Convert.ToDateTime(curso.Hasta).Month - Convert.ToDateTime(item.FhRegistro).Month) + 12 * (Convert.ToDateTime(curso.Hasta).Year - Convert.ToDateTime(item.FhRegistro).Year)) + 1; for (int i = 0; i < nCuotas; i++) { MySqlCommand cmdInsertCuota = new MySqlCommand("Insert into cuota (FhRegistro,Precio,Total,IdMatricula) values (@FhRegistro,@Precio,@Total,@IdMatricula)", _con, _trans); cmdInsertCuota.Parameters.AddWithValue("@FhRegistro", date.AddMonths(i).ToString("yyyy") + "/" + date.AddMonths(i).ToString("MM") + "/" + (Validation.Validation.getMaxDayMonth(Convert.ToInt32(date.AddMonths(i).ToString("MM"))) > Convert.ToInt32(item.DiaLimite) ? item.DiaLimite : Validation.Validation.getMaxDayMonth(Convert.ToInt32(date.AddMonths(i).ToString("MM"))).ToString())); cmdInsertCuota.Parameters.AddWithValue("@Precio", Properties.Settings.Default.PrecioCuota); cmdInsertCuota.Parameters.AddWithValue("@Total", "0.00"); cmdInsertCuota.Parameters.AddWithValue("@IdMatricula", item.Id); if (cmdInsertCuota.ExecuteNonQuery() <= 0) { result = false; } } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Inscribio al estudiante \"" + item.Estudiante.Persona.Nombre + "\" en el curso \"" + CursoDAL.getCursoById(item.IdCurso).Nombre + "\"" + (item.Padres.Where(a => a.Parentesco == "Madre").FirstOrDefault() == null ? "" : ", selecciono a \"" + item.Padres.Where(a => a.Parentesco == "Madre").FirstOrDefault().encargado.Persona.Nombre + "\"" + (item.Padres.Where(a => a.Parentesco == "Padre").FirstOrDefault() == null ? "." : " y a \"" + item.Padres.Where(a => a.Parentesco == "Padre").FirstOrDefault().encargado.Persona.Nombre + "\" como su padre."))); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Inscripcion"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static Factura insertFactura(Factura item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdCorrelativoNfactura = new MySqlCommand("select CONCAT(DATE_FORMAT(CURRENT_DATE(), '%Y%m'),lpad(coalesce(max(FORMAT(CONVERT(SUBSTRING(NFactura,7),int),'####')+1),1),4,'0'))from factura where SUBSTRING(NFactura,1,6)=CONVERT(DATE_FORMAT(now(), '%Y%m'),char)", _con, _trans); item.NFactura = Convert.ToString(cmdCorrelativoNfactura.ExecuteScalar()); MySqlCommand cmdInsertFactura = new MySqlCommand("Insert into factura (FhRegistro,Nfactura,Observacion,Total,Estado,IdPersona,IdSucursal) values (@FhRegistro,@Nfactura,@Observacion,@Total,@Estado,@IdPersona,@IdSucursal)", _con, _trans); cmdInsertFactura.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdInsertFactura.Parameters.AddWithValue("@Nfactura", item.NFactura); cmdInsertFactura.Parameters.AddWithValue("@Observacion", item.Observacion); cmdInsertFactura.Parameters.AddWithValue("@Total", item.Total); cmdInsertFactura.Parameters.AddWithValue("@Estado", "C"); cmdInsertFactura.Parameters.AddWithValue("@IdPersona", item.IdPersona); cmdInsertFactura.Parameters.AddWithValue("@IdSucursal", item.IdSucursal); if (cmdInsertFactura.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } foreach (Detfactura det in item.DetsFactura) { if (det.Tipo == "M") { Cuota cuota = CuotaDAL.getCuotaById(det.Matricdetfac.IdCuota); MySqlCommand cmdInsertDetFactura = new MySqlCommand("Insert into detfactura (Concepto,Total,Descuento,Tipo,IdFactura,IdProducto) values (@Concepto,@Total,@Descuento,@Tipo,@IdFactura,@IdProducto)", _con, _trans); cmdInsertDetFactura.Parameters.AddWithValue("@Concepto", det.Producto.Nombre); cmdInsertDetFactura.Parameters.AddWithValue("@Total", det.Total); cmdInsertDetFactura.Parameters.AddWithValue("@Descuento", det.Descuento); cmdInsertDetFactura.Parameters.AddWithValue("@Tipo", det.Tipo); cmdInsertDetFactura.Parameters.AddWithValue("@IdFactura", item.Id); cmdInsertDetFactura.Parameters.AddWithValue("@IdProducto", det.IdProducto); if (cmdInsertDetFactura.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; det.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdInsertMatricDetFact = new MySqlCommand("Insert into matricdetfact (IdDetFactura,IdCuota) values (@IdDetFactura,@IdCuota)", _con, _trans); cmdInsertMatricDetFact.Parameters.AddWithValue("@IdDetFactura", det.Id); cmdInsertMatricDetFact.Parameters.AddWithValue("@IdCuota", det.Matricdetfac.IdCuota); if (cmdInsertMatricDetFact.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; det.Matricdetfac.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); det.Matricdetfac.IdDetFactura = det.Id; } MySqlCommand cmdUpdateCuota = new MySqlCommand("update cuota set Total=@pTotal where Id=@Id", _con, _trans); cmdUpdateCuota.Parameters.AddWithValue("@Id", det.Matricdetfac.IdCuota); cmdUpdateCuota.Parameters.AddWithValue("@pTotal", det.Total + cuota.Total); if (cmdUpdateCuota.ExecuteNonQuery() <= 0) { result = false; } } if (det.Tipo == "F") { MySqlCommand cmdInsertDetFactura = new MySqlCommand("Insert into detfactura (Concepto,Total,Descuento,Tipo,IdFactura,IdProducto) values (@Concepto,@Total,@Descuento,@Tipo,@IdFactura,@IdProducto)", _con, _trans); cmdInsertDetFactura.Parameters.AddWithValue("@Concepto", det.Producto.Nombre); cmdInsertDetFactura.Parameters.AddWithValue("@Total", det.Total); cmdInsertDetFactura.Parameters.AddWithValue("@Descuento", det.Descuento); cmdInsertDetFactura.Parameters.AddWithValue("@Tipo", det.Tipo); cmdInsertDetFactura.Parameters.AddWithValue("@IdFactura", item.Id); cmdInsertDetFactura.Parameters.AddWithValue("@IdProducto", det.IdProducto); if (cmdInsertDetFactura.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; det.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } if (det.Tipo == "R") { MySqlCommand cmdInsertDetFactura = new MySqlCommand("Insert into detfactura (Concepto,Total,Descuento,Tipo,RefNFactura,IdFactura,IdProducto) values (@Concepto,@Total,@Descuento,@Tipo,@RefNFactura,@IdFactura,@IdProducto)", _con, _trans); cmdInsertDetFactura.Parameters.AddWithValue("@Concepto", det.Producto.Nombre); cmdInsertDetFactura.Parameters.AddWithValue("@Total", det.Total); cmdInsertDetFactura.Parameters.AddWithValue("@Descuento", det.Descuento); cmdInsertDetFactura.Parameters.AddWithValue("@Tipo", det.Tipo); cmdInsertDetFactura.Parameters.AddWithValue("@RefNFactura", item.NFactura); cmdInsertDetFactura.Parameters.AddWithValue("@IdFactura", item.Id); cmdInsertDetFactura.Parameters.AddWithValue("@IdProducto", det.IdProducto); if (cmdInsertDetFactura.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; det.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } if (det.Tipo == "C") { MySqlCommand cmdInsertDetFactura = new MySqlCommand("Insert into detfactura (Concepto,Total,Descuento,Tipo,RefNFactura,IdFactura,IdProducto) values (@Concepto,@Total,@Descuento,@Tipo,@RefNFactura,@IdFactura,@IdProducto)", _con, _trans); cmdInsertDetFactura.Parameters.AddWithValue("@Concepto", det.Producto.Nombre); cmdInsertDetFactura.Parameters.AddWithValue("@Total", det.Total); cmdInsertDetFactura.Parameters.AddWithValue("@Descuento", det.Descuento); cmdInsertDetFactura.Parameters.AddWithValue("@Tipo", det.Tipo); cmdInsertDetFactura.Parameters.AddWithValue("@RefNFactura", det.RefNFactura); cmdInsertDetFactura.Parameters.AddWithValue("@IdFactura", item.Id); cmdInsertDetFactura.Parameters.AddWithValue("@IdProducto", det.IdProducto); if (cmdInsertDetFactura.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; det.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } } } if (result) { _trans.Commit(); } else { item = new Factura(); item.DetsFactura = new List <Detfactura>(); } } catch (Exception ex) { item = new Factura(); item.DetsFactura = new List <Detfactura>(); result = false; _trans.Rollback(); _con.Close(); throw ex; } finally { _con.Close(); } } return(item); }
public static bool InsertContrato(Contrato item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertContrato = new MySqlCommand("Insert into contrato (FhInicio,FhFin,Estado,IdCargo,IdEmpleado,IdSucursal) values (@FhInicio,@FhFin,@Estado,@IdCargo,@IdEmpleado,@IdSucursal)", _con, _trans); cmdInsertContrato.Parameters.AddWithValue("@FhInicio", item.FhInicio); cmdInsertContrato.Parameters.AddWithValue("@FhFin", null); cmdInsertContrato.Parameters.AddWithValue("@Estado", "A"); cmdInsertContrato.Parameters.AddWithValue("@IdCargo", item.IdCargo); cmdInsertContrato.Parameters.AddWithValue("@IdEmpleado", item.Empleado.Id); cmdInsertContrato.Parameters.AddWithValue("@IdSucursal", item.IdSucursal); if (cmdInsertContrato.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registro contrato nuevo al empleado con con el \"Dui " + item.Empleado.Persona.Dui + "\" y dicho cargo es " + CargoDAL.getCargos(100).Where(a => a.Id == item.IdCargo).FirstOrDefault().Nombre); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Registrar"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Cargo"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool anularFactura(Int64 pIdFactura, bool isParent, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { List <Factura> facturas = new List <Factura>(); MySqlCommand comandoParentReservas = new MySqlCommand("select f.Id from factura as f inner join detfactura as df on df.IdFactura=f.Id where f.Id=@pIdFactura", _con); if (isParent) { comandoParentReservas = new MySqlCommand("select distinct f.Id from factura as f inner join detfactura as df on df.IdFactura=f.Id where df.RefNFactura=(select Nfactura from factura where Id=@pIdFactura)", _con); } comandoParentReservas.Parameters.AddWithValue("@pIdFactura", pIdFactura); MySqlDataReader _reader = comandoParentReservas.ExecuteReader(); while (_reader.Read()) { Factura item = new Factura( _reader.GetInt64(0), null, null, null, 0, null, 0, 0, DetFacturaDAL.getDetsfacturaByIdFactura(_reader.GetInt64(0)) ); facturas.Add(item); } _reader.Close(); foreach (Factura obj in facturas) { MySqlCommand cmdUpdateFactura = new MySqlCommand("update factura set Estado='A' where Id=@pIdFactura ", _con, _trans); cmdUpdateFactura.Parameters.AddWithValue("@pIdFactura", obj.Id); if (cmdUpdateFactura.ExecuteNonQuery() <= 0) { result = false; } foreach (Detfactura det in obj.DetsFactura) { if (det.Tipo == "M") { MySqlCommand cmdUpdateCuota = new MySqlCommand("update cuota set Total=(Total-@pTotal) where Id=@pId ", _con, _trans); cmdUpdateCuota.Parameters.AddWithValue("@pTotal", det.Total); cmdUpdateCuota.Parameters.AddWithValue("@pId", det.Matricdetfac.IdCuota); if (cmdUpdateCuota.ExecuteNonQuery() <= 0) { result = false; } } } } if (result) { MySqlCommand cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Anuló la factura con \"Numero de factura " + FacturaDAL.getFacturaById(pIdFactura).NFactura + "\"."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Anular Factura"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Factura"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
public static bool InsertUserEmp(Useremp item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertAuditoria = null; MySqlCommand cmdInsert = new MySqlCommand("Insert into useremp(Login,Pass,Estado,IdContrato)" + " values (@Login,md5(@Pass),@Estado,@IdContrato)", _con, _trans); cmdInsert.Parameters.AddWithValue("@Login", item.Login); cmdInsert.Parameters.AddWithValue("@Pass", item.Pass); cmdInsert.Parameters.AddWithValue("@Estado", item.Estado); cmdInsert.Parameters.AddWithValue("@IdContrato", item.IdContrato); if (cmdInsert.ExecuteNonQuery() <= 0) { result = false; } else { cmdInsert = new MySqlCommand("select last_insert_id() as id;", _con); cmdInsert.Transaction = _trans; item.Id = Convert.ToInt32(cmdInsert.ExecuteScalar()); item.Sucursales[0].IdUserEmp = Convert.ToInt32(item.Id); } cmdInsert = new MySqlCommand("Insert into acssucursal values (null,null,@IdUserEmp,@IdRol,@IdSucursal)", _con, _trans); cmdInsert.Parameters.AddWithValue("@IdUserEmp", item.Id); cmdInsert.Parameters.AddWithValue("@IdRol", item.Sucursales[0].IdRol); cmdInsert.Parameters.AddWithValue("@IdSucursal", item.Sucursales[0].IdSucursal); if (cmdInsert.ExecuteNonQuery() <= 0) { result = false; } else { cmdInsert = new MySqlCommand("select last_insert_id() as id;", _con); cmdInsert.Transaction = _trans; item.Sucursales[0].Id = Convert.ToInt32(cmdInsert.ExecuteScalar()); } foreach (LstPermiso obj in item.Sucursales[0].Permisos) { cmdInsert = new MySqlCommand("Insert into lstpermiso values (null,null,@Otorgado,@IdPermiso,@IdAcsSucursal)", _con, _trans); cmdInsert.Parameters.AddWithValue("@Otorgado", obj.Otorgado ? 1 : 0); cmdInsert.Parameters.AddWithValue("@IdPermiso", obj.IdPermiso); cmdInsert.Parameters.AddWithValue("@IdAcsSucursal", item.Sucursales[0].Id); if (cmdInsert.ExecuteNonQuery() <= 0) { result = false; } else { cmdInsert = new MySqlCommand("select last_insert_id() as id;", _con); cmdInsert.Transaction = _trans; obj.Id = Convert.ToInt32(cmdInsert.ExecuteScalar()); } } if (result) { cmdInsertAuditoria = new MySqlCommand("Insert into regemphist (Detalle,Accion,TipoRegistro,IdUserEmp) values (@Detalle,@Accion,@TipoRegistro,@IdUserEmp)", _con, _trans); cmdInsertAuditoria.Parameters.AddWithValue("@Detalle", "Registró el usuario con Id \"" + item.Id + "\", Login \"" + item.Login + "\", Id de Contrato \"" + item.IdContrato + "\", Empleado \"" + item.Contrato.Empleado.Persona.Nombre + "\"."); cmdInsertAuditoria.Parameters.AddWithValue("@Accion", "Inserción"); cmdInsertAuditoria.Parameters.AddWithValue("@TipoRegistro", "Usuario"); cmdInsertAuditoria.Parameters.AddWithValue("@IdUserEmp", pUser.Id); if (cmdInsertAuditoria.ExecuteNonQuery() <= 0) { result = false; } } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }