public OOB.ResultadoEntidad <OOB.LibVenta.PosOffline.Servidor.PrepararData.Ficha> Servidor_PrepararData() { var result = new OOB.ResultadoEntidad <OOB.LibVenta.PosOffline.Servidor.PrepararData.Ficha>(); var r01 = MyData.Servidor_RecogerDataEnviar(); if (r01.Result == DtoLib.Enumerados.EnumResult.isError) { result.Mensaje = r01.Mensaje; result.Result = OOB.Enumerados.EnumResult.isError; return(result); } var rt = new OOB.LibVenta.PosOffline.Servidor.PrepararData.Ficha();; if (r01.Entidad != null) { if (r01.Entidad.Series != null) { if (r01.Entidad.Series.Count > 0) { var ls = new List <OOB.LibVenta.PosOffline.Servidor.PrepararData.Serie>(); foreach (var rs in r01.Entidad.Series) { var nr = new OOB.LibVenta.PosOffline.Servidor.PrepararData.Serie() { Auto = rs.Auto, Control = rs.Control, Correlativo = rs.Correlativo, SerieNombre = rs.SerieNombre, }; ls.Add(nr); } rt.Series = ls; } } if (r01.Entidad.Jornadas != null) { if (r01.Entidad.Jornadas.Count > 0) { var listJor = r01.Entidad.Jornadas.Select(s => { var jor = new OOB.LibVenta.PosOffline.Servidor.PrepararData.Jornada() { Id = s.Id, Cierre = new OOB.LibVenta.PosOffline.Servidor.PrepararData.MovimientoCierre() { autoUsuario = s.Cierre.autoUsuario, codigoUsuario = s.Cierre.codigoUsuario, usuario = s.Cierre.usuario, fecha = s.Cierre.fecha, hora = s.Cierre.hora, prefijo = s.Cierre.prefijo, diferencia = s.Cierre.diferencia, efectivo = s.Cierre.efectivo, divisa = s.Cierre.divisa, tarjeta = s.Cierre.tarjeta, otros = s.Cierre.otros, devolucion = s.Cierre.devolucion, subTotal = s.Cierre.subTotal, total = s.Cierre.total, mEfectivo = s.Cierre.mEfectivo, mDivisa = s.Cierre.mDivisa, mTarjeta = s.Cierre.mTarjeta, mOtro = s.Cierre.otros, mSubTotal = s.Cierre.mSubTotal, mTotal = s.Cierre.mTotal, firma = s.Cierre.firma, mFirma = s.Cierre.mFirma, // cntDivisa = s.Cierre.cntDivisa, cntDivisaUsu = s.Cierre.cntDivisaUsu, cntDoc = s.Cierre.cntDoc, cntDocFac = s.Cierre.cntDocFac, cntDocNcr = s.Cierre.cntDocNcr, montoFac = s.Cierre.montoFac, montoNcr = s.Cierre.montoNcr, }, Documentos = s.Documentos.Select(d => { var doc = new OOB.LibVenta.PosOffline.Servidor.PrepararData.Documento() { AnoRelacion = d.AnoRelacion, Aplica = d.Aplica, Base1 = d.Base1, Base2 = d.Base2, Base3 = d.Base3, CambioDar = d.CambioDar, CargoMonto_1 = d.CargoMonto_1, CargoPorc_1 = d.CargoPorc_1, CiRif = d.CiRif, ClienteDirFiscal = d.ClienteDirFiscal, ClienteId = d.ClienteId, ClienteNombre = d.ClienteNombre, ClienteTelefono = d.ClienteTelefono, CobradorAuto = d.CobradorAuto, CobradorCodigo = d.CobradorCodigo, CobradorNombre = d.CobradorNombre, CodigoSucursal = d.CodigoSucursal, PrefijoSucursal = d.Prefijo, Control = d.Control, DepositoAuto = d.DepositoAuto, DepositoCodigo = d.DepositoCodigo, DepositoNombre = d.DepositoNombre, DesctoMonto_1 = d.DesctoMonto_1, DesctoMonto_2 = d.DesctoMonto_2, DesctoPorc_1 = d.DesctoPorc_1, DesctoPorc_2 = d.DesctoPorc_2, DocumentoNro = d.DocumentoNro, Estacion = d.Estacion, FactorCambio = d.FactorCambio, Fecha = d.Fecha, Hora = d.Hora, Id = d.Id, IdJornada = d.IdJornada, IdOperador = d.IdOperador, Impuesto1 = d.Impuesto1, Impuesto2 = d.Impuesto2, Impuesto3 = d.Impuesto3, IsActiva = d.IsActiva, IsCredito = d.IsCredito, MesRelacion = d.MesRelacion, MontoBase = d.MontoBase, MontoCostoVenta = d.MontoCostoVenta, MontoDivisa = d.MontoDivisa, MontoExento = d.MontoExento, MontoImpuesto = d.MontoImpuesto, MontoRecibido = d.MontoRecibido, MontoSubt = d.MontoSubt, MontoSubtImpuesto = d.MontoSubtImpuesto, MontoSubtNeto = d.MontoSubtNeto, MontoTotal = d.MontoTotal, MontoUtilidad = d.MontoUtilidad, MontoUtilidadPorc = d.MontoUtilidadPorc, MontoVentaNeta = d.MontoVentaNeta, Renglones = d.Renglones, Serie = d.Serie, Signo = d.Signo, TasaIva1 = d.TasaIva1, TasaIva2 = d.TasaIva2, TasaIva3 = d.TasaIva3, TipoDocumento = (OOB.LibVenta.PosOffline.Servidor.PrepararData.Enumerados.EnumTipoDocumento)d.TipoDocumento, TranporteAuto = d.TranporteAuto, TranporteCodigo = d.TranporteCodigo, TranporteNombre = d.TranporteNombre, UsuarioAuto = d.UsuarioAuto, UsuarioCodigo = d.UsuarioCodigo, UsuarioNombre = d.UsuarioNombre, VendedorAuto = d.VendedorAuto, VendedorCodigo = d.VendedorCodigo, VendedorNombre = d.VendedorNombre, Tarifa = d.Tarifa, SaldoPendiente = d.SaldoPendiente, AutoConceptoMov = d.AutoConceptoMov, CodigoConceptoMov = d.CodigoConceptoMov, NombreConceptoMov = d.NombreConceptoMov, Detalles = d.Detalles.Select(dt => { var detalle = new OOB.LibVenta.PosOffline.Servidor.PrepararData.DocumentoDetalle() { AutoDepartamento = dt.AutoDepartamento, AutoGrupo = dt.AutoGrupo, AutoProducto = dt.AutoProducto, AutoSubGrupo = dt.AutoSubGrupo, AutoTasa = dt.AutoTasa, Cantidad = dt.Cantidad, CantidadUnd = dt.CantidadUnd, Categoria = dt.Categoria, CodigoProducto = dt.CodigoProducto, CostoCompraUnd = dt.CostoCompraUnd, CostoPromedioUnd = dt.CostoPromedioUnd, CostoVenta = dt.CostoVenta, Decimales = dt.Decimales, DiaEmpaqueGarantia = dt.DiaEmpaqueGarantia, EmpaqueCodigo = dt.EmpaqueCodigo, EmpaqueContenido = dt.EmpaqueContenido, EmpaqueDescripcion = dt.EmpaqueDescripcion, EsPesado = dt.EsPesado, Id = dt.Id, MontoDscto_1 = dt.MontoDscto_1, MontoDscto_2 = dt.MontoDscto_2, MontoDscto_3 = dt.MontoDscto_3, MontoIva = dt.MontoIva, NombreProducto = dt.NombreProducto, Notas = dt.Notas, PorcDscto_1 = dt.PorcDscto_1, PorcDscto_2 = dt.PorcDscto_2, PorcDscto_3 = dt.PorcDscto_3, PrecioFinal = dt.PrecioFinal, PrecioItem = dt.PrecioItem, PrecioNeto = dt.PrecioNeto, PrecioSugerido = dt.PrecioSugerido, PrecioUnd = dt.PrecioUnd, Tarifa = dt.Tarifa, TasaIva = dt.TasaIva, TipoIva = dt.TipoIva, Total = dt.Total, TotalDescuento = dt.TotalDescuento, TotalNeto = dt.TotalNeto, UtilidadMonto = dt.UtilidadMonto, UtilidadPorct = dt.UtilidadPorct, CostoCompra = dt.CostoCompra, CostoPromedio = dt.CostoPromedio, }; return(detalle); }).ToList(), MetodosPago = d.MetodosPago.Select(p => { var pago = new OOB.LibVenta.PosOffline.Servidor.PrepararData.DocumentoPago() { AutoMedioCobro = p.AutoMedioCobro, CodigoMedioCobro = p.CodigoMedioCobro, Id = p.Id, LoteNro = p.LoteNro, MedioCobro = p.MedioCobro, MontoImporte = p.MontoImporte, MontoRecibido = p.MontoRecibido, ReferenciaNro = p.ReferenciaNro, Tasa = p.Tasa, }; return(pago); }).ToList(), }; return(doc); }).ToList(), }; return(jor); }).ToList(); rt.Jornadas = listJor; } } } result.Entidad = rt; return(result); }
public CxCPago(OOB.LibVenta.PosOffline.Servidor.PrepararData.Documento doc) { if (!doc.IsCredito) { var d = doc; Pago = new CxC() { CCobranza = 0.0m, CCobranzap = 0.0m, Fecha = d.Fecha, TipoDocumento = "PAG", Documento = "", FechaVencimiento = d.Fecha, Nota = "", Importe = d.MontoRecibido, Acumulado = 0, AutoCliente = "0000000001", Cliente = d.ClienteNombre, CiRif = d.CiRif, CodigoCliente = "01", EstatusCancelado = "0", Resta = 0.0m, EstatusAnulado = d.EstatusAnulado, AutoDocumento = "", Numero = "", AutoAgencia = "0000000001", Agencia = "", Signo = -1, AutoVendedor = d.VendedorAuto, CDepartamento = 0.0m, CVentas = 0.0m, CVentasp = 0.0m, Serie = "", ImporteNeto = 0.0M, Dias = 0, Castigop = 0.0m, FactorCambio = d.FactorCambio, ImporteDivisa = Math.Round((d.MontoRecibido / d.FactorCambio), 2, MidpointRounding.AwayFromZero), }; Recibo = new CxCRecibo() { Fecha = d.Fecha, AutoUsuario = d.UsuarioAuto, Importe = d.MontoTotal, Usuario = d.UsuarioNombre, MontoRecibido = d.MontoRecibido, Cobrador = d.CobradorNombre, AutoCliente = "0000000001", Cliente = d.ClienteNombre, CiRif = d.CiRif, Codigo = "01", EstatusAnulado = d.EstatusAnulado, Direccion = d.ClienteDirFiscal, Telefono = d.ClienteTelefono, AutoCobrador = d.CobradorAuto, Anticipos = 0.0m, Cambio = d.CambioDar, Nota = "", CodigoCobrador = d.CobradorCodigo, AutoCxC = "", Retenciones = 0.0m, Descuentos = 0.0m, Hora = d.Hora, Cierre = "", FactorCambio = d.FactorCambio, ImporteDivisa = Math.Round((d.MontoRecibido / d.FactorCambio), 2, MidpointRounding.AwayFromZero), }; Documento = new CxCDocumento() { Id = 1, Fecha = d.Fecha, TipoDocumento = "FAC", Documento = d.DocumentoNro, Importe = d.MontoTotal, Operacion = "Pago", FechaRecepcion = new DateTime(2000, 01, 01), Dias = 0, CastigoP = 0.0m, ComisionP = 0.0m, }; MediosPago = d.MetodosPago.Select(s => { var lote = s.LoteNro; var referencia = s.ReferenciaNro; var montoRecibido = s.MontoRecibido; if (s.Tasa > 1) { lote = s.MontoRecibido.ToString(); referencia = s.Tasa.ToString(); montoRecibido = s.MontoRecibido * s.Tasa; } var mp = new OOB.LibVenta.PosOffline.Servidor.EnviarData.CxCMedioPago() { AutoMedioPago = s.AutoMedioCobro, AutoAgencia = "", Medio = s.MedioCobro, Codigo = s.CodigoMedioCobro, MontoRecibido = montoRecibido, Fecha = d.Fecha, EstatusAnulado = d.EstatusAnulado, Numero = "", Agencia = "", AutoUsuario = d.UsuarioAuto, Lote = lote, Referencia = referencia, AutoCobrador = d.CobradorAuto, Cierre = "", FechaAgencia = new DateTime(2000, 01, 01), }; return(mp); }).ToList(); } else { Pago = null; Recibo = null; Documento = null; MediosPago = null; } }