private void frmModificaSalarioImss_Load(object sender, EventArgs e) { lblEmpleado.Text = _nombreCompleto; cnx = new MySqlConnection(); cnx.ConnectionString = cdn; cmd = new MySqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idtrabajador = _idempleado; try { cnx.Open(); lstEmpleado = eh.obtenerEmpleado(em); cnx.Close(); cnx.Dispose(); for (int i = 0; i < lstEmpleado.Count; i++) { idperiodo = lstEmpleado[i].idperiodo; antiguedad = lstEmpleado[i].antiguedad; } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
void b_OnBuscar(int id, string nombre) { idempleado = id; lblEmpleado.Text = nombre; cnx = new MySqlConnection(); cmd = new MySqlCommand(); cnx.ConnectionString = cdn; cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idtrabajador = idempleado; try { cnx.Open(); int estatus = (int)eh.obtenerEstatus(em); cnx.Close(); cnx.Dispose(); if (estatus != 0) { MessageBox.Show("No se puede modificar el sueldo, el empleado ya cuenta con movimientos. \r\n \r\n Se cerrará la ventana.", "Información"); this.Dispose(); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); this.Dispose(); } }
private void toolGuardar_Click(object sender, EventArgs e) { if (idempleado == 0) { MessageBox.Show("Debe especificar el empleado.", "Información"); return; } cnx = new MySqlConnection(); cnx.ConnectionString = cdn; cmd = new MySqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idtrabajador = idempleado; em.sueldo = decimal.Parse(txtSueldo.Text); em.sd = decimal.Parse(txtSD.Text); em.sdi = decimal.Parse(txtSDI.Text); try { cnx.Open(); eh.actualizaSueldo(em); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void toolGuardar_Click(object sender, EventArgs e) { if (idempleado == 0) { MessageBox.Show("Debe especificar el empleado.", "Información"); return; } cnx = new MySqlConnection(); cnx.ConnectionString = cdn; cmd = new MySqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idcliente = int.Parse(cmbCliente.SelectedValue.ToString()); em.idperiodo = int.Parse(cmbPeriodo.SelectedValue.ToString()); em.idtrabajador = idempleado; try { cnx.Open(); eh.actualizaClientePeriodo(em); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); } }
private void Listas() { cnx = new MySqlConnection(cdn); cmd = new MySqlCommand(); cmd.Connection = cnx; if (_EmpresaEmpleado == GLOBALES.EMPRESAS) { Empresas.Core.EmpresasHelper empresah = new Empresas.Core.EmpresasHelper(); empresah.Command = cmd; try { cnx.Open(); lstEmpresas = empresah.obtenerEmpresas(); cnx.Close(); cnx.Dispose(); var empresa = from a in lstEmpresas select new { IdEmpresa = a.idempresa, Nombre = a.nombre }; dgvImagenes.DataSource = empresa.ToList(); for (int i = 0; i < dgvImagenes.Columns.Count; i++) { dgvImagenes.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } } else if (_EmpresaEmpleado == GLOBALES.EMPLEADOS) { Empleados.Core.EmpleadosHelper empleadoh = new Empleados.Core.EmpleadosHelper(); empleadoh.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idplaza = GLOBALES.IDPLAZA; empleado.idempresa = GLOBALES.IDEMPRESA; try { cnx.Open(); lstEmpleados = empleadoh.obtenerEmpleados(empleado); cnx.Close(); cnx.Dispose(); var trabajador = from b in lstEmpleados select new { IdEmpleado = b.idtrabajador, Nombre = b.nombrecompleto }; dgvImagenes.DataSource = trabajador.ToList(); for (int i = 0; i < dgvImagenes.Columns.Count; i++) { dgvImagenes.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } } }
private void ListaEmpleados() { string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; #region DISEÑO DEL GRIDVIEW dgvEmpleados.Columns["seleccion"].DataPropertyName = "chk"; dgvEmpleados.Columns["idtrabajador"].DataPropertyName = "idtrabajador"; dgvEmpleados.Columns["noempleado"].DataPropertyName = "noempleado"; dgvEmpleados.Columns["nombre"].DataPropertyName = "nombre"; dgvEmpleados.Columns["sdivigente"].DataPropertyName = "sdivigente"; dgvEmpleados.Columns["sdinuevo"].DataPropertyName = "sdinuevo"; dgvEmpleados.Columns["antiguedad"].DataPropertyName = "antiguedad"; dgvEmpleados.Columns["antiguedadmod"].DataPropertyName = "antiguedadmod"; dgvEmpleados.Columns["fechaimss"].DataPropertyName = "fechaimss"; DataGridViewCellStyle estilo = new DataGridViewCellStyle(); estilo.Alignment = DataGridViewContentAlignment.MiddleRight; dgvEmpleados.Columns[4].DefaultCellStyle = estilo; dgvEmpleados.Columns[5].DefaultCellStyle = estilo; dgvEmpleados.Columns["idtrabajador"].Visible = false; dgvEmpleados.Columns["noempleado"].ReadOnly = true; dgvEmpleados.Columns["nombre"].ReadOnly = true; dgvEmpleados.Columns["sdivigente"].ReadOnly = true; dgvEmpleados.Columns["antiguedad"].Visible = false; dgvEmpleados.Columns["antiguedadmod"].Visible = false; dgvEmpleados.Columns["sdinuevo"].ReadOnly = true; #endregion try { cnx.Open(); lstEmpleadosIncremento = eh.obtenerIncremento(empleado); cnx.Close(); cnx.Dispose(); dgvEmpleados.DataSource = lstEmpleadosIncremento.ToList(); for (int i = 0; i < dgvEmpleados.Columns.Count; i++) { dgvEmpleados.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void ListaIncapacidad() { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); ih = new Incidencias.Core.IncidenciasHelper(); eh.Command = cmd; ih.Command = cmd; Incidencias.Core.Incidencias incidencia = new Incidencias.Core.Incidencias(); incidencia.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleados(empleado); lstIncidencias = ih.obtenerIndicencias(incidencia); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); } var datos = from e in lstEmpleados join i in lstIncidencias on e.idtrabajador equals i.idtrabajador orderby e.nombrecompleto ascending select new { IdTrabajador = e.idtrabajador, NoEmpleado = e.noempleado, Nombre = e.nombrecompleto, Certificado = i.certificado, PeriodoInicio = i.periodoinicio, PeriodoFin = i.periodofin, Dias = i.dias, InicioIncapacidad = i.inicioincapacidad, FinIncapacidad = i.finincapacidad }; dgvIncapacidad.DataSource = datos.ToList(); dgvIncapacidad.Columns["IdTrabajador"].Visible = false; for (int i = 0; i < dgvIncapacidad.Columns.Count; i++) { dgvIncapacidad.AutoResizeColumn(i); } }
private void ListaConceptosEmpleado() { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; ch = new Conceptos.Core.ConceptosHelper(); ch.Command = cmd; Conceptos.Core.ConceptoTrabajador ct = new Conceptos.Core.ConceptoTrabajador(); ct.idempleado = _idEmpleado; Conceptos.Core.Conceptos concepto = new Conceptos.Core.Conceptos(); concepto.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; try { int periodo = 0; cnx.Open(); periodo = int.Parse(eh.obtenerDiasPeriodo(_idEmpleado).ToString()); lstConcepto = ch.obtenerConceptos(concepto, periodo); lstCT = ch.obtenerConceptosTrabajador(ct); cnx.Close(); cnx.Dispose(); var conceptotrab = from ctrab in lstCT join con in lstConcepto on ctrab.idconcepto equals con.id select new { Id = ctrab.id, Concepto = con.concepto, TipoConcepto = (con.tipoconcepto == "P") ? "PERCEPCION" : "DEDUCCION" }; dgvConceptosEmpleado.DataSource = conceptotrab.ToList(); for (int i = 0; i < dgvConceptosEmpleado.Columns.Count; i++) { dgvConceptosEmpleado.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } dgvConceptosEmpleado.Columns["Id"].Visible = false; int contenido = dgvConceptosEmpleado.Rows.Count; if (contenido == 0) toolBaja.Enabled = false; else toolBaja.Enabled = true; }
private void ListaEmpleados() { string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; cnx = new MySqlConnection(cdn); cmd = new MySqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.idplaza = GLOBALES.IDPLAZA; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleados(empleado); cnx.Close(); cnx.Dispose(); var em = from e in lstEmpleados select new { IdTrabajador = e.idtrabajador, Nombre = e.nombrecompleto, Ingreso = e.fechaingreso, Antiguedad = e.antiguedad + " AÑOS", SDI = e.sdi, SD = e.sd, Sueldo = e.sueldo }; dgvEmpleados.DataSource = em.ToList(); for (int i = 0; i < dgvEmpleados.Columns.Count; i++) { dgvEmpleados.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } DataGridViewCellStyle estilo = new DataGridViewCellStyle(); estilo.Alignment = DataGridViewContentAlignment.MiddleRight; dgvEmpleados.Columns[4].DefaultCellStyle = estilo; dgvEmpleados.Columns[5].DefaultCellStyle = estilo; dgvEmpleados.Columns[6].DefaultCellStyle = estilo; }
private void frmBuscar_Load(object sender, EventArgs e) { dgvCatalogo.RowHeadersVisible = false; cnx = new SqlConnection(); cmd = new SqlCommand(); cnx.ConnectionString = cdn; cmd.Connection = cnx; if (_catalogo == GLOBALES.EMPLEADOS) { eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idempresa = GLOBALES.IDEMPRESA; if (_tipoNomina == GLOBALES.NORMAL) em.estatus = GLOBALES.ACTIVO; try { cnx.Open(); if(_busqueda == GLOBALES.NOMINA) lstEmpleados = eh.obtenerEmpleados(em, _periodo); if (_busqueda == GLOBALES.FORMULARIOS) lstEmpleados = eh.obtenerEmpleados(em); cnx.Close(); cnx.Dispose(); dgvCatalogo.Columns["idtrabajador"].DataPropertyName = "idtrabajador"; dgvCatalogo.Columns["noempleado"].DataPropertyName = "noempleado"; dgvCatalogo.Columns["nombre"].DataPropertyName = "nombrecompleto"; var empleados = from a in lstEmpleados select new { a.idtrabajador, a.noempleado, a.nombrecompleto }; dgvCatalogo.DataSource = empleados.ToList(); for (int i = 0; i < dgvCatalogo.Columns.Count; i++) { dgvCatalogo.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } } txtBuscar.Select(); }
private void ListaEmpleados() { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleados(empleado); cnx.Close(); cnx.Dispose(); var em = from e in lstEmpleados select new { IdTrabajador = e.idtrabajador, NoEmpleado = e.noempleado, Nombre = e.nombrecompleto }; dgvEmpleados.DataSource = em.ToList(); for (int i = 0; i < dgvEmpleados.Columns.Count; i++) { dgvEmpleados.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } dgvEmpleados.Columns["IdTrabajador"].Visible = false; }
private void ListaEmpleados() { cnx = new MySqlConnection(cdn); cmd = new MySqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.idplaza = GLOBALES.IDPLAZA; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleados(empleado); cnx.Close(); cnx.Dispose(); var em = from e in lstEmpleados select new { IdTrabajador = e.idtrabajador, Nombre = e.nombrecompleto }; dgvComplementos.DataSource = em.ToList(); for (int i = 0; i < dgvComplementos.Columns.Count; i++) { dgvComplementos.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
void b_OnBuscar(int id, string nombre) { _idEmpleado = id; lblEmpleado.Text = nombre; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Departamento.Core.DeptoHelper dh = new Departamento.Core.DeptoHelper(); dh.Command = cmd; List<Departamento.Core.Depto> lstDepartamento = new List<Departamento.Core.Depto>(); List<Empleados.Core.Empleados> lstEmpleado = new List<Empleados.Core.Empleados>(); Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = _idEmpleado; Departamento.Core.Depto dpto = new Departamento.Core.Depto(); dpto.idempresa = GLOBALES.IDEMPRESA; try { cnx.Open(); lstEmpleado = eh.obtenerEmpleado(empleado); lstDepartamento = dh.obtenerDepartamentos(dpto); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error al obtener los datos del departamento. \r\n \r\n La ventana se cerrará. \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); this.Dispose(); } var dato = from emp in lstEmpleado join d in lstDepartamento on emp.iddepartamento equals d.id select new { emp.noempleado, emp.nombrecompleto, d.descripcion }; foreach (var inf in dato) { mtxtNoEmpleado.Text = inf.noempleado; txtDepartamento.Text = inf.descripcion; } try { cnx.Open(); Periodo = (int)eh.obtenerDiasPeriodo(_idEmpleado); cnx.Close(); //obtenerPeriodoActual(); } catch (Exception error) { MessageBox.Show("Error al obtener los dias del periodo. \r\n \r\n La ventana se cerrará. \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); this.Dispose(); } }
private void workerImporta_DoWork(object sender, DoWorkEventArgs e) { int contador = dgvCargaEmpleados.Rows.Count; int progreso = 0; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; foreach (DataGridViewRow fila in dgvCargaEmpleados.Rows) { workerImporta.ReportProgress((progreso * 100) / contador); progreso++; dh = new Departamento.Core.DeptoHelper(); dh.Command = cmd; puestoh = new Puestos.Core.PuestosHelper(); puestoh.Command = cmd; ph = new Periodos.Core.PeriodosHelper(); ph.Command = cmd; try { cnx.Open(); idDepto = (int)dh.obtenerIdDepartamento(fila.Cells["departamento"].Value.ToString(), GLOBALES.IDEMPRESA); idPuesto = (int)puestoh.obtenerIdPuesto(fila.Cells["puesto"].Value.ToString(), GLOBALES.IDEMPRESA); idPeriodo = (int)ph.obtenerIdPeriodo(fila.Cells["periodo"].Value.ToString(), GLOBALES.IDEMPRESA); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener los datos del Departamento, Puesto y/o Periodo.", "Error"); cnx.Dispose(); return; } Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.noempleado = fila.Cells["noempleado"].Value.ToString(); empleado.nombres = fila.Cells["nombre"].Value.ToString(); empleado.paterno = fila.Cells["paterno"].Value.ToString(); empleado.materno = fila.Cells["materno"].Value.ToString(); empleado.nombrecompleto = String.Format("{0} {1} {2}", empleado.paterno, empleado.materno, empleado.nombres); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.idperiodo = idPeriodo; empleado.idsalario = 1; empleado.iddepartamento = idDepto; empleado.idpuesto = idPuesto; empleado.fechaingreso = DateTime.Parse(fila.Cells["fechaingreso"].Value.ToString()); empleado.antiguedad = 0; empleado.fechaantiguedad = DateTime.Parse(fila.Cells["fechaingreso"].Value.ToString()); empleado.antiguedadmod = 0; empleado.fechanacimiento = ObtieneFecha(fila.Cells["curp"].Value.ToString()); empleado.edad = ObtieneEdad(empleado.fechanacimiento); empleado.rfc = ObtenerRfc(empleado.paterno, empleado.materno, empleado.nombres, empleado.fechanacimiento); empleado.curp = fila.Cells["curp"].Value.ToString(); empleado.nss = fila.Cells["nss"].Value.ToString(); empleado.digitoverificador = int.Parse(fila.Cells["dv"].Value.ToString()); empleado.tiposalario = 19; empleado.sdi = decimal.Parse(fila.Cells["sdi"].Value.ToString()); empleado.sd = ObtieneSD(decimal.Parse(fila.Cells["sdi"].Value.ToString())); empleado.sueldo = ObtieneSueldo(empleado.sd); empleado.estatus = 1; empleado.idusuario = GLOBALES.IDUSUARIO; empleado.cuenta = "0000000000"; empleado.clabe = "000000000000000000"; empleado.idbancario = "0000"; empleado.metodopago = "TRANSFERENCIA"; empleado.tiporegimen = 60; //Empleados.Core.EmpleadosEstatus ee = new Empleados.Core.EmpleadosEstatus(); //ee.estatus = GLOBALES.ACTIVO; //ee.idempresa = GLOBALES.IDEMPRESA; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; emph = new Empleados.Core.EmpleadosHelper(); emph.Command = cmd; Empleados.Core.Empleados nss = new Empleados.Core.Empleados(); nss.nss = empleado.nss; nss.digitoverificador = empleado.digitoverificador; int existeEmpleado = 0; try { cnx.Open(); existeEmpleado = (int)emph.existeEmpleado(nss); cnx.Close(); } catch (Exception) { MessageBox.Show("Error: Al obtener la existencia del empleado.", "Error"); cnx.Dispose(); return; } if (existeEmpleado == 0) { try { cnx.Open(); emph.insertaEmpleado(empleado); //ee.idtrabajador = (int)emph.obtenerIdTrabajador(empleado); //emph.insertaEmpleadoEstatus(ee); cnx.Close(); } catch (Exception) { MessageBox.Show("Error: Al ingresar al empleado. No. empleado: " + fila.Cells["noempleado"].Value.ToString(), "Error"); cnx.Dispose(); return; } int idEmpleado = 0; try { cnx.Open(); idEmpleado = (int)emph.obtenerIdTrabajador(fila.Cells["noempleado"].Value.ToString(), GLOBALES.IDEMPRESA); cnx.Close(); } catch (Exception) { MessageBox.Show("Error: Al obtener el ID del empleado. No. empleado: " + fila.Cells["noempleado"].Value.ToString(), "Error"); cnx.Dispose(); return; } //cnx = new SqlConnection(cdn); //cmd = new SqlCommand(); //cmd.Connection = cnx; //hh = new Historial.Core.HistorialHelper(); //hh.Command = cmd; //Historial.Core.Historial historial = new Historial.Core.Historial(); //historial.idtrabajador = idEmpleado; //historial.tipomovimiento = GLOBALES.mALTA; //historial.valor = empleado.sdi; //historial.fecha_imss = DateTime.Parse(fila.Cells["fechaingreso"].Value.ToString()); //historial.fecha_sistema = DateTime.Now.Date; //historial.idempresa = GLOBALES.IDEMPRESA; //historial.motivobaja = 0; //try //{ // cnx.Open(); // hh.insertarHistorial(historial); // cnx.Close(); //} //catch (Exception) //{ // MessageBox.Show("Error: Al ingresar historial del trabajador. No. empleado: " + fila.Cells["noempleado"].Value.ToString(), "Error"); // cnx.Dispose(); // return; //} //cnx = new SqlConnection(cdn); //cmd = new SqlCommand(); //cmd.Connection = cnx; //eh = new Empresas.Core.EmpresasHelper(); //eh.Command = cmd; //Empresas.Core.Empresas empresa = new Empresas.Core.Empresas(); //empresa.idempresa = GLOBALES.IDEMPRESA; //try //{ // cnx.Open(); // registroPatronal = eh.obtenerRegistroPatronal(empresa).ToString(); // cnx.Close(); //} //catch (Exception) //{ // MessageBox.Show("Error: Al obtener el registro patronal. NoEmpleado: " + fila.Cells["noempleado"].Value.ToString() + ".", "Error"); // cnx.Dispose(); // return; //} //Altas.Core.Altas alta = new Altas.Core.Altas(); //alta.idtrabajador = idEmpleado; //alta.idempresa = GLOBALES.IDEMPRESA; //alta.registropatronal = registroPatronal; //alta.nss = empleado.nss + empleado.digitoverificador.ToString(); //alta.rfc = empleado.rfc; //alta.curp = empleado.curp; //alta.paterno = empleado.paterno; //alta.materno = empleado.materno; //alta.nombre = empleado.nombres; //alta.contrato = 4; //alta.jornada = 12; //alta.fechaingreso = empleado.fechaingreso; //alta.diasproporcionales = ObtenerDiasProporcionales(empleado.fechaingreso); //alta.sdi = empleado.sdi; //alta.cp = "0"; //alta.fechanacimiento = empleado.fechanacimiento; //alta.estado = ObtenerEstado(empleado.curp); //alta.noestado = ObtenerIdEstado(alta.estado); //alta.clinica = "0"; //alta.sexo = ObtenerSexo(empleado.curp); //alta.periodoInicio = periodoInicio; //alta.periodoFin = periodoFin; //cnx = new SqlConnection(cdn); //cmd = new SqlCommand(); //cmd.Connection = cnx; //ah = new Altas.Core.AltasHelper(); //ah.Command = cmd; //try //{ // cnx.Open(); // ah.insertaAlta(alta); // cnx.Close(); //} //catch (Exception) //{ // MessageBox.Show("Error: Al ingresar alta del trabajador. No. empleado: " + fila.Cells["noempleado"].Value.ToString(), "Error"); // cnx.Dispose(); // return; //} } } cnx.Dispose(); }
private void toolAplicar_Click(object sender, EventArgs e) { if (dgvCargaFaltas.Rows.Count == 0) { MessageBox.Show("No se puede aplicar verifique.", "Error"); return; } int idEmpleado = 0; bool EsAlta = false, EsReingreso = false, EsBaja = false; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; fh = new Faltas.Core.FaltasHelper(); fh.Command = cmd; emph = new Empleados.Core.EmpleadosHelper(); emph.Command = cmd; Altas.Core.AltasHelper ah = new Altas.Core.AltasHelper(); ah.Command = cmd; Reingreso.Core.ReingresoHelper rh = new Reingreso.Core.ReingresoHelper(); rh.Command = cmd; Bajas.Core.BajasHelper bh = new Bajas.Core.BajasHelper(); bh.Command = cmd; Periodos.Core.PeriodosHelper ph = new Periodos.Core.PeriodosHelper(); ph.Command = cmd; List<Altas.Core.Altas> lstAlta; List<Reingreso.Core.Reingresos> lstReingreso; List<Bajas.Core.Bajas> lstBaja; foreach (DataGridViewRow fila in dgvCargaFaltas.Rows) { try { cnx.Open(); idEmpleado = (int)emph.obtenerIdTrabajador(fila.Cells["noempleado"].Value.ToString(), idEmpresa); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: Obtener ID del empleado. \r\n \r\n" + error.Message, "Error"); return; } int idperiodo = 0; try { cnx.Open(); idperiodo = (int)emph.obtenerIdPeriodo(idEmpleado); cnx.Close(); } catch { MessageBox.Show("Error: al obtener el Id del Periodo.", "Error"); cnx.Dispose(); return; } Altas.Core.Altas alta = new Altas.Core.Altas(); alta.idempresa = GLOBALES.IDEMPRESA; alta.idtrabajador = idEmpleado; alta.periodoInicio = _inicioPeriodo.Date; alta.periodoFin = _finPeriodo.Date; Reingreso.Core.Reingresos reingreso = new Reingreso.Core.Reingresos(); reingreso.idempresa = GLOBALES.IDEMPRESA; reingreso.idtrabajador = idEmpleado; reingreso.periodoinicio = _inicioPeriodo.Date; reingreso.periodofin = _finPeriodo.Date; Bajas.Core.Bajas baja = new Bajas.Core.Bajas(); baja.idempresa = GLOBALES.IDEMPRESA; baja.idtrabajador = idEmpleado; baja.periodoinicio = _inicioPeriodo.Date; baja.periodofin = _finPeriodo.Date; lstAlta = new List<Altas.Core.Altas>(); lstReingreso = new List<Reingreso.Core.Reingresos>(); lstBaja = new List<Bajas.Core.Bajas>(); Periodos.Core.Periodos p = new Periodos.Core.Periodos(); p.idperiodo = idperiodo; int periodo = 0; try { cnx.Open(); periodo = (int)ph.DiasDePago(p); lstAlta = ah.obtenerAlta(alta); lstReingreso = rh.obtenerReingreso(reingreso); lstBaja = bh.obtenerBaja(baja); cnx.Close(); } catch { MessageBox.Show("Error: al obtener los dias de pago.", "Error"); cnx.Dispose(); return; } if (lstAlta.Count != 0) EsAlta = true; if (lstBaja.Count != 0) EsBaja = true; if (lstReingreso.Count != 0) EsReingreso = true; int falta = int.Parse(fila.Cells["faltas"].Value.ToString()); DateTime fecha = DateTime.Parse(fila.Cells["fechainicio"].Value.ToString()); if (falta > 15) falta = 15; for (int i = 0; i < falta; i++) { int existe = 0; int existeFalta = 0; int existeVacacion = 0; try { cnx.Open(); existeFalta = (int)fh.existeFalta(idEmpleado, fecha.AddDays(i).Date); cnx.Close(); } catch { MessageBox.Show("Error: Al verificar existencia de falta.", "Error"); cnx.Dispose(); return; } if (existeFalta == 0) { Incidencias.Core.IncidenciasHelper ih = new Incidencias.Core.IncidenciasHelper(); ih.Command = cmd; Vacaciones.Core.VacacionesHelper vh = new Vacaciones.Core.VacacionesHelper(); vh.Command = cmd; bool FLAG_FALTAS = false; if (EsAlta) { if (fecha.AddDays(i).Date < lstAlta[0].fechaingreso.Date) { MessageBox.Show("Error: Alta del empleado: " + fila.Cells["noempleado"].Value.ToString() + ", Fecha de Ingreso = " + lstAlta[0].fechaingreso.Date.ToShortDateString() + "\r\n Fecha de la falta es menor.", "Error"); FLAG_FALTAS = true; } else FLAG_FALTAS = false; } if (EsReingreso) { if (fecha.AddDays(i).Date < lstReingreso[0].fechaingreso.Date) { MessageBox.Show("Error: Alta del empleado: " + fila.Cells["noempleado"].Value.ToString() + ", Fecha de Reingreso = " + lstReingreso[0].fechaingreso.Date.ToShortDateString() + "\r\n Fecha de la falta es menor.", "Error"); FLAG_FALTAS = true; } else FLAG_FALTAS = false; } if (EsBaja) { if (fecha.AddDays(i).Date > lstBaja[0].fecha.Date) { MessageBox.Show("Error: Alta del empleado " + fila.Cells["noempleado"].Value.ToString() + ", Fecha de Reingreso = " + lstBaja[0].fecha.Date.ToShortDateString() + "\r\n Fecha de la falta es mayor.", "Error"); FLAG_FALTAS = true; } else FLAG_FALTAS = false; } if (!FLAG_FALTAS) { try { cnx.Open(); existe = (int)ih.existeIncidenciaEnFalta(idEmpleado, fecha.AddDays(i).Date); existeVacacion = (int)vh.existeVacacionEnFalta(idEmpleado, fecha.AddDays(i).Date); cnx.Close(); } catch { MessageBox.Show("Error: Al guardar la falta.", "Error"); cnx.Dispose(); return; } if (existe == 0 && existeVacacion == 0) try { Faltas.Core.Faltas f = new Faltas.Core.Faltas(); f.idempresa = GLOBALES.IDEMPRESA; f.idtrabajador = idEmpleado; f.periodo = periodo; f.faltas = 1; f.fechainicio = DateTime.Parse(dgvCargaFaltas.Rows[0].Cells["fechainicio"].Value.ToString()); f.fechafin = DateTime.Parse(dgvCargaFaltas.Rows[0].Cells["fechafin"].Value.ToString()); f.fecha = fecha.AddDays(i).Date; cnx.Open(); fh.insertaFalta(f); cnx.Close(); } catch { MessageBox.Show("Error: Al guardar la falta.", "Error"); cnx.Dispose(); } else MessageBox.Show("La falta ingresada, se empalma con una incapacidad y/o dia de vacación del trabajador.", "Error"); } } } EsAlta = false; EsReingreso = false; EsBaja = false; } MessageBox.Show("Faltas importadas", "Confirmación"); cnx.Dispose(); dgvCargaFaltas.Rows.Clear(); }
private void ListaEmpleados() { string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; mh = new Modificaciones.Core.ModificacionesHelper(); eh = new Empleados.Core.EmpleadosHelper(); mh.Command = cmd; eh.Command = cmd; Modificaciones.Core.Modificaciones mod = new Modificaciones.Core.Modificaciones(); mod.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; try { cnx.Open(); lstMod = mh.obtieneModificaciones(mod); lstEmpleados = eh.obtenerEmpleados(empleado); cnx.Close(); cnx.Dispose(); var modif = from m in lstMod join t in lstEmpleados on m.idtrabajador equals t.idtrabajador select new { RegistroPatronal = m.registropatronal, Nss = m.nss, Nombre = t.nombrecompleto, Modificacion = m.fecha, Integrado = m.sdi }; dgvModSua.DataSource = modif.ToList(); for (int i = 0; i < dgvModSua.Columns.Count; i++) { dgvModSua.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void btnGuardar_Click(object sender, EventArgs e) { DateTime periodoInicio, periodoFin; bool EsAlta = false, EsReingreso = false, EsBaja = false; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper emph = new Empleados.Core.EmpleadosHelper(); emph.Command = cmd; Altas.Core.AltasHelper ah = new Altas.Core.AltasHelper(); ah.Command = cmd; Reingreso.Core.ReingresoHelper rh = new Reingreso.Core.ReingresoHelper(); rh.Command = cmd; Bajas.Core.BajasHelper bh = new Bajas.Core.BajasHelper(); bh.Command = cmd; List<Altas.Core.Altas> lstAlta = new List<Altas.Core.Altas>(); List<Reingreso.Core.Reingresos> lstReingreso = new List<Reingreso.Core.Reingresos>(); List<Bajas.Core.Bajas> lstBaja = new List<Bajas.Core.Bajas>(); Altas.Core.Altas alta = new Altas.Core.Altas(); alta.idempresa = GLOBALES.IDEMPRESA; alta.idtrabajador = idTrabajador; alta.periodoInicio = _inicioPeriodo.Date; alta.periodoFin = _finPeriodo.Date; Reingreso.Core.Reingresos reingreso = new Reingreso.Core.Reingresos(); reingreso.idempresa = GLOBALES.IDEMPRESA; reingreso.idtrabajador = idTrabajador; reingreso.periodoinicio = _inicioPeriodo.Date; reingreso.periodofin = _finPeriodo.Date; Bajas.Core.Bajas baja = new Bajas.Core.Bajas(); baja.idempresa = GLOBALES.IDEMPRESA; baja.idtrabajador = idTrabajador; baja.periodoinicio = _inicioPeriodo.Date; baja.periodofin = _finPeriodo.Date; int idperiodo = 0; try { cnx.Open(); idperiodo = (int)emph.obtenerIdPeriodo(idTrabajador); lstAlta = ah.obtenerAlta(alta); lstReingreso = rh.obtenerReingreso(reingreso); lstBaja = bh.obtenerBaja(baja); cnx.Close(); } catch { MessageBox.Show("Error: al obtener el Id del Periodo.","Error"); cnx.Dispose(); return; } Periodos.Core.PeriodosHelper ph = new Periodos.Core.PeriodosHelper(); ph.Command = cmd; Periodos.Core.Periodos p = new Periodos.Core.Periodos(); p.idperiodo = idperiodo; int periodo = 0; try { cnx.Open(); periodo = (int)ph.DiasDePago(p); cnx.Close(); } catch { MessageBox.Show("Error: al obtener los dias de pago.", "Error"); cnx.Dispose(); return; } if (periodo == 7) { DateTime dt = dtpFecha.Value.Date; while (dt.DayOfWeek != DayOfWeek.Monday) dt = dt.AddDays(-1); periodoInicio = dt; periodoFin = dt.AddDays(6); } else { if (dtpFecha.Value.Day <= 15) { periodoInicio = new DateTime(dtpFecha.Value.Year, dtpFecha.Value.Month, 1); periodoFin = new DateTime(dtpFecha.Value.Year, dtpFecha.Value.Month, 15); } else { periodoInicio = new DateTime(dtpFecha.Value.Year, dtpFecha.Value.Month, 16); periodoFin = new DateTime(dtpFecha.Value.Year, dtpFecha.Value.Month, DateTime.DaysInMonth(dtpFecha.Value.Year, dtpFecha.Value.Month)); } } if (lstAlta.Count != 0) EsAlta = true; if (lstBaja.Count != 0) EsBaja = true; if (lstReingreso.Count != 0) EsReingreso = true; Faltas.Core.FaltasHelper fh = new Faltas.Core.FaltasHelper(); fh.Command = cmd; List<Faltas.Core.Faltas> lstFaltas = new List<Faltas.Core.Faltas>(); int faltas = int.Parse(txtFalta.Text); if (int.Parse(txtFalta.Text) > 15) faltas = 15; for (int i = 0; i < faltas; i++) { int existe = 0; int existeVacacion = 0; try { cnx.Open(); existe = (int)fh.existeFalta(idTrabajador, dtpFecha.Value.AddDays(i).Date); cnx.Close(); } catch { MessageBox.Show("Error: Al verificar existencia de falta.", "Error"); cnx.Dispose(); return; } if (existe != 0) { MessageBox.Show("Ya existe una falta con esa fecha.", "Error"); //return; } else { Incidencias.Core.IncidenciasHelper ih = new Incidencias.Core.IncidenciasHelper(); ih.Command = cmd; Vacaciones.Core.VacacionesHelper vh = new Vacaciones.Core.VacacionesHelper(); vh.Command = cmd; bool FLAG_FALTAS = false; if (EsAlta) { if (dtpFecha.Value.AddDays(i).Date < lstAlta[0].fechaingreso.Date) { MessageBox.Show("Error: Alta del empleado, Fecha de Ingreso = " + lstAlta[0].fechaingreso.Date.ToShortDateString() + "\r\n Fecha de la falta es menor.", "Error"); FLAG_FALTAS = true; } else FLAG_FALTAS = false; } if (EsReingreso) { if (dtpFecha.Value.AddDays(i).Date < lstReingreso[0].fechaingreso.Date) { MessageBox.Show("Error: Alta del empleado, Fecha de Reingreso = " + lstReingreso[0].fechaingreso.Date.ToShortDateString() + "\r\n Fecha de la falta es menor.", "Error"); FLAG_FALTAS = true; } else FLAG_FALTAS = false; } if (EsBaja) { if (dtpFecha.Value.AddDays(i).Date > lstBaja[0].fecha.Date) { MessageBox.Show("Error: Alta del empleado, Fecha de Reingreso = " + lstBaja[0].fecha.Date.ToShortDateString() + "\r\n Fecha de la falta es mayor.", "Error"); FLAG_FALTAS = true; } else FLAG_FALTAS = false; } if (!FLAG_FALTAS) { try { cnx.Open(); existe = (int)ih.existeIncidenciaEnFalta(idTrabajador, dtpFecha.Value.AddDays(i).Date); existeVacacion = (int)vh.existeVacacionEnFalta(idTrabajador, dtpFecha.Value.AddDays(i).Date); cnx.Close(); } catch { MessageBox.Show("Error: Al guardar la falta.", "Error"); cnx.Dispose(); return; } if (existe == 0 && existeVacacion == 0) { Faltas.Core.Faltas falta = new Faltas.Core.Faltas(); falta.idtrabajador = idTrabajador; falta.idempresa = GLOBALES.IDEMPRESA; falta.faltas = 1; falta.fechainicio = periodoInicio.Date; falta.fechafin = periodoFin.Date; falta.fecha = dtpFecha.Value.AddDays(i).Date; falta.periodo = periodo; lstFaltas.Add(falta); } else MessageBox.Show("La falta ingresada, se empalma con una incapacidad y/o dia de vacación del trabajador.", "Error"); } } } if (lstFaltas.Count != 0) { SqlBulkCopy bulk = new SqlBulkCopy(cnx); fh.bulkCommand = bulk; DataTable dtFalta = new DataTable(); DataRow dtFilaFalta; dtFalta.Columns.Add("id", typeof(Int32)); dtFalta.Columns.Add("idtrabajador", typeof(Int32)); dtFalta.Columns.Add("idempresa", typeof(Int32)); dtFalta.Columns.Add("periodo", typeof(Int32)); dtFalta.Columns.Add("faltas", typeof(Int32)); dtFalta.Columns.Add("fechainicio", typeof(DateTime)); dtFalta.Columns.Add("fechafin", typeof(DateTime)); dtFalta.Columns.Add("fecha", typeof(DateTime)); for (int i = 0; i < lstFaltas.Count; i++) { dtFilaFalta = dtFalta.NewRow(); dtFilaFalta["id"] = i + 1; dtFilaFalta["idtrabajador"] = lstFaltas[i].idtrabajador; dtFilaFalta["idempresa"] = lstFaltas[i].idempresa; dtFilaFalta["periodo"] = lstFaltas[i].periodo; dtFilaFalta["faltas"] = lstFaltas[i].faltas; dtFilaFalta["fechainicio"] = lstFaltas[i].fechainicio; dtFilaFalta["fechafin"] = lstFaltas[i].fechafin; dtFilaFalta["fecha"] = lstFaltas[i].fecha; dtFalta.Rows.Add(dtFilaFalta); } try { cnx.Open(); fh.bulkFaltas(dtFalta, "tmpFaltas"); fh.stpFaltas(); cnx.Close(); cnx.Dispose(); muestraFaltas(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message + "\r\n \r\n Error Bulk Faltas.", "Error"); } } }
private void mtxtNoEmpleado_Leave(object sender, EventArgs e) { int existeNoEmpleado = 0; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; try { cnx.Open(); existeNoEmpleado = (int)eh.existeEmpleado(GLOBALES.IDEMPRESA, mtxtNoEmpleado.Text); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: Al obtener la existencia del No. de Empleado." + error.Message, "Error"); cnx.Dispose(); return; } if (existeNoEmpleado != 0) { MessageBox.Show("El No. de Empleado ya existe. Verifique."); } }
private void guardar(int tipoGuardar) { int existe = 0; //SE VALIDA SI TODOS LOS CAMPOS HAN SIDO LLENADOS. string control = GLOBALES.VALIDAR(this, typeof(TextBox)); if (!control.Equals("")) { MessageBox.Show("Falta el campo: " + control, "Información"); return; } control = GLOBALES.VALIDAR(this, typeof(MaskedTextBox)); if (!control.Equals("")) { MessageBox.Show("Falta el campo: " + control, "Información"); return; } if (txtNSS.Text.Length != 11) { MessageBox.Show("El campo NSS es mayor o meno a 11 dígitos.", "Error"); return; } int idtrabajador; cnx = new SqlConnection(); cnx.ConnectionString = cdn; cmd = new SqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; CalculoNomina.Core.NominaHelper nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; Empleados.Core.Empleados existeEmpleado = new Empleados.Core.Empleados(); existeEmpleado.nss = txtNSS.Text.Trim().Substring(0, 10); existeEmpleado.digitoverificador = int.Parse(txtNSS.Text.Trim().Substring(10, 1)); existeEmpleado.idempresa = GLOBALES.IDEMPRESA; int existeNss; try { cnx.Open(); existeNss = (int)eh.existeEmpleado(existeEmpleado); cnx.Close(); } catch { MessageBox.Show("Error al validar existencia de empleado.", "Error"); return; } Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.nombres = txtNombre.Text; em.paterno = txtApPaterno.Text; em.materno = txtApMaterno.Text; em.noempleado = mtxtNoEmpleado.Text; em.nombrecompleto = txtApPaterno.Text + (string.IsNullOrEmpty(txtApMaterno.Text) ? "" : " " + txtApMaterno.Text) + " " + txtNombre.Text; em.fechaingreso = dtpFechaIngreso.Value; em.antiguedad = int.Parse(txtAntiguedad.Text); em.fechaantiguedad = dtpFechaAntiguedad.Value; em.fechanacimiento = dtpFechaNacimiento.Value; em.antiguedadmod = int.Parse(txtAntiguedadMod.Text); em.edad = int.Parse(txtEdad.Text); em.idempresa = GLOBALES.IDEMPRESA; em.rfc = txtRFC.Text; em.curp = txtCURP.Text; em.nss = txtNSS.Text.Trim().Substring(0, 10); em.digitoverificador = int.Parse(txtNSS.Text.Trim().Substring(10, 1)); em.idperiodo = int.Parse(cmbPeriodo.SelectedValue.ToString()); em.idsalario = int.Parse(cmbZona.SelectedValue.ToString()); em.tiposalario = int.Parse(cmbTipoSalario.SelectedValue.ToString()); em.tiporegimen = int.Parse(cmbTipoRegimen.SelectedValue.ToString()); em.sdi = decimal.Parse(txtSDI.Text); em.sd = decimal.Parse(txtSD.Text); em.sueldo = decimal.Parse(txtSueldo.Text); em.cuenta = mtxtCuentaBancaria.Text; em.clabe = mtxtCuentaClabe.Text; em.idbancario = mtxtIdBancario.Text; em.metodopago = cmbMetodoPago.Text; //em.metodopago = int.Parse(cmbMetodoPago.SelectedValue.ToString()); if (chkObraCivil.Checked) em.obracivil = true; else em.obracivil = false; //hh = new Historial.Core.HistorialHelper(); //hh.Command = cmd; //Historial.Core.Historial h = new Historial.Core.Historial(); //h.idempresa = GLOBALES.IDEMPRESA; //h.tipomovimiento = GLOBALES.mALTA; //h.valor = decimal.Parse(txtSDI.Text); //h.fecha_imss = dtpFechaIngreso.Value; //h.fecha_sistema = DateTime.Now; //h.motivobaja = 0; //h.iddepartamento = int.Parse(cmbDepartamento.SelectedValue.ToString()); //h.idpuesto = int.Parse(cmbPuesto.SelectedValue.ToString()); ih = new Imagen.Core.ImagenesHelper(); ih.Command = cmd; Imagen.Core.Imagenes img = null; //Empresas.Core.EmpresasHelper empresash = new Empresas.Core.EmpresasHelper(); //empresash.Command = cmd; //Empresas.Core.Empresas empresa = new Empresas.Core.Empresas(); //empresa.idempresa = GLOBALES.IDEMPRESA; try { if (ImagenAsignada == true) { img = new Imagen.Core.Imagenes(); img.imagen = GLOBALES.IMAGEN_BYTES(bmp); img.tipopersona = GLOBALES.pEMPLEADO; } } catch (Exception error) { MessageBox.Show("Error: " + error.Message, "Error"); } switch (_tipoOperacion) { case 0: try { //Empleados.Core.EmpleadosEstatus ee = new Empleados.Core.EmpleadosEstatus(); //ee.estatus = GLOBALES.ACTIVO; //ee.idempresa = GLOBALES.IDEMPRESA; em.estatus = GLOBALES.ACTIVO; em.idusuario = GLOBALES.IDUSUARIO; em.iddepartamento = int.Parse(cmbDepartamento.SelectedValue.ToString()); em.idpuesto = int.Parse(cmbPuesto.SelectedValue.ToString()); if (existeNss != 0) { MessageBox.Show("El empleado que desea ingresar ya existe actualmente. \r\n \r\n Es necesario realizar un reingreso.", "Error"); return; } cnx.Open(); eh.insertaEmpleado(em); idtrabajador = (int)eh.obtenerIdTrabajador(em); //h.idtrabajador = idtrabajador; //hh.insertarHistorial(h); //ee.idtrabajador = idtrabajador; //eh.insertaEmpleadoEstatus(ee); //a.idtrabajador = idtrabajador; //a.registropatronal = empresash.obtenerRegistroPatronal(empresa).ToString(); //ah.insertaAlta(a); if (ImagenAsignada == true) { img.idpersona = idtrabajador; ih.insertaImagen(img); } cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error al ingresar el empleado. \r\n \r\n Error: " + error.Message); } break; case 2: try { em.idtrabajador = _idempleado; em.iddepartamento = idDepto; em.idpuesto = idPuesto; pdh = new Periodos.Core.PeriodosHelper(); pdh.Command = cmd; Periodos.Core.Periodos p = new Periodos.Core.Periodos(); p.idperiodo = int.Parse(cmbPeriodo.SelectedValue.ToString()); int diasPago = 0; try { cnx.Open(); diasPago = (int)pdh.DiasDePago(p); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener los dias de pago.", "Error"); } DateTime dt = dtpFechaIngreso.Value.Date; DateTime periodoInicio, periodoFin; int diasProporcionales = 0; if (diasPago == 7) { while (dt.DayOfWeek != DayOfWeek.Monday) dt = dt.AddDays(-1); periodoInicio = dt; periodoFin = dt.AddDays(6); diasProporcionales = (int)(periodoFin.Date - dtpFechaIngreso.Value.Date).TotalDays + 1; } else { if (dt.Day <= 15) { periodoInicio = new DateTime(dt.Year, dt.Month, 1); periodoFin = new DateTime(dt.Year, dt.Month, 15); diasProporcionales = (int)(periodoFin.Date - dtpFechaIngreso.Value.Date).TotalDays + 1; } else { int diasMes = DateTime.DaysInMonth(dt.Year, dt.Month); int diasNoLaborados = 0; periodoInicio = new DateTime(dt.Year, dt.Month, 16); periodoFin = new DateTime(dt.Year, dt.Month, DateTime.DaysInMonth(dt.Year, dt.Month)); diasNoLaborados = (int)(dtpFechaIngreso.Value.Date - periodoInicio).TotalDays; switch (diasMes) { case 28: diasProporcionales = 15 - diasNoLaborados; break; case 29: diasProporcionales = 15 - diasNoLaborados; break; case 30: diasProporcionales = (diasMes - 15) - diasNoLaborados; break; case 31: diasProporcionales = (diasMes - 16) - diasNoLaborados; break; } } } Altas.Core.AltasHelper ah = new Altas.Core.AltasHelper(); ah.Command = cmd; Altas.Core.Altas a = new Altas.Core.Altas(); a.idempresa = GLOBALES.IDEMPRESA; a.contrato = 4; a.jornada = 12; a.nss = txtNSS.Text; a.rfc = txtRFC.Text; a.curp = txtCURP.Text; a.paterno = txtApPaterno.Text; a.materno = txtApMaterno.Text; a.nombre = txtNombre.Text; a.fechaingreso = dtpFechaIngreso.Value; a.diasproporcionales = diasProporcionales; a.sdi = decimal.Parse(txtSDI.Text); a.fechanacimiento = dtpFechaNacimiento.Value; a.estado = cmbEstado.Text; a.noestado = int.Parse(cmbEstado.SelectedValue.ToString()); a.sexo = ObtieneSexo(); a.periodoInicio = periodoInicio; a.periodoFin = periodoFin; cnx.Open(); eh.actualizaEmpleado(em); a.idtrabajador = _idempleado; ah.actualizaAlta(a); if (ImagenAsignada == true) { img.idpersona = _idempleado; img.tipopersona = GLOBALES.pEMPLEADO; existe = (int)ih.ExisteImagen(img); if (existe != 0) ih.actualizaImagen(img); else ih.insertaImagen(img); } cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error al actualizar el empleado. \r\n \r\n Error: " + error.Message); } break; } switch (tipoGuardar) { case 0: GLOBALES.LIMPIAR(this, typeof(TextBox)); GLOBALES.LIMPIAR(this, typeof(MaskedTextBox)); GLOBALES.REFRESCAR(this, typeof(ComboBox)); break; case 1: if (OnNuevoEmpleado != null) OnNuevoEmpleado(_tipoOperacion); this.Dispose(); break; } }
private void frmEmpleados_Load(object sender, EventArgs e) { CargaComboBox(); if (GLOBALES.OBRACIVIL) chkObraCivil.Visible = true; else chkObraCivil.Visible = false; if (_tipoOperacion == GLOBALES.CONSULTAR || _tipoOperacion == GLOBALES.MODIFICAR) { object fechaBaja; cnx = new SqlConnection(); cnx.ConnectionString = cdn; cmd = new SqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Bajas.Core.BajasHelper bh = new Bajas.Core.BajasHelper(); bh.Command = cmd; Bajas.Core.Bajas b = new Bajas.Core.Bajas(); b.idempresa = GLOBALES.IDEMPRESA; b.idtrabajador = _idempleado; List<Empleados.Core.Empleados> lstEmpleado; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idtrabajador = _idempleado; try { cnx.Open(); lstEmpleado = eh.obtenerEmpleado(em); fechaBaja = bh.obtenerFechaBaja(b); cnx.Close(); cnx.Dispose(); if (fechaBaja != null) { dtpFechaBaja.Value = DateTime.Parse(fechaBaja.ToString()); } else dtpFechaBaja.Value = new DateTime(1900, 1, 1); for (int i = 0; i < lstEmpleado.Count; i++) { txtNombre.Text = lstEmpleado[i].nombres; txtApPaterno.Text = lstEmpleado[i].paterno; txtApMaterno.Text = lstEmpleado[i].materno; mtxtNoEmpleado.Text = lstEmpleado[i].noempleado; dtpFechaIngreso.Value = DateTime.Parse(lstEmpleado[i].fechaingreso.ToString()); dtpFechaAntiguedad.Value = DateTime.Parse(lstEmpleado[i].fechaantiguedad.ToString()); dtpFechaNacimiento.Value = DateTime.Parse(lstEmpleado[i].fechanacimiento.ToString()); txtAntiguedad.Text = lstEmpleado[i].antiguedad.ToString(); txtEdad.Text = lstEmpleado[i].edad.ToString(); txtAntiguedadMod.Text = lstEmpleado[i].antiguedadmod.ToString(); txtRFC.Text = lstEmpleado[i].rfc; txtCURP.Text = lstEmpleado[i].curp; txtNSS.Text = lstEmpleado[i].nss + lstEmpleado[i].digitoverificador.ToString(); cmbDepartamento.SelectedValue = int.Parse(lstEmpleado[i].iddepartamento.ToString()); cmbPuesto.SelectedValue = int.Parse(lstEmpleado[i].idpuesto.ToString()); cmbPeriodo.SelectedValue = int.Parse(lstEmpleado[i].idperiodo.ToString()); cmbZona.SelectedValue = int.Parse(lstEmpleado[i].idsalario.ToString()); cmbTipoSalario.SelectedValue = int.Parse(lstEmpleado[i].tiposalario.ToString()); cmbTipoRegimen.SelectedValue = int.Parse(lstEmpleado[i].tiporegimen.ToString()); txtSueldo.Text = lstEmpleado[i].sueldo.ToString("F6"); txtSD.Text = lstEmpleado[i].sd.ToString("F6"); txtSDI.Text = lstEmpleado[i].sdi.ToString("F6"); mtxtCuentaBancaria.Text = lstEmpleado[i].cuenta.ToString(); mtxtCuentaClabe.Text = lstEmpleado[i].clabe.ToString(); mtxtIdBancario.Text = lstEmpleado[i].idbancario.ToString(); if (lstEmpleado[i].metodopago == "EFECTIVO") cmbMetodoPago.SelectedIndex = 0; if (lstEmpleado[i].metodopago == "CHEQUE") cmbMetodoPago.SelectedIndex = 1; if (lstEmpleado[i].metodopago == "TRANSFERENCIA") cmbMetodoPago.SelectedIndex = 2; departamento = cmbDepartamento.Text; puesto = cmbPuesto.Text; idDepto = int.Parse(lstEmpleado[i].iddepartamento.ToString()); idPuesto = int.Parse(lstEmpleado[i].idpuesto.ToString()); if (lstEmpleado[i].obracivil) chkObraCivil.Checked = true; else chkObraCivil.Checked = false; } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } if (_tipoOperacion == GLOBALES.CONSULTAR) { toolTitulo.Text = "Consulta Empleado"; GLOBALES.INHABILITAR(this, typeof(TextBox)); GLOBALES.INHABILITAR(this, typeof(MaskedTextBox)); GLOBALES.INHABILITAR(this, typeof(Button)); GLOBALES.INHABILITAR(this, typeof(DateTimePicker)); GLOBALES.INHABILITAR(this, typeof(ComboBox)); GLOBALES.INHABILITAR(this, typeof(RadioButton)); GLOBALES.INHABILITAR(this, typeof(CheckBox)); toolGuardarCerrar.Enabled = false; toolGuardarNuevo.Enabled = false; } else { toolTitulo.Text = "Edición Empleado"; cmbPeriodo.Enabled = false; } } else toolHistorial.Enabled = false; }
private void frmListaHistorial_Load(object sender, EventArgs e) { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); hh = new Historial.Core.HistorialHelper(); dh = new Departamento.Core.DeptoHelper(); ph = new Puestos.Core.PuestosHelper(); eh.Command = cmd; hh.Command = cmd; dh.Command = cmd; ph.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = _idempleado; Historial.Core.Historial historial = new Historial.Core.Historial(); historial.idtrabajador = _idempleado; Departamento.Core.Depto depto = new Departamento.Core.Depto(); depto.idempresa = GLOBALES.IDEMPRESA; Puestos.Core.Puestos puesto = new Puestos.Core.Puestos(); puesto.idempresa = GLOBALES.IDEMPRESA; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleado(empleado); lstHistorial = hh.obtenerHistoriales(historial); lstDepto = dh.obtenerDepartamentos(depto); lstPuesto = ph.obtenerPuestos(puesto); cnx.Close(); cnx.Dispose(); var lista = from emp in lstEmpleados join his in lstHistorial on emp.idtrabajador equals his.idtrabajador join d in lstDepto on his.iddepartamento equals d.id join p in lstPuesto on his.idpuesto equals p.idpuesto orderby his.fecha_imss ascending select new { IdTrabajador = emp.idtrabajador, NoEmpleado = emp.noempleado, Nombre = emp.nombrecompleto, Movimiento = his.tipomovimiento == GLOBALES.mALTA ? "ALTA" : his.tipomovimiento == GLOBALES.mMODIFICACIONSALARIO ? "MODIFICACION" : his.tipomovimiento == GLOBALES.mREINGRESO ? "REINGRESO" : his.tipomovimiento == GLOBALES.mBAJA ? "BAJA" : his.tipomovimiento == GLOBALES.mCAMBIODEPARTAMENTO ? "CAMBIO DE DEPARTAMENTO" : "CAMBIO DE PUESTO", SDI = his.valor, FechaAplicacion = his.fecha_imss, FechaSistema = his.fecha_sistema, Depto = d.descripcion, Puesto = p.nombre }; dgvHistorial.DataSource = lista.ToList(); for (int i = 0; i < dgvHistorial.Columns.Count; i++) { dgvHistorial.AutoResizeColumn(i); } dgvHistorial.Columns["IdTrabajador"].Visible = false; } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void lstvDepartamentos_ItemChecked(object sender, ItemCheckedEventArgs e) { idDepartamentos = ""; for (int i = 0; i < lstvDepartamentos.Items.Count; i++) { if (lstvDepartamentos.Items[i].Checked) { idDepartamentos += lstvDepartamentos.Items[i].Text + ","; } } if (idDepartamentos != "") { for (int i = 0; i < lstvPeriodos.SelectedItems.Count; i++) fecha = lstvPeriodos.SelectedItems[i].Text; if (fecha != "") { dgvEmpleados.DataSource = null; dgvEmpleados.Columns.Clear(); cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; lstEmp = new List<Empleados.Core.Empleados>(); idDepartamentos = idDepartamentos.Substring(0, idDepartamentos.Length - 1); try { cnx.Open(); lstEmp = eh.obtenerEmpleadoPorDepto(GLOBALES.IDEMPRESA, idDepartamentos, DateTime.Parse(fecha).Date, (cmbTipoNomina.Text == "Normal" ? 0 : 2)); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener el listado de los empleados.", "Error"); cnx.Dispose(); return; } var empleados = from emp in lstEmp select new { emp.idtrabajador, emp.noempleado, emp.nombrecompleto }; dgvEmpleados.DataSource = empleados.ToList(); dgvEmpleados.Columns.Add("generado", "Generado"); dgvEmpleados.Columns["idtrabajador"].Visible = false; dgvEmpleados.Columns["noempleado"].Width = 60; dgvEmpleados.Columns["nombrecompleto"].Width = 230; dgvEmpleados.Columns["generado"].Width = 150; } } else dgvEmpleados.DataSource = null; }
private void btnAceptar_Click(object sender, EventArgs e) { string rp; //SE VALIDA SI TODOS LOS CAMPOS HAN SIDO LLENADOS. string control = GLOBALES.VALIDAR(this, typeof(TextBox)); if (!control.Equals("")) { MessageBox.Show("Falta el campo: " + control, "Información"); return; } control = GLOBALES.VALIDAR(this, typeof(MaskedTextBox)); if (!control.Equals("")) { MessageBox.Show("Falta el campo: " + control, "Información"); return; } cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper empleadoh = new Empleados.Core.EmpleadosHelper(); Historial.Core.HistorialHelper hh = new Historial.Core.HistorialHelper(); Reingreso.Core.ReingresoHelper rh = new Reingreso.Core.ReingresoHelper(); Empresas.Core.EmpresasHelper eh = new Empresas.Core.EmpresasHelper(); Infonavit.Core.InfonavitHelper ih = new Infonavit.Core.InfonavitHelper(); empleadoh.Command = cmd; hh.Command = cmd; rh.Command = cmd; eh.Command = cmd; ih.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); Empleados.Core.EmpleadosEstatus ee = new Empleados.Core.EmpleadosEstatus(); Historial.Core.Historial historia = new Historial.Core.Historial(); Reingreso.Core.Reingresos reingreso = new Reingreso.Core.Reingresos(); Empresas.Core.Empresas empresa = new Empresas.Core.Empresas(); empleado.idtrabajador = _idempleado; empleado.idempresa = lstEmpleado[0].idempresa; empleado.fechaingreso = dtpFechaReingreso.Value; empleado.fechaantiguedad = dtpFechaAntiguedad.Value; empleado.antiguedad = int.Parse(txtAntiguedad.Text); empleado.antiguedadmod = int.Parse(txtAntiguedadMod.Text); empleado.iddepartamento = int.Parse(cmbDepartamento.SelectedValue.ToString()); empleado.idpuesto = int.Parse(cmbPuesto.SelectedValue.ToString()); empleado.idperiodo = int.Parse(cmbPeriodo.SelectedValue.ToString()); empleado.sueldo = decimal.Parse(txtSueldo.Text); empleado.sd = decimal.Parse(txtSalarioDiario.Text); empleado.sdi = decimal.Parse(txtSDI.Text); empleado.idusuario = GLOBALES.IDUSUARIO; empleado.estatus = GLOBALES.ACTIVO; empleado.cuenta = mtxtCuentaBancaria.Text; empleado.clabe = mtxtCuentaClabe.Text; empleado.idbancario = mtxtIdBancario.Text; empleado.metodopago = cmbMetodoPago.Text; if (chkObraCivil.Checked) empleado.obracivil = true; else empleado.obracivil = false; ee.idtrabajador = _idempleado; ee.idempresa = GLOBALES.IDEMPRESA; ee.estatus = GLOBALES.REINGRESO; historia.idtrabajador = _idempleado; historia.idempresa = lstEmpleado[0].idempresa; historia.valor = decimal.Parse(txtSDI.Text); historia.fecha_imss = dtpFechaReingreso.Value; historia.fecha_sistema = DateTime.Now; historia.motivobaja = 0; historia.tipomovimiento = GLOBALES.mREINGRESO; historia.iddepartamento = int.Parse(cmbDepartamento.SelectedValue.ToString()); historia.idpuesto = int.Parse(cmbPuesto.SelectedValue.ToString()); empresa.idempresa = lstEmpleado[0].idempresa; reingreso.idtrabajador = _idempleado; reingreso.idempresa = lstEmpleado[0].idempresa; reingreso.fechaingreso = dtpFechaReingreso.Value; reingreso.sdi = decimal.Parse(txtSDI.Text); reingreso.registro = DateTime.Now; Periodos.Core.PeriodosHelper pdh = new Periodos.Core.PeriodosHelper(); pdh.Command = cmd; Periodos.Core.Periodos p = new Periodos.Core.Periodos(); p.idperiodo = int.Parse(cmbPeriodo.SelectedValue.ToString()); int diasPago = 0; try { cnx.Open(); diasPago = (int)pdh.DiasDePago(p); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener los dias de pago.", "Error"); } DateTime dt = dtpFechaReingreso.Value.Date; DateTime periodoInicio, periodoFin; int diasProporcionales = 0; if (diasPago == 7) { while (dt.DayOfWeek != DayOfWeek.Monday) dt = dt.AddDays(-1); periodoInicio = dt; periodoFin = dt.AddDays(6); diasProporcionales = (int)(periodoFin.Date - dtpFechaReingreso.Value.Date).TotalDays + 1; } else { if (dt.Day <= 15) { periodoInicio = new DateTime(dt.Year, dt.Month, 1); periodoFin = new DateTime(dt.Year, dt.Month, 15); diasProporcionales = (int)(periodoFin.Date - dtpFechaReingreso.Value.Date).TotalDays + 1; } else { int diasMes = DateTime.DaysInMonth(dt.Year, dt.Month); int diasNoLaborados = 0; periodoInicio = new DateTime(dt.Year, dt.Month, 16); periodoFin = new DateTime(dt.Year, dt.Month, DateTime.DaysInMonth(dt.Year, dt.Month)); diasNoLaborados = (int)(dtpFechaReingreso.Value.Date - periodoInicio).TotalDays; switch (diasMes) { case 28: diasProporcionales = 15 - diasNoLaborados; break; case 29: diasProporcionales = 15 - diasNoLaborados; break; case 30: diasProporcionales = (diasMes - 15) - diasNoLaborados; break; case 31: diasProporcionales = (diasMes - 16) - diasNoLaborados; break; } } } CalculoNomina.Core.NominaHelper nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; List<CalculoNomina.Core.tmpPagoNomina> lstFechas = new List<CalculoNomina.Core.tmpPagoNomina>(); bool verificaFechas = false; try { cnx.Open(); lstFechas = nh.obtenerUltimaNominaTrabajador(GLOBALES.IDEMPRESA, GLOBALES.NORMAL, diasPago, _idempleado); cnx.Close(); } catch (Exception) { MessageBox.Show("Error: Al obtener la fecha de la ultima nómina calculada", "Error"); } if (lstFechas.Count != 0) { if (dtpFechaReingreso.Value.Date <= lstFechas[0].fechainicio.Date || dtpFechaReingreso.Value.Date <= lstFechas[0].fechafin.Date) verificaFechas = false; else verificaFechas = true; if (!verificaFechas) { MessageBox.Show("La fecha de ingreso es invalida. Fecha menor al ultimo periodo calculado, verifique.", "Error"); return; } } try { cnx.Open(); empleadoh.reingreso(empleado); empleadoh.bajaEmpleado(ee); rp = (string)eh.obtenerRegistroPatronal(empresa); reingreso.registropatronal = rp; reingreso.nss = lstEmpleado[0].nss + lstEmpleado[0].digitoverificador; reingreso.diasproporcionales = diasProporcionales; reingreso.periodoinicio = periodoInicio; reingreso.periodofin = periodoFin; rh.insertaReingreso(reingreso); hh.insertarHistorial(historia); cnx.Close(); MessageBox.Show("Empleado reingresado con éxito.", "Información"); if (OnReingreso != null) OnReingreso(GLOBALES.NUEVO); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } int existeInfonavit = 0; try { cnx.Open(); existeInfonavit = (int)ih.existeInfonavit(_idempleado); cnx.Close(); } catch (Exception) { MessageBox.Show("Error: Al obtener la existencia del Infonavit.\r\n AVISO: INGRESAR O MODIFICAR MANUALMENTE EL CREDITO DE INFONAVIT", "Error"); cnx.Dispose(); } List<Infonavit.Core.Infonavit> lstInfonavit = new List<Infonavit.Core.Infonavit>(); if (existeInfonavit != 0) { try { cnx.Open(); lstInfonavit = ih.obtenerInfonavitTrabajador(_idempleado); cnx.Close(); } catch (Exception) { MessageBox.Show("Error: Al obtener la información de infonavit.\r\n AVISO: INGRESAR O MODIFICAR MANUALMENTE EL CREDITO DE INFONAVIT", "Error"); cnx.Dispose(); } try { cnx.Open(); ih.actualizaEstatusInfonavit(lstInfonavit[0].idinfonavit, _idempleado); cnx.Close(); MessageBox.Show("Trabajador cuenta con Infonavit. Crédito: " + lstInfonavit[0].credito, "Información"); } catch (Exception) { MessageBox.Show("Error: Al obtener al activar el crédito de infonavit.\r\n AVISO: INGRESAR O MODIFICAR MANUALMENTE EL CREDITO DE INFONAVIT", "Error"); cnx.Dispose(); } } this.Dispose(); }
private void ListaEmpleados() { string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; bh = new Bajas.Core.BajasHelper(); ch = new Catalogos.Core.CatalogosHelper(); eh = new Empleados.Core.EmpleadosHelper(); bh.Command = cmd; ch.Command = cmd; eh.Command = cmd; Bajas.Core.Bajas baja = new Bajas.Core.Bajas(); baja.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; try { cnx.Open(); lstBajas = bh.obtenerBajas(baja); lstCatalogos = ch.obtenerCatalogos(); lstEmpleados = eh.obtenerEmpleadosBaja(empleado); cnx.Close(); cnx.Dispose(); var baj = from b in lstBajas join c in lstCatalogos on b.motivo equals c.id join t in lstEmpleados on b.idtrabajador equals t.idtrabajador select new { Folio = b.id, Id = b.idtrabajador, NoEmpleado = t.noempleado, RegistroPatronal = b.registropatronal, Nss = b.nss, Nombre = t.nombrecompleto, Motivo = c.descripcion, MValor = c.valor, Baja = b.fecha, Observaciones = b.observaciones }; dgvBajasSua.DataSource = baj.ToList(); for (int i = 0; i < dgvBajasSua.Columns.Count; i++) { dgvBajasSua.AutoResizeColumn(i); } dgvBajasSua.Columns["Folio"].Visible = false; dgvBajasSua.Columns["Id"].Visible = false; dgvBajasSua.Columns["MValor"].Visible = false; } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void guardar(int tipoGuardar) { //SE VALIDA SI TODOS LOS CAMPOS HAN SIDO LLENADOS. string control = GLOBALES.VALIDAR(this, typeof(TextBox)); if (!control.Equals("")) { MessageBox.Show("Falta el campo: " + control, "Información"); return; } control = GLOBALES.VALIDAR(this, typeof(MaskedTextBox)); if (!control.Equals("")) { MessageBox.Show("Falta el campo: " + control, "Información"); return; } cnx = new MySqlConnection(); cnx.ConnectionString = cdn; cmd = new MySqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.nombres = txtNombre.Text; em.paterno = txtApMaterno.Text; em.materno = txtApMaterno.Text; em.nombrecompleto = txtApPaterno.Text + (string.IsNullOrEmpty(txtApMaterno.Text) ? "" : " " + txtApMaterno.Text) + " " + txtNombre.Text; em.fechanacimiento = dtpFechaNacimiento.Value; em.edad = int.Parse(txtEdad.Text); em.idempresa = GLOBALES.IDEMPRESA; em.fechaingreso = dtpFechaIngreso.Value; em.localforaneo = cmbLocalForaneo.SelectedValue.ToString(); em.sua = cmbSua.SelectedValue.ToString(); em.rfc = txtRFC.Text; em.curp = txtCURP.Text; em.nss = txtNSS.Text; em.digitoverificador = int.Parse(txtDigito.Text); switch (_tipoOperacion) { case 0: try { em.antiguedad = 0; em.idcliente = int.Parse(cmbCliente.SelectedValue.ToString()); em.idperiodo = int.Parse(cmbPeriodo.SelectedValue.ToString()); em.tiposalario = cmbTipoSalario.SelectedValue.ToString(); em.sdi = decimal.Parse(txtSDI.Text); em.sd = decimal.Parse(txtSD.Text); em.sueldo = decimal.Parse(txtSueldo.Text); em.idinfonavit = 0; em.estatus = 0; em.idse = 0; em.modsalario = 0; em.idplaza = GLOBALES.IDPLAZA; cnx.Open(); eh.insertaEmpleado(em); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error al ingresar el empleado. \r\n \r\n Error: " + error.Message); } break; case 2: try { em.idempresa = _idempleado; cnx.Open(); eh.actualizaEmpleado(em); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error al actualizar el empleado. \r\n \r\n Error: " + error.Message); } break; } switch (tipoGuardar) { case 0: GLOBALES.LIMPIAR(this, typeof(TextBox)); GLOBALES.LIMPIAR(this, typeof(MaskedTextBox)); GLOBALES.REFRESCAR(this, typeof(ComboBox)); break; case 1: if (OnNuevoEmpleado != null) { OnNuevoEmpleado(_tipoOperacion); } this.Dispose(); break; } }
private void toolEliminar_Click(object sender, EventArgs e) { int fila = dgvBajasSua.CurrentCell.RowIndex; int idPeriodo = 0, diasPeriodo = 0; string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Bajas.Core.BajasHelper bh = new Bajas.Core.BajasHelper(); bh.Command = cmd; CalculoNomina.Core.NominaHelper nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; Periodos.Core.PeriodosHelper ph = new Periodos.Core.PeriodosHelper(); ph.Command = cmd; Periodos.Core.Periodos periodo = new Periodos.Core.Periodos(); Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; List<Bajas.Core.Bajas> lstBaja = new List<Bajas.Core.Bajas>(); List<CalculoNomina.Core.tmpPagoNomina> lstNomina = new List<CalculoNomina.Core.tmpPagoNomina>(); try { cnx.Open(); idPeriodo = int.Parse(eh.obtenerIdPeriodo(int.Parse(dgvBajasSua.Rows[fila].Cells[1].Value.ToString())).ToString()); periodo.idperiodo = idPeriodo; diasPeriodo = int.Parse(ph.DiasDePago(periodo).ToString()); lstBaja = bh.obtenerBaja(int.Parse(dgvBajasSua.Rows[fila].Cells[0].Value.ToString())); lstNomina = nh.obtenerUltimaNominaTrabajador(GLOBALES.IDEMPRESA, int.Parse(dgvBajasSua.Rows[fila].Cells[1].Value.ToString()), diasPeriodo); cnx.Close(); } catch (Exception) { MessageBox.Show("Error: Al obtener los datos de la baja.", "Error"); cnx.Dispose(); return; } if (lstNomina.Count != 0) if (lstBaja[0].periodoinicio == lstNomina[0].fechainicio && lstBaja[0].periodofin == lstNomina[0].fechafin) { MessageBox.Show("La baja pertenece a un periodo cerrado. No se puede eliminar.", "Información"); return; } DialogResult respuesta = MessageBox.Show("¿Quiere eliminar la baja?. \r\n \r\n CUIDADO. Esta acción eliminará permanentemente el registro.", "Confirmación", MessageBoxButtons.YesNo); if (respuesta == DialogResult.Yes) { Historial.Core.HistorialHelper hh = new Historial.Core.HistorialHelper(); hh.Command = cmd; Empleados.Core.EmpleadosEstatus ee = new Empleados.Core.EmpleadosEstatus(); ee.idtrabajador = int.Parse(dgvBajasSua.Rows[fila].Cells[1].Value.ToString()); ee.idempresa = GLOBALES.IDEMPRESA; ee.estatus = GLOBALES.ACTIVO; Bajas.Core.Bajas baja = new Bajas.Core.Bajas(); baja.idtrabajador = int.Parse(dgvBajasSua.Rows[fila].Cells[1].Value.ToString()); baja.idempresa = GLOBALES.IDEMPRESA; baja.fecha = DateTime.Parse(dgvBajasSua.Rows[fila].Cells[8].Value.ToString()).Date; Historial.Core.Historial historial = new Historial.Core.Historial(); historial.idtrabajador = int.Parse(dgvBajasSua.Rows[fila].Cells[1].Value.ToString()); historial.idempresa = GLOBALES.IDEMPRESA; historial.fecha_imss = DateTime.Parse(dgvBajasSua.Rows[fila].Cells[8].Value.ToString()).Date; try { cnx.Open(); bh.eliminaBaja(baja); eh.bajaEmpleado(ee); eh.actualizaEstatus(int.Parse(dgvBajasSua.Rows[fila].Cells[1].Value.ToString())); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: Al eliminar la baja. \r\n" + error.Message, "Error"); cnx.Dispose(); return; } try { cnx.Open(); hh.eliminaHistorial(historial); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: Al eliminar el movimiento del historial.\r\n" + error.Message, "Error"); cnx.Dispose(); return; } MessageBox.Show("Registro eliminado.", "Confirmación"); ListaEmpleados(); } }
void b_OnBuscar(int id, string nombre) { idTrabajador = id; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Puestos.Core.PuestosHelper ph = new Puestos.Core.PuestosHelper(); ph.Command = cmd; Departamento.Core.DeptoHelper dh = new Departamento.Core.DeptoHelper(); dh.Command = cmd; List<Empleados.Core.Empleados> lstEmpleado = new List<Empleados.Core.Empleados>(); List<Departamento.Core.Depto> lstDepartamento = new List<Departamento.Core.Depto>(); List<Puestos.Core.Puestos> lstPuesto = new List<Puestos.Core.Puestos>(); Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = id; Departamento.Core.Depto dpto = new Departamento.Core.Depto(); dpto.idempresa = GLOBALES.IDEMPRESA; Puestos.Core.Puestos puesto = new Puestos.Core.Puestos(); puesto.idempresa = GLOBALES.IDEMPRESA; try { cnx.Open(); lstEmpleado = eh.obtenerEmpleado(empleado); lstDepartamento = dh.obtenerDepartamentos(dpto); lstPuesto = ph.obtenerPuestos(puesto); cnx.Close(); cnx.Dispose(); } catch { MessageBox.Show("Error al obtener el empleado.","Error"); } var dato = from emp in lstEmpleado join d in lstDepartamento on emp.iddepartamento equals d.id join p in lstPuesto on emp.idpuesto equals p.idpuesto select new { emp.noempleado, emp.nombrecompleto, emp.sd, d.descripcion, p.nombre, emp.fechaingreso }; foreach (var i in dato) { mtxtNoEmpleado.Text = i.noempleado; txtNombreCompleto.Text = i.nombrecompleto; txtDepartamento.Text = i.descripcion; txtPuesto.Text = i.nombre; txtSueldo.Text = "$ " + i.sd.ToString("#,##0.00"); txtFechaIngreso.Text = i.fechaingreso.ToString("dd-MM-yyyy"); } dgvPercepciones.DataSource = null; dgvDeducciones.DataSource = null; txtPercepciones.Text = "$ 0.00"; txtDeducciones.Text = "$ 0.00"; txtNeto.Text = "$ 0.00"; muestraDatos(); muestraFaltas(); muestraIncidencias(); muestraProgramacion(); muestraMovimientos(); muestraInfonavit(); muestraVacaciones(); }
private void workAntiguedad_DoWork(object sender, DoWorkEventArgs e) { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; try { cnx.Open(); eh.actualizaAntiguedad(GLOBALES.IDEMPRESA); cnx.Close(); } catch { cnx.Dispose(); return; } }
private void toolBaja_Click(object sender, EventArgs e) { int estatus = 0; string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; int fila = dgvEmpleados.CurrentCell.RowIndex; int idempleado = int.Parse(dgvEmpleados.Rows[fila].Cells[0].Value.ToString()); cnx = new MySqlConnection(cdn); cmd = new MySqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = idempleado; LayoutMovimientos.Core.LayoutHelper lh = new LayoutMovimientos.Core.LayoutHelper(); lh.Command = cmd; LayoutMovimientos.Core.LayoutMovimientos lm = new LayoutMovimientos.Core.LayoutMovimientos(); lm.idtrabajador = idempleado; try { cnx.Open(); estatus = (int)eh.obtenerEstatus(empleado); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } if (estatus.Equals(0)) { DialogResult respuesta = MessageBox.Show("¿Quiere eliminar la trabajador?", "Confirmación", MessageBoxButtons.YesNo); if (respuesta == DialogResult.Yes) { //eh = new Empleados.Core.EmpleadosHelper(); //eh.Command = cmd; try { cnx.Open(); eh.bajaEmpleado(empleado); lh.bajaLayoutMovimiento(lm); cnx.Close(); cnx.Dispose(); ListaEmpleados(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } } } else { MessageBox.Show("El empleado no puede ser eliminado. Ya tiene movimientos registrados.", "Confirmación"); } }
private void ListaEmpleados() { string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; ih = new Infonavit.Core.InfonavitHelper(); eh = new Empleados.Core.EmpleadosHelper(); ih.Command = cmd; eh.Command = cmd; Infonavit.Core.suaInfonavit sua = new Infonavit.Core.suaInfonavit(); sua.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; try { cnx.Open(); lstInf = ih.obtenerInfonavit(sua); lstEmpleados = eh.obtenerEmpleados(empleado); cnx.Close(); cnx.Dispose(); var inf = from i in lstInf join t in lstEmpleados on i.idtrabajador equals t.idtrabajador select new { RegistroPatronal = i.registropatronal, Nss = i.nss, Nombre = t.nombrecompleto, Credito = i.credito, Modificacion = i.modificacion, Descuento = i.descuento, Fecha = i.fecha, Valor = i.valor }; dgvInfSua.DataSource = inf.ToList(); for (int i = 0; i < dgvInfSua.Columns.Count; i++) { dgvInfSua.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void btnCalcular_Click(object sender, EventArgs e) { if (idempleado == 0) { MessageBox.Show("Debe especificar el empleado.", "Información"); return; } if (txtSueldo.Text.Length != 0) { int DiasDePago = 0; double FactorDePago = 0; int Periodo = 0; cnx = new MySqlConnection(); cnx.ConnectionString = cdn; cmd = new MySqlCommand(); cmd.Connection = cnx; Periodos.Core.PeriodosHelper ph = new Periodos.Core.PeriodosHelper(); Periodos.Core.Periodos p = new Periodos.Core.Periodos(); Factores.Core.FactoresHelper fh = new Factores.Core.FactoresHelper(); Factores.Core.Factores f = new Factores.Core.Factores(); Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); Empleados.Core.Empleados em = new Empleados.Core.Empleados(); ph.Command = cmd; fh.Command = cmd; eh.Command = cmd; try { em.idtrabajador = idempleado; List <Empleados.Core.Empleados> lstEmpleado = eh.obtenerEmpleado(em); for (int i = 0; i < lstEmpleado.Count; i++) { Periodo = lstEmpleado[i].idperiodo; } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); this.Dispose(); } p.idperiodo = Periodo; f.anio = 0; try { cnx.Open(); DiasDePago = (int)ph.DiasDePago(p); FactorDePago = double.Parse(fh.FactorDePago(f).ToString()); cnx.Close(); cnx.Dispose(); txtSD.Text = (double.Parse(txtSueldo.Text) / DiasDePago).ToString("F4"); txtSDI.Text = (double.Parse(txtSD.Text) * FactorDePago).ToString("F4"); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); this.Dispose(); } } }
private void frmBuscar_Load(object sender, EventArgs e) { dgvCatalogo.RowHeadersVisible = false; cnx = new MySqlConnection(); cmd = new MySqlCommand(); cnx.ConnectionString = cdn; cmd.Connection = cnx; if (_catalogo == GLOBALES.EMPLEADOS) { eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idplaza = GLOBALES.IDPLAZA; em.idempresa = GLOBALES.IDEMPRESA; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleados(em); cnx.Close(); cnx.Dispose(); var empleados = from a in lstEmpleados select new { Id = a.idtrabajador, Nombre = a.nombrecompleto }; dgvCatalogo.DataSource = empleados.ToList(); for (int i = 0; i < dgvCatalogo.Columns.Count; i++) { dgvCatalogo.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } } else if (_catalogo == GLOBALES.CLIENTES) { ch = new Clientes.Core.ClientesHelper(); ch.Command = cmd; Clientes.Core.Clientes clientes = new Clientes.Core.Clientes(); clientes.plaza = GLOBALES.IDPLAZA; try { cnx.Open(); lstClientes = ch.obtenerClientes(clientes); cnx.Close(); cnx.Dispose(); var cliente = from c in lstClientes select new { Id = c.idcliente, Nombre = c.nombre }; dgvCatalogo.DataSource = cliente.ToList(); for (int i = 0; i < dgvCatalogo.Columns.Count; i++) { dgvCatalogo.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } } }
private void ListaEmpleados() { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); Infonavit.Core.InfonavitHelper ih = new Infonavit.Core.InfonavitHelper(); eh.Command = cmd; ih.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; Infonavit.Core.Infonavit inf = new Infonavit.Core.Infonavit(); inf.idempresa = GLOBALES.IDEMPRESA; Catalogos.Core.CatalogosHelper ch = new Catalogos.Core.CatalogosHelper(); ch.Command = cmd; Catalogos.Core.Catalogo cat = new Catalogos.Core.Catalogo(); cat.grupodescripcion = "ESTATUS INFONAVIT"; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleados(empleado); lstInfonavit = ih.obtenerInfonavits(inf); lstCatalogo = ch.obtenerGrupo(cat); cnx.Close(); cnx.Dispose(); var em = from e in lstEmpleados join i in lstInfonavit on e.idtrabajador equals i.idtrabajador join c in lstCatalogo on i.estatus equals c.id select new { IdTrabajador = e.idtrabajador, NoEmpleado = e.noempleado, Nombre = e.nombrecompleto, Credito = i.credito, Descuento = i.descuento == GLOBALES.dPORCENTAJE ? "PORCENTAJE" : i.descuento == GLOBALES.dVSMDF ? "VSMDF" : "PESOS", Valor = i.valordescuento, Activo = i.activo ? "ACTIVO" : "NO ACTIVO", Estatus = c.descripcion }; dgvInfonavit.DataSource = em.ToList(); for (int i = 0; i < dgvInfonavit.Columns.Count; i++) { dgvInfonavit.AutoResizeColumn(i); } dgvInfonavit.Columns["IdTrabajador"].Visible = false; } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void btnGuardarVP_Click(object sender, EventArgs e) { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper emph = new Empleados.Core.EmpleadosHelper(); emph.Command = cmd; Vacaciones.Core.VacacionesHelper vh = new Vacaciones.Core.VacacionesHelper(); vh.Command = cmd; Complementos.Core.ComplementoHelper ch = new Complementos.Core.ComplementoHelper(); ch.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = idTrabajador; Complementos.Core.Complemento c = new Complementos.Core.Complemento(); c.idtrabajador = idTrabajador; c.observaciones = txtObservaciones.Text; List<Empleados.Core.Empleados> lstEmpleado = new List<Empleados.Core.Empleados>(); try { cnx.Open(); lstEmpleado = emph.obtenerEmpleado(empleado); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener la antigüedad del empleado.", "Error"); cnx.Dispose(); return; } Vacaciones.Core.DiasDerecho dd = new Vacaciones.Core.DiasDerecho(); dd.anio = lstEmpleado[0].antiguedadmod; int dias = 0; try { cnx.Open(); dias = (int)vh.diasDerecho(dd); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener los dias por derecho del empleado.", "Error"); cnx.Dispose(); return; } int existePrima = 0; int existeVacacion = 0; if (cmbConceptoVacaciones.SelectedIndex == 0) // PRIMA VACACIONAL Y VACACIONES { Vacaciones.Core.VacacionesPrima vp = new Vacaciones.Core.VacacionesPrima(); vp.idtrabajador = idTrabajador; vp.periodoinicio = _inicioPeriodo; vp.periodofin = _finPeriodo; vp.vacacionesprima = "P"; try { cnx.Open(); existePrima = (int)vh.existeVacacionesPrima(vp); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener la existencia de prima vacacional del empleado.", "Error"); cnx.Dispose(); return; } vp = new Vacaciones.Core.VacacionesPrima(); vp.idtrabajador = idTrabajador; vp.periodoinicio = _inicioPeriodo; vp.periodofin = _finPeriodo; vp.vacacionesprima = "V"; try { cnx.Open(); existeVacacion = (int)vh.existeVacacionesPrima(vp); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener la existencia de vacaciones del empleado.", "Error"); cnx.Dispose(); return; } //VALIDACION DE EXISTENCIA DE PRIMA VACACIONAL Y VACACIONES if (existePrima != 0 || existeVacacion != 0) { MessageBox.Show("Error: Los datos a ingresar ya existen y/o existe la Prima Vacaciona o Vacaciones.", "Error"); cnx.Dispose(); return; } else { Faltas.Core.FaltasHelper fh = new Faltas.Core.FaltasHelper(); fh.Command = cmd; Faltas.Core.Faltas falta = new Faltas.Core.Faltas(); falta.idempresa = GLOBALES.IDEMPRESA; falta.idtrabajador = idTrabajador; falta.fechainicio = _inicioPeriodo.Date; falta.fechafin = _finPeriodo.Date; int existeFaltas = 0; try { cnx.Open(); existeFaltas = (int)fh.existeFalta(falta); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: Al obtener las faltas del trabajador. \r\n" + error.Message, "Error"); cnx.Dispose(); return; } int diasPagoReales = int.Parse(txtDiasPagoPV.Text) + existeFaltas; if (diasPagoReales > _periodo) { diasPagoReales = _periodo - existeFaltas; MessageBox.Show("Existen faltas del trabajador, se ajustaron las vacaciones a: " + diasPagoReales.ToString() + " dia(s).", "Información"); } else { diasPagoReales = int.Parse(txtDiasPagoPV.Text); } vp = new Vacaciones.Core.VacacionesPrima(); vp.idtrabajador = idTrabajador; vp.idempresa = GLOBALES.IDEMPRESA; vp.periodoinicio = _inicioPeriodo; vp.periodofin = _finPeriodo; vp.diasderecho = dias; vp.diaspago = diasPagoReales; vp.diaspendientes = dias - diasPagoReales; vp.fechapago = DateTime.Now.Date; vp.fechainicio = DateTime.Now.Date; vp.fechafin = DateTime.Now.Date; vp.vacacionesprima = "P"; try { cnx.Open(); vh.insertaVacacion(vp); cnx.Close(); } catch { MessageBox.Show("Error: Al ingresar el registro de prima vacacional.", "Error"); cnx.Dispose(); return; } diasPagoReales = int.Parse(txtDiasPagoV.Text) + existeFaltas; if (diasPagoReales > _periodo) { diasPagoReales = _periodo - existeFaltas; MessageBox.Show("Existen faltas del trabajador, se ajustaron las vacaciones a: " + diasPagoReales.ToString() + " dia(s).", "Información"); } else { diasPagoReales = int.Parse(txtDiasPagoV.Text); } vp = new Vacaciones.Core.VacacionesPrima(); vp.idtrabajador = idTrabajador; vp.idempresa = GLOBALES.IDEMPRESA; vp.periodoinicio = _inicioPeriodo; vp.periodofin = _finPeriodo; vp.diasderecho = dias; vp.diaspago = diasPagoReales; vp.diaspendientes = dias - diasPagoReales; vp.fechapago = DateTime.Now.Date; vp.fechainicio = dtpFechaInicioVacaciones.Value.Date; vp.fechafin = dtpFechaInicioVacaciones.Value.AddDays(diasPagoReales - 1); vp.vacacionesprima = "V"; try { cnx.Open(); vh.insertaVacacion(vp); cnx.Close(); cnx.Dispose(); muestraVacaciones(); } catch { MessageBox.Show("Error: Al ingresar el registro de prima vacacional.", "Error"); cnx.Dispose(); return; } } } else // SOLO PRIMA VACACIONAL { Vacaciones.Core.VacacionesPrima vp = new Vacaciones.Core.VacacionesPrima(); vp.idtrabajador = idTrabajador; vp.periodoinicio = _inicioPeriodo; vp.periodofin = _finPeriodo; vp.vacacionesprima = "P"; try { cnx.Open(); existePrima = (int)vh.existeVacacionesPrima(vp); cnx.Close(); } catch { MessageBox.Show("Error: Al obtener la existencia de vacaciones del empleado.", "Error"); cnx.Dispose(); return; } //VALIDACION DE EXISTENCIA DE PRIMA VACACIONAL if (existePrima != 0) { MessageBox.Show("Error: Los datos a ingresar ya existen.", "Error"); cnx.Dispose(); return; } else { Faltas.Core.FaltasHelper fh = new Faltas.Core.FaltasHelper(); fh.Command = cmd; Faltas.Core.Faltas falta = new Faltas.Core.Faltas(); falta.idempresa = GLOBALES.IDEMPRESA; falta.idtrabajador = idTrabajador; falta.fechainicio = _inicioPeriodo.Date; falta.fechafin = _finPeriodo.Date; int existeFaltas = 0; try { cnx.Open(); existeFaltas = (int)fh.existeFalta(falta); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: Al obtener las faltas del trabajador. \r\n" + error.Message, "Error"); cnx.Dispose(); return; } int diasPagoReales = int.Parse(txtDiasPagoPV.Text) + existeFaltas; if (diasPagoReales > _periodo) { diasPagoReales = _periodo - existeFaltas; MessageBox.Show("Existen faltas del trabajador, se ajustaron las vacaciones a: " + diasPagoReales.ToString() + " dia(s).", "Información"); } else { diasPagoReales = int.Parse(txtDiasPagoPV.Text); } vp = new Vacaciones.Core.VacacionesPrima(); vp.idtrabajador = idTrabajador; vp.idempresa = GLOBALES.IDEMPRESA; vp.periodoinicio = _inicioPeriodo; vp.periodofin = _finPeriodo; vp.diasderecho = dias; vp.diaspago = diasPagoReales; vp.diaspendientes = dias - diasPagoReales; vp.fechapago = DateTime.Now.Date; vp.fechainicio = DateTime.Now.Date; vp.fechafin = DateTime.Now.Date; vp.vacacionesprima = "P"; try { cnx.Open(); vh.insertaVacacion(vp); cnx.Close(); cnx.Dispose(); muestraVacaciones(); } catch { MessageBox.Show("Error: Al ingresar el registro de prima vacacional.", "Error"); cnx.Dispose(); return; } } } }
private void ListaEmpleados() { string cdn = ConfigurationManager.ConnectionStrings["cdnNomina"].ConnectionString; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; rh = new Reingreso.Core.ReingresoHelper(); eh = new Empleados.Core.EmpleadosHelper(); rh.Command = cmd; eh.Command = cmd; Reingreso.Core.Reingresos reingreso = new Reingreso.Core.Reingresos(); reingreso.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; try { cnx.Open(); lstReingreso = rh.obtenerReingresos(reingreso); lstEmpleados = eh.obtenerEmpleados(empleado); cnx.Close(); cnx.Dispose(); var rein = from r in lstReingreso join t in lstEmpleados on r.idtrabajador equals t.idtrabajador select new { RegistroPatronal = r.registropatronal, Nss = r.nss, Nombre = t.nombrecompleto, Reingreso = r.fechaingreso, Integrado = r.sdi }; dgvReingresoSua.DataSource = rein.ToList(); for (int i = 0; i < dgvReingresoSua.Columns.Count; i++) { dgvReingresoSua.AutoResizeColumn(i); } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void muestraMovimientos() { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Movimientos.Core.MovimientosHelper mh = new Movimientos.Core.MovimientosHelper(); mh.Command = cmd; Conceptos.Core.ConceptosHelper ch = new Conceptos.Core.ConceptosHelper(); ch.Command = cmd; Empleados.Core.EmpleadosHelper emph = new Empleados.Core.EmpleadosHelper(); emph.Command = cmd; Movimientos.Core.Movimientos m = new Movimientos.Core.Movimientos(); m.idtrabajador = idTrabajador; Conceptos.Core.Conceptos c = new Conceptos.Core.Conceptos(); c.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = idTrabajador; List<Movimientos.Core.Movimientos> lstMovimientos = new List<Movimientos.Core.Movimientos>(); List<Conceptos.Core.Conceptos> lstConceptos = new List<Conceptos.Core.Conceptos>(); List<Empleados.Core.Empleados> lstEmpleado = new List<Empleados.Core.Empleados>(); try { cnx.Open(); lstMovimientos = mh.obtenerMovimientosTrabajador(m); lstConceptos = ch.obtenerConceptos(c, _periodo); lstEmpleado = emph.obtenerEmpleado(empleado); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: Al obtener los Movimientos. (Función Muestra Movimientos.) \r\n \r\n" + error.Message, "Error"); } var prog = from mov in lstMovimientos join co in lstConceptos on mov.idconcepto equals co.id join em in lstEmpleado on mov.idtrabajador equals em.idtrabajador select new { mov.id, mov.idtrabajador, em.noempleado, em.nombrecompleto, co.concepto, mov.cantidad, mov.fechainicio, mov.fechafin }; dgvMovimientos.Columns["idm"].DataPropertyName = "id"; dgvMovimientos.Columns["idtrabajadorm"].DataPropertyName = "idtrabajador"; dgvMovimientos.Columns["noempleadom"].DataPropertyName = "noempleado"; dgvMovimientos.Columns["nombrem"].DataPropertyName = "nombrecompleto"; dgvMovimientos.Columns["conceptom"].DataPropertyName = "concepto"; dgvMovimientos.Columns["cantidadm"].DataPropertyName = "cantidad"; dgvMovimientos.Columns["periodoiniciom"].DataPropertyName = "fechainicio"; dgvMovimientos.Columns["periodofinm"].DataPropertyName = "fechafin"; dgvMovimientos.DataSource = prog.ToList(); DataGridViewCellStyle estilo = new DataGridViewCellStyle(); estilo.Alignment = DataGridViewContentAlignment.MiddleRight; estilo.Format = "C2"; dgvProgramacion.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; dgvProgramacion.Columns[5].DefaultCellStyle = estilo; }
private void frmInfonavit_Load(object sender, EventArgs e) { cargaCombo(); if (_tipoOperacion == GLOBALES.CONSULTAR || _tipoOperacion == GLOBALES.MODIFICAR) { cnx = new SqlConnection(); cnx.ConnectionString = cdn; cmd = new SqlCommand(); cmd.Connection = cnx; ih = new Infonavit.Core.InfonavitHelper(); ih.Command = cmd; eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Departamento.Core.DeptoHelper dh = new Departamento.Core.DeptoHelper(); dh.Command = cmd; List<Infonavit.Core.Infonavit> lstInfonavit; List<Departamento.Core.Depto> lstDepartamento = new List<Departamento.Core.Depto>(); List<Empleados.Core.Empleados> lstEmpleado = new List<Empleados.Core.Empleados>(); Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = _idEmpleado; Departamento.Core.Depto dpto = new Departamento.Core.Depto(); dpto.idempresa = GLOBALES.IDEMPRESA; Infonavit.Core.Infonavit i = new Infonavit.Core.Infonavit(); i.idtrabajador = _idEmpleado; i.activo = _estatusInfonavit; try { cnx.Open(); Periodo = (int)eh.obtenerDiasPeriodo(_idEmpleado); lstEmpleado = eh.obtenerEmpleado(empleado); lstDepartamento = dh.obtenerDepartamentos(dpto); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error al obtener los dias del periodo. \r\n \r\n La ventana se cerrará. \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); this.Dispose(); } var dato = from emp in lstEmpleado join d in lstDepartamento on emp.iddepartamento equals d.id select new { emp.noempleado, emp.nombrecompleto, d.descripcion }; foreach (var inf in dato) { mtxtNoEmpleado.Text = inf.noempleado; txtDepartamento.Text = inf.descripcion; } try { cnx.Open(); lstInfonavit = ih.obtenerInfonavit(i); Periodo = (int)eh.obtenerDiasPeriodo(_idEmpleado); cnx.Close(); cnx.Dispose(); for (int j = 0; j < lstInfonavit.Count; j++) { IdInfonavit = int.Parse(lstInfonavit[j].idinfonavit.ToString()); txtNumeroCredito.Text = lstInfonavit[j].credito; txtValor.Text = lstInfonavit[j].valordescuento.ToString(); if (lstInfonavit[j].activo) chkInactivo.Checked = false; else chkInactivo.Checked = true; txtDescripcion.Text = lstInfonavit[j].descripcion; dtpFechaAplicacion.Value = lstInfonavit[j].fecha; cmbEstatusInfonavit.SelectedValue = lstInfonavit[j].estatus; //dtpInicioPeriodo.Value = lstInfonavit[j].inicio.AddDays(1); //dtpFinPeriodo.Value = lstInfonavit[j].fin; switch (lstInfonavit[j].descuento) { //Porcentaje case 1: rbtnPorcentaje.Checked = true; break; case 2: rbtnPesos.Checked = true; if (Periodo == 7) txtValor.Text = ((lstInfonavit[j].valordescuento * decimal.Parse((30.4).ToString())) / Periodo).ToString(); else txtValor.Text = (lstInfonavit[j].valordescuento * 2).ToString(); break; case 3: rbtnVsmdf.Checked = true; txtValor.Text = lstInfonavit[j].valordescuento.ToString(); break; } } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } if (_tipoOperacion == GLOBALES.CONSULTAR) { toolVentana.Text = "Consulta del Crédito"; GLOBALES.INHABILITAR(this, typeof(TextBox)); GLOBALES.INHABILITAR(this, typeof(RadioButton)); GLOBALES.INHABILITAR(this, typeof(CheckBox)); GLOBALES.INHABILITAR(this, typeof(DateTimePicker)); GLOBALES.INHABILITAR(this, typeof(MaskedTextBox)); GLOBALES.INHABILITAR(this, typeof(ComboBox)); toolGuardar.Enabled = false; toolBuscar.Enabled = false; } else { toolVentana.Text = "Edición del Crédito"; lblEmpleado.Text = _nombreEmpleado; toolBuscar.Enabled = false; //obtenerPeriodoActual(); } if (_modificar == 1) { //dtpInicioPeriodo.Enabled = true; } } }
private void muestraProgramacion() { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; ProgramacionConcepto.Core.ProgramacionHelper pch = new ProgramacionConcepto.Core.ProgramacionHelper(); pch.Command = cmd; Conceptos.Core.ConceptosHelper ch = new Conceptos.Core.ConceptosHelper(); ch.Command = cmd; Empleados.Core.EmpleadosHelper emph = new Empleados.Core.EmpleadosHelper(); emph.Command = cmd; ProgramacionConcepto.Core.ProgramacionConcepto pc = new ProgramacionConcepto.Core.ProgramacionConcepto(); pc.idtrabajador = idTrabajador; Conceptos.Core.Conceptos c = new Conceptos.Core.Conceptos(); c.idempresa = GLOBALES.IDEMPRESA; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = idTrabajador; List<ProgramacionConcepto.Core.ProgramacionConcepto> lstProgramacionConcepto = new List<ProgramacionConcepto.Core.ProgramacionConcepto>(); List<Conceptos.Core.Conceptos> lstConceptos = new List<Conceptos.Core.Conceptos>(); List<Empleados.Core.Empleados> lstEmpleado = new List<Empleados.Core.Empleados>(); try { cnx.Open(); lstProgramacionConcepto = pch.obtenerProgramacion(pc); lstConceptos = ch.obtenerConceptos(c, _periodo); lstEmpleado = emph.obtenerEmpleado(empleado); cnx.Close(); cnx.Dispose(); } catch (Exception error) { MessageBox.Show("Error: Al obtener las Programaciones. (Función Muestra Programación.)\r\n \r\n" + error.Message, "Error"); } var prog = from p in lstProgramacionConcepto join co in lstConceptos on p.idconcepto equals co.id join em in lstEmpleado on p.idtrabajador equals em.idtrabajador select new { p.idprogramacion, p.idtrabajador, co.id, em.noempleado, em.nombrecompleto, co.concepto, p.cantidad, p.fechafin }; dgvProgramacion.Columns["idpc"].DataPropertyName = "idprogramacion"; dgvProgramacion.Columns["idtrabajadorpc"].DataPropertyName = "idtrabajador"; dgvProgramacion.Columns["idconceptopc"].DataPropertyName = "id"; dgvProgramacion.Columns["noempleadopc"].DataPropertyName = "noempleado"; dgvProgramacion.Columns["nombrepc"].DataPropertyName = "nombrecompleto"; dgvProgramacion.Columns["conceptopc"].DataPropertyName = "concepto"; dgvProgramacion.Columns["cantidadpc"].DataPropertyName = "cantidad"; dgvProgramacion.Columns["fechafinpc"].DataPropertyName = "fechafin"; dgvProgramacion.DataSource = prog.ToList(); DataGridViewCellStyle estilo = new DataGridViewCellStyle(); estilo.Alignment = DataGridViewContentAlignment.MiddleRight; estilo.Format = "C2"; dgvProgramacion.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; dgvProgramacion.Columns[5].DefaultCellStyle = estilo; }
private void frmReingresoEmpleado_Load(object sender, EventArgs e) { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Departamento.Core.DeptoHelper dh = new Departamento.Core.DeptoHelper(); Puestos.Core.PuestosHelper ph = new Puestos.Core.PuestosHelper(); Periodos.Core.PeriodosHelper periodoh = new Periodos.Core.PeriodosHelper(); Factores.Core.FactoresHelper fh = new Factores.Core.FactoresHelper(); Empleados.Core.EmpleadosHelper emph = new Empleados.Core.EmpleadosHelper(); emph.Command = cmd; dh.Command = cmd; ph.Command = cmd; periodoh.Command = cmd; fh.Command = cmd; Departamento.Core.Depto depto = new Departamento.Core.Depto(); Puestos.Core.Puestos puesto = new Puestos.Core.Puestos(); Periodos.Core.Periodos periodo = new Periodos.Core.Periodos(); Factores.Core.Factores factor = new Factores.Core.Factores(); Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idtrabajador = _idempleado; depto.idempresa = GLOBALES.IDEMPRESA; puesto.idempresa = GLOBALES.IDEMPRESA; periodo.idempresa = GLOBALES.IDEMPRESA; List<Departamento.Core.Depto> lstDepto = new List<Departamento.Core.Depto>(); List<Puestos.Core.Puestos> lstPuesto = new List<Puestos.Core.Puestos>(); List<Periodos.Core.Periodos> lstPeriodo = new List<Periodos.Core.Periodos>(); lstEmpleado = new List<Empleados.Core.Empleados>(); try { cnx.Open(); lstDepto = dh.obtenerDepartamentos(depto); lstPuesto = ph.obtenerPuestos(puesto); lstPeriodo = periodoh.obtenerPeriodos(periodo); lstEmpleado = emph.obtenerEmpleado(empleado); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); } cmbDepartamento.DataSource = lstDepto.ToList(); cmbDepartamento.DisplayMember = "descripcion"; cmbDepartamento.ValueMember = "id"; cmbPuesto.DataSource = lstPuesto.ToList(); cmbPuesto.DisplayMember = "nombre"; cmbPuesto.ValueMember = "idpuesto"; cmbPeriodo.DataSource = lstPeriodo.ToList(); cmbPeriodo.DisplayMember = "pago"; cmbPeriodo.ValueMember = "idperiodo"; txtNombreCompleto.Text = _nombreEmpleado; mtxtNoEmpleado.Text = lstEmpleado[0].noempleado; cmbMetodoPago.SelectedIndex = 2; mtxtCuentaBancaria.Text = lstEmpleado[0].cuenta; mtxtCuentaClabe.Text = lstEmpleado[0].clabe; mtxtIdBancario.Text = lstEmpleado[0].idbancario; if (GLOBALES.OBRACIVIL) chkObraCivil.Visible = true; else chkObraCivil.Visible = false; }
private void toolCalcular_Click(object sender, EventArgs e) { int existeConcepto = 0; int estatus = 0; int existeAltaReingreso = 0; //string noConceptosPercepciones = "", noConceptosDeducciones = ""; cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; List<CalculoNomina.Core.Nomina> lstConceptosPercepciones = new List<CalculoNomina.Core.Nomina>(); List<CalculoNomina.Core.Nomina> lstConceptosDeducciones = new List<CalculoNomina.Core.Nomina>(); List<CalculoNomina.Core.Nomina> lstConceptosPercepcionesModificados = new List<CalculoNomina.Core.Nomina>(); List<CalculoNomina.Core.Nomina> lstConceptosDeduccionesModificados = new List<CalculoNomina.Core.Nomina>(); CalculoNomina.Core.NominaHelper nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; Altas.Core.AltasHelper ah = new Altas.Core.AltasHelper(); ah.Command = cmd; Reingreso.Core.ReingresoHelper rh = new Reingreso.Core.ReingresoHelper(); rh.Command = cmd; if (_periodo == 7) { periodoInicioPosterior = _finPeriodo.AddDays(1); periodoFinPosterior = _finPeriodo.AddDays(7); } else { periodoInicioPosterior = _finPeriodo.AddDays(1); if (periodoInicioPosterior.Day <= 15) periodoFinPosterior = _finPeriodo.AddDays(15); else periodoFinPosterior = new DateTime(periodoInicioPosterior.Year, periodoInicioPosterior.Month, DateTime.DaysInMonth(periodoInicioPosterior.Year, periodoInicioPosterior.Month)); } try { cnx.Open(); estatus = int.Parse(eh.obtenerEstatus(idTrabajador).ToString()); cnx.Close(); if (estatus == 0) { cnx.Open(); nh.eliminaPreNomina(idTrabajador); cnx.Close(); } else { cnx.Open(); existeAltaReingreso = ah.existeAlta(GLOBALES.IDEMPRESA, idTrabajador, periodoInicioPosterior, periodoFinPosterior); cnx.Close(); if (existeAltaReingreso != 0) { cnx.Open(); nh.eliminaPreNomina(idTrabajador); cnx.Close(); MessageBox.Show("INFORMACION:\r\n\r\nEl trabajador a calcular fue dado de alta con fecha posterior al calculo actual.\r\nNo se calcula el trabajador.", "Información"); return; } cnx.Open(); existeAltaReingreso = rh.existeReingreso(GLOBALES.IDEMPRESA, idTrabajador, periodoInicioPosterior, periodoFinPosterior); cnx.Close(); if (existeAltaReingreso != 0) { cnx.Open(); nh.eliminaPreNomina(idTrabajador); cnx.Close(); MessageBox.Show("INFORMACION:\r\n\r\nEl trabajador a calcular fue dado de alta con fecha posterior al calculo actual.\r\nNo se calcula el trabajador.", "Información"); return; } } } catch (Exception error) { MessageBox.Show("Error al verificar el estatus del trabajador(ID): " + idTrabajador + "\r\n\r\n" + error.Message, "Error"); cnx.Close(); } #region CONCEPTOS Y FORMULAS DEL TRABAJADOR try { /************************************************************* * Se obtienen los conceptos con el campo modificado en 1 * de la tabla tmpPagoNomina con el SP stp_DatosNominaRecalculoTrabajador *************************************************************/ //cnx.Open(); //lstConceptosPercepcionesModificados = nh.conceptosNominaTrabajador(GLOBALES.IDEMPRESA, "P", idTrabajador, // _tipoNormalEspecial, _inicioPeriodo.Date, _finPeriodo.Date); //lstConceptosDeduccionesModificados = nh.conceptosNominaTrabajador(GLOBALES.IDEMPRESA, "D", idTrabajador, // _tipoNormalEspecial, _inicioPeriodo.Date, _finPeriodo.Date); //cnx.Close(); /***************** TERMINA *****************************/ /********************************************************* * Se verifica si las listas de los conceptos modificados * son diferentes de 0, si son diferentes, se acumulan en la varible * noConceptosPercepciones y noConceptosDeducciones *********************************************************/ //if (lstConceptosPercepcionesModificados.Count != 0) //{ // for (int i = 0; i < lstConceptosPercepcionesModificados.Count; i++) // if (lstConceptosPercepcionesModificados[i].modificado) // noConceptosPercepciones += lstConceptosPercepcionesModificados[i].noconcepto + ","; // if (noConceptosPercepciones != "") // noConceptosPercepciones = noConceptosPercepciones.Substring(0, noConceptosPercepciones.Length - 1); //} //else // noConceptosPercepciones = ""; //if (lstConceptosDeduccionesModificados.Count != 0) //{ // for (int i = 0; i < lstConceptosDeduccionesModificados.Count; i++) // if (lstConceptosDeduccionesModificados[i].modificado) // noConceptosDeducciones += lstConceptosDeduccionesModificados[i].noconcepto + ","; // if (noConceptosDeducciones != "") // noConceptosDeducciones = noConceptosDeducciones.Substring(0, noConceptosDeducciones.Length - 1); //} //else // noConceptosDeducciones = ""; /************************TERMINA***************************/ /***************************************************************** * Se llenan las listas con los conceptos que no estan modificados * con el SP stp_DatosNominaTrabajador para el calculo. *****************************************************************/ cnx.Open(); nh.eliminaNominaTrabajador(idTrabajador, _inicioPeriodo, _finPeriodo, _tipoNormalEspecial); lstConceptosPercepciones = nh.conceptosNominaTrabajador(GLOBALES.IDEMPRESA, "P", idTrabajador, _inicioPeriodo, _finPeriodo, _periodo); lstConceptosDeducciones = nh.conceptosNominaTrabajador(GLOBALES.IDEMPRESA, "D", idTrabajador, _inicioPeriodo, _finPeriodo, _periodo); cnx.Close(); /**************************TERMINA*********************************/ } catch { MessageBox.Show("Error: Al Obtener los conceptos del trabajador.\r\n \r\n La ventan se cerrara.", "Error"); this.Dispose(); } #endregion #region CALCULO DE PERCEPCIONES List<CalculoNomina.Core.tmpPagoNomina> lstPercepciones = new List<CalculoNomina.Core.tmpPagoNomina>(); lstPercepciones = CALCULO.PERCEPCIONES(lstConceptosPercepciones, _inicioPeriodo.Date, _finPeriodo.Date, _tipoNormalEspecial); #endregion #region BULK DATOS PERCEPCIONES BulkData(lstPercepciones); #endregion #region OBTENCION DE PERCEPCIONES lstPercepciones = new List<CalculoNomina.Core.tmpPagoNomina>(); CalculoNomina.Core.tmpPagoNomina per = new CalculoNomina.Core.tmpPagoNomina(); per.idempresa = GLOBALES.IDEMPRESA; per.idtrabajador = idTrabajador; per.fechainicio = _inicioPeriodo.Date; per.fechafin = _finPeriodo.Date; per.tipoconcepto = "P"; per.tiponomina = _tipoNormalEspecial; cnx = new SqlConnection(cdn); cnx.Open(); lstPercepciones = nh.obtenerPercepcionesTrabajador(per); cnx.Close(); #endregion #region CALCULO DE DEDUCCIONES List<CalculoNomina.Core.tmpPagoNomina> lstDeducciones = new List<CalculoNomina.Core.tmpPagoNomina>(); lstDeducciones = CALCULO.DEDUCCIONES(lstConceptosDeducciones, lstPercepciones, _inicioPeriodo.Date, _finPeriodo.Date, _tipoNormalEspecial); #endregion #region BULK DATOS DEDUCCIONES BulkData(lstDeducciones); #endregion #region PROGRAMACION DE MOVIMIENTOS List<CalculoNomina.Core.tmpPagoNomina> lstOtrasDeducciones = new List<CalculoNomina.Core.tmpPagoNomina>(); decimal percepciones = lstPercepciones.Where(f => f.tipoconcepto == "P").Sum(f => f.cantidad); if (percepciones != 0) { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; int existe = 0; ProgramacionConcepto.Core.ProgramacionHelper pch = new ProgramacionConcepto.Core.ProgramacionHelper(); pch.Command = cmd; ProgramacionConcepto.Core.ProgramacionConcepto programacion = new ProgramacionConcepto.Core.ProgramacionConcepto(); programacion.idtrabajador = idTrabajador; List<ProgramacionConcepto.Core.ProgramacionConcepto> lstProgramacion = new List<ProgramacionConcepto.Core.ProgramacionConcepto>(); try { cnx.Open(); existe = (int)pch.existeProgramacion(programacion); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); } if (existe != 0) { try { cnx.Open(); lstProgramacion = pch.obtenerProgramacion(programacion); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); } for (int i = 0; i < lstProgramacion.Count; i++) { if (_finPeriodo.Date <= lstProgramacion[i].fechafin) { Conceptos.Core.ConceptosHelper ch = new Conceptos.Core.ConceptosHelper(); ch.Command = cmd; Conceptos.Core.Conceptos concepto = new Conceptos.Core.Conceptos(); concepto.id = lstProgramacion[i].idconcepto; List<Conceptos.Core.Conceptos> lstNoConcepto = new List<Conceptos.Core.Conceptos>(); try { cnx.Open(); lstNoConcepto = ch.obtenerConcepto(concepto); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); } CalculoNomina.Core.tmpPagoNomina pne = new CalculoNomina.Core.tmpPagoNomina(); pne.idempresa = GLOBALES.IDEMPRESA; pne.idtrabajador = idTrabajador; pne.fechainicio = _inicioPeriodo.Date; pne.fechafin = _finPeriodo.Date; pne.noconcepto = lstNoConcepto[0].noconcepto; nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; try { cnx.Open(); existeConcepto = (int)nh.existeConcepto(pne); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error al obtener la existencia del concepto." + error.Message + "\r\n" + error.Source, "Error"); cnx.Dispose(); } CalculoNomina.Core.tmpPagoNomina vn = new CalculoNomina.Core.tmpPagoNomina(); vn.idtrabajador = idTrabajador; vn.idempresa = GLOBALES.IDEMPRESA; vn.idconcepto = lstProgramacion[i].idconcepto; vn.noconcepto = lstNoConcepto[0].noconcepto; vn.tipoconcepto = lstNoConcepto[0].tipoconcepto; vn.fechainicio = _inicioPeriodo.Date; vn.fechafin = _finPeriodo.Date; vn.exento = 0; vn.gravado = 0; vn.cantidad = lstProgramacion[i].cantidad; vn.guardada = true; vn.tiponomina = _tipoNormalEspecial; vn.modificado = false; if (lstNoConcepto[0].gravado && !lstNoConcepto[0].exento) { vn.gravado = lstProgramacion[i].cantidad; vn.exento = 0; } if (lstNoConcepto[0].gravado && lstNoConcepto[0].exento) { CalculoFormula formulaExcento = new CalculoFormula(idTrabajador, _inicioPeriodo.Date, _finPeriodo.Date, lstNoConcepto[0].formulaexento); vn.exento = decimal.Parse(formulaExcento.calcularFormula().ToString()); if (vn.cantidad <= vn.exento) { vn.exento = vn.cantidad; vn.gravado = 0; } else { vn.gravado = vn.cantidad - vn.exento; } } if (existeConcepto == 0) { lstOtrasDeducciones.Add(vn); } else { try { cnx.Open(); nh.actualizaConceptoModificado(vn); cnx.Close(); } catch { MessageBox.Show("Error al actualizar el concepto.", "Error"); cnx.Dispose(); } } } } } } else { decimal vacacion = lstPercepciones.Where(f => f.noconcepto == 7).Sum(f => f.cantidad); if (vacacion != 0) { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; int existe = 0; ProgramacionConcepto.Core.ProgramacionHelper pch = new ProgramacionConcepto.Core.ProgramacionHelper(); pch.Command = cmd; ProgramacionConcepto.Core.ProgramacionConcepto programacion = new ProgramacionConcepto.Core.ProgramacionConcepto(); programacion.idtrabajador = idTrabajador; List<ProgramacionConcepto.Core.ProgramacionConcepto> lstProgramacion = new List<ProgramacionConcepto.Core.ProgramacionConcepto>(); try { cnx.Open(); existe = (int)pch.existeProgramacion(programacion); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); } if (existe != 0) { try { cnx.Open(); lstProgramacion = pch.obtenerProgramacion(programacion); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); } for (int i = 0; i < lstProgramacion.Count; i++) { if (_finPeriodo.Date <= lstProgramacion[i].fechafin) { Conceptos.Core.ConceptosHelper ch = new Conceptos.Core.ConceptosHelper(); ch.Command = cmd; Conceptos.Core.Conceptos concepto = new Conceptos.Core.Conceptos(); concepto.id = lstProgramacion[i].idconcepto; List<Conceptos.Core.Conceptos> lstNoConcepto = new List<Conceptos.Core.Conceptos>(); try { cnx.Open(); lstNoConcepto = ch.obtenerConcepto(concepto); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); } CalculoNomina.Core.tmpPagoNomina pne = new CalculoNomina.Core.tmpPagoNomina(); pne.idempresa = GLOBALES.IDEMPRESA; pne.idtrabajador = idTrabajador; pne.fechainicio = _inicioPeriodo.Date; pne.fechafin = _finPeriodo.Date; pne.noconcepto = lstNoConcepto[0].noconcepto; try { cnx.Open(); existeConcepto = (int)nh.existeConcepto(pne); cnx.Close(); } catch { MessageBox.Show("Error al obtener la existencia del concepto.", "Error"); cnx.Dispose(); } CalculoNomina.Core.tmpPagoNomina vn = new CalculoNomina.Core.tmpPagoNomina(); vn.idtrabajador = idTrabajador; vn.idempresa = GLOBALES.IDEMPRESA; vn.idconcepto = lstProgramacion[i].idconcepto; vn.noconcepto = lstNoConcepto[0].noconcepto; vn.tipoconcepto = lstNoConcepto[0].tipoconcepto; vn.fechainicio = _inicioPeriodo.Date; vn.fechafin = _finPeriodo.Date; vn.exento = 0; vn.gravado = 0; vn.cantidad = lstProgramacion[i].cantidad; vn.guardada = true; vn.tiponomina = _tipoNormalEspecial; vn.modificado = false; if (lstNoConcepto[0].gravado && !lstNoConcepto[0].exento) { vn.gravado = lstProgramacion[i].cantidad; vn.exento = 0; } if (lstNoConcepto[0].gravado && lstNoConcepto[0].exento) { CalculoFormula formulaExcento = new CalculoFormula(idTrabajador, _inicioPeriodo.Date, _finPeriodo.Date, lstNoConcepto[0].formulaexento); vn.exento = decimal.Parse(formulaExcento.calcularFormula().ToString()); if (vn.cantidad <= vn.exento) { vn.exento = vn.cantidad; vn.gravado = 0; } else { vn.gravado = vn.cantidad - vn.exento; } } if (existeConcepto == 0) { lstOtrasDeducciones.Add(vn); } else { try { cnx.Open(); nh.actualizaConceptoModificado(vn); cnx.Close(); } catch { MessageBox.Show("Error al actualizar el concepto.", "Error"); cnx.Dispose(); } } } } } } } #endregion #region MOVIMIENTOS cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Movimientos.Core.MovimientosHelper mh = new Movimientos.Core.MovimientosHelper(); mh.Command = cmd; nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; percepciones = lstPercepciones.Where(f => f.tipoconcepto == "P").Sum(f => f.cantidad); if (percepciones != 0) { int existe = 0; Movimientos.Core.Movimientos mov = new Movimientos.Core.Movimientos(); mov.idtrabajador = idTrabajador; mov.fechainicio = _inicioPeriodo.Date; mov.fechafin = _finPeriodo.Date; List<Movimientos.Core.Movimientos> lstMovimiento = new List<Movimientos.Core.Movimientos>(); try { cnx.Open(); existe = (int)mh.existeMovimiento(mov); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); } if (existe != 0) { try { cnx.Open(); lstMovimiento = mh.obtenerMovimiento(mov); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); cnx.Dispose(); } for (int i = 0; i < lstMovimiento.Count; i++) { Conceptos.Core.ConceptosHelper ch = new Conceptos.Core.ConceptosHelper(); ch.Command = cmd; Conceptos.Core.Conceptos concepto = new Conceptos.Core.Conceptos(); concepto.id = lstMovimiento[i].idconcepto; List<Conceptos.Core.Conceptos> lstNoConcepto = new List<Conceptos.Core.Conceptos>(); try { cnx.Open(); lstNoConcepto = ch.obtenerConcepto(concepto); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); } CalculoNomina.Core.tmpPagoNomina vn = new CalculoNomina.Core.tmpPagoNomina(); vn.idtrabajador = idTrabajador; vn.idempresa = GLOBALES.IDEMPRESA; vn.idconcepto = lstMovimiento[i].idconcepto; vn.noconcepto = lstNoConcepto[0].noconcepto; vn.tipoconcepto = lstNoConcepto[0].tipoconcepto; vn.fechainicio = _inicioPeriodo.Date; vn.fechafin = _finPeriodo.Date; vn.exento = 0; vn.gravado = 0; vn.cantidad = lstMovimiento[i].cantidad; vn.guardada = true; vn.tiponomina = _tipoNormalEspecial; vn.modificado = false; if (lstNoConcepto[0].gravado && !lstNoConcepto[0].exento) { vn.gravado = lstMovimiento[i].cantidad; vn.exento = 0; } if (lstNoConcepto[0].gravado && lstNoConcepto[0].exento) { CalculoFormula formulaExcento = new CalculoFormula(idTrabajador, _inicioPeriodo.Date, _finPeriodo.Date, lstNoConcepto[0].formulaexento); vn.exento = decimal.Parse(formulaExcento.calcularFormula().ToString()); if (vn.cantidad <= vn.exento) { vn.exento = vn.cantidad; vn.gravado = 0; } else { vn.gravado = vn.cantidad - vn.exento; } } if (!lstNoConcepto[0].gravado && lstNoConcepto[0].exento) { vn.gravado = 0; vn.exento = lstMovimiento[i].cantidad; } try { cnx.Open(); existe = (int)nh.existeConcepto(vn); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: Al verificar existencia de los movimientos. \r\n" + error.Message, "Error"); } if (existe == 0) { lstOtrasDeducciones.Add(vn); } else { try { cnx.Open(); nh.actualizaConcepto(vn); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: Al actualizar los movimientos. " + error.Message, "Error"); } } } } } #endregion #region BULK DATOS PROGRAMACION DE MOVIMIENTOS BulkData(lstOtrasDeducciones); #endregion #region MOSTRAR DATOS muestraDatos(); #endregion #region PERIODO cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; int noPeriodo = 0; try { if (_tipoNormalEspecial == GLOBALES.NORMAL) { cnx.Open(); noPeriodo = int.Parse(nh.obtenerNoPeriodo(_periodo, _inicioPeriodo).ToString()); nh.actualizarNoPeriodo(GLOBALES.IDEMPRESA, _inicioPeriodo.Date, _finPeriodo.Date, noPeriodo); cnx.Close(); } else if (_tipoNormalEspecial == GLOBALES.EXTRAORDINARIO_NORMAL) { cnx.Open(); noPeriodo = (int)(nh.obtenerNoPeriodoExtraordinario(GLOBALES.IDEMPRESA, _tipoNormalEspecial)); noPeriodo = noPeriodo + 1; nh.actualizarNoPeriodo(GLOBALES.IDEMPRESA, _inicioPeriodo.Date, _finPeriodo.Date, noPeriodo); cnx.Close(); } } catch (Exception) { MessageBox.Show("Error: Al actualizar el No. de Periodo", "Error"); cnx.Dispose(); return; } #endregion }
private void ListaEmpleados() { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; Empleados.Core.EmpleadosHelper eh = new Empleados.Core.EmpleadosHelper(); Expediente.Core.ExpedienteHelper exph = new Expediente.Core.ExpedienteHelper(); eh.Command = cmd; exph.Command = cmd; Empleados.Core.Empleados empleado = new Empleados.Core.Empleados(); empleado.idempresa = GLOBALES.IDEMPRESA; empleado.estatus = GLOBALES.ACTIVO; Expediente.Core.Expediente expediente = new Expediente.Core.Expediente(); expediente.idempresa = GLOBALES.IDEMPRESA; try { cnx.Open(); lstEmpleados = eh.obtenerEmpleados(empleado); lstExpediente = exph.obtenerExpedientes(expediente); cnx.Close(); cnx.Dispose(); var em = from e in lstEmpleados join ex in lstExpediente on e.idtrabajador equals ex.idtrabajador select new { IdTrabajador = e.idtrabajador, NoEmpleado = e.noempleado, Nombre = e.nombrecompleto, Estatus = ((int)ex.estatus) == 0 ? "SIN EXPEDIENTE" : ((int)ex.estatus > 0 && (int)ex.estatus < 14) ? "EXPEDIENTE SIN COMPLETAR" : "COMPLETO" }; dgvExpedientes.DataSource = em.ToList(); for (int i = 0; i < dgvExpedientes.Columns.Count; i++) { dgvExpedientes.AutoResizeColumn(i); } dgvExpedientes.Columns["IdTrabajador"].Visible = false; } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } }
private void frmEmpleados_Load(object sender, EventArgs e) { CargaComboBox(); /// _tipoOperacion CONSULTA = 1, EDICION = 2 if (_tipoOperacion == GLOBALES.CONSULTAR || _tipoOperacion == GLOBALES.MODIFICAR) { cnx = new MySqlConnection(); cnx.ConnectionString = cdn; cmd = new MySqlCommand(); cmd.Connection = cnx; eh = new Empleados.Core.EmpleadosHelper(); eh.Command = cmd; List <Empleados.Core.Empleados> lstEmpleado; Empleados.Core.Empleados em = new Empleados.Core.Empleados(); em.idtrabajador = _idempleado; try { cnx.Open(); lstEmpleado = eh.obtenerEmpleado(em); cnx.Close(); cnx.Dispose(); for (int i = 0; i < lstEmpleado.Count; i++) { txtNombre.Text = lstEmpleado[i].nombres; txtApPaterno.Text = lstEmpleado[i].paterno; txtApMaterno.Text = lstEmpleado[i].materno; dtpFechaNacimiento.Value = DateTime.Parse(lstEmpleado[i].fechanacimiento.ToString()); txtEdad.Text = lstEmpleado[i].edad.ToString(); dtpFechaIngreso.Value = lstEmpleado[i].fechaingreso; cmbLocalForaneo.SelectedValue = lstEmpleado[i].localforaneo; cmbSua.SelectedValue = lstEmpleado[i].sua; txtRFC.Text = lstEmpleado[i].rfc; txtCURP.Text = lstEmpleado[i].curp; txtNSS.Text = lstEmpleado[i].nss; txtDigito.Text = lstEmpleado[i].digitoverificador.ToString(); lblCliente.Visible = false; lblPeriodo.Visible = false; cmbCliente.Visible = false; cmbPeriodo.Visible = false; lblSalario.Visible = false; lblTipoSalario.Visible = false; lblSueldo.Visible = false; lblSD.Visible = false; lblSDI.Visible = false; cmbTipoSalario.Visible = false; txtSueldo.Visible = false; txtSD.Visible = false; txtSDI.Visible = false; btnCalcular.Visible = false; } } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n " + error.Message, "Error"); } if (_tipoOperacion == GLOBALES.CONSULTAR) { toolTitulo.Text = "Consulta Empleado"; GLOBALES.INHABILITAR(this, typeof(TextBox)); GLOBALES.INHABILITAR(this, typeof(MaskedTextBox)); GLOBALES.INHABILITAR(this, typeof(Button)); GLOBALES.INHABILITAR(this, typeof(DateTimePicker)); GLOBALES.INHABILITAR(this, typeof(ComboBox)); } else { toolTitulo.Text = "Edición Empleado"; } } }