コード例 #1
0
        public void Initialize()
        {
            compra         = BuilderFactories.Compra(1, DateTime.Now);
            compra.Id      = 1;
            compra.Cliente = new ClienteTest().cliente;

            compra.CompraClientes = new List <CompraCliente>()
            {
                new CompraClienteTest().compraCliente
            };
            compra.CompraClientes.FirstOrDefault().Producto = new ProductoTest().producto;

            compra.CompraClientes.FirstOrDefault().Producto.ProductoDescuentos = new List <ProductoDescuento>()
            {
                new ProductoDescuentoTest().productoDescuento
            };
            compra.CompraClientes.FirstOrDefault().Producto.ProductoDescuentos.FirstOrDefault().Descuento = new DescuentoTest().descuento;
            compra.ComprobanteDePagos = new List <ComprobanteDePago>()
            {
                BuilderFactories.ComprobanteDePago(EstadoDePago.EN_ESPERA, compra.ObtenerTotal(), compra.ObtenerSubTotal(), MedioPago.EFECTIVO, 0, DateTime.Now, compra.ObtenerDescuento(), 1)
            };

            compra.CompraEnvios = new List <CompraEnvio>()
            {
                new CompraEnvioTest().compraEnvio
            };
            compra.CompraEnvios.FirstOrDefault().Id     = 1;
            compra.CompraEnvios.FirstOrDefault().Compra = compra;

            compra.CompraEnvios.FirstOrDefault().CompraEnvioProductos = new List <CompraEnvioProducto>
            {
                new CompraEnvioProducto(1, 1, 1, DateTime.Now, Enum.EstadoDeEnvioProducto.NO_ENVIADO)
            };
            compra.CompraEnvios.FirstOrDefault().EstadoDeEnvio = Enum.EstadoDeEnvio.EN_VERIFICACIÓN;
        }
コード例 #2
0
ファイル: CompraModel.cs プロジェクト: Desarrollo-zeros/DDD
        public CompraModel Comprar(Compra compra)
        {
            if (compra == null || compra.CompraClientes == null)
            {
                return(null);
            }
            Instance.Compra = compra;
            var response = Instance.ServicioCompra.Create(new ServicioCompraRequest
            {
                Cliente_Id  = compra.Cliente_Id,
                FechaCompra = compra.FechaCompra.Year < DateTime.Now.Year ? DateTime.Now : compra.FechaCompra,
            });

            if (response.Status)
            {
                Instance.Compra.CompraClientes = compra.CompraClientes;
                Instance.Compra.CompraClientes.ToList().ForEach(x =>
                {
                    ServicioCompraCliente.Create(new ServicioCompraClienteRequest
                    {
                        Cantidad              = x.Cantidad,
                        Compra_Id             = response.Id,
                        Producto_Id           = x.Producto_Id,
                        EstadoClienteArticulo = x.EstadoClienteArticulo
                    });
                    x.Producto = ProductoModel.ProductoModel.Instance.Find(x.Producto_Id);
                    x.Producto.ProductoDescuentos = ProductoDescuentoModel.Instance._repository.FindBy(y => y.Producto_Id == x.Producto_Id);
                    x.Producto.ProductoDescuentos.ToList().ForEach(z =>
                    {
                        z.Descuento = DescuentoModel.Instance.Find(z.Descuento_Id);
                    });
                    x.Compra_Id = response.Id;
                });
                Instance.Compra.Id = response.Id;
                if (compra.ComprobanteDePagos == null)
                {
                    compra.ComprobanteDePagos = new List <ComprobanteDePago>()
                    {
                        BuilderFactories.ComprobanteDePago(EstadoDePago.EN_ESPERA, Instance.Compra.ObtenerTotal(), Instance.Compra.ObtenerSubTotal(), MedioPago.EFECTIVO, 0, DateTime.Now, Instance.Compra.ObtenerDescuento(), response.Id)
                    };
                }
                Instance.Compra.ComprobanteDePagos = compra.ComprobanteDePagos;
                ComprobanteDePagoModel.Instance.Create(Instance.Compra.ComprobanteDePagos.FirstOrDefault());
            }
            return(Instance);
        }