Explorar el Código

代码提交。

tangdi hace 2 años
padre
commit
c16d4a106a

+ 2 - 2
MicroServices/Business/Business.Application/ReplenishmentManagement/ReplenishmentAppService.cs

@@ -5822,8 +5822,8 @@ namespace Business.Replenishment
             holidays = _holidayMaster.Select(p => p.Dated >= DateTime.Now.Date);
 
             //主工单
-            var ordlist = _workOrdMaster.Select(x => x.Domain == param.factoryId.ToString() && string.IsNullOrEmpty(x.Typed) && (x.Status.ToLower() == "p" || x.Status.ToLower() == "r")).ToList();
-            List<mo_mes_morder> mo_Mes_Morders = _mes_morder.GetListAsync(x => boms.Select(p => p.item_number).Contains(x.product_code) && ordlist.Select(c => c.WorkOrd).Contains(x.morder_no) && x.company_id == param.company_id && x.factory_id == param.factoryId && x.bang_id == bangid).Result;
+            var ordlist = _workOrdMaster.Select(x => x.Domain == param.factoryId.ToString() && string.IsNullOrEmpty(x.Typed) == true && !string.IsNullOrEmpty(x.Status) && x.Status.ToUpper() != "C" && x.Status.ToUpper() != "P").ToList();
+            List<mo_mes_morder> mo_Mes_Morders = _mes_morder.GetListAsync(x => ordlist.Select(c => c.WorkOrd).Contains(x.morder_no) && x.company_id == param.company_id && x.factory_id == param.factoryId && x.bang_id == bangid).Result;
             List<long> moids = mo_Mes_Morders.Select(p => p.mysql_id).ToList();
             List<mo_mes_moentry> mo_Mes_Moentry = _mes_moentry.GetListAsync(x => moids.Contains(x.moentry_moid)).Result;
             //工单占用表

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

@@ -762,6 +762,7 @@ namespace Business.ResourceExamineManagement
                     else if (!LongPeriod)
                     {
                         //item.lack_qty -= moo_qty;
+                        item.make_qty = item.lack_qty - item.mo_qty;
                         item.stock_state = 0;
                         item.kitting_time = plan_date.GetValueOrDefault();
                     }
@@ -1380,6 +1381,7 @@ namespace Business.ResourceExamineManagement
                             else if (!LongPeriod)
                             {
                                 //sct.lack_qty -= moo_qty;
+                                sct.make_qty = item.lack_qty - sct.mo_qty;
                                 sct.stock_state = 0;
                                 sct.kitting_time = dateTime;
                             }

+ 4 - 5
MicroServices/Business/Business.Application/ResourceExamineManagement/MorderAppService.cs

