zhengly 3 лет назад
Родитель
Сommit
f1e827bc36

+ 2 - 1
MicroServices/Business/Business.Application/ResourceExamineManagement/CalcBomViewAppService.cs

@@ -115,7 +115,7 @@ namespace Business.ResourceExamineManagement
             {
                 //获取物料详情
                 var ic_item = icitemlist.Find(s => s.mysql_id == level1Dto.item_id);
-                var mooccupylist = _morderAppService.CheckMorder(level1Dto.bom_number, level1Dto.lack_qty, plan_date.GetValueOrDefault(), sentrys, ic_item).Result;
+                var mooccupylist = _morderAppService.CheckMorder(level1Dto.bom_number, level1Dto.lack_qty, plan_date.GetValueOrDefault(), sentrys, ic_item, bangid).Result;
 
                 if (mooccupylist.Any())
                 {
@@ -152,6 +152,7 @@ namespace Business.ResourceExamineManagement
                         morder_type = "销售工单",
                         work_order_type = "常规工单",
                         morder_state = "初始",
+                        bang_id = bangid,
 
                     };
                     //生成主工单

+ 2 - 2
MicroServices/Business/Business.Application/ResourceExamineManagement/MorderAppService.cs

@@ -207,14 +207,14 @@ namespace Business.ResourceExamineManagement
             //根据Bom编码查询出对应工单并且状态不为完成、关闭,非委外工单。
             //TODO:工单类型;
             var morderList = await _mo_mes_morder.GetManyByCondition(x => x.bom_number == bomNumber && (x.morder_state != MorderEnum.Accomplish_state || x.morder_state != MorderEnum.Close_state
-            && x.morder_icitem_type != MorderEnum.XgwyMorder) && !x.IsDeleted && x.tenant_id == seorderentry.tenant_id);
+            && x.morder_icitem_type != MorderEnum.XgwyMorder) && !x.IsDeleted && x.tenant_id == seorderentry.tenant_id && x.bang_id == bang_id);
 
             //获取物料详情
             //var ic_item = _ic_item.GetManyByCondition(x => x.number == seorderentry.item_number && x.tenant_id == seorderentry.tenant_id).Result.FirstOrDefault();
 
             //工单已被占用后要与占用表关联查询...减去占用量后 剩下生产数量可供下个销售工单使用。
             var mes_mooccupyList = await _mo_mes_mooccupy.GetManyByCondition(x => x.moo_state == 1 && !x.IsDeleted && x.tenant_id == seorderentry.tenant_id
-            && x.fitem_number == ic_Item.number);
+            && x.fitem_number == ic_Item.number && x.bang_id == bang_id);
 
             //首先满足需求数量工单其次判断是否满足交付日期、当数量不满足时继续查找最早交付日期订单 工单数量累加。
             //当前工单计划日期-1天 小于交付日期 && 计算生产数量-入库数据并且大于需求产品数量。