tangdi пре 2 година
родитељ
комит
bc05b7ff5d

+ 2 - 0
MicroServices/Business/Business.Application/BusinessApplicationAutoMapperProfile.cs

@@ -34,6 +34,8 @@ namespace Business
                .ForMember(d => d.mysql_id, map => map.MapFrom(o => o.Id));
             CreateMap<ic_item_stockoccupy, mo_ic_item_stockoccupy>()
                .ForMember(d => d.mysql_id, map => map.MapFrom(o => o.Id));
+            CreateMap<mo_ic_item_stockoccupy, ic_item_stockoccupy>()
+               .ForMember(d => d.Id, map => map.MapFrom(o => o.mysql_id));
             CreateMap<ic_substitute, mo_ic_substitute>()
                .ForMember(d => d.mysql_id, map => map.MapFrom(o => o.Id));
             CreateMap<ic_substitute_group, mo_ic_substitute_group>()

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

@@ -157,10 +157,13 @@ namespace Business.ResourceExamineManagement
             mo_ic_item_stockoccupy itemStockoccupyDto = new mo_ic_item_stockoccupy();
             itemStockoccupyDto.bang_id = bangid;
             itemStockoccupyDto.icitem_id = level1Dto.item_id;
+            itemStockoccupyDto.icitem_number = level1Dto.item_number;
             itemStockoccupyDto.item_no = level1Dto.num;
+            itemStockoccupyDto.occupy_time = DateTime.Now;
             if (sentrys != null)
             {
                 itemStockoccupyDto.orderentry_id = sentrys.Id;
+                itemStockoccupyDto.order_id = sentrys.seorder_id;
             }
             if (mes_morder != null)
             {
@@ -591,8 +594,20 @@ namespace Business.ResourceExamineManagement
                         mo_ic_item_stockoccupy itemStockoccupyDto = new mo_ic_item_stockoccupy();
                         itemStockoccupyDto.bang_id = bangid;
                         itemStockoccupyDto.icitem_id = item.item_id;
+                        itemStockoccupyDto.icitem_number = item.item_number;
                         itemStockoccupyDto.item_no = item.num;
+                        itemStockoccupyDto.occupy_time = DateTime.Now;
                         item.kitting_time = DateTime.Now;
+                        if (sentrys != null)
+                        {
+                            itemStockoccupyDto.orderentry_id = sentrys.Id;
+                            itemStockoccupyDto.order_id = sentrys.seorder_id;
+                        }
+                        if (mes_morder != null)
+                        {
+                            itemStockoccupyDto.morder_id = mes_morder.Id;
+                            itemStockoccupyDto.morder_mo = mes_morder.morder_no;
+                        }
                         item.is_use = true;
                         StartProcessing(item, icitemlist, returnlist, plan_date, sentrys, sklist, itemStockoccupyDto, bangid, childidList);
                     }
@@ -879,7 +894,19 @@ namespace Business.ResourceExamineManagement
                 mo_ic_item_stockoccupy itemStockoccupyDto = new mo_ic_item_stockoccupy();
                 itemStockoccupyDto.bang_id = bangid;
                 itemStockoccupyDto.icitem_id = slt.item_id;
+                itemStockoccupyDto.icitem_number = slt.item_number;
                 itemStockoccupyDto.item_no = slt.num;
+                itemStockoccupyDto.occupy_time = DateTime.Now;
+                if (sentrys != null)
+                {
+                    itemStockoccupyDto.orderentry_id = sentrys.Id;
+                    itemStockoccupyDto.order_id = sentrys.seorder_id;
+                }
+                if (mes_morder != null)
+                {
+                    itemStockoccupyDto.morder_id = mes_morder.Id;
+                    itemStockoccupyDto.morder_mo = mes_morder.morder_no;
+                }
                 slt.is_use = true;
                 StartProcessing(slt, icitemlist, returnlist, plan_date, sentrys, sklist, itemStockoccupyDto, bangid, childidList);
             }
@@ -975,14 +1002,17 @@ namespace Business.ResourceExamineManagement
                         if (sentrys != null)
                         {
                             itemStockoccupyDto.orderentry_id = sentrys.Id;
+                            itemStockoccupyDto.order_id = sentrys.seorder_id;
                         }
                         if (mes_morder != null)
                         {
                             itemStockoccupyDto.morder_id = mes_morder.Id;
                             itemStockoccupyDto.morder_mo = mes_morder.morder_no;
                         }
+                        itemStockoccupyDto.occupy_time = DateTime.Now;
                         itemStockoccupyDto.bang_id = bangid;
                         itemStockoccupyDto.icitem_id = zy.item_id;