@@ -275,20 +275,19 @@ namespace Business.ResourceExamineManagement
                 if (morderDataList.Sum(x => x.morder_production_number.GetValueOrDefault()) - morderDataList.Sum(x => x.inventory_number.GetValueOrDefault()) < Quantity)
                 {
                     //再找没有被计划占用的子工单
-                    morderDataList.AddRange(mo_Mes_Morders.Where(x => x.product_code == itemNumber && x.parent_id.GetValueOrDefault() == 0 && x.morder_type == MorderEnum.JhMorder && totime < x.moentry_sys_etime.GetValueOrDefault() && x.moentry_sys_etime.GetValueOrDefault() < DeliverDate).OrderByDescending(x => x.planner_end_date).ToList());
+                    morderDataList.AddRange(mo_Mes_Morders.Where(x => x.product_code == itemNumber && x.parent_id.GetValueOrDefault() == 0 && x.morder_type == MorderEnum.JhMorder).OrderBy(x => x.moentry_sys_etime).ToList());
                 }
             }
             else
             {
                 //成品进入,只找没有父级的工单,并且是计划工单
                 //先判断是否有数量直接满足的
-                morderDataList = mo_Mes_Morders.Where(x => x.product_code == itemNumber && x.parent_id.GetValueOrDefault() == 0 && x.morder_type == MorderEnum.JhMorder && totime < x.moentry_sys_etime.GetValueOrDefault() && x.moentry_sys_etime.GetValueOrDefault() < DeliverDate &&
-            (x.morder_production_number - x.inventory_number - mes_mooccupyList.Where(p => p.moo_moid.GetValueOrDefault() == x.mysql_id)?.Sum(m => m.moo_qty)) > Quantity)
-             .OrderByDescending(x => x.planner_end_date).ToList();
+                morderDataList = mo_Mes_Morders.Where(x => x.product_code == itemNumber && x.parent_id.GetValueOrDefault() == 0 && x.morder_type == MorderEnum.JhMorder && (x.morder_production_number - x.inventory_number - mes_mooccupyList.Where(p => p.moo_moid.GetValueOrDefault() == x.mysql_id)?.Sum(m => m.moo_qty)) > Quantity)
+             .OrderBy(x => x.moentry_sys_etime).ToList();
                 if (morderDataList.Any())
                 {
                     //直接去占用数量不满足的工单
-                    morderDataList = mo_Mes_Morders.Where(x => x.product_code == itemNumber && x.parent_id.GetValueOrDefault() == 0 && x.morder_type == MorderEnum.JhMorder && totime < x.moentry_sys_etime.GetValueOrDefault() && x.moentry_sys_etime.GetValueOrDefault() < DeliverDate).ToList().OrderByDescending(x => x.planner_end_date).ToList();
+                    morderDataList = mo_Mes_Morders.Where(x => x.product_code == itemNumber && x.parent_id.GetValueOrDefault() == 0 && x.morder_type == MorderEnum.JhMorder).ToList().OrderBy(x => x.moentry_sys_etime).ToList();
                 }
             }
 

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

@@ -3854,8 +3854,8 @@ namespace Business.ResourceExamineManagement
             holidays = _holidayMaster.Select(p => p.Dated >= DateTime.Now.Date);
 
             //主工单
-            var ordlist = _workOrdMaster.Select(x => x.Domain == param.factoryId.ToString() && string.IsNullOrEmpty(x.Typed) == true && (x.Status.ToLower() == "p" || x.Status == "r")).ToList();
-            List<mo_mes_morder> mo_Mes_Morders = _mes_morder.GetListAsync(x => boms.Select(p => p.item_number).Contains(x.product_code) && ordlist.Select(c => c.WorkOrd).Contains(x.morder_no) && x.company_id == param.company_id && x.factory_id == param.factoryId && x.bang_id == bangid).Result;
+            var ordlist = _workOrdMaster.Select(x => x.Domain == param.factoryId.ToString() && string.IsNullOrEmpty(x.Typed) == true && !string.IsNullOrEmpty(x.Status) && x.Status.ToUpper()!="C" && x.Status.ToUpper() != "P").ToList();
+            List<mo_mes_morder> mo_Mes_Morders = _mes_morder.GetListAsync(x => ordlist.Select(c => c.WorkOrd).Contains(x.morder_no) && x.company_id == param.company_id && x.factory_id == param.factoryId && x.bang_id == bangid).Result;
             List<long> moids = mo_Mes_Morders.Select(p => p.mysql_id).ToList();
             List<mo_mes_moentry> mo_Mes_Moentry = _mes_moentry.GetListAsync(x => moids.Contains(x.moentry_moid)).Result;
             //工单占用表

+ 1 - 0
MicroServices/Business/Business.Application/SystemJobManagement/SystemJobAppService.cs

@@ -1050,6 +1050,7 @@ namespace Business.SystemJobManagement
                                 status = MorderEnum.Initial_state;
                                 break;
                         }
+                        morder.inventory_number = work.QtyCompleted;
                         morder.morder_state = status;
                         updateList.Add(morder);
                         var moentry = mesMoentry.Find(x => x.moentry_moid == morder.Id);