Esempio n. 1
0
        //Todo: check logic
        public void CreatePurchaseDemand(IDemandToProvider demand, decimal amount, int time)
        {
            if (NeedToRefill(demand, amount))
            {
                var providerPurchasePart = new DemandProviderPurchasePart()
                {
                    Quantity          = amount,
                    ArticleId         = demand.ArticleId,
                    DemandRequesterId = demand.Id,
                    State             = State.Created,
                };
                Demands.Add(providerPurchasePart);

                CreatePurchase(demand, amount, providerPurchasePart, time);
                Demands.Update(providerPurchasePart);
            }
            else
            {
                var providerStock = new DemandProviderStock()
                {
                    Quantity          = amount,
                    ArticleId         = demand.ArticleId,
                    DemandRequesterId = demand.Id,
                    State             = State.Created,
                    StockId           = Stocks.Single(a => a.ArticleForeignKey == demand.ArticleId).Id
                };
                Demands.Add(providerStock);
            }
            SaveChanges();
        }
Esempio n. 2
0
        public DemandProviderStock CreateDemandProviderStock(IDemandToProvider demand, decimal amount)
        {
            var dps = new DemandProviderStock()
            {
                ArticleId         = demand.ArticleId,
                Quantity          = amount,
                StockId           = Stocks.Single(a => a.ArticleForeignKey == demand.ArticleId).Id,
                DemandRequesterId = demand.Id,
                State             = State.Created
            };

            Add(dps);
            SaveChanges();
            return(dps);
        }