浏览代码

自测问题修复

Murphy 2 年之前
父节点
当前提交
708feb8f8c

+ 8 - 0
MicroServices/Business/Business.Application.Contracts/ReplenishmentManagement/IReplenishmentAppService.cs

@@ -52,6 +52,14 @@ namespace Business.ReplenishmentManagement
         /// <returns></returns>
         Task<string> CalcWeekPlan(InputDto input);
 
+        /// <summary>
+        /// 根据月计划生产周计划
+        /// </summary>
+        /// <param name="companyId">工厂id</param>
+        /// <returns></returns>
+        Task<string> PublishWeekPlan(InputDto input);
+
+        
         /// <summary>
         /// 每日补货
         /// </summary>

+ 182 - 11
MicroServices/Business/Business.Application/ReplenishmentManagement/ReplenishmentAppService.cs

@@ -31,6 +31,7 @@ using System.ComponentModel.DataAnnotations;
 using System.Collections;
 using MongoDB.Driver.Linq;
 using System.Reflection;
+using MongoDB.Driver;
 
 namespace Business.Replenishment
 {
@@ -414,7 +415,7 @@ namespace Business.Replenishment
         public async Task<string> SaveAnnualProductionOutline(InputDto input)
         {
             //获取当前导入或修改数据
-            List<YearDemandManagement> yearDemands = _yearDemandManagement.GetListAsync(p => p.Year == input.year && p.tenant_id == input.tenant_id && p.company_id == input.company_id && p.factory_id == input.factory_id && !p.IsDeleted).Result.OrderBy(p => p.OrderNum).ThenBy(o => o.PlanMonth).ToList();
+            List<YearDemandManagement> yearDemands = _yearDemandManagement.GetListAsync(p => p.Year == input.year && p.factory_id == input.factory_id && !p.IsDeleted).Result.OrderBy(p => p.OrderNum).ThenBy(o => o.PlanMonth).ToList();
             //标准工艺路径表
             List<RoutingOpDetail> routingOps = _routingOpDetail.Select(p => yearDemands.Select(m => m.SAPItemNumber).Contains(p.RoutingCode) && p.Domain == input.factory_id.ToString() && p.IsActive);
             var routingOpList = routingOps.Where(x => x.Descr == "组装").ToList();
@@ -422,7 +423,7 @@ namespace Business.Replenishment
             List<ProdLineDetail> prodLines = _prodLineDetail.Select(p => yearDemands.Select(m => m.SAPItemNumber).Contains(p.Part) && p.Domain == input.factory_id.ToString() && p.IsActive && routingOpList.Select(m => m.Op).Contains(p.Op)).OrderBy(x => x.Sequence).ToList();
             List<LocationDetail> locations = _locationDetail.Select(x => yearDemands.Select(m => m.SAPItemNumber).Contains(x.ItemNum) && x.Domain == input.factory_id.ToString() && x.IsActive).ToList();
             //平台库存
-            var platformInvList = _PlatformInventory.GetListAsync(a => yearDemands.Select(m => m.SAPItemNumber).Contains(a.SAPItemNumber) && a.tenant_id == input.tenant_id && a.factory_id == input.factory_id && !a.IsDeleted).Result;
+            var platformInvList = _PlatformInventory.GetListAsync(a => yearDemands.Select(m => m.SAPItemNumber).Contains(a.SAPItemNumber) && a.factory_id == input.factory_id && !a.IsDeleted).Result;
             var replenishmentModels = _replenishmentROP.GetListAsync(x => !x.IsDeleted && x.isparam && yearDemands.Select(m => m.SAPItemNumber).Contains(x.number)).Result.ToList();
             // 获取某年某月的起始日期和结束日期
             int year = input.year;
@@ -479,7 +480,7 @@ namespace Business.Replenishment
                 //销售预测 对应 Excel中公式 AVERAGE 如果预测为0不参与计算排产批量
                 var QtySum = yearDemands.Where(x => x.SAPItemNumber == item.SAPItemNumber && x.Qty > 0).ToList();
                 //排产批量:(AVG(1 - 12月销售预测)/ 100 )=(0.45 = 1 小数向上取整)  *100 = 100
-                var pcpl = Math.Ceiling(QtySum.Sum(p => p.Qty) / QtySum.Count()) * 100;
+                var pcpl = Math.Ceiling(QtySum.Sum(p => p.Qty) / (QtySum.Count()*100)) * 100;
                 //库存合计 + 在制+已发货 + 灭菌中 TODO: 灭菌中取值待确定
                 var ship = shipList.Where(x => x.ContainerItem == item.SAPItemNumber).ToList();
                 decimal itemInProduct = 0;
@@ -523,12 +524,12 @@ namespace Business.Replenishment
                 annualProductionOutline.PackagingHours = Packaging == null ? 0 : Packaging.RunTime * ProduceQty;
                 annualProductionOutline.Totalhours = annualProductionOutline.AssemblyHours + annualProductionOutline.HeatSealingHours + annualProductionOutline.Totalhours;
                 annualProductionOutline.OrderNum = item.OrderNum;
-                annualProductionOutlines.Add(annualProductionOutline);
                 annualProductionOutline.create_time= DateTime.Now;
                 annualProductionOutline.tenant_id = input.tenant_id;
                 annualProductionOutline.company_id= input.company_id;
                 annualProductionOutline.factory_id= input.factory_id;
                 annualProductionOutline.org_id= input.org_id;
+                annualProductionOutlines.Add(annualProductionOutline);
                 frontYearDemand.Add(item);
             }
             //保存数据
@@ -878,7 +879,7 @@ namespace Business.Replenishment
                             {
                                 rop.supply_leadtime = srm_purchaseList.Find(s => s.number == pretreatments[i].item_number).lead_time;
                             }
-                            CalcFMRAndABC(rop, replenishmentDto, input);
+                            CalcFMRAndABC(rop, replenishmentDto, shipList, pickbilllist, input);
                             rop.security_stock = Math.Ceiling((decimal)(mathtool.InverseCumulativeDistribution((double)rop.service_level_pct.Value) * (double)rop.monthl_avg_demand_variance));
                             rop.eop = Math.Ceiling(rop.monthl_avg_demand.Value * rop.supply_leadtime.Value / DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month));
                             rop.rop_computed = rop.security_stock + rop.eop;
