|
|
@@ -211,7 +211,7 @@ namespace Business.ResourceExamineManagement
|
|
|
}
|
|
|
|
|
|
//这是从上往下展开计算缺料和可制
|
|
|
- CaleLackItem(level1Dto, childList, returnlist, sklist);
|
|
|
+ CaleLackItem(level1Dto, childList, returnlist, sklist, bangid);
|
|
|
//level1Dto.kz = childList.Min(s => s.kz);//得到最小可制数量。
|
|
|
//再加个循环,来根据替代关系里的检查结果,根据规则明确使用和生成占用关系。
|
|
|
List<long> childidList = new List<long>();
|
|
|
@@ -313,7 +313,7 @@ namespace Business.ResourceExamineManagement
|
|
|
/// <param name="bzlist"></param>
|
|
|
/// <param name="returnlist"></param>
|
|
|
/// <param name="sockoccupyList"></param>
|
|
|
- public void CaleLackItem(BomChildExamineDto parent, List<BomChildExamineDto> bzlist, List<BomChildExamineDto> returnlist, List<mo_ic_item_stockoccupy> sockoccupyList)
|
|
|
+ public void CaleLackItem(BomChildExamineDto parent, List<BomChildExamineDto> bzlist, List<BomChildExamineDto> returnlist, List<mo_ic_item_stockoccupy> sockoccupyList,long bangid)
|
|
|
{
|
|
|
//从第二级开始循环
|
|
|
foreach (var item in bzlist)
|
|
|
@@ -321,9 +321,9 @@ namespace Business.ResourceExamineManagement
|
|
|
var childList = returnlist.Where(s => s.parent_id == item.id && s.type == 0).ToList();
|
|
|
|
|
|
//根据占用情况计算库存
|
|
|
- Calczykc(item, parent, sockoccupyList);
|
|
|
+ Calczykc(item, parent, sockoccupyList, bangid);
|
|
|
//如果有子集,则丢入循环,判断下库存可制等信息。
|
|
|
- CaleLackItem(item, childList, returnlist, sockoccupyList);
|
|
|
+ CaleLackItem(item, childList, returnlist, sockoccupyList, bangid);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -332,10 +332,10 @@ namespace Business.ResourceExamineManagement
|
|
|
/// </summary>
|
|
|
/// <param name="item"></param>
|
|
|
/// <param name="sockoccupyList"></param>
|
|
|
- public void Calczykc(BomChildExamineDto item, BomChildExamineDto parent, List<mo_ic_item_stockoccupy> sockoccupyList)
|
|
|
+ public void Calczykc(BomChildExamineDto item, BomChildExamineDto parent, List<mo_ic_item_stockoccupy> sockoccupyList, long bangid)
|
|
|
{
|
|
|
//找到当前物料的占用记录
|
|
|
- var itemSockoccupy = sockoccupyList.Where(s => s.icitem_id == item.item_id).ToList();
|
|
|
+ var itemSockoccupy = sockoccupyList.Where(s => s.icitem_id == item.item_id && s.bang_id == bangid).ToList();
|
|
|
//计算库存减去占用
|
|
|
item.sqty -= itemSockoccupy.Sum(s => s.quantity);
|
|
|
//如果库存
|
|
|
@@ -388,7 +388,7 @@ namespace Business.ResourceExamineManagement
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- Calczykc(item, parent, sklist);
|
|
|
+ Calczykc(item, parent, sklist, bangid);
|
|
|
|
|
|
//直接占用库存,缺料就生成采购
|
|
|
mo_ic_item_stockoccupy itemStockoccupyDto = new mo_ic_item_stockoccupy();
|
|
|
@@ -860,7 +860,7 @@ namespace Business.ResourceExamineManagement
|
|
|
|
|
|
var minute = _productExamineAppService.ProductiveExamine((int)sct.lack_qty);
|
|
|
//系统建议完工日期为 开工日期+产能检查时间=完工日期
|
|
|
- var Day = minute.Result / (60 * 10); //返回的分钟除以十个小时得出工作天数;
|
|
|
+ var Day = minute / (60 * 10); //返回的分钟除以十个小时得出工作天数;
|
|
|
sct.kitting_time = sct.kitting_time.Value.AddDays((double)Day);
|
|
|
sct.make_qty = sct.lack_qty;
|
|
|
//todo:
|