+                        itemStockoccupyDto.icitem_number = zy.item_number;
                         /*decimal moo_qty = use_p_num * zy.qty - zy.sqty;
                         if (moo_qty > 0)
                         {
@@ -1039,14 +1069,17 @@ namespace Business.ResourceExamineManagement
                     if (sentrys != null)
                     {
                         itemStockoccupyDto.orderentry_id = sentrys.Id;
+                        itemStockoccupyDto.order_id = sentrys.seorder_id;
                     }
                     if (mes_morder != null)
                     {
                         itemStockoccupyDto.morder_id = mes_morder.Id;
                         itemStockoccupyDto.morder_mo = mes_morder.morder_no;
                     }
+                    itemStockoccupyDto.occupy_time = DateTime.Now;
                     itemStockoccupyDto.bang_id = bangid;
                     itemStockoccupyDto.icitem_id = sct.item_id;
+                    itemStockoccupyDto.icitem_number = sct.item_number;
                     itemStockoccupyDto.item_no = sct.num;
                     decimal lack_num = sqty - lack_Count;//库存还够缺的部分
                     if (lack_num >= 0)

+ 19 - 6
MicroServices/Business/Business.Application/ResourceExamineManagement/ResourceExamineAppService.cs

@@ -830,6 +830,7 @@ namespace Business.ResourceExamineManagement
                 }
                 b_ex.create_time = DateTime.Now;
                 b_ex.company_id = param.company_id;
+                b_ex.tenant_id = param.company_id;
                 b_ex.factory_id = param.factoryId;
                 examineList.Add(b_ex);
                 ex.BomChildExamineList.ForEach(s =>
@@ -838,6 +839,7 @@ namespace Business.ResourceExamineManagement
                     bc_ex.GenerateNewId(help.NextId());
                     bc_ex.examine_id = b_ex.Id;
                     bc_ex.company_id = param.company_id;
+                    bc_ex.tenant_id = param.company_id;
                     bc_ex.factory_id = param.factoryId;
                     bc_ex.create_time = DateTime.Now;
                     bomExamineList.Add(bc_ex);
@@ -847,7 +849,7 @@ namespace Business.ResourceExamineManagement
                         var olist = ObjectMapper.Map<List<mo_occupy>, List<b_mo_occupy>>(s.mo_occupy_list);
                         olist.ForEach(o =>
                         {
-                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id;
+                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id; o.tenant_id = param.company_id;
                             o.factory_id = param.factoryId;
                         });
                         mooccupyList.AddRange(olist);
@@ -857,7 +859,7 @@ namespace Business.ResourceExamineManagement
                         var mlist = ObjectMapper.Map<List<moorder>, List<b_mo_order>>(s.make_list);
                         mlist.ForEach(o =>
                         {
-                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id;
+                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id; o.tenant_id = param.company_id;
                             o.factory_id = param.factoryId;
                         });
                         moorderList.AddRange(mlist);
@@ -867,7 +869,7 @@ namespace Business.ResourceExamineManagement
                         var slist = ObjectMapper.Map<List<ooder>, List<b_ooder>>(s.subcontracting_list);
                         slist.ForEach(o =>
                         {
-                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id;
+                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id; o.tenant_id = param.company_id;
                             o.factory_id = param.factoryId;
                         });
                         ooderList.AddRange(slist);
@@ -877,7 +879,7 @@ namespace Business.ResourceExamineManagement
                         var plist = ObjectMapper.Map<List<purchase>, List<b_purchase>>(s.purchase_list);
                         plist.ForEach(o =>
                         {
-                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id;
+                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id; o.tenant_id = param.company_id;
                             o.factory_id = param.factoryId;
                         });
                         purchaseList.AddRange(plist);
@@ -887,7 +889,7 @@ namespace Business.ResourceExamineManagement
                         var purlist = ObjectMapper.Map<List<purchase_occupy>, List<b_purchase_occupy>>(s.purchase_occupy_list);
                         purlist.ForEach(o =>
                         {
-                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id;
+                            o.bom_child_examine_id = bc_ex.Id; o.company_id = param.company_id; o.tenant_id = param.company_id;
                             o.factory_id = param.factoryId;
                         });
                         purchaseoccupyList.AddRange(purlist);
@@ -1450,7 +1452,7 @@ namespace Business.ResourceExamineManagement
             }
 
             //获取订单行数据  progress == "2"已做检查但是未评审的订单行
-            sentrys = sentrys.Where(s => s.progress == "2").ToList();
+            //sentrys = sentrys.Where(s => s.progress == "2").ToList();
             if (!sentrys.Any())
             {
                 new NLogHelper("ResourceExamineAppService").WriteLog("ReceiveResult", "订单行数据不存在", _currentTenant.Id.ToString());
@@ -1506,6 +1508,16 @@ namespace Business.ResourceExamineManagement
             WriteMorder = WriteMorder.Where(x => !dborders.Select(c => c.Id).Contains(x.mysql_id)).ToList();
             #endregion
 
+            List<mo_ic_item_stockoccupy> item_stockoccupy1 = await _ic_item_stockoccupy.GetListAsync(s => seIds.Contains(s.orderentry_id.Value) && bangidList.Contains(s.bang_id));
+            if (item_stockoccupy1.Any())
+            {
+                item_stockoccupy1.ForEach(s => { s.mysql_id = help.NextId(); });
+                var sklist = ObjectMapper.Map<List<mo_ic_item_stockoccupy>, List<ic_item_stockoccupy>>(item_stockoccupy1);
+                sklist.ForEach(s => { s.create_time = DateTime.Now; });
+                _businessDbContext.BulkInsert(sklist);
+                return "ok";
+            }
+
             //批量保存 后期考虑子工单
             List<mes_morder> moderlist = new List<mes_morder>();
             List<WorkOrdMaster> workOrds = new List<WorkOrdMaster>();
@@ -1529,6 +1541,7 @@ namespace Business.ResourceExamineManagement
             List<mo_srm_pr_main> prmainlist = await _srm_pr_main.GetListAsync(s => seIds.Contains(s.sentry_id.Value) && bangidList.Contains(s.bang_id.Value));
             List<mo_ic_item_stockoccupy> item_stockoccupy = await _ic_item_stockoccupy.GetListAsync(s => seIds.Contains(s.orderentry_id.Value) && bangidList.Contains(s.bang_id));
 
+
             using (var unitOfWork = _unitOfWorkManager.Begin(false, true))
             {
                 try