@@ -1044,8 +1045,44 @@ namespace Business.Replenishment
             await _mysql_mes_moentry.InsertManyAsync(moentryList);
 
             await PlanOrderResourceCheck(moList, moentryList, bang_id, input);
+
             List<RoutingOpDetail> routingOps = _routingOpDetail.Select(p => planItemList.Contains(p.RoutingCode) && p.Domain == input.factory_id.ToString() && p.IsActive);
             var examine_resultList= _mysql_examine_result.GetListAsync(a=>a.bangid == bang_id).Result;
+
+            //批量保存 后期考虑子工单
+            List<WorkOrdMaster> workOrds = new List<WorkOrdMaster>();
+            List<WorkOrdRouting> workOrdRoutings = new List<WorkOrdRouting>();
+            List<WorkOrdDetail> workOrdDetails = new List<WorkOrdDetail>();
+            if (moList.Any())
+            {
+                moList.ForEach(s => { s.create_time = DateTime.Now; });
+                List<b_bom_child_examine> childExamineList = _mysql_bom_child_examine.GetListAsync(c => examine_resultList.Select(x => x.Id).Contains(c.examine_id.GetValueOrDefault())).Result;
+                //同步工单
+                CreateWorkOrdDates(moList, routingOps, workOrds, workOrdRoutings, workOrdDetails, examine_resultList, childExamineList);
+            }
+
+            if (workOrds.Any())
+            {
+                _workOrdMaster.Insert(workOrds);
+            }
+            var DBworkOrdList = _workOrdMaster.Select(a => a.Domain == workOrds[0].Domain && workOrds.Select(c => c.WorkOrd).Contains(a.WorkOrd));
+            if (workOrdRoutings.Any())
+            {
+                workOrdRoutings.ForEach(c =>
+                {
+                    c.WorkOrdMasterRecID = DBworkOrdList.Where(a => a.WorkOrd == c.WorkOrd).First().RecID;
+                });
+                _workOrdRouting.Insert(workOrdRoutings);
+            }
+            if (workOrdDetails.Any())
+            {
+                workOrdDetails.ForEach(c =>
+                {
+                    c.WorkOrdMasterRecID = DBworkOrdList.Where(a => a.WorkOrd == c.WorkOrd).First().RecID;
+                });
+                _workOrdDetail.Insert(workOrdDetails);
+            }
+
             weekPlan.ForEach(a =>
             {
                 var moItem = examine_resultList.Find(b => b.morder_no == a.OrderNO);
@@ -1082,6 +1119,33 @@ namespace Business.Replenishment
             return "OK";
         }
 
+        /// <summary>
+        /// 发布周计划
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
+        public async Task<string> PublishWeekPlan(InputDto input)
+        {
+            DateTime nextWeekMonday = getPreWeekStartTime().AddDays(14);
+            DateTime next2WeekMonday = getPreWeekStartTime().AddDays(28);
+            var weekPlan = _replenishmentWeekPlan.GetListAsync(a => a.PlanStartDate >= nextWeekMonday && a.PlanStartDate < next2WeekMonday).Result;
+            var workMasters = _workOrdMaster.Select(a => weekPlan.Select(s=>s.ItemNumber).Contains(a.ItemNum) && weekPlan.Select(p=>p.OrderNO).Contains(a.WorkOrd) && a.Domain == input.factory_id.ToString());
+            weekPlan?.ForEach(a =>
+            {
+                a.ProductionStatus = "已发布";
+                workMasters.ForEach(b =>
+                {
+                    if (b.ItemNum == a.ItemNumber && b.WorkOrd == a.OrderNO)
+                    {
+                        b.Priority = a.Priority;
+                    }
+                });
+            });
+            _workOrdMaster.Update(workMasters);
+            await _replenishmentWeekPlan.UpdateManyAsync(weekPlan);
+            return "OK";
+        }
+
         /// <summary>
         /// 每天补货
         /// </summary>
@@ -1121,6 +1185,118 @@ namespace Business.Replenishment
             return "OK";
         }
 
