public decimal CalcItemPrice(BacklogItem item, RoleHourCost[] roleHourCosts) { if (item == null) { return(0); } decimal?price = 0; if (item.PlannedHours == null) { return(0); } foreach (PlannedHour h in item.PlannedHours) { RoleHourCost roleCost = roleHourCosts.SingleOrDefault(r => r.RoleUId == h.RoleUId); if (roleCost != null) { price = price + h.Hours * roleCost.Price; } } if (!price.HasValue) { return(0); } return(price.Value); }
public decimal CalcTotalPrice(RoleHourCost[] roleHourCosts) { if (!UseCalcPrice) return TotalValue; decimal price = CalcItemsPrice(roleHourCosts); price = price + CalcFixedCosts(); if (Discount == 0) return price; else return price * (1 - (Discount / 100)); }
public decimal CalcItemsPrice(RoleHourCost[] roleHourCosts) { decimal? price = 0; if (Items == null || roleHourCosts == null) return 0; foreach (ProposalItem pItem in Items) price = price + CalcItemPrice(pItem.Item, roleHourCosts); if (!price.HasValue) return 0; return price.Value; }
public decimal CalcItemPrice(BacklogItem item, RoleHourCost[] roleHourCosts) { if (item == null) return 0; decimal? price = 0; foreach (PlannedHour h in item.PlannedHours) { RoleHourCost roleCost = roleHourCosts.SingleOrDefault(r => r.RoleUId == h.RoleUId); if (roleCost != null) price = price + h.Hours * roleCost.Price; } if (!price.HasValue) return 0; return price.Value; }