//Sindicato private void PlantillaSindicato(string file, string newPath, int[] empleados) { Empleados emp = new Empleados(); Puestos ps = new Puestos(); foreach (var item in empleados) { using (var document = DocX.Load(file)) { var empleado = emp.GetEmpleadoById(item); var contrato = emp.ObtenerContratoEmpleadoPorId(item); var newDoc = newPath + empleado.APaterno + "_" + empleado.AMaterno + "_" + empleado.Nombres + "_.docx"; document.ReplaceText("<<Empleado_FechaDeAlta>>", contrato.FechaAlta.ToString("dd/MM/yyyy")); document.ReplaceText("<<Empleado_Paterno>>", empleado.APaterno); document.ReplaceText("<<Empleado_Materno>>", empleado.AMaterno); document.ReplaceText("<<Empleado_Nombres>>", empleado.Nombres); document.ReplaceText("<<Empleado_Domicilio>>", empleado.Direccion); document.ReplaceText("<<Empleado_RFC>>", empleado.RFC); document.ReplaceText("<<Empleado_CURP>>", empleado.CURP); var puesto = ps.GetPuesto(contrato.IdPuesto); document.ReplaceText("<<Empleado_Puesto>>", puesto.Descripcion); document.SaveAs(newDoc); } } }
private void PlantillaBaja(string file, string newPath, int[] empleados) { if (empleados != null) { Empleados emp = new Empleados(); Puestos ps = new Puestos(); foreach (var item in empleados) { using (var document = DocX.Load(file)) { var empleado = emp.GetEmpleadoById(item); var contrato = emp.GetUltimoContrato(item); var newDoc = newPath + item + ".docx"; document.ReplaceText("<<Empleado_Empresa>>", ""); document.ReplaceText("<<FechaActual>>", DateTime.Now.ToString("dd-MM-yyyy")); document.ReplaceText("<<Empleado_Nombres>>", empleado.Nombres); document.ReplaceText("<<Empleado_Paterno>>", empleado.APaterno); document.ReplaceText("<<Empleado_Materno>>", empleado.AMaterno); if (contrato.IdPuesto != null) { var puesto = ps.GetPuesto(contrato.IdPuesto); document.ReplaceText("<<Empleado_Puesto>>", puesto.Descripcion); } var BajaImss = contrato.BajaIMSS != null?contrato.BajaIMSS.Value.ToString("dd-MM-yyyy") : ""; document.ReplaceText("<<Empleado_BajaIMSS>>", BajaImss); document.ReplaceText("<<Empleado_FechaReal>>", contrato.FechaReal.ToString("dd-MM-yyyy")); var nss = empleado.NSS != null ? empleado.NSS : ""; document.ReplaceText("<<Empleado_NSS>>", nss); var sr = contrato.SalarioReal != null?contrato.SalarioReal.ToString() : ""; document.ReplaceText("<<Empleado_SalarioReal>>", sr); var sdi = contrato.SDI != null?contrato.SDI.ToString() : ""; document.ReplaceText("<<Empleado_SDI>>", sdi); var fechaBaja = contrato.FechaBaja != null?contrato.FechaBaja.Value.ToString("dd-MM-yyyy") : ""; document.ReplaceText("<<Empleado_FechaDeBaja>>", fechaBaja); document.SaveAs(newDoc); } } } }
public void CambioPuesto(int IdEmpleado, int puestoAnterior, int puestoNuevo) { var contrato = ctx.Empleado_Contrato.Where(x => x.IdEmpleado == IdEmpleado).OrderByDescending(x => x.IdContrato).FirstOrDefault(); var cd = GetDatosPersonales(IdEmpleado); cd.Puesto = null; Puestos pCtx = new Puestos(); cd.Puesto_Anterior = pCtx.GetDescripcionById(puestoAnterior); cd.Puesto_Nuevo = pCtx.GetDescripcionById(puestoNuevo); var titulo = GetTitulo(cd); NotificacionesCommon.CreateNotification(titulo, DateTime.Now, SessionHelpers.GetIdUsuario(), TiposNotificacion.Puesto, cd.IdCliente, cd, cd.IdSucursal, contrato.IdContrato, puestoNuevo.ToString()); }
private static CuerpoDatos GetDatosPersonales(int IdEmpleado) { Empleados e = new Empleados(); var empleado = e.GetEmpleadoById(IdEmpleado); var contrato = e.GetUltimoContrato(IdEmpleado); var datosbancarios = e.GetDatosBancoEmpleado(IdEmpleado); Clientes c = new Clientes(); var cliente = c.GetClienteBySucursal(empleado.IdSucursal); var idCliente = c.GetIdClienteBySucursal(empleado.IdSucursal); CuerpoDatos cd = new CuerpoDatos() { IdEmpleado = empleado.IdEmpleado, Nombres = empleado.Nombres, Paterno = empleado.APaterno, Materno = empleado.AMaterno, NSS = empleado.NSS, RFC = empleado.RFC, CURP = empleado.CURP, Nacionalidad = empleado.Nacionalidad, Direccion = empleado.Direccion, SDI = contrato.SDI, Cliente = cliente, IdCliente = idCliente, Cuenta_Bancaria = datosbancarios != null ? datosbancarios.CuentaBancaria:"0", No_Tarjeta = datosbancarios != null ? datosbancarios.NumeroTarjeta : "0", Beneficiario_Nombre = datosbancarios != null ? datosbancarios.NombreBeneficiario:"-", Beneficiario_Parentezco = datosbancarios != null ? datosbancarios.ParentezcoBeneficiario : "-", Beneficiario_Domicilio = datosbancarios != null ? datosbancarios.DomicilioBeneficiario : "-", Beneficiario_Curp = datosbancarios != null ? datosbancarios.CURPBeneficiario : "-", Beneficiario_Rfc = datosbancarios != null ? datosbancarios.RFCBeneficiario : "-", IdSucursal = contrato.IdSucursal }; if (contrato.FechaIMSS != null) { cd.Fecha_IMSS = contrato.FechaIMSS.Value.ToString("dd/MM/yyyy"); } Puestos p = new Puestos(); var puesto = p.GetPuesto(contrato.IdPuesto); cd.Puesto = puesto != null ? puesto.Descripcion : "n/a"; Empresas empresas = new Empresas(); cd.Empresa = empresas.GetRazonSocialById(contrato.IdEmpresaFiscal); return(cd); }
private IXLRange getPuestos(IXLWorksheet ws, int cliente) { Puestos ctx_puestos = new Puestos(); var puestos = ctx_puestos.GetPuestosLista(cliente); if (puestos.Count > 0) { ws.Cell(1, 2).Value = "Puestos"; var rangePuestos = ws.Cell(2, 2).InsertData(puestos); return(rangePuestos); } else { return(null); } }
public void UploadRecords(DataTable data, int idSucursal, int idCliente, int idUsuario) { int columnas = data.Columns.Count; Empleados ctx = new Empleados(); DataView dv = data.DefaultView; dv.Sort = "Paterno asc";//desc DataTable sortedDT = dv.ToTable(); foreach (DataRow row in sortedDT.Rows) { if (validateRow(row)) { //Datos Personales Empleado empleado = new Empleado(); empleado.Nombres = row["Nombres"].ToString(); empleado.APaterno = row["Paterno"].ToString(); empleado.AMaterno = row["Materno"].ToString(); empleado.FechaNacimiento = Convert.ToDateTime(row["Fecha de Nacimiento"].ToString()); empleado.Sexo = row["Sexo"].ToString().Equals("Hombre") ? "H" : "M"; empleado.RFC = row["RFC"].ToString().Trim(); empleado.CURP = row["CURP"].ToString().Trim(); empleado.NSS = row["NSS"].ToString(); empleado.Nacionalidad = row["Nacionalidad"].ToString(); empleado.Estado = row["Estado de Origen"].ToString(); empleado.Telefono = row["Teléfono"].ToString(); empleado.Celular = row["Celular"].ToString(); empleado.Email = row["Email"].ToString(); //Se guarda la dirección del empleado empleado.Direccion = row["Dirección"].ToString(); //si la direccion es null se coloca en la celda de dirección "No proporcionada" if (row["Dirección"] == DBNull.Value) { empleado.Direccion = "Dirección no proporcionada"; } else { empleado.Direccion = row["Dirección"].ToString(); } empleado.IdSucursal = idSucursal; empleado.EstadoCivil = row["Edo Civil"].ToString(); empleado.Status = true; empleado.RFCValidadoSAT = 2; var idEmpleado = ctx.CrearEmpleado(empleado, idUsuario); if (idEmpleado > 0) { //Datos de Contratación Empleado_Contrato contrato = new Empleado_Contrato(); contrato.IdEmpleado = idEmpleado; contrato.FechaAlta = Convert.ToDateTime(row["Fecha Alta"].ToString()); contrato.FechaReal = Convert.ToDateTime(row["Fecha Real"].ToString()); if (row["Fecha IMSS"] != DBNull.Value) { contrato.FechaIMSS = Convert.ToDateTime(row["Fecha IMSS"].ToString()); } if (row["UMF"] != DBNull.Value) { contrato.UMF = row["UMF"].ToString(); } contrato.TipoContrato = row["Tipo Contrato"].ToString().Equals("Temporal") ? 2 : 1; if (contrato.TipoContrato == 2) { contrato.Vigencia = Convert.ToDateTime(row["Vigencia"].ToString()); contrato.DiasContrato = Convert.ToInt32(row["Días Contrato"]); } Puestos ctxPuestos = new Puestos(); contrato.IdPuesto = ctxPuestos.ObtenerPuestoPorDescripcion(row["Puesto"].ToString()); contrato.Turno = UtilsEmpleados.SeleccionarTurno(row["Turno"].ToString()); contrato.DiaDescanso = UtilsEmpleados.selectDay(row["Descanso"].ToString()); contrato.IdPeriodicidadPago = UtilsEmpleados.SeleccionarPeriodicidadDePago(row["Periodicidad de pago"].ToString()); contrato.FormaPago = UtilsEmpleados.SeleccionarFormaPago(row["Método Pago"].ToString()); contrato.PagoElectronico = (contrato.FormaPago == 3 || contrato.FormaPago == 4 || contrato.FormaPago == 5 || contrato.FormaPago == 6 || contrato.FormaPago == 7) ? true : false; contrato.SD = Convert.ToDecimal(row["SD"].ToString()); contrato.SDI = Convert.ToDecimal(row["SDI"].ToString()); contrato.SBC = Convert.ToDecimal(row["SBC"].ToString()); contrato.SalarioReal = Convert.ToDecimal(row["Salario Real"].ToString()); contrato.IdTipoJornada = UtilsEmpleados.SeleccionarTipoNomina(row["Tipo de Jornada"].ToString()); contrato.TipoSalario = UtilsEmpleados.SeleccionarTipoSalario(row["Tipo Salario"].ToString()); contrato.EntidadDeServicio = (row["Entidad de Servicio"].ToString()); contrato.Sindicalizado = (row["Sindicalizado"].ToString().ToUpper().Equals("SI")) ? true : false; contrato.Status = true; contrato.IdSucursal = idSucursal; Empresas ctxRP = new Empresas(); int idEmpresaFiscal = 0; int idEmpresaAsimilado = 0; if (row["Empresa Fiscal"] != DBNull.Value) { idEmpresaFiscal = ctxRP.GetIdByRazonSocial(row["Empresa Fiscal"].ToString(), idCliente); contrato.IdEmpresaFiscal = idEmpresaFiscal; } if (row["Empresa Complemento"] != DBNull.Value) { contrato.IdEmpresaComplemento = ctxRP.GetIdByRazonSocial(row["Empresa Complemento"].ToString(), idCliente); } if (row["Empresa Sindicato"] != DBNull.Value) { contrato.IdEmpresaSindicato = ctxRP.GetIdByRazonSocial(row["Empresa Sindicato"].ToString(), idCliente); } if (row["Empresa Asimilado"] != DBNull.Value) { idEmpresaAsimilado = ctxRP.GetIdByRazonSocial(row["Empresa Asimilado"].ToString(), idCliente); contrato.IdEmpresaAsimilado = idEmpresaAsimilado; } //Tipo Regimen contrato.IdTipoRegimen = idEmpresaAsimilado > 0 ? 8 : 1;//Asimilado Honorarios sino Sueldo //Tipo Jornada contrato.IdTipoJornada = 3; //Crea el contrato en la base de datos //factorfx ctx.CrearContrato(contrato, idUsuario); DatosBancarios bancarios = new DatosBancarios(); bancarios.IdEmpleado = idEmpleado; Bancos bllBancos = new Bancos(); if (row["Banco"].ToString().Trim() != "") { bancarios.IdBanco = bllBancos.ObtenerIdBancoPorDescripcion(row["Banco"].ToString()); } int numDatosBancarios = 0; if (row["No Siga Fiscal"] != DBNull.Value) { if (row["No Siga Fiscal"].ToString().Trim() != "") { bancarios.NoSigaF = Convert.ToInt32(row["No Siga Fiscal"]); numDatosBancarios++; } } if (row["No Siga Complemento"] != DBNull.Value) { if (row["No Siga Complemento"].ToString().Trim() != "") { bancarios.NoSigaC = Convert.ToInt32(row["No Siga Complemento"]); numDatosBancarios++; } } if (row["Cuenta Bancaria"] != DBNull.Value) { bancarios.CuentaBancaria = row["Cuenta Bancaria"].ToString(); numDatosBancarios++; } if (row["# Tarjeta"] != DBNull.Value) { bancarios.NumeroTarjeta = row["# Tarjeta"].ToString(); numDatosBancarios++; } if (row["Clabe"] != DBNull.Value) { bancarios.Clabe = row["Clabe"].ToString(); numDatosBancarios++; } #region BENEFICIARIOS if (row["Nombre Beneficiario"] != DBNull.Value) { bancarios.NombreBeneficiario = row["Nombre Beneficiario"].ToString(); numDatosBancarios++; } if (row["RFC Beneficiario"] != DBNull.Value) { bancarios.RFCBeneficiario = row["RFC Beneficiario"].ToString(); numDatosBancarios++; } if (row["CURP Beneficiario"] != DBNull.Value) { bancarios.CURPBeneficiario = row["CURP Beneficiario"].ToString(); numDatosBancarios++; } if (row["Parentezco Beneficiario"] != DBNull.Value) { bancarios.ParentezcoBeneficiario = row["Parentezco Beneficiario"].ToString(); numDatosBancarios++; } if (row["Domicilio Beneficiario"] != DBNull.Value) { bancarios.DomicilioBeneficiario = row["Domicilio Beneficiario"].ToString(); numDatosBancarios++; } #endregion bancarios.Status = true; if (numDatosBancarios > 0) { ctx.NewDatosBancarios(bancarios, idUsuario, false); } var noti = new Notificaciones(); noti.Alta(idEmpleado); //Asignar conceptos Default ConceptosNomina.AsignarConceptosDefaultByEmpleado(idSucursal, idEmpleado); } } } }
//Movimiento de Personal private void PlantillaMovimientoPersonal(string file, string newPath, int[] empleados) { Empleados emp = new Empleados(); Puestos ps = new Puestos(); foreach (var item in empleados) { using (var document = DocX.Load(file)) { var cuentab = " "; var descripcionb = " "; var empleado = emp.GetEmpleadoById(item); var contrato = emp.ObtenerContratoEmpleadoPorId(item); var bancos = emp.GetDatosBancariosByIdEmpleado(item); if (bancos != null) { cuentab = bancos.CuentaBancaria; descripcionb = bancos.Descripcion; } var tipocontrato = _ctx.C_TipoContrato_SAT.Where(x => x.IdTipoContrato == contrato.TipoContrato).FirstOrDefault(); var creditoinfonavit = _ctx.Empleado_Infonavit.Where(x => x.IdEmpleadoContrato == contrato.IdContrato).FirstOrDefault(); var cliente = (from s in _ctx.Sucursal join c in _ctx.Cliente on s.IdCliente equals c.IdCliente where s.IdSucursal == contrato.IdSucursal select c.Nombre).FirstOrDefault(); decimal sr = contrato.SalarioReal == 0 ? 0 : contrato.SalarioReal; decimal salarioMensual = sr * 30; var newDoc = newPath + empleado.APaterno + "_" + empleado.AMaterno + "_" + empleado.Nombres + "_.docx"; document.ReplaceText("<<Empleado_Cliente>>", cliente); document.ReplaceText("<<Empleado_Clave>>", empleado.IdEmpleado.ToString()); document.ReplaceText("<<Empleado_Paterno>>", empleado.APaterno); document.ReplaceText("<<Empleado_Materno>>", empleado.AMaterno); document.ReplaceText("<<Empleado_Nombres>>", empleado.Nombres); document.ReplaceText("<<Empleado_CURP>>", empleado.CURP); document.ReplaceText("<<Empleado_RFC>>", empleado.RFC); document.ReplaceText("<<Empleado_NSS>>", empleado.NSS == null ? " " : empleado.NSS); document.ReplaceText("<<Empleado_EstadoCivil>>", empleado.EstadoCivil); document.ReplaceText("<<Empleado_Sexo>>", empleado.Sexo == "H"? "Hombre" :"Mujer"); document.ReplaceText("<<Empleado_Domicilio>>", empleado.Direccion); document.ReplaceText("<<Empleado_Entidad>>", contrato.EntidadDeServicio); document.ReplaceText("<<Empleado_UMF>>", contrato.UMF == null ?" ": contrato.UMF); document.ReplaceText("<<Empleado_FechaDeNacimiento>>", empleado.FechaNacimiento.ToString("dd/MM/yyyy")); document.ReplaceText("<<Empleado_EntidadDeNacimiento>>", empleado.Estado); var puesto = ps.GetPuesto(contrato.IdPuesto); document.ReplaceText("<<Empleado_Puesto>>", puesto.Descripcion); document.ReplaceText("<<Empleado_TipoEmpleado>>", tipocontrato.Descripcion); var departamento = (from d in _ctx.Departamento join p in _ctx.Puesto on d.IdDepartamento equals p.IdDepartamento where p.IdPuesto == puesto.IdPuesto select d.Descripcion).FirstOrDefault(); document.ReplaceText("<<Empleado_Departamento>>", departamento); document.ReplaceText("<<Empleado_SalarioMensual>>", salarioMensual.ToString()); document.ReplaceText("<<Empleado_FechaAntiguedad>>", contrato.FechaReal.ToString("dd/MM/yyyy")); document.ReplaceText("<<Empleado_SalarioDiario>>", contrato.SD.ToString()); document.ReplaceText("<<Empleado_FechaAltaIMSS>>", contrato.FechaIMSS == null ? " ": contrato.FechaIMSS.Value.ToString("dd/MM/yyyy")); document.ReplaceText("<<Empleado_Compensacion>>", contrato.SalarioReal.ToString()); document.ReplaceText("<<Empleado_SalarioDiarioIntegrado>>", contrato.SDI.ToString()); document.ReplaceText("<<Empleado_NoCreditoInfonavit>>", creditoinfonavit == null ? " ": creditoinfonavit.NumCredito); //document.ReplaceText("<<Empleado_PorcentajeDescuentoInfonavit>>",; document.ReplaceText("<<Empleado_BancoDeCuenta>>", descripcionb); document.ReplaceText("<<Empleado_CuentaBancaria>>", cuentab); document.ReplaceText("<<Empleado_VenceContrato>>", contrato.Vigencia.ToString()); document.SaveAs(newDoc); } } }
private void PlantillaContrato(string file, string newPath, int[] empleados) { Empleados emp = new Empleados(); Puestos ps = new Puestos(); //Banco bn = new Banco(); foreach (var item in empleados) { using (var document = DocX.Load(file)) { var cuentab = " "; var descripcionb = " "; var empleado = emp.GetEmpleadoById(item); var contrato = emp.ObtenerContratoEmpleadoPorId(item); var bancos = emp.GetDatosBancariosByIdEmpleado(item); if (bancos != null) { cuentab = bancos.CuentaBancaria; descripcionb = bancos.Descripcion; } var newDoc = newPath + empleado.APaterno + "_" + empleado.AMaterno + "_" + empleado.Nombres + "_.docx"; document.ReplaceText("<<Empleado_Paterno>>", empleado.APaterno); document.ReplaceText("<<Empleado_Materno>>", empleado.AMaterno); document.ReplaceText("<<Empleado_Nombres>>", empleado.Nombres); document.ReplaceText("<<Empleado_Nacionalidad>>", empleado.Nacionalidad); var edad = DateTime.Now.Year - empleado.FechaNacimiento.Year; document.ReplaceText("<<Empleado_Edad>>", edad.ToString()); document.ReplaceText("<<Empleado_NSS>>", empleado.NSS == null ? " ": empleado.NSS); document.ReplaceText("<<Empleado_EstadoCivil>>", empleado.EstadoCivil); if (empleado.Direccion != null) { document.ReplaceText("<<Empleado_Domicilio>>", empleado.Direccion); } document.ReplaceText("<<Empleado_CURP>>", empleado.CURP); document.ReplaceText("<<Empleado_RFC>>", empleado.RFC); if (contrato.IdPuesto != null) { var puesto = ps.GetPuesto(contrato.IdPuesto); document.ReplaceText("<<Empleado_Puesto>>", puesto.Descripcion); } document.ReplaceText("<<Empleado_SalarioDiario>>", contrato.SD.ToString()); document.ReplaceText("<<Empleado_SalarioDiarioLetras>>", Utils.ConvertCantidadALetras(contrato.SD.ToString())); var periocidad = _ctx.C_PeriodicidadPago_SAT.Where(x => x.IdPeriodicidadPago == contrato.IdPeriodicidadPago).Select(x => x.Descripcion).FirstOrDefault(); document.ReplaceText("<<Empleado_TipoDeNomina>>", periocidad); if (cuentab != null) { document.ReplaceText("<<Empleado_CuentaBancaria>>", cuentab); } document.ReplaceText("<<Empleado_BancoDeCuenta>>", descripcionb); document.ReplaceText("<<Empleado_FechaAntiguedad>>", contrato.FechaReal.ToString("dd-MM-yyyy")); document.ReplaceText("<<Empleado_FechaAltaIMSS>>", contrato.FechaIMSS == null ?"sin fecha":contrato.FechaIMSS.Value.ToString("dd-MM-yyyy")); document.ReplaceText("<<Empleado_DiasDeContrato>>", contrato.DiasContrato.ToString()); document.ReplaceText("<<Empleado_VenceContrato>>", contrato.Vigencia.ToString()); document.SaveAs(newDoc); } } }