+        /// <summary>
+        /// 同步工单等相关数据
+        /// </summary>
+        /// <param name="morders"></param>
+        /// <param name="allRoutings">工艺路线数据</param>
+        public void CreateWorkOrdDates(List<mes_morder> morders, List<RoutingOpDetail> allRoutings, List<WorkOrdMaster> workOrds, List<WorkOrdRouting> workOrdRoutings, List<WorkOrdDetail> workOrdDetails, List<b_examine_result> exmResult, List<b_bom_child_examine> childExamineList)
+        {
+            //工单主表
+            WorkOrdMaster workOrd;
+            //工单工艺路线表
+            WorkOrdRouting woRouting;
+            //工单物料表
+            WorkOrdDetail woDetail;
+            foreach (var item in morders)
+            {
+                //添加工单数据
+                workOrd = new WorkOrdMaster();
+                workOrd.Domain = item.factory_id.ToString();
+                workOrd.OrdDate = item.moentry_sys_stime;
+                workOrd.ReleaseDate = Convert.ToDateTime(item.moentry_sys_stime.GetValueOrDefault().ToString("u"));
+                workOrd.WorkOrd = item.morder_no;
+                workOrd.ItemNum = item.product_code;//物料编码
+                workOrd.QtyOrded = item.need_number.GetValueOrDefault();
+                workOrd.RoutingCode = item.product_code;
+                workOrd.Period = 1;
+                workOrd.Priority = item.urgent;
+                workOrd.Status = " ";
+                workOrd.IsActive = true;
+                workOrd.IsConfirm = true;
+                workOrd.CreateTime = DateTime.Now;
+                workOrd.Batch = item.morder_no;
+                workOrd.Typed = "";
+                workOrds.Add(workOrd);
+
+                //添加工单工艺路线数据
+                var curRoutings = allRoutings.Where(p => p.RoutingCode == item.product_code).ToList();
+                foreach (var dtl in curRoutings)
+                {
+                    woRouting = new WorkOrdRouting();
+                    woRouting.Domain = item.factory_id.ToString();
+                    woRouting.Descr = dtl.Descr;
+                    woRouting.MilestoneOp = dtl.MilestoneOp;
+                    woRouting.WorkOrd = item.morder_no;
+                    woRouting.OP = dtl.Op;
+                    woRouting.ParentOp = dtl.ParentOp;
+                    woRouting.RunTime = dtl.RunTime;
+                    woRouting.ItemNum = item.product_code;
+                    woRouting.QtyOrded = item.need_number.GetValueOrDefault();
+                    woRouting.OverlapUnits = dtl.OverlapUnits;
+                    woRouting.Status = "";
+                    woRouting.IsActive = true;
+                    woRouting.CommentIndex = dtl.CommentIndex;
+                    woRouting.CreateTime = DateTime.Now;
+                    workOrdRoutings.Add(woRouting);
+                }
+
+                var exm = exmResult.Find(s => s.morder_id == item.Id);
+                if (exm != null)
+                {
+                    var childs = childExamineList.Where(s => s.examine_id == exm.Id && s.is_use == true).ToList();
+                    List<b_bom_child_examine> returnList = new List<b_bom_child_examine>();
+                    GetWorkDetalis(childs.Where(s => s.level == 2).ToList(), returnList, childs);
+                    if (returnList.Any())
+                    {
+                        foreach (var structure in returnList)
+                        {
+                            woDetail = workOrdDetails.Find(s => s.ItemNum == structure.item_number && s.WorkOrd == item.morder_no);
+                            if (woDetail == null)
+                            {
+                                //添加工单的物料信息
+                                woDetail = new WorkOrdDetail();
+                                woDetail.Domain = item.factory_id.ToString();
+                                woDetail.WorkOrd = item.morder_no;
+                                woDetail.Op = structure.Op;
+                                woDetail.ItemNum = structure.item_number;
+                                woDetail.QtyRequired = structure.needCount.GetValueOrDefault();
+                                woDetail.QtyPosted = 0m;
+                                woDetail.QtyReturned = 0m;
+                                woDetail.FrozenBOMQty = structure.needCount.GetValueOrDefault();
+                                woDetail.Status = "";
+                                woDetail.IsActive = true;
+                                woDetail.CreateTime = DateTime.Now;
+                                workOrdDetails.Add(woDetail);
+                            }
+                            else
+                            {
+                                woDetail.QtyRequired += structure.needCount.GetValueOrDefault();
+                                woDetail.FrozenBOMQty += structure.needCount.GetValueOrDefault();
+                            }
+                        }
+                    }
+                }
+            }
+        }
+
+        /// <summary>
+        /// 获取虚拟件明细
+        /// </summary>
+        /// <param name="dtl"></param>
+        /// <param name="returnList"></param>
+        /// <param name="childs"></param>
+        public void GetWorkDetalis(List<b_bom_child_examine> dtl, List<b_bom_child_examine> returnList, List<b_bom_child_examine> childs)
+        {
+            returnList.AddRange(dtl);
+            var rst = childs.Where(s => dtl.Where(x => x.erp_cls == 4).Select(c => c.fid).Contains(s.parent_id.GetValueOrDefault())).ToList();
+            if (rst.Any())
+            {
+                GetWorkDetalis(rst, returnList, childs);
+            }
+            return;
+        }
+
 
         /// <summary>
         /// 根据工单编号排优先级
