private static void CountExportFormTotals(List <Ingredient> ingredients, CigaretteExportForm form) { form.Ingredients = ingredients.OrderBy(x => { IPRIngredient y = x as IPRIngredient; if (y == null) { return(" "); } else { return(y.DocumentNoumber); } }).ToArray(); form.IPTMaterialQuantityTotal = 0; form.RegularMaterialQuantityTotal = 0; form.IPTDutyVatTotals = new TotalAmountOfMoney(); foreach (Ingredient _item in ingredients) { if (_item is IPRIngredient) { IPRIngredient _iprItem = (IPRIngredient)_item; form.IPTMaterialQuantityTotal += _iprItem.TobaccoQuantity; form.IPTDutyVatTotals.Add(new AmountOfMoney(_iprItem.TobaccoValue, _iprItem.Duty, _iprItem.VAT, _iprItem.Currency)); } else { RegularIngredient _rglrItem = (RegularIngredient)_item; form.RegularMaterialQuantityTotal += _rglrItem.TobaccoQuantity; } } form.IPTMaterialQuantityTotal = form.IPTMaterialQuantityTotal.RountMass(); form.IPTDutyVatTotals.AssignTotals(); form.RegularMaterialQuantityTotal = form.RegularMaterialQuantityTotal.RountMass(); }
internal static IPRIngredient GetIPRIngredient(Disposal disposal) { IPRIngredient _ret = new IPRIngredient(disposal.Disposal2IPRIndex.Batch, disposal.Disposal2IPRIndex.SKU, disposal.SettledQuantity.Value); CAS.SmartFactory.IPR.WebsiteModel.Linq.IPR _ipr = disposal.Disposal2IPRIndex; _ret.Currency = _ipr.Currency; _ret.Date = _ipr.CustomsDebtDate.Value; _ret.DocumentNoumber = _ipr.DocumentNo; _ret.Duty = disposal.DutyPerSettledAmount.Value; switch (disposal.ClearingType.Value) { case CAS.SmartFactory.IPR.WebsiteModel.Linq.ClearingType.PartialWindingUp: _ret.ItemClearingType = xml.DocumentsFactory.CigaretteExportForm.ClearingType.PartialWindingUp; break; case CAS.SmartFactory.IPR.WebsiteModel.Linq.ClearingType.TotalWindingUp: _ret.ItemClearingType = xml.DocumentsFactory.CigaretteExportForm.ClearingType.PartialWindingUp; break; default: throw new ApplicationError("InvoiceLib.IPRIngredient", "ItemClearingType", "Wrong Clearing Type", null); } _ret.TobaccoUnitPrice = _ipr.IPRUnitPrice.Value; _ret.TobaccoValue = disposal.TobaccoValue.Value; _ret.VAT = disposal.VATPerSettledAmount.Value; return(_ret); }