抛光记录自动生成版本

This commit is contained in:
2025-03-24 14:27:35 +08:00
parent bb8afa8cc7
commit bcbe4d47db
5 changed files with 69 additions and 55 deletions

View File

@@ -297,29 +297,40 @@ namespace ZR.Service.mes.wms
)
.ToList();
//TODO 取出库存表 wm_polish_inventory 最小CreatedTime时间
var wmPolishInventory = Context.Queryable<WmPolishInventory>().ToList();
DateTime mindatetime = wmPolishInventory.Select(o => o.CreatedTime.Value).Min();
DateTime minDateTime =
Context
.Queryable<WmPolishInventory>()
.OrderBy(it => it.CreatedTime)
.Select(it => it.CreatedTime)
.First() ?? DateTime.Now;
//TODO 根据时间范围取出所有记录数据
List<WmPolishRecord> wmPolishRecords = Context
.Queryable<WmPolishRecord>()
//.Where(it => it.Code == "自动")
.Where(it => it.ActionTime >= minDateTime)
.ToList();
//TODO 根据时间范围取出所有记录数据
List<WmPolishRecord> wmPolishRecords = Context
.Queryable<WmPolishRecord>()
.Where(it => it.Code == "自动")
.Where(it => it.ActionTime >= mindatetime )
.ToList();
// TODO 匹配记录partnumber零件号时间范围
foreach (WmPolishInventoryDto item in list)
// TODO 匹配记录partnumber零件号时间范围
foreach (WmPolishInventoryDto item in list)
{
// TODO 获取实际库存 item.quantity(盘点开始数量) + recourd 记录的入库数量 - 出库数量(筛选条件是 时间区间【item.CreatedTime】 + partnumber[item.partnumber]
int? runum = wmPolishRecords.Where(o => o.ActionTime >= item.CreatedTime && o.Partnumber == item.Partnumber && o.ChangeType == 1).Select(o => o.ChangeQuantity).Sum();
int? chunum= wmPolishRecords.Where(o => o.ActionTime >= item.CreatedTime && o.Partnumber == item.Partnumber && o.ChangeType == 2).Select(o => o.ChangeQuantity).Sum();
item.RealQuantity = item.Quantity.Value+(runum.Value-chunum.Value);
/*List<string> partnumbers = new() { item.Partnumber };
Dictionary<string, int> dict = GetBatchPolishRealPartNum(partnumbers);*/
// item.RealQuantity = dict.TryGetValue(item.Partnumber, out int value) ? value : 0;
int? runum = wmPolishRecords
.Where(o =>
o.ActionTime >= item.CreatedTime
&& o.Partnumber == item.Partnumber
&& o.ChangeType == 1
)
.Select(o => o.ChangeQuantity)
.Sum();
int? chunum = wmPolishRecords
.Where(o =>
o.ActionTime >= item.CreatedTime
&& o.Partnumber == item.Partnumber
&& o.ChangeType == 2
)
.Select(o => o.ChangeQuantity)
.Sum();
item.RealQuantity = item.Quantity.Value + (runum.Value - chunum.Value);
}
list = list.Where(it => it.RealQuantity != 0 || it.Quantity != 0)
@@ -342,6 +353,7 @@ namespace ZR.Service.mes.wms
StocktakingTotal = StocktakingTotal,
QuantitySum = QuantitySum,
RealQuantitySum = RealQuantitySum,
MinStocktakingTime = minDateTime,
Result = list.Skip((parm.PageNum - 1) * parm.PageSize)
.Take(parm.PageSize)
.ToList(),
@@ -833,11 +845,14 @@ namespace ZR.Service.mes.wms
.Select(it => it.CreatedTime)
.First() ?? new DateTime(2024, 11, 16, 12, 0, 0);
CommonFQCService commonFQCService = new();
// 获取报表数据
// 抛光计算后库存 = 盘点库存 + 产线抛光 + 后道反抛 + GP12反抛 - 抛光投入
//return commonFQCService.GetBatchPolishPartRealStock(partnumbers, checkTime.Value);
return commonFQCService.GetBatchPolishPartRealStockNew(partnumbers, checkTime.Value);
}
// 获取报表数据
// 抛光计算后库存 = 盘点库存 + 产线抛光 + 后道反抛 + GP12反抛 - 抛光投入
//return commonFQCService.GetBatchPolishPartRealStock(partnumbers, checkTime.Value);
return commonFQCService.GetBatchPolishPartRealStockNew(
partnumbers,
checkTime.Value
);
}
catch (Exception e)
{
throw;