@@ -2538,13 +2714,8 @@ namespace Business.Replenishment
         /// 计算ABC分类和FMR分类
         /// </summary>
         /// <param name="replenishmentModels"></param>
-        public void CalcFMRAndABC(ReplenishmentROP replenishmentModel, ReplenishmentDto replenishmentDto, InputDto input)
+        public void CalcFMRAndABC(ReplenishmentROP replenishmentModel, ReplenishmentDto replenishmentDto,List<ASNBOLShipperDetail> shipList,List<InvTransHist> pickbilllist, InputDto input)
         {
-            //发货出库记录
-            var shipList = _ASNBOLShipperDetail.Select(a => a.Domain == input.factory_id.ToString() && a.IsActive && a.shtype == "SH" && a.Typed != "S" && a.ShipDate >= DateTime.Now.AddMonths(-6) && a.RealQty > 0 && replenishmentModel.number == a.ContainerItem);
-            //领料出库记录
-            //var pickbilllist = _NbrDetail.Select(a => a.Domain == input.factory_id.ToString() && a.Type == "SM" && a.IsActive && a.UpdateTime >= DateTime.Now.AddMonths(replenishmentDto.HistoryOutStockMonth * -1) && itemNumList.Contains(a.ItemNum));
-            List<InvTransHist> pickbilllist = _invTransHist.Select(a => a.Domain == input.factory_id.ToString() && a.TransType == "iss-wo" && a.IsActive && a.CreateTime >= DateTime.Now.AddMonths(-6) && replenishmentModel.number == a.ItemNum);
             //总的移库次数
             int totalCount = shipList.Count() + pickbilllist.Count();
             //平均出库次数

+ 1 - 2
MicroServices/Business/Business.Domain/StructuredDB/Base/BaseEntity.cs

@@ -54,7 +54,7 @@ namespace Business.Domain
         /// </summary>
         [StringLength(50)]
         [Comment("修改人名称")]
-        public virtual string update_by_name { get; set; }
+        public virtual string? update_by_name { get; set; }
 
         /// <summary>
         /// 修改时间
@@ -65,7 +65,6 @@ namespace Business.Domain
         /// <summary>
         /// 租户ID
         /// </summary>
-        [Required]
         [Comment("租户ID")]
         [DefaultValue(1000)]
         public virtual long? tenant_id { get; set; }

+ 12 - 0
MicroServices/Business/Business.HttpApi/Controllers/ReplenishmentController.cs

@@ -109,6 +109,18 @@ namespace Business.Controllers
             return _ReplenishmentAppService.ChangePriority( weekplanid,tenant_id,factory_id, company_id,itemNumber, qty,instockdate, priority);
         }
 
