public OOB.Resultado.ResultadoEntidad <string> CtaxCobrar_Pago_Procesar(OOB.CtxCobrar.Pago.Ficha pago) { var rt = new OOB.Resultado.ResultadoEntidad <string>(); try { var pagoDTO = new DTO.CtaxCobrar.Pago.Ficha() { ClienteId = pago.ClienteId, ClienteCodigo = pago.ClienteCodigo, ClienteRif = pago.ClienteCiRif, ClienteNombre = pago.ClienteRazonSocial, ClienteDireccion = pago.ClienteDirFiscal, ClienteTelefono = pago.ClienteTelefono, VendedorId = pago.Vendedor.IdAuto, VendedorCodigo = pago.Vendedor.Codigo, VendedorNombre = pago.Vendedor.Nombre, VendedorCiRif = pago.Vendedor.CiRif, CobradorId = pago.Cobrador.IdAuto, CobradorCodigo = pago.Cobrador.Codigo, CobradorNombre = pago.Cobrador.Nombre, UsuarioId = pago.Usuario.IdAuto, UsuarioNombre = pago.Usuario.Nombre, FechaRecibo = pago.FechaRecibo, TotalMontoRecibo = pago.MontoRecibo, TotalMontoRecibido = pago.MontoRecibido, TotalMontoAnticipos = pago.MontoAnticipos, TotalMontoDescuentos = pago.MontoDescuentos, TotalMontoRetenciones = pago.MontoRetenciones, Notas = pago.Notas, MontoFavorCliente = pago.MontoFavorCliente, GenerarNotaCreditoMontoFavorCliente = pago.GenerarNotaCreditoMontoFavorCliente, }; var Comisiones = new List <DTO.CtaxCobrar.Pago.Comision>(); if (pago.Comisiones != null) { foreach (var com in pago.Comisiones) { var it = new DTO.CtaxCobrar.Pago.Comision() { IdClaveRelMedioPago = com.ClaveIdRelMedioPago, DocCxc_Id = com.IdDocCxc, DocCxc_Fecha = com.FechaDocCxc, DocCxc_FechaRecepcion = com.FechaRecepcionMercDocCxc, ComisionPorc = com.ComisionPorc, CastigoPorc = com.CastigoPorc, BaseCalculo = com.BaseCalculo, MontoRecibido = com.MontoRecibido, ToleranciaDias = com.ToleranciaDias, TotalComision = com.TotalComision, IsCastigado = com.IsCastigado, DiasTranscurridos = com.DiasTranscurridos, }; Comisiones.Add(it); } } pagoDTO.Comisiones = Comisiones; var retenciones = new List <DTO.CtaxCobrar.Pago.RetencionIva>(); if (pago.Retenciones != null) { foreach (var _rt in pago.Retenciones) { var it = new DTO.CtaxCobrar.Pago.RetencionIva() { DocumentoId = _rt.DocumentoId, DocumentoNro = _rt.DocumentoNro, DocumentoFecha = _rt.DocumentoFecha, DocumentoControl = _rt.DocumentoControl, DocumentoTasaIva = _rt.DocumentoTasaIva, DocumentoTipo = (DTO.CtaxCobrar.Pago.Enumerados.TipoDoc)_rt.DocumentoTipo, ComprobanteNro = _rt.ComprobanteNro, DeFecha = _rt.DeFecha, MontoExcento = _rt.MontoExcento, MontoBase = _rt.MontoBase, MontoImpuesto = _rt.MontoImpuesto, MontoTotal = _rt.MontoTotal, TasaRetencion = _rt.TasaRetencion, MontoRetencion = _rt.MontoRetencion, }; retenciones.Add(it); } } pagoDTO.RetencionesIva = retenciones; var mediosPago = new List <DTO.CtaxCobrar.Pago.MedioPago>(); if (pago.MediosPago != null) { foreach (var _mp in pago.MediosPago) { var it = new DTO.CtaxCobrar.Pago.MedioPago() { IdClave = _mp.IdClave, autoMedioId = _mp.MedioId, autoBancoId = _mp.BancoId, CodigoMedio = _mp.MedioCodigo, DescripcionMedio = _mp.MedioDescripcion, MontoRecibido = _mp.MontoRecibido, FechaMovimiento = _mp.FechaMovimiento, Referencia = _mp.NroReferencia, BancoCodigo = _mp.BancoCodigo, BancoDescripcion = _mp.BancoDescripcion, BancoNroCta = _mp.BancoNroCta, }; mediosPago.Add(it); } } pagoDTO.MediosPago = mediosPago; var doc = new List <DTO.CtaxCobrar.Pago.DocumentoCxC>(); if (pago.DocLiquidar != null) { foreach (var _doc in pago.DocLiquidar) { var it = new DTO.CtaxCobrar.Pago.DocumentoCxC() { autoId = _doc.IdDoc, DocumentoNumero = _doc.NumeroDoc, DocumentoFecha = _doc.FechaDoc, DocumentoTipo = (DTO.CtaxCobrar.Pago.Enumerados.TipoDoc)_doc.TipoDoc, DocumentoTotal = _doc.MontoDoc, fechaRecepcion = _doc.fechaRecepcion, ComisionPorc = _doc.ComisionPorc, CastigoPorc = _doc.CastigoPorc, TipoOeracion = (DTO.CtaxCobrar.Pago.Enumerados.Operacion)_doc.TipoOeracion, MontoAbonado = _doc.MontoAbonado, ToleranciaDias = _doc.ToleranciaDias, }; doc.Add(it); } } pagoDTO.DocumentosCxcPagar = doc; var resultDTO = _servicio.CtaxCobrar_Pago_Procesar(pagoDTO); if (resultDTO.Result == DTO.EnumResult.isError) { rt.Mensaje = resultDTO.Mensaje; rt.Result = OOB.Resultado.EnumResult.isError; return(rt); } rt.Entidad = resultDTO.Entidad; } catch (Exception e) { rt.Mensaje = e.Message; rt.Result = OOB.Resultado.EnumResult.isError; } return(rt); }
//CTAxCOBRAR/PAGO public DTO.ResultadoEntidad <string> CtaxCobrar_Pago_Procesar(DTO.CtaxCobrar.Pago.Ficha pago) { return(provider.CtaxCobrar_Pago_Procesar(pago)); }