public async Task <SapRetenciones> Insert(SapRetenciones sapRetenciones)
        {
            await _unitOfWork.SapRetencionesRepository.Add(sapRetenciones);

            await _unitOfWork.SaveChangesAsync();

            return(sapRetenciones);
        }
        public async Task <SapRetenciones> Update(SapRetenciones sapRetenciones)
        {
            var retencion = await GetById(sapRetenciones.Id);

            if (retencion == null)
            {
                throw new Exception("Documento No existe");
            }

            _unitOfWork.SapRetencionesRepository.Update(retencion);
            await _unitOfWork.SaveChangesAsync();

            return(await GetById(sapRetenciones.Id));
        }
Beispiel #3
0
        public async Task Delete(decimal id)
        {
            SapRetenciones entity = await GetById(id);

            _context.SapRetenciones.Remove(entity);
        }
Beispiel #4
0
 public void Update(SapRetenciones entity)
 {
     _context.SapRetenciones.Update(entity);
 }
Beispiel #5
0
 public async Task Add(SapRetenciones entity)
 {
     await _context.SapRetenciones.AddAsync(entity);
 }
Beispiel #6
0
        public List <AppService.Core.DTOs.SapEnviarSoloRetencion.Application> GeneraListSapEnviarSoloRetencion(ReciboDto reciboDto)
        {
            List <AppService.Core.DTOs.SapEnviarSoloRetencion.Application> result = new List <AppService.Core.DTOs.SapEnviarSoloRetencion.Application>();

            try
            {
                foreach (CobGrabacionCobranzaDto item in reciboDto.CobGrabacionCobranzaDto)
                {
                    ReciboEnviarSapDto itemContenedorresult = new ReciboEnviarSapDto();

                    d itemResult = new d
                    {
                        Id          = item.Id,
                        Transaccion = item.Transaccion,

                        NroRecibo = (long)item.Documento,
                        Sociedad  = "1000",
                        Cliente   = reciboDto.CobGeneralCobranzaDto.IdCliente
                    };
                    if (item.DocAfectaSap != null)
                    {
                        itemResult.DocCobroSAP = item.DocAfectaSap;
                    }
                    else
                    {
                        itemResult.DocCobroSAP = "";
                    }


                    string año = reciboDto.CobGeneralCobranzaDto.FechaTransaccion.Year.ToString();
                    string mes = "00" + reciboDto.CobGeneralCobranzaDto.FechaTransaccion.Month.ToString();
                    mes = mes.Substring(mes.Length - 2, 2);
                    string dia = reciboDto.CobGeneralCobranzaDto.FechaTransaccion.Day.ToString();
                    itemResult.FechaCobroReal = $"{año}-{mes}-{dia}T00:00";

                    año = reciboDto.CobGeneralCobranzaDto.FechaLmcxC.Year.ToString();
                    mes = "00" + reciboDto.CobGeneralCobranzaDto.FechaLmcxC.Month.ToString();
                    mes = mes.Substring(mes.Length - 2, 2);
                    dia = reciboDto.CobGeneralCobranzaDto.FechaLmcxC.Day.ToString();
                    itemResult.FechaContabilizacion = $"{año}-{mes}-{dia}T00:00";
                    var refConvert = reciboDto.CobGeneralCobranzaDto.NumReferencia.ToString();
                    if (refConvert.Length >= 8)
                    {
                        itemResult.Referencia = refConvert.Substring(refConvert.Length - 8);
                    }
                    else
                    {
                        itemResult.Referencia = reciboDto.CobGeneralCobranzaDto.NumReferencia.ToString();;
                    }

                    itemResult.TextoCab = item.CuentaBancaria;

                    itemResult.CuentaBancaria = item.CuentaBancaria;
                    if (item.Cotizacion.Length > 0)
                    {
                        itemResult.TextoPos = "Doc: " + item.Documento.ToString() + " Canc: " + item.DocAfectaSap + "Cot: " + item.Cotizacion;
                    }
                    else
                    {
                        itemResult.TextoPos = "Doc: " + item.Documento.ToString() + " Canc: " + item.DocAfectaSap;
                    }


                    itemResult.Monto  = item.Monto.ToString();
                    itemResult.Moneda = item.Moneda;
                    List <RetencionesCobranza> retencionesCobranzas = new List <RetencionesCobranza>();
                    if (item.CobPagosRetencionesDto != null)
                    {
                        foreach (CobPagosRetencionesDto itemretenciones in item.CobPagosRetencionesDto)
                        {
                            RetencionesCobranza itemRetencionesCobranzas = new RetencionesCobranza();

                            AppService.Core.DTOs.SapEnviarSoloRetencion.Application itemAplication = new AppService.Core.DTOs.SapEnviarSoloRetencion.Application();

                            AppService.Core.DTOs.SapEnviarSoloRetencion.D itemD = new AppService.Core.DTOs.SapEnviarSoloRetencion.D();
                            itemRetencionesCobranzas.Id       = itemretenciones.Id;
                            itemRetencionesCobranzas.TxOrigen = itemretenciones.TxOrigen;

                            if (itemretenciones.NroComprobante.Length >= 8)
                            {
                                itemRetencionesCobranzas.Referencia = itemretenciones.NroComprobante.Substring(itemretenciones.NroComprobante.Length - 8);
                            }
                            else
                            {
                                itemRetencionesCobranzas.Referencia = itemretenciones.NroComprobante;
                            }

                            itemRetencionesCobranzas.TextoCab = item.CuentaBancaria;

                            if (item.Cotizacion.Length > 0)
                            {
                                itemRetencionesCobranzas.TextoPos = "Doc: " + item.Documento.ToString() + " Canc: " + item.DocAfectaSap + "Cot: " + item.Cotizacion;
                            }
                            else
                            {
                                itemRetencionesCobranzas.TextoPos = "Doc: " + item.Documento.ToString() + " Canc: " + item.DocAfectaSap;
                            }

                            itemRetencionesCobranzas.Monto  = itemretenciones.Monto.ToString();
                            itemRetencionesCobranzas.Moneda = "VES";


                            SapRetenciones sapRetenciones = _sapRetencionesService.GetByTranzaccionPorcentaje(itemretenciones.IdTransaccion, (double)itemretenciones.Porcentaje);

                            itemRetencionesCobranzas.IndRetencion = sapRetenciones.IndicadordeRetencion;


                            if (itemretenciones.TxOrigen == "06")
                            {
                                itemRetencionesCobranzas.BaseRetencion = item.Iva.ToString();
                            }
                            else
                            {
                                itemRetencionesCobranzas.BaseRetencion = item.BaseImponible.ToString();
                            }
                            itemD.Id                   = itemRetencionesCobranzas.Id;
                            itemD.NroRecibo            = (int)itemResult.NroRecibo;
                            itemD.Sociedad             = itemResult.Sociedad;
                            itemD.Cliente              = itemResult.Cliente;
                            itemD.TxOrigen             = itemRetencionesCobranzas.TxOrigen;
                            itemD.DocCobroSAP          = itemResult.DocCobroSAP;
                            itemD.FechaCobroReal       = itemResult.FechaCobroReal;
                            itemD.FechaContabilizacion = itemResult.FechaContabilizacion;
                            itemD.Referencia           = itemRetencionesCobranzas.Referencia;
                            itemD.TextoCab             = itemRetencionesCobranzas.TextoCab;
                            itemD.TextoPos             = itemRetencionesCobranzas.TextoPos;
                            itemD.Monto                = itemRetencionesCobranzas.Monto;
                            itemD.Moneda               = itemRetencionesCobranzas.Moneda;
                            itemD.IndRetencion         = itemRetencionesCobranzas.IndRetencion;
                            itemD.BaseRetencion        = itemRetencionesCobranzas.BaseRetencion;
                            itemAplication.d           = itemD;

                            result.Add(itemAplication);
                        }
                    }


                    //itemResult.RetencionesCobranza.Add(retencionesCobranzas);
                }
            }
            catch (Exception ex)
            {
                string a = ex.Message;
                throw;
            }



            return(result);
        }