Просмотр исходного кода

DataInitialization去重,DbSnapShot加上创建时间

Murphy 2 лет назад
Родитель
Сommit
09d4a5cd35

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

@@ -5601,7 +5601,7 @@ namespace Business.Replenishment
                     }
                 });
                 var moIcitemStokc = ObjectMapper.Map<List<ic_item_stock>, List<mo_ic_item_stock>>(icitemStokc);
-                moIcitemStokc.ForEach(item => { item.GenerateNewId(help.NextId()); });
+                moIcitemStokc.ForEach(item => { item.GenerateNewId(help.NextId());item.create_time = DateTime.Now;});
                 //插入数据
                 await MongoHelper<mo_ic_item_stock>.InsertManyAsync(moIcitemStokc);
             }
@@ -5707,7 +5707,7 @@ namespace Business.Replenishment
                     //订单明细--根据在途PO过滤出有效的Po_list
                     srm_po_list = srm_po_list.Where(s => srm_po_main.Select(x => x.Id).Contains(s.po_id.GetValueOrDefault())).ToList();
                     var moSrm_po_list = ObjectMapper.Map<List<srm_po_list>, List<mo_srm_po_list>>(srm_po_list);
-                    moSrm_po_list.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moSrm_po_list.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid;item.create_time = DateTime.Now; });
                     await MongoHelper<mo_srm_po_list>.InsertManyAsync(moSrm_po_list);
                 }
                 //采购订单明细占用详情
@@ -5715,7 +5715,7 @@ namespace Business.Replenishment
                 if (srm_po_occupy.Count > 0)
                 {
                     var moSrm_po_occupy = ObjectMapper.Map<List<srm_po_occupy>, List<mo_srm_po_occupy>>(srm_po_occupy);
-                    moSrm_po_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moSrm_po_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                     await MongoHelper<mo_srm_po_occupy>.InsertManyAsync(moSrm_po_occupy);
                 }
             }
@@ -5750,7 +5750,7 @@ namespace Business.Replenishment
                 if (srm_pr_occupy.Count > 0)
                 {
                     var moSrm_pr_occupy = ObjectMapper.Map<List<srm_po_occupy>, List<mo_srm_po_occupy>>(srm_pr_occupy);
-                    moSrm_pr_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moSrm_pr_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                     await MongoHelper<mo_srm_po_occupy>.InsertManyAsync(moSrm_pr_occupy);
                 }
             }
@@ -5816,7 +5816,7 @@ namespace Business.Replenishment
         /// <exception cref="NotImplementedException"></exception>
         public void DataInitialization(List<mo_ic_bom> boms, long bangid, List<mo_ic_item> icitemlist, List<mo_ic_item_stock> stocklist, List<b_bom_pretreatment> pretreatments, List<mo_ic_item_stockoccupy> sklist)
         {
-            List<long> itemIds = pretreatments.Select(p => p.item_id.GetValueOrDefault()).ToList();
+            List<long> itemIds = pretreatments.Select(p => p.item_id.GetValueOrDefault()).Distinct().ToList();
             icitemlist.AddRange(_ic_item.GetListAsync(p => itemIds.Contains(p.mysql_id) && !p.IsDeleted).Result);
             #region 1、数据准备
             //1.1、获取产能检查相关数据

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

@@ -2084,12 +2084,12 @@ namespace Business.ResourceExamineManagement
             //TODO:申老师明确后续需要调整 根据需要使用的字段,来同步表数据。
 
             //同步物料库存数据  根据预处理,来只找出部分数据同步。
-            List<long> itemIds = pretreatments.Select(s => s.item_id.GetValueOrDefault()).ToList();
+            List<long> itemIds = pretreatments.Select(s => s.item_id.GetValueOrDefault()).Distinct().ToList();
             //var icitemStokc = _mysql_ic_item_stock.GetListAsync(p => p.tenant_id == tenantId && p.factory_id == factoryId).Result;
             var icitemStokc = _mysql_ic_item_stock.GetListAsync(p => p.company_id == companyId && itemIds.Contains(p.icitem_id)).Result;
             if (icitemStokc.Count > 0)
             {
-                List<string> numbers = pretreatments.Select(s => s.item_number).ToList();
+                List<string> numbers = pretreatments.Select(s => s.item_number).Distinct().ToList();
                 var locationRange = _configurationItem.Select(x => x.FldName == "MRPLocationRange" && x.Domain == factoryId.ToString()).FirstOrDefault();
 
                 List<string> locationList = new List<string> { "1000", "1001", "5008", "8000", "8001" };
@@ -2127,7 +2127,7 @@ namespace Business.ResourceExamineManagement
                     }*/
                 });
                 var moIcitemStokc = ObjectMapper.Map<List<ic_item_stock>, List<mo_ic_item_stock>>(icitemStokc);
-                moIcitemStokc.ForEach(item => { item.GenerateNewId(help.NextId()); });
+                moIcitemStokc.ForEach(item => { item.GenerateNewId(help.NextId()); item.create_time = DateTime.Now; });
                 //插入数据
                 await MongoHelper<mo_ic_item_stock>.InsertManyAsync(moIcitemStokc);
             }
@@ -2174,7 +2174,7 @@ namespace Business.ResourceExamineManagement
                             {
 
                                 var mo_item_occupy = ObjectMapper.Map<List<ic_item_stockoccupy>, List<mo_ic_item_stockoccupy>>(item_occupy);
-                                mo_item_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                                mo_item_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                                 await MongoHelper<mo_ic_item_stockoccupy>.InsertManyAsync(mo_item_occupy);
                             }
                         }
@@ -2196,7 +2196,7 @@ namespace Business.ResourceExamineManagement
                 {
                     mes_moentry.ForEach(item => { item.bang_id = bangid; });
                     var moMes_moentry = ObjectMapper.Map<List<mes_moentry>, List<mo_mes_moentry>>(mes_moentry);
-                    moMes_moentry.ForEach(item => { item.GenerateNewId(help.NextId()); });
+                    moMes_moentry.ForEach(item => { item.GenerateNewId(help.NextId()); item.create_time = DateTime.Now; });
                     await MongoHelper<mo_mes_moentry>.InsertManyAsync(moMes_moentry);
                 }
 
@@ -2205,7 +2205,7 @@ namespace Business.ResourceExamineManagement
                 if (mes_mooccupy.Count > 0)
                 {
                     var moMes_mooccupy = ObjectMapper.Map<List<mes_mooccupy>, List<mo_mes_mooccupy>>(mes_mooccupy);
-                    moMes_mooccupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moMes_mooccupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                     await MongoHelper<mo_mes_mooccupy>.InsertManyAsync(moMes_mooccupy);
                 }
             }
@@ -2220,13 +2220,13 @@ namespace Business.ResourceExamineManagement
                 if (srm_po_main.Count > 0)
                 {
                     var moSrm_po_main = ObjectMapper.Map<List<srm_po_main>, List<mo_srm_po_main>>(srm_po_main);
-                    moSrm_po_main.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moSrm_po_main.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                     await MongoHelper<mo_srm_po_main>.InsertManyAsync(moSrm_po_main);
 
                     //订单明细--根据在途PO过滤出有效的Po_list
                     srm_po_list = srm_po_list.Where(s => srm_po_main.Select(x => x.Id).Contains(s.po_id.GetValueOrDefault())).ToList();
                     var moSrm_po_list = ObjectMapper.Map<List<srm_po_list>, List<mo_srm_po_list>>(srm_po_list);
-                    moSrm_po_list.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moSrm_po_list.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                     await MongoHelper<mo_srm_po_list>.InsertManyAsync(moSrm_po_list);
                 }
                 //采购订单明细占用详情
@@ -2234,7 +2234,7 @@ namespace Business.ResourceExamineManagement
                 if (srm_po_occupy.Count > 0)
                 {
                     var moSrm_po_occupy = ObjectMapper.Map<List<srm_po_occupy>, List<mo_srm_po_occupy>>(srm_po_occupy);
-                    moSrm_po_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moSrm_po_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                     await MongoHelper<mo_srm_po_occupy>.InsertManyAsync(moSrm_po_occupy);
                 }
             }
@@ -2244,7 +2244,7 @@ namespace Business.ResourceExamineManagement
             if (srm_pr_main.Count > 0)
             {
                 var moSrm_pr_main = ObjectMapper.Map<List<srm_pr_main>, List<mo_srm_pr_main>>(srm_pr_main);
-                moSrm_pr_main.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                moSrm_pr_main.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                 await MongoHelper<mo_srm_pr_main>.InsertManyAsync(moSrm_pr_main);
 
 
@@ -2260,7 +2260,7 @@ namespace Business.ResourceExamineManagement
                 if (occupylist.Count > 0)
                 {
                     var moSrm_pr_occupy = ObjectMapper.Map<List<srm_po_occupy>, List<mo_srm_po_occupy>>(occupylist);
-                    moSrm_pr_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; });
+                    moSrm_pr_occupy.ForEach(item => { item.GenerateNewId(help.NextId()); item.bang_id = bangid; item.create_time = DateTime.Now; });
                     await MongoHelper<mo_srm_po_occupy>.InsertManyAsync(moSrm_pr_occupy);
                 }
             }
@@ -3908,7 +3908,7 @@ namespace Business.ResourceExamineManagement
         /// <exception cref="NotImplementedException"></exception>
         public void DataInitialization(List<mo_ic_bom> boms, long bangid, List<mo_ic_item> icitemlist, List<mo_ic_item_stock> stocklist, List<b_bom_pretreatment> pretreatments, List<mo_ic_item_stockoccupy> sklist)
         {
-            List<long> itemIds = pretreatments.Select(p => p.item_id.GetValueOrDefault()).ToList();
+            List<long> itemIds = pretreatments.Select(p => p.item_id.GetValueOrDefault()).Distinct().ToList();
             icitemlist.AddRange(_ic_item.GetListAsync(p => itemIds.Contains(p.mysql_id) && !p.IsDeleted).Result);
             #region 1、数据准备
             //产线明细