public static List <GroupBuyingStockModel> GetGroupBuyingStockInfo(List <string> pids) { var data = DalGroupBuyingProductGroupConfig.GetGroupBuyingStockInfo(pids); var result = data.GroupBy(g => g.PID).Select(g => new GroupBuyingStockModel { PID = g.Key, SHAvailableStockQuantity = g.FirstOrDefault(t => t.WAREHOUSEID == 8598)?.TotalAvailableStockQuantity ?? 0, SHStockCost = g.FirstOrDefault(t => t.WAREHOUSEID == 8598)?.StockCost ?? 0, SHZaituStockQuantity = g.FirstOrDefault(t => t.WAREHOUSEID == 8598)?.CaigouZaitu ?? 0, WHAvailableStockQuantity = g.FirstOrDefault(t => t.WAREHOUSEID == 7295)?.TotalAvailableStockQuantity ?? 0, WHStockCost = g.FirstOrDefault(t => t.WAREHOUSEID == 7295)?.StockCost ?? 0, WHZaituStockQuantity = g.FirstOrDefault(t => t.WAREHOUSEID == 7295)?.CaigouZaitu ?? 0, TotalAvailableStockQuantity = g.Sum(t => t.TotalAvailableStockQuantity), TotalZaituStockQuantity = g.Sum(t => t.CaigouZaitu) }).ToList(); return(result); }