private static M_ArticleToBusinessPartner[] CreateArticleToBusinessPartners( M_Article[] articles, M_BusinessPartner[] businessPartners) { M_BusinessPartner businessPartnerWholeSale = businessPartners.Single(x => x.Name.Equals(BUSINESS_PARTNER_WHOLESALE)); return(new M_ArticleToBusinessPartner[] { new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartnerWholeSale.Id, ArticleId = articles.Single(x => x.Name == ARTICLE_DESK_SURFACE).Id, PackSize = 1, Price = 20, TimeToDelivery = 100 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartnerWholeSale.Id, ArticleId = articles.Single(x => x.Name == ARTICLE_SCREWS).Id, PackSize = 100, Price = 5, TimeToDelivery = 100 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartnerWholeSale.Id, ArticleId = articles.Single(x => x.Name == ARTICLE_MOUNTING_PLATE).Id, PackSize = 10, Price = 10, TimeToDelivery = 100 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartnerWholeSale.Id, ArticleId = articles.Single(x => x.Name == ARTICLE_STEEL_PIPE).Id, PackSize = 10, Price = 20, TimeToDelivery = 100 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartnerWholeSale.Id, ArticleId = articles.Single(x => x.Name == ARTICLE_FELT_GLIDERS).Id, PackSize = 10, Price = 2, TimeToDelivery = 100 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartners.Single(x => x.Name.Equals(BUSINESS_PARTNER_PRINT_SHOP)).Id, ArticleId = articles.Single(x => x.Name == ARTICLE_MANUAL).Id, PackSize = 100, Price = 0.05, TimeToDelivery = 100 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartnerWholeSale.Id, ArticleId = articles.Single(x => x.Name == ARTICLE_PACKAGE).Id, PackSize = 10, Price = 0.50, TimeToDelivery = 100 }, }); }
public async Task <IActionResult> Edit(int id, [Bind("BusinessPartnerId,Name,Debitor,Kreditor")] M_BusinessPartner businessPartner) { if (id != businessPartner.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(entity: businessPartner); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!BusinessPartnerExists(id: businessPartner.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(actionName: "Index")); } return(View(model: businessPartner)); }
/** * SE:I --> satisfy by orders PuOP */ public EntityCollector Satisfy(Demand demand, Quantity demandedQuantity) { EntityCollector entityCollector = new EntityCollector(); M_Article article = demand.GetArticle(); DueTime dueTime = demand.GetStartTimeBackward(); if (article.ToBuild) { throw new MrpRunException( "You try to create a purchaseOrderPart for a articleToBuild."); } // currently only one businessPartner per article TODO: This could be changing M_ArticleToBusinessPartner articleToBusinessPartner = _dbMasterDataCache.M_ArticleToBusinessPartnerGetAllByArticleId(article.GetId())[0]; M_BusinessPartner businessPartner = _dbMasterDataCache.M_BusinessPartnerGetById(new Id(articleToBusinessPartner .BusinessPartnerId)); T_PurchaseOrder purchaseOrder = new T_PurchaseOrder(); // [Name],[DueTime],[BusinessPartnerId] purchaseOrder.DueTime = dueTime.GetValue(); purchaseOrder.BusinessPartner = businessPartner; purchaseOrder.Name = $"PurchaseOrder{article.Name} for " + $"businessPartner {purchaseOrder.BusinessPartner.Id}"; // init a new purchaseOderPart T_PurchaseOrderPart tPurchaseOrderPart = new T_PurchaseOrderPart(); // [PurchaseOrderId],[ArticleId],[Quantity],[State],[ProviderId] tPurchaseOrderPart.PurchaseOrder = purchaseOrder; tPurchaseOrderPart.PurchaseOrderId = purchaseOrder.Id; tPurchaseOrderPart.Article = article; tPurchaseOrderPart.ArticleId = article.Id; tPurchaseOrderPart.Quantity = CalculateQuantity(articleToBusinessPartner, demandedQuantity) * articleToBusinessPartner .PackSize; if (tPurchaseOrderPart.Quantity < demandedQuantity.GetValue()) { throw new MrpRunException("You cannot purchase less than you need!"); } tPurchaseOrderPart.State = State.Created; PurchaseOrderPart purchaseOrderPart = new PurchaseOrderPart(tPurchaseOrderPart, null); T_DemandToProvider demandToProvider = new T_DemandToProvider() { DemandId = demand.GetId().GetValue(), ProviderId = purchaseOrderPart.GetId().GetValue(), Quantity = demandedQuantity.GetValue() }; entityCollector.Add(purchaseOrderPart); entityCollector.Add(demandToProvider); return(entityCollector); }
public async Task <IActionResult> Create([Bind("BusinessPartnerId,Name,Debitor,Kreditor")] M_BusinessPartner businessPartner) { if (ModelState.IsValid) { _context.Add(entity: businessPartner); await _context.SaveChangesAsync(); return(RedirectToAction(actionName: "Index")); } return(View(model: businessPartner)); }
private static M_ArticleToBusinessPartner[] CreateArticleToBusinessPartners(M_BusinessPartner businessPartner2, M_Article[] articles) { var artToBusinessPartner = new M_ArticleToBusinessPartner[] { new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartner2.Id, ArticleId = articles.Single(predicate: x => x.Name == ARTICLE_TABLE).Id, PackSize = 10, Price = 20.00, TimeToDelivery = 2880 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartner2.Id, ArticleId = articles.Single(predicate: x => x.Name == ARTICLE_TABLE_LEG).Id, PackSize = 10, Price = 20.00, TimeToDelivery = 2880 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartner2.Id, ArticleId = articles.Single(predicate: x => x.Name == ARTICLE_TABLETOP).Id, PackSize = 500, Price = 0.05, TimeToDelivery = 1440 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartner2.Id, ArticleId = articles.Single(predicate: x => x.Name == ARTICLE_SCREW).Id, PackSize = 50, Price = 2.50, TimeToDelivery = 1440 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartner2.Id, ArticleId = articles.Single(predicate: x => x.Name == ARTICLE_PEG).Id, PackSize = 50, Price = 0.20, TimeToDelivery = 1440 }, new M_ArticleToBusinessPartner { BusinessPartnerId = businessPartner2.Id, ArticleId = articles.Single(predicate: x => x.Name == ARTICLE_WOOD_PANEL).Id, PackSize = 50, Price = 0.20, TimeToDelivery = 1440 }, }; return(artToBusinessPartner); }
public BusinessPartners M_ArticleToBusinessPartnerGetAllBusinessPartnersByArticleId( Id articleId) { List <M_BusinessPartner> businessPartners = new List <M_BusinessPartner>(); foreach (var articleToBusinessPartner in _articleToBusinessPartners) { if (articleToBusinessPartner.ArticleId.Equals(articleId)) { M_BusinessPartner businessPartner = _businessPartners.GetById( new Id(articleToBusinessPartner.BusinessPartnerId)); businessPartners.Add(businessPartner); } } return(new BusinessPartners(businessPartners)); }
public static void DbInitialize(MasterDBContext context) { context.Database.EnsureCreated(); // Look for any entries if (context.Articles.Any()) { return; // DB has already been seeded } // article types var articleTypes = CreateArticleTypes(); context.ArticleTypes.AddRange(entities: articleTypes); context.SaveChanges(); // Units var units = CreateUnits(); context.Units.AddRange(entities: units); context.SaveChanges(); //ResourceSkills var resourceSkills = CreateResourceSkills(); //ResourceTools var resourceTools = CreateResourceTools(); context.ResourceTools.AddRange(entities: resourceTools); context.SaveChanges(); //Resources var resources = CreateResources(); context.Resources.AddRange(entities: resources); context.SaveChanges(); //ResourceSetups var resourceSetups = CreateResourceSetups(resources: resources, resourceTools: resourceTools); // register resourceSetups at the resourceSkills resourceSkills = UpdateResourceSkills(resourceSkills: resourceSkills, resourceSetups: resourceSetups); context.ResourceSkills.AddRange(entities: resourceSkills); context.ResourceSetups.AddRange(entities: resourceSetups); context.SaveChanges(); // Articles var articles = CreateArticles(articleTypes: articleTypes, units: units); context.Articles.AddRange(entities: articles); context.SaveChanges(); // create stock entries for each article foreach (var article in articles) { var stock = new M_Stock { ArticleForeignKey = article.Id, Name = "Stock: " + article.Name, Min = (article.ToPurchase) ? 1000 : 0, Max = (article.ToPurchase) ? 2000 : 0, Current = (article.ToPurchase) ? 1000 : 0, StartValue = (article.ToPurchase) ? 1000 : 0, }; context.Stocks.Add(entity: stock); context.SaveChanges(); } //Operations var operations = CreateOperations(articles: articles, resourceSkills: resourceSkills, resourceTools: resourceTools); context.Operations.AddRange(entities: operations); context.SaveChanges(); var articleBom = CreateArticleBoms(articles: articles, operations: operations); context.ArticleBoms.AddRange(entities: articleBom); context.SaveChanges(); //create Businesspartner var businessPartner = new M_BusinessPartner() { Debitor = true, Kreditor = false, Name = "Toys'R'us toy department" }; var businessPartner2 = new M_BusinessPartner() { Debitor = false, Kreditor = true, Name = "Material wholesale" }; context.BusinessPartners.Add(entity: businessPartner); context.BusinessPartners.Add(entity: businessPartner2); context.SaveChanges(); var artToBusinessPartner = CreateArticleToBusinessPartners(businessPartner2: businessPartner2, articles: articles); context.ArticleToBusinessPartners.AddRange(entities: artToBusinessPartner); context.SaveChanges(); }