|
|
@@ -391,7 +391,8 @@ namespace Business.ResourceExamineManagement
|
|
|
List<ic_bom_child> bomchildlist = new List<ic_bom_child>();
|
|
|
//获取物料bom,物料bom明细
|
|
|
GetIcBomData(boms, bomlist, bomchildlist);
|
|
|
-
|
|
|
+ //物料占用记录
|
|
|
+ List<ic_item_stockoccupy> sklist = new List<ic_item_stockoccupy>();
|
|
|
//获取物料数据
|
|
|
List<long> itemIds = bomlist.Select(p => p.icitem_id).ToList();
|
|
|
itemIds.AddRange(bomchildlist.Select(p => p.icitem_id).ToList());
|
|
|
@@ -414,7 +415,7 @@ namespace Business.ResourceExamineManagement
|
|
|
//库存初始化
|
|
|
BomStock(getBomList, bangid, input.factoryId);
|
|
|
//计算
|
|
|
- calcTest(getBomList, bangid, item.Id, item.qty.Value, input, item.plan_date);
|
|
|
+ calcTest(getBomList, bangid, item.Id, item.qty.Value, input, item.plan_date, sklist);
|
|
|
|
|
|
//TODO:最晚开始时间
|
|
|
var curFacDtl = leadTimes.FirstOrDefault(p => p.item_id == childBom.icitem_id);
|
|
|
@@ -431,6 +432,7 @@ namespace Business.ResourceExamineManagement
|
|
|
}
|
|
|
//订单行资源检查明细list
|
|
|
rtn.examines = examines;
|
|
|
+ rtn.sklist = sklist;
|
|
|
return JsonConvert.SerializeObject(rtn);
|
|
|
}
|
|
|
|
|
|
@@ -1253,12 +1255,8 @@ namespace Business.ResourceExamineManagement
|
|
|
/// <param name="input"></param>
|
|
|
/// <param name="plan_date"></param>
|
|
|
public void calcTest(List<BomChildExamineDto> returnlist, long bangid, long orderid, decimal count, SeorderentryDto input, DateTime
|
|
|
- ? plan_date)
|
|
|
+ ? plan_date, List<ic_item_stockoccupy> sklist)
|
|
|
{
|
|
|
- //占用情况
|
|
|
- List<ic_item_stockoccupy> sklist = new List<ic_item_stockoccupy>();
|
|
|
- //var occupylist = _ic_item_stockoccupy.GetManyByCondition(p => p.icitem_id == bangid && p.order_id == orderid).Result;
|
|
|
-
|
|
|
//第一级
|
|
|
returnlist = returnlist.OrderBy(s => s.num).ToList();
|
|
|
var childList = returnlist.Where(s => s.parent_id == returnlist[0].id && s.type == 0).ToList();
|
|
|
@@ -1799,7 +1797,7 @@ namespace Business.ResourceExamineManagement
|
|
|
{
|
|
|
var parent = returnlist.Find(s => s.id == g.parent_id);
|
|
|
//根据占用情况计算库存
|
|
|
- Calczykc(parent, g, sockoccupyList);
|
|
|
+ Calczykc(g, parent, sockoccupyList);
|
|
|
/*if (g.stock_state != 1)
|
|
|
{
|
|
|
//判断此料是否BOM,如果是BOM,就考虑自制是否足够,此处递归检查子集
|