diff --git a/ZR.Service/mes/wms/WmPolishInventoryService.cs b/ZR.Service/mes/wms/WmPolishInventoryService.cs
index 9435b5d5..23b1f226 100644
--- a/ZR.Service/mes/wms/WmPolishInventoryService.cs
+++ b/ZR.Service/mes/wms/WmPolishInventoryService.cs
@@ -247,6 +247,97 @@ namespace ZR.Service.mes.wms
return response;*/
}
+ ///
+ /// 查询工艺路线-抛光 库存表列表
+ ///
+ ///
+ ///
+ public WmPolishInventoryTableDto GetListNew(WmPolishInventoryQueryDto parm)
+ {
+ var list = Context
+ .Queryable()
+ .LeftJoin((m, p) => m.Partnumber == p.Partnumber)
+ .Distinct()
+ .WhereIF(
+ !string.IsNullOrEmpty(parm.Description),
+ (m, p) => m.Description.Contains(parm.Description)
+ )
+ .WhereIF(
+ !string.IsNullOrEmpty(parm.Partnumber),
+ (m, p) => m.Partnumber.Contains(parm.Partnumber)
+ )
+ .Where((m, p) => m.Status == 1)
+ .Where((m, p) => m.Type == 1)
+ //.WhereIF(string.IsNullOrEmpty(parm.Partnumber), (m, p) => p.Status == 1)
+ .OrderBy((m, p) => m.Description)
+ .Select(
+ (m, p) =>
+ new WmPolishInventoryDto
+ {
+ RealQuantity = 0,
+ Partnumber = m.Partnumber,
+ Color = m.Color,
+ Specification = m.Specification,
+ Description = m.Description,
+ Id = p.Id ?? m.Id,
+ BlankNum = p.BlankNum,
+ Quantity = p.Quantity ?? 0,
+ MaxNum = p.MaxNum,
+ MinNum = p.MinNum,
+ WarnNum = p.WarnNum,
+ Type = p.Type ?? 1,
+ Status = p.Status,
+ Remark = p.Remark,
+ CreatedBy = p.CreatedBy,
+ // 盘点时间
+ CreatedTime = p.CreatedTime,
+ UpdatedBy = p.UpdatedBy,
+ UpdatedTime = p.UpdatedTime,
+ }
+ )
+ .ToList();
+ //TODO 取出库存表 wm_polish_inventory 最小CreatedTime时间
+
+ //TODO 根据时间范围取出所有记录数据
+
+
+ // TODO 匹配记录(partnumber零件号,时间范围)
+ foreach (WmPolishInventoryDto item in list)
+ {
+ // TODO 获取实际库存 item.quantity(盘点开始数量) + recourd 记录的入库数量 - 出库数量(筛选条件是 时间区间【item.CreatedTime】 + partnumber[item.partnumber])
+ item.RealQuantity = 0;
+ /*List partnumbers = new() { item.Partnumber };
+ Dictionary dict = GetBatchPolishRealPartNum(partnumbers);*/
+ // item.RealQuantity = dict.TryGetValue(item.Partnumber, out int value) ? value : 0;
+ }
+
+ list = list.Where(it => it.RealQuantity != 0 || it.Quantity != 0)
+ .Where(it => !string.IsNullOrEmpty(it.Partnumber))
+ .DistinctBy(it => it.Partnumber)
+ .ToList();
+
+ int total = list.Count;
+ // 仓库总盘点零件数
+ int StocktakingTotal =
+ Context.Queryable().Sum(it => it.Quantity) ?? 0;
+ // 仓库当前查询盘点零件数
+ int QuantitySum = list.Sum(it => it.Quantity) ?? 0;
+ // 仓库当前查询实际零件数
+ int RealQuantitySum = list.Sum(it => it.RealQuantity);
+ WmPolishInventoryTableDto response =
+ new()
+ {
+ Total = total,
+ StocktakingTotal = StocktakingTotal,
+ QuantitySum = QuantitySum,
+ RealQuantitySum = RealQuantitySum,
+ Result = list.Skip((parm.PageNum - 1) * parm.PageSize)
+ .Take(parm.PageSize)
+ .ToList(),
+ };
+ return response;
+ }
+
///
/// 获取详情
///