我想要对一个组内所有零件的成本进行求和。
我的Total、TotalLength、Loss和CutPart工作得很好。
但是,当我尝试对该组中所有零件的成本求和时,结果并不如预期。
所有数据都被正确计算,除了总成本这一项。
--以下是我的分组内容
List<PartsProcessor.IPart> parts = Task.Run(async () => await this.ProcessedParts.CombineParts(false)).Result;
//Stocks
this.StockLengths = parts.GroupBy(o => new { o.PartNumber, o.StockLength }).Select(g => new PartsProcessor.GroupedPart
{
Total = (g.Key.StockLength > 0 ? int.Parse((Math.Ceiling(g.Sum(s => s.Length) / (g.Key.StockLength))).ToString()) : 1),
TotalLength = g.Sum(s => s.Length),
Loss = g.Key.StockLength > 0 ? (g.Key.StockLength * (Math.Ceiling(g.Sum(s => s.Length) / (g.Key.StockLength)))) - (g.Sum(s => s.Length)) : 0,
**Cost = g.Sum(s => s.Cost),**
CutPart = g.FirstOrDefault()
}
)
.Where(w => w.CutPart.Category.ToLower() != "glass" &&
w.CutPart.Category.ToLower() != "glazing" &&
!w.CutPart.Category.ToLower().Contains("epdm") &&
!w.CutPart.Category.ToLower().Contains("end dam") &&
w.CutPart.Category.ToLower() != "leaf" &&
w.CutPart.Category.ToLower() != "door frame").ToList<PartsProcessor.IGroupedPart>();
--调试模式下的属性
以下两张截图显示了每个部件的成本、所需总部件数量和总成本。但是总成本是不正确的。
我在哪里出错了?