+        /// <summary>
+        /// 发布周计划
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
+        [HttpGet]
+        [Route("publishweekplan")]
+        public Task<string> PublishWeekPlan(InputDto input)
+        {
+            return _ReplenishmentAppService.PublishWeekPlan(input);
+        }
+
         /// <summary>
         /// 定时任务长周期物料
         /// </summary>

+ 50 - 0
MicroServices/Business/QuartzSettings/logs/logs.txt

@@ -413,3 +413,53 @@
 {"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-14T01:46:19.0598667+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
 {"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-14T01:46:19.0654517+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
 {"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-14T01:46:19.0675773+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-15T11:05:26.7374465+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-15T11:05:26.7787229+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-15T11:05:26.7816015+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-15T11:05:26.7832825+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-15T14:39:51.299579+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-15T14:39:51.3706874+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-15T14:39:51.3755506+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-15T14:39:51.3782243+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-15T15:28:33.2461134+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-15T15:28:33.3094727+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-15T15:28:33.3149802+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-15T15:28:33.3174761+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-15T15:32:00.1211543+08:00","EndDate":"2023-09-15T15:32:00.3818989+08:00","Msg":"同步完成","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:37:19.7196369+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:37:19.7894862+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:37:19.7941312+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:37:19.7967595+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:46:23.2608099+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:46:23.3261186+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:46:23.3317502+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-15T16:46:23.3342496+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-15T17:04:00.2666482+08:00","EndDate":"2023-09-15T17:05:40.8562435+08:00","Msg":"The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing.","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:05:42.7275254+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:05:42.7966808+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:05:42.80349+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:05:42.8052754+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:28:22.1295453+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:28:22.2055693+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:28:22.2136041+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-17T09:28:22.2162052+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-17T10:34:37.0280692+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-17T10:34:37.0850684+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-17T10:34:37.0908385+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-17T10:34:37.0928723+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-17T11:30:24.2639566+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-17T11:30:24.3290017+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-17T11:30:24.33591+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-17T11:30:24.338466+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-17T12:08:56.3235168+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-17T12:08:56.4012041+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-17T12:08:56.4076831+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-17T12:08:56.4211045+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:50:59.8507642+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:50:59.9227283+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:50:59.9281049+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:50:59.9303887+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:53:48.4714988+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:53:48.5425855+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:53:48.5478919+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2023-09-17T13:53:48.5510056+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}