Ejemplo n.º 1
0
        public void Run(int id)
        {
            var purchaseOrder = _purchaseOrderRepository.GetPurchaseOrder(id);

            if (purchaseOrder is null)
            {
                Console.WriteLine($"No hay ningún purchase order con Id {id}");

                Console.WriteLine($"Generando purchase order con Id {id}");
                purchaseOrder = new PurchaseOrder(id);
                purchaseOrder.AddLineItem(new LineItem("M1", "Jamón", 5.25m));
                purchaseOrder.AddLineItem(new LineItem("M2", "Fuet", 2.99m, 3));
                purchaseOrder.AddLineItem(new LineItem("V1", "Lechuga", 0.95m));
                purchaseOrder.AddShippingInfo(new ShippingInfo("Greg Young", "123 High Street, Seattle, USA"));
                purchaseOrder.Confirm();
                purchaseOrder.Ship();

                _purchaseOrderRepository.Save(purchaseOrder);
                Console.WriteLine("Purchase Order guardada con éxito");

                var retrievedPurchaseOrder = _purchaseOrderRepository.GetPurchaseOrder(id);
                Console.WriteLine($"Purchase Order con Id {id} recuperada");
                Console.WriteLine(retrievedPurchaseOrder);
            }
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            var repository = new DummyPurchaseOrderRepository();

            var order1   = new PurchaseOrder();
            var product1 = new Product("Dell Printer", 200.0);
            var product2 = new Product("Wireless router - Cisco", 500);
            var product3 = new Product("IBM Server", 15000);

            order1.AddLineItem(product1, 10);
            order1.AddLineItem(product2, 30);
            order1.AddLineItem(product3, 1);

            repository.SaveOrder(order1);

            System.Console.ReadLine();
        }
Ejemplo n.º 3
0
            protected override void Given()
            {
                var existingLineItem = new LineItem("foo", "bar", 123.456m);

                _sut = new PurchaseOrder(123);
                _sut.AddLineItem(existingLineItem);

                _lineItem = new LineItem("foo", "bar", 123.456m);
            }
Ejemplo n.º 4
0
        public bool AddLineItem()
        {
            var poId = Guid.NewGuid().ToString();
            var po   = new PurchaseOrder(poId)
            {
                SpendLimit = 100
            };

            _purchaseOrderRepo.Add(po);
            LineItemId++;
            var lineitem1 = new LineItem(LineItemId, "LineItem1", "LineItem1", 50);

            po.AddLineItem(lineitem1, _purchaseOrderService);
            LineItemId++;
            var lineitem2 = new LineItem(LineItemId, "LineItemId2", "LineItemId2", 51);

            return(po.AddLineItem(lineitem2, _purchaseOrderService));
        }
Ejemplo n.º 5
0
 protected override void When()
 {
     try
     {
         _sut.AddLineItem(_lineItem);
     }
     catch (ArgumentException exception)
     {
         _exception = exception;
     }
 }
Ejemplo n.º 6
0
        public bool UpdateLineItem()
        {
            var canbeUpdated = true;
            var po           = new PurchaseOrder(Guid.NewGuid().ToString())
            {
                SpendLimit = 100
            };

            _purchaseOrderRepo.Add(po);
            LineItemId++;
            po.AddLineItem(new LineItem(LineItemId, "LineItemId3", "LineItemId3", 50),
                           _purchaseOrderService);

            var item = new LineItem(LineItemId, "LineItemId4", "LineItemId4", 25);

            po.AddLineItem(item, _purchaseOrderService);

            canbeUpdated = item.UpdateLineItemCost(51, _purchaseOrderService);
            return(canbeUpdated);
        }
Ejemplo n.º 7
0
        public void AddToPurchaseOrder(int purchaseOrderId, string item, int quantity, decimal price)
        {
            using (IUnitOfWork uw = uwFactory.Create())
            {
                PurchaseOrder order = uw.PurchaseOrders.Entities.Where(o => o.Id == purchaseOrderId).Single();

                order.AddLineItem(new PurchaseOrderLineItem()
                {
                    Description = item, Quantity = quantity, Price = price, Position = order.Items.Count()
                });

                uw.Commit();
            }
        }
Ejemplo n.º 8
0
        public void AddToPurchaseOrder(int purchaseOrderId, string item, int quantity, decimal price)
        {
            using (AcmeCorpContainer ctx = new AcmeCorpContainer())
            {
                PurchaseOrder order = ctx.PurchaseOrders.Where(o => o.Id == purchaseOrderId).Single();

                order.AddLineItem(new PurchaseOrderLineItem()
                {
                    Description = item, Quantity = quantity, Price = price, Position = order.Items.Count()
                });

                ctx.SaveChanges();
            }
        }
Ejemplo n.º 9
0
        public JsonResult Save(POSaveViewModel input)
        {
            PurchaseOrder purchaseOrder = input.PurchaseOrderId > 0 ? _repository.Find <PurchaseOrder>(input.PurchaseOrderId) : new PurchaseOrder();

            if (input.PurchaseOrderId <= 0)
            {
                var vendor = _repository.Find <Vendor>(input.VendorId);
                purchaseOrder.Vendor = vendor;
            }
            var baseProduct = _repository.Find <BaseProduct>(input.EntityId);

            purchaseOrder.AddLineItem(new PurchaseOrderLineItem {
                Product = baseProduct
            });

            var crudManager  = _saveEntityService.ProcessSave(purchaseOrder);
            var notification = crudManager.Finish();

            notification.EntityId = purchaseOrder.EntityId;
            return(Json(notification, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 10
0
        private void CreateVendor()
        {
            _vendor1 = new Vendor
            {
                Company = "Some Company1",
                Phone   = "555.123.4567",
                Fax     = "123.456.7891",
                Website = "www.somewebsite1.com",
                LogoUrl = "someurl1",
                Notes   = "notes1"
            };

            _vendor2 = new Vendor
            {
                Company = "Some Company2",
                Phone   = "555.123.4567",
                Fax     = "123.456.7891",
                Website = "www.somewebsite2.com",
                LogoUrl = "someurl2",
                Notes   = "notes2"
            };

            _vendor1.AddProduct(_fertilizer1);
            _vendor1.AddProduct(_fertilizer2);
            _vendor2.AddProduct(_fertilizer1);
            _vendor2.AddProduct(_fertilizer2);

            _vendor1.AddProduct(_chemical1);
            _vendor1.AddProduct(_chemical2);
            _vendor2.AddProduct(_chemical1);
            _vendor2.AddProduct(_chemical2);

            _vendor1.AddProduct(_materials1);
            _vendor1.AddProduct(_materials2);
            _vendor2.AddProduct(_materials1);
            _vendor2.AddProduct(_materials2);

            _vendor1.AddProduct(_seed1);
            _vendor1.AddProduct(_seed2);
            _vendor2.AddProduct(_seed1);
            _vendor2.AddProduct(_seed2);

            _repository.Save(_vendor1);
            _repository.Save(_vendor2);

            var purchaseOrder1 = new PurchaseOrder {
                Vendor = _vendor1, DateCreated = DateTime.Parse("1/5/2009"), Status = TemporalStatus.Complete.Key
            };
            var poli1 = new PurchaseOrderLineItem()
            {
                Product         = _fertilizer1,
                Price           = 10,
                QuantityOrdered = 5,
                Tax             = 5
            };

            var poli2 = new PurchaseOrderLineItem()
            {
                Product         = _fertilizer1,
                Price           = 10,
                QuantityOrdered = 5,
                Tax             = 5
            };

            var poli3 = new PurchaseOrderLineItem()
            {
                Product         = _materials1,
                Price           = 10,
                QuantityOrdered = 5,
                Tax             = 5
            };

            var poli4 = new PurchaseOrderLineItem()
            {
                Product         = _materials2,
                Price           = 10,
                QuantityOrdered = 5,
                Tax             = 5
            };

            var poli5 = new PurchaseOrderLineItem()
            {
                Product         = _chemical2,
                Price           = 10,
                QuantityOrdered = 5,
                Tax             = 5
            };

            var poli6 = new PurchaseOrderLineItem()
            {
                Product         = _chemical1,
                Price           = 10,
                QuantityOrdered = 5,
                Tax             = 5
            };

            purchaseOrder1.AddLineItem(poli1);
            purchaseOrder1.AddLineItem(poli2);
            purchaseOrder1.AddLineItem(poli3);
            purchaseOrder1.AddLineItem(poli4);
            purchaseOrder1.AddLineItem(poli5);
            purchaseOrder1.AddLineItem(poli6);
            _vendor1.AddPurchaseOrder(purchaseOrder1);
            _repository.Save(_vendor1);
        }
Ejemplo n.º 11
0
 protected override void When()
 {
     _sut.AddLineItem(_lineItem);
 }
Ejemplo n.º 12
0
        private void CreateVendor()
        {
            _vendor1 = new Vendor
            {
                Company = "Some Company1",
                Phone = "555.123.4567",
                Fax = "123.456.7891",
                Website = "www.somewebsite1.com",
                LogoUrl = "someurl1",
                Notes = "notes1"
            };

            _vendor2 = new Vendor
            {
                Company = "Some Company2",
                Phone = "555.123.4567",
                Fax = "123.456.7891",
                Website = "www.somewebsite2.com",
                LogoUrl = "someurl2",
                Notes = "notes2"
            };

            _vendor1.AddProduct(_fertilizer1);
            _vendor1.AddProduct(_fertilizer2);
            _vendor2.AddProduct(_fertilizer1);
            _vendor2.AddProduct(_fertilizer2);

            _vendor1.AddProduct(_chemical1);
            _vendor1.AddProduct(_chemical2);
            _vendor2.AddProduct(_chemical1);
            _vendor2.AddProduct(_chemical2);

            _vendor1.AddProduct(_materials1);
            _vendor1.AddProduct(_materials2);
            _vendor2.AddProduct(_materials1);
            _vendor2.AddProduct(_materials2);

            _vendor1.AddProduct(_seed1);
            _vendor1.AddProduct(_seed2);
            _vendor2.AddProduct(_seed1);
            _vendor2.AddProduct(_seed2);

            _repository.Save(_vendor1);
            _repository.Save(_vendor2);

            var purchaseOrder1 = new PurchaseOrder {Vendor = _vendor1, DateCreated = DateTime.Parse("1/5/2009"), Status = TemporalStatus.Complete.Key};
            var poli1 = new PurchaseOrderLineItem()
            {
                Product = _fertilizer1,
                Price = 10,
                QuantityOrdered = 5,
                Tax = 5
            };

            var poli2 = new PurchaseOrderLineItem()
            {
                Product = _fertilizer1,
                Price = 10,
                QuantityOrdered = 5,
                Tax = 5
            };

            var poli3 = new PurchaseOrderLineItem()
            {
                Product = _materials1,
                Price = 10,
                QuantityOrdered = 5,
                Tax = 5
            };

            var poli4 = new PurchaseOrderLineItem()
            {
                Product = _materials2,
                Price = 10,
                QuantityOrdered = 5,
                Tax = 5
            };

            var poli5 = new PurchaseOrderLineItem()
            {
                Product = _chemical2,
                Price = 10,
                QuantityOrdered = 5,
                Tax = 5
            };

            var poli6 = new PurchaseOrderLineItem()
            {
                Product = _chemical1,
                Price = 10,
                QuantityOrdered = 5,
                Tax = 5
            };

            purchaseOrder1.AddLineItem(poli1);
            purchaseOrder1.AddLineItem(poli2);
            purchaseOrder1.AddLineItem(poli3);
            purchaseOrder1.AddLineItem(poli4);
            purchaseOrder1.AddLineItem(poli5);
            purchaseOrder1.AddLineItem(poli6);
            _vendor1.AddPurchaseOrder(purchaseOrder1);
            _repository.Save(_vendor1);
        }