예제 #1
0
파일: Bancos.cs 프로젝트: IsraelBV/SUN
        /// <summary>
        /// Elimina un banco del catalogo
        /// </summary>
        /// <param name="id"></param>
        /// <param name="bn"></param>
        /// <returns></returns>
        public bool DeleteBanco(int id, C_Banco_SAT bn)
        {
            var result = false;

            var item = _ctx.C_Banco_SAT.FirstOrDefault(x => x.IdBanco == id);

            //si no se encontro un registro con ese id,
            // retornamos false
            if (item == null)
            {
                return(false);
            }

            _ctx.C_Banco_SAT.Attach(item);
            _ctx.C_Banco_SAT.Remove(item);

            var r = _ctx.SaveChanges();

            if (r > 0)
            {
                result = true;
            }

            return(result);
        }
예제 #2
0
파일: Bancos.cs 프로젝트: IsraelBV/SUN
        /// <summary>
        /// Actualiza los datos del objeto banco
        /// </summary>
        /// <param name="id"></param>
        /// <param name="bn"></param>
        /// <returns></returns>
        public bool UpdateBanco(int id, C_Banco_SAT bn)
        {
            var result = false;

            var item = _ctx.C_Banco_SAT.FirstOrDefault(x => x.IdBanco == id);

            //si no se encontro un registro con el id,
            // se detiene la actualizacion
            if (item == null)
            {
                return(false);
            }

            item.Descripcion = bn.Descripcion;
            item.Status      = bn.Status;

            var r = _ctx.SaveChanges();

            if (r > 0)
            {
                result = true;
            }

            return(result);
        }
예제 #3
0
        public ActionResult Delete(int id, C_Banco_SAT collection)
        {
            try
            {
                //  _bnc.DeleteBanco(id, collection);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
예제 #4
0
        public ActionResult Edit(int id, C_Banco_SAT collection)
        {
            try
            {
                _bnc.UpdateBanco(id, collection);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
예제 #5
0
        public ActionResult Create(C_Banco_SAT collection)
        {
            try
            {
                _bnc.CreateBanco(collection);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
예제 #6
0
파일: Bancos.cs 프로젝트: IsraelBV/SUN
        /// <summary>
        /// Agregar un nuevo banco al catalogo
        /// </summary>
        /// <param name="bn"></param>
        /// <returns></returns>
        public bool CreateBanco(C_Banco_SAT bn)
        {
            var result = false;

            _ctx.C_Banco_SAT.Add(bn);
            var r = _ctx.SaveChanges();

            if (r > 0)
            {
                result = true;
            }

            return(result);
        }
예제 #7
0
        private static byte[] GetDatosEmpleadosPdf(int idEmpleado)
        {
            byte[]       byteInfo;
            MemoryStream ms     = new MemoryStream();
            Document     doc    = new Document(PageSize.LETTER, 50, 50, 25, 25);
            PdfWriter    writer = PdfWriter.GetInstance(doc, ms);

            writer.CloseStream = false;
            doc.Open();

            try
            {
                Empleado          itemEmpleado   = new Empleado();
                Empleado_Contrato itemContrato   = new Empleado_Contrato();
                Cliente           itemCliente    = new Cliente();
                Sucursal          itemSucursal   = new Sucursal();
                List <Empresa>    listaEmpresas  = new List <Empresa>();
                DatosBancarios    itemBancarios  = new DatosBancarios();
                Puesto            itemPuesto     = new Puesto();
                C_Banco_SAT       itemBancoSat   = new C_Banco_SAT();
                string            empFiscal      = "";
                string            empComplemento = "";
                SYA_Usuarios      usuario        = new SYA_Usuarios();

                using (var context = new RHEntities())
                {
                    itemEmpleado = context.Empleado.FirstOrDefault(x => x.IdEmpleado == idEmpleado);

                    itemContrato =
                        context.Empleado_Contrato.Where(x => x.IdEmpleado == idEmpleado)
                        .OrderByDescending(x => x.IdContrato)
                        .FirstOrDefault();

                    if (itemContrato == null)
                    {
                        return(null);
                    }

                    itemSucursal = context.Sucursal.FirstOrDefault(x => x.IdSucursal == itemEmpleado.IdSucursal);

                    itemCliente = context.Cliente.FirstOrDefault(x => x.IdCliente == itemSucursal.IdCliente);

                    listaEmpresas = context.Empresa.ToList();

                    itemPuesto = context.Puesto.FirstOrDefault(x => x.IdPuesto == itemContrato.IdPuesto);

                    itemBancarios = context.DatosBancarios.FirstOrDefault(x => x.IdEmpleado == idEmpleado);

                    itemBancoSat = context.C_Banco_SAT.FirstOrDefault(x => x.IdBanco == itemBancarios.IdBanco);

                    usuario = context.SYA_Usuarios.FirstOrDefault(x => x.IdUsuario == itemContrato.IdUsuarioReg);
                }


                if (itemContrato.IdEmpresaFiscal != null)
                {
                    Empresa itemEmpF = listaEmpresas.FirstOrDefault(x => x.IdEmpresa == itemContrato.IdEmpresaFiscal.Value);
                    empFiscal = itemEmpF != null ? itemEmpF.RazonSocial : "na";
                }

                if (itemContrato.IdEmpresaComplemento != null)
                {
                    Empresa itemEmpC = listaEmpresas.FirstOrDefault(x => x.IdEmpresa == itemContrato.IdEmpresaComplemento.Value);
                    empComplemento = itemEmpC != null ? itemEmpC.RazonSocial : "na";
                }


                doc.NewPage();


                //// Paragraph to draw line.
                //Paragraph p = new Paragraph(new Chunk(new iTextSharp.text.pdf.draw.LineSeparator(0.0F, 100.0F, BaseColor.BLACK, Element.ALIGN_LEFT, 1)));
                //// call the below to add the line when required.
                //doc.Add(p);

                //doc.Add(Chunk.NEWLINE);

                string strNombre = "";

                strNombre = itemContrato.Status == true ? $" {itemEmpleado.Nombres} {itemEmpleado.APaterno} {itemEmpleado.AMaterno}" : $" {itemEmpleado.Nombres} {itemEmpleado.APaterno} {itemEmpleado.AMaterno} - Baja";

                doc.Add(new Phrase(strNombre, Font14B));
                doc.Add(Chunk.NEWLINE);
                if (usuario != null)
                {
                    string strUsuario =
                        $" Registrado por: {usuario.Nombres} {usuario.ApPaterno} {usuario.ApMaterno}          Fecha Reg: {itemContrato.FechaReg}";
                    doc.Add(new Phrase(strUsuario, Font9));
                }
                //doc.Add(Chunk.NEWLINE);

                // Paragraph to draw line.
                Paragraph p =
                    new Paragraph(
                        new Chunk(new iTextSharp.text.pdf.draw.LineSeparator(0.0F, 100.0F, BaseColor.BLACK,
                                                                             Element.ALIGN_LEFT, 1)));
                // call the below to add the line when required.
                doc.Add(p);

                // LineSeparator line = new LineSeparator(1f, 100f, BaseColor.BLACK, Element.ALIGN_LEFT, 1);
                //doc.Add(line);


                doc.Add(Chunk.NEWLINE);
                SetDataDoc(ref doc, "IdEmpleado : ", itemEmpleado.IdEmpleado.ToString());
                SetDataDoc(ref doc, "Nombre(s) : ", itemEmpleado.Nombres);
                SetDataDoc(ref doc, "Paterno : ", itemEmpleado.APaterno);
                SetDataDoc(ref doc, "Materno : ", itemEmpleado.AMaterno);
                SetDataDoc(ref doc, "NSS : ", itemEmpleado.NSS);
                SetDataDoc(ref doc, "RFC : ", itemEmpleado.RFC);
                SetDataDoc(ref doc, "CURP : ", itemEmpleado.CURP);

                doc.Add(Chunk.NEWLINE);

                SetDataDoc(ref doc, "Cliente   : ", itemCliente.Nombre);
                SetDataDoc(ref doc, "Sucursal : ", itemSucursal.Ciudad);
                SetDataDoc(ref doc, "Puesto : ", itemPuesto.Descripcion);

                doc.Add(Chunk.NEWLINE);
                SetDataDoc(ref doc, "Empresa Fiscal : ", empFiscal);
                SetDataDoc(ref doc, "Empresa Comp : ", empComplemento);
                SetDataDoc(ref doc, "SD : ", itemContrato.SD.ToString());
                SetDataDoc(ref doc, "SDI : ", itemContrato.SDI.ToString());
                SetDataDoc(ref doc, "SDR : ", itemContrato.SalarioReal.ToString());

                SetDataDoc(ref doc, itemContrato.IsReingreso ? "Fecha Reingreso : " : "Fecha Alta : ", itemContrato.FechaAlta.ToString("dd MMM yyyy"));
                SetDataDoc(ref doc, "Fecha Imss : ", itemContrato.FechaIMSS != null ? itemContrato.FechaIMSS.Value.ToString("dd MMM yyyy") : "--");
                SetDataDoc(ref doc, "Fecha Real : ", itemContrato.FechaReal.ToString("dd MMM yyyy"));
                SetDataDoc(ref doc, "Tipo Contrato : ", itemContrato.IsReingreso ? "Reingreso" : "Nuevo");

                SetDataDoc(ref doc, "Estatus contrato : ", itemContrato.Status ? "Vigente" : "Baja");

                if (itemContrato.Status == false)
                {
                    SetDataDoc(ref doc, "Fecha Baja : ", itemContrato.FechaBaja != null ? itemContrato.FechaBaja.Value.ToString("dd MMM yyyy") : "--");
                    SetDataDoc(ref doc, "Baja Imss : ", itemContrato.BajaIMSS != null ? itemContrato.BajaIMSS.Value.ToString("dd MMM yyyy") : "--");
                    SetDataDoc(ref doc, "Motivo Baja : ", itemContrato.MotivoBaja != null ? itemContrato.MotivoBaja : "--");
                    SetDataDoc(ref doc, "Comentario Baja : ", itemContrato.ComentarioBaja != null ? itemContrato.ComentarioBaja : "--");
                }

                doc.Add(Chunk.NEWLINE);

                SetDataDoc(ref doc, "Banco : ", itemBancoSat.Descripcion);
                SetDataDoc(ref doc, "Siga F : ", itemBancarios.NoSigaF.ToString());
                SetDataDoc(ref doc, "Siga C : ", itemBancarios.NoSigaC.ToString());
                SetDataDoc(ref doc, "Cuenta Bancaria : ", itemBancarios.CuentaBancaria);
                SetDataDoc(ref doc, "Num. de Tarjeta  : ", itemBancarios.NumeroTarjeta);
                SetDataDoc(ref doc, "Clabe Interbancaria : ", itemBancarios.Clabe);
                doc.Add(Chunk.NEWLINE);
                SetDataDoc(ref doc, "Beneficiario : ", itemBancarios.NombreBeneficiario);
                SetDataDoc(ref doc, "RFC Beneficiario   : ", itemBancarios.RFCBeneficiario);
                SetDataDoc(ref doc, "CURP Beneficiario : ", itemBancarios.CURPBeneficiario);
                SetDataDoc(ref doc, "Parentezco : ", itemBancarios.ParentezcoBeneficiario);
                SetDataDoc(ref doc, "Domicilio Beneficiario : ", itemBancarios.DomicilioBeneficiario);
            }
            catch (Exception e)
            {
                doc.Add(new Phrase($"Error ? {e.Message}", Font14B));
            }
            finally
            {
                doc.Close();

                byteInfo = ms.ToArray();
                ms.Write(byteInfo, 0, byteInfo.Length);
                ms.Position = 0;
                ms.Flush();
                ms.Dispose();
            }

            return(byteInfo);
        }
예제 #8
0
        public string crearExcel(int idusuario, string ruta, int IdSucursal, NOM_PeriodosPago pperiodo)
        {
            //Variables
            NOM_Finiquito              finiquito;
            Empleado                   empleado;
            Empleado_Contrato          empleadoC;
            string                     empresaF;
            string                     empresaC;
            NOM_FacturacionF_Finiquito factura;
            NOM_FacturacionC_Finiquito facturaC;
            DatosBancarios             datosbancarios;
            C_Banco_SAT                banco = new C_Banco_SAT();

            using (var context = new RHEntities())
            {
                finiquito = context.NOM_Finiquito.FirstOrDefault(x => x.IdPeriodo == pperiodo.IdPeriodoPago);
                empleado  = context.Empleado.FirstOrDefault(x => x.IdEmpleado == finiquito.IdEmpleado);
                //var empleadoC = ctx.Empleado_Contrato.Where(x => x.IdEmpleado == empleado.IdEmpleado && x.Status == true).FirstOrDefault();
                empleadoC = context.Empleado_Contrato.FirstOrDefault(x => x.IdEmpleado == empleado.IdEmpleado);


                empresaF =
                    context.Empresa.Where(x => x.IdEmpresa == empleadoC.IdEmpresaFiscal)
                    .Select(x => x.RazonSocial)
                    .FirstOrDefault();

                empresaC =
                    context.Empresa.Where(x => x.IdEmpresa == empleadoC.IdEmpresaComplemento)
                    .Select(x => x.RazonSocial)
                    .FirstOrDefault();

                if (empresaC == null)
                {
                    empresaC =
                        context.Empresa.Where(x => x.IdEmpresa == empleadoC.IdEmpresaSindicato)
                        .Select(x => x.RazonSocial)
                        .FirstOrDefault();
                }

                factura =
                    context.NOM_FacturacionF_Finiquito
                    .FirstOrDefault(x => x.IdFiniquito == finiquito.IdFiniquito && x.IdPeriodo == pperiodo.IdPeriodoPago);
                facturaC =
                    context.NOM_FacturacionC_Finiquito
                    .FirstOrDefault(x => x.IdFiniquito == finiquito.IdFiniquito && x.IdPeriodo == pperiodo.IdPeriodoPago);
                datosbancarios = context.DatosBancarios.FirstOrDefault(x => x.IdEmpleado == empleado.IdEmpleado);

                if (datosbancarios == null)
                {
                    banco = null;
                }
                else
                {
                    banco = context.C_Banco_SAT.FirstOrDefault(x => x.IdBanco == datosbancarios.IdBanco);
                }
            }



            var newruta = ValidarFolderUsuario(idusuario, ruta);

            //string[] arrayEmpresaF = empresaF.Split(' ');
            //string[] arrayEmpresaC = empresaC.Split(' ');
            int    contadorHojas = 0;
            string Nombre;
            string NombreF;
            int    nosiga = 0;

            newruta = $"{newruta} Dispersion {empleado?.APaterno} {empleado?.AMaterno} {empleado?.Nombres} - Finiquito.xlsx";


            var wb = new XLWorkbook();

            while (contadorHojas < 2)
            {
                int i = 6;
                if (contadorHojas == 0)
                {
                    //Nombre = arrayEmpresaF[0]+" " +arrayEmpresaF[1] + " " +arrayEmpresaF[2];
                    NombreF = empresaF;
                    nosiga  = datosbancarios == null ? 0 : datosbancarios.NoSigaF.Value;
                }
                else
                {
                    //Nombre = arrayEmpresaC[0] + " " + arrayEmpresaC[1] + " " + arrayEmpresaC[2];
                    NombreF = empresaC;
                    nosiga  = datosbancarios == null ? 0 : datosbancarios.NoSigaC.Value;
                }


                if (NombreF.Length > 30)
                {
                    NombreF = NombreF.Substring(0, 29);
                }

                var ws = wb.Worksheets.Add(NombreF);


                ws.Cell("C2").Value = NombreF;
                ws.Cell("C3").Value = "Dispersion";
                ws.Cell("C4").Value = pperiodo.Fecha_Inicio.ToString("dd/MM/yyyy") + " - " + pperiodo.Fecha_Fin.ToString("dd/MM/yyyy");



                ws.Range("C2:F2").Merge();
                ws.Cell("C2").Style
                .Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
                .Font.SetBold();

                ws.Range("C3:F3").Merge();
                ws.Cell("C3").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center);

                ws.Range("C4:F4").Merge();
                ws.Cell("C4").Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center);
                ws.Cell("C" + i).Value = banco == null ? "no tiene asignado banco" : banco.Descripcion;
                ws.Range("C" + i + ":F" + i).Merge();
                ws.Cell("C" + i).Style.Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center);
                i++;
                ws.Cell("C" + i).Value = "NOMBRE DEL COLABORADOR";
                ws.Cell("D" + i).Value = "IMPORTE TOTAL";
                ws.Cell("E" + i).Value = "NoSiga";
                ws.Cell("F" + i).Value = "Cuenta";
                i++;

                ws.Cell("C" + i).Value = empleado.APaterno + " " + empleado.AMaterno + " " + empleado.Nombres;
                if (contadorHojas == 0)
                {
                    ws.Cell("D" + i).Value = finiquito.TOTAL_total;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                }
                else
                {
                    ws.Cell("D" + i).Value = 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                }

                ws.Cell("E" + i).Value = nosiga;
                ws.Cell("F" + i).Value = datosbancarios == null ? "Sin datos bancarios" : datosbancarios.CuentaBancaria;
                i = i + 4;

                ws.Cell("C" + i).Value = contadorHojas == 0 ? "RELATIVOS" : "FACTURA";


                ws.Range("C" + i + ":F" + i).Merge();
                ws.Cell("C" + i).Style
                .Alignment.SetHorizontal(XLAlignmentHorizontalValues.Center)
                .Font.SetBold();
                i++;
                if (contadorHojas == 0)
                {
                    ws.Cell("C" + i).Value = "CUOTAS IMSS - INFONAVIT";
                    ws.Cell("D" + i).Value = factura?.F_Cuota_IMSS_Infonavit ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                    ws.Cell("C" + i).Value = "IMPUESTO SOBRE NOMINAS";
                    ws.Cell("D" + i).Value = factura?.F_ImpuestoNomina ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                    ws.Cell("C" + i).Value = "AMORTIZACION INFONAVIT";
                    ws.Cell("D" + i).Value = factura?.F_Amortizacion_Infonavit ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                    ws.Cell("C" + i).Value = "FONACOT";
                    ws.Cell("D" + i).Value = factura?.F_Fonacot ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                    ws.Cell("C" + i).Value = "PENSION ALIMENTICIA";
                    ws.Cell("D" + i).Value = factura?.F_Pension_Alimenticia ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                    ws.Cell("C" + i).Value = "RELATIVOS";
                    ws.Cell("D" + i).Value = factura?.F_Relativo ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                    ws.Cell("C" + i).Value = "TOTAL DISPERSION";
                    ws.Cell("D" + i).Value = factura?.F_Total_Nomina ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                    ws.Cell("C" + i).Value = "TOTAL GENERAL";
                    ws.Cell("D" + i).Value = factura?.F_Total_Fiscal ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.00";
                    i++;
                }
                else
                {
                    ws.Cell("C" + i).Value = "PERCEPCIONES";
                    ws.Cell("D" + i).Value = facturaC?.C_Percepciones ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                    ws.Cell("C" + i).Value = "SERVICIOS" + facturaC?.C_Porcentaje_Servicio ?? "0";
                    ws.Cell("D" + i).Value = facturaC?.C_Total_Servicio ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                    ws.Cell("C" + i).Value = "RELATIVOS";
                    ws.Cell("D" + i).Value = facturaC?.C_Relativos ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                    ws.Cell("C" + i).Value = "DESCUENTO";
                    ws.Cell("D" + i).Value = facturaC?.C_Descuentos ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                    ws.Cell("C" + i).Value = "OTROS";
                    ws.Cell("D" + i).Value = facturaC?.C_Otros ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                    ws.Cell("C" + i).Value = "SUB TOTAL";
                    ws.Cell("D" + i).Value = facturaC?.C_Subtotal ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                    ws.Cell("C" + i).Value = "IVA";
                    ws.Cell("D" + i).Value = facturaC?.C_Total_IVA ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                    ws.Cell("C" + i).Value = "TOTAL DISPERSION COMPLEMENTO";
                    ws.Cell("D" + i).Value = facturaC?.C_Total_Complemento ?? 0;
                    ws.Cell("D" + i).Style.NumberFormat.Format = "$ #,##0.0000";
                    i++;
                }



                ws.Columns("7,3").AdjustToContents();
                ws.Columns("7,4").AdjustToContents();
                ws.Columns("7,5").AdjustToContents();
                ws.Columns("7,6").AdjustToContents();
                contadorHojas++;
            }


            wb.SaveAs(newruta);

            return(newruta);
        }