private void DeleteProduct() { if (SelectedProduct == null) { return; } if (SelectedProduct.ProductId == 0) { _Products.Remove(SelectedProduct); SelectedProduct = null; return; } var priceCalculationItem = ItemPriceCalculationItems.GetByRefProductId(SelectedProduct.ProductId); if (priceCalculationItem != null) { ItemPriceCalculationItemCostCenters.DeleteByRefItemPriceCalculationItemId(priceCalculationItem.ItemPriceCalculationItemId); ItemPriceCalculationItems.Delete(priceCalculationItem.ItemPriceCalculationItemId); } Products.Delete(SelectedProduct.ProductId); _Products.Remove(SelectedProduct); SelectedProduct = null; }
private void UpdateSavedItem(ItemPriceCalculationItem item) { item.AgentCommission = StandardItemPriceCalculation.AgentCommission; item.CustomerCashback = StandardItemPriceCalculation.CustomerCashback; item.CustomerDiscount = StandardItemPriceCalculation.CustomerDiscount; item.ProfitSurcharge = StandardItemPriceCalculation.ProfitSurcharge; item.Tax = StandardItemPriceCalculation.Tax; item.HourlyWage = HourlyWage; item.ProductionTime = ProductionTime; item.ItemAmountPerAnno = ItemAmountPerAnno; item.RefProductId = Product.ProductId; ItemPriceCalculationItems.Update(item); }
private void Save() { var item = ItemPriceCalculationItems.GetByRefProductId(Product.ProductId); if (item != null) { UpdateSavedItem(item); SaveCostCenters(item.ItemPriceCalculationItemId); } else { SaveNewItem(); } UpdateProduct(); }
private void LoadData() { var itemPriceCalculationItem = ItemPriceCalculationItems.GetByRefProductId(Product.ProductId); if (itemPriceCalculationItem == null) { StandardItemPriceCalculation = new StandardItemPriceCalculation(); return; } StandardItemPriceCalculation.AgentCommission = itemPriceCalculationItem.AgentCommission; StandardItemPriceCalculation.CustomerCashback = itemPriceCalculationItem.CustomerCashback; StandardItemPriceCalculation.CustomerDiscount = itemPriceCalculationItem.CustomerDiscount; StandardItemPriceCalculation.ProfitSurcharge = itemPriceCalculationItem.ProfitSurcharge; StandardItemPriceCalculation.Tax = itemPriceCalculationItem.Tax; StandardItemPriceCalculation.HourlyWage = itemPriceCalculationItem.HourlyWage; StandardItemPriceCalculation.ProductionTime = itemPriceCalculationItem.ProductionTime; StandardItemPriceCalculation.ItemAmountPerAnno = itemPriceCalculationItem.ItemAmountPerAnno; foreach (var item in itemPriceCalculationItem.ItemPriceCalculationItemCostCenters) { switch (item.ItemPriceCalculationItemCostCenterType) { case ItemPriceCalculationItemCostCenterType.MaterialOverheadCosts: MaterialOverHeadCostsCostCenters.CostCenterFlatStructures.SingleOrDefault(x => x.CostCenter?.CostCenterId == item.RefCostCenterId).IsActive = true; break; case ItemPriceCalculationItemCostCenterType.ProductOverheadCosts: ProductOverheadsCostCenters.CostCenterFlatStructures.SingleOrDefault(x => x.CostCenter?.CostCenterId == item.RefCostCenterId).IsActive = true; break; case ItemPriceCalculationItemCostCenterType.AdministrativeOverheadCosts: AdministrativeOverheadsCostCenters.CostCenterFlatStructures.SingleOrDefault(x => x.CostCenter?.CostCenterId == item.RefCostCenterId).IsActive = true; break; case ItemPriceCalculationItemCostCenterType.SalesOverheadCosts: SalesOverHeadsCostCenters.CostCenterFlatStructures.SingleOrDefault(x => x.CostCenter?.CostCenterId == item.RefCostCenterId).IsActive = true; break; default: break; } } }
private void SaveNewItem() { itemPriceCalculationItem = new ItemPriceCalculationItem() { AgentCommission = StandardItemPriceCalculation.AgentCommission, CustomerCashback = StandardItemPriceCalculation.CustomerCashback, CustomerDiscount = StandardItemPriceCalculation.CustomerDiscount, ProfitSurcharge = StandardItemPriceCalculation.ProfitSurcharge, Tax = StandardItemPriceCalculation.Tax, HourlyWage = HourlyWage, ProductionTime = ProductionTime, ItemAmountPerAnno = ItemAmountPerAnno, RefProductId = Product.ProductId }; var itemPriceCalculationItemId = ItemPriceCalculationItems.Insert(itemPriceCalculationItem); SaveCostCenters(itemPriceCalculationItemId); }
private void CalculateOthers() { foreach (var item in MaterialOverHeadCostsCostCenters.CostCenterFlatStructures) { if (item.CostCenter == null) { continue; } var itemPriceCalculationItemList = ItemPriceCalculationItems.GetByCostCenter(item.CostCenter.CostCenterId); foreach (ItemPriceCalculationItem tmpItemPriceCalculationItem in itemPriceCalculationItemList) { if (tmpItemPriceCalculationItem.ItemPriceCalculationItemId != itemPriceCalculationItem.ItemPriceCalculationItemId) { ItemPriceCalculationItems.Update(tmpItemPriceCalculationItem); } } } }