Explorar el Código

Merge branch 'master' of http://123.60.180.165:4647/ZZYDOP/DOPCore

# Conflicts:
#	MicroServices/Business/Business.Application/ResourceExamineManagement/MorderAppService.cs
tangdi hace 3 años
padre
commit
a8006fad28

+ 4 - 0
MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/GenerateMorderDto.cs

@@ -56,5 +56,9 @@ namespace Business.ResourceExamineManagement.Dto
         /// 工单建议开始时间
         /// </summary>
         public DateTime? moentry_sys_stime { get; set; } = null;
+        /// <summary>
+        /// 计算ID
+        /// </summary>
+        public long bang_id { get; set; }
     }
 }

+ 2 - 1
MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/SRMPRDto.cs

@@ -1,4 +1,5 @@
 using Bussiness.Model.SRM;
+using Bussiness.MongoModel.SRM;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -12,6 +13,6 @@ namespace Business.ResourceExamineManagement.Dto
     {
         public DateTime lastStartTmie { get; set; }
 
-        public srm_pr_main srm_Pr_Main { get; set; }
+        public mo_srm_pr_main srm_Pr_Main { get; set; }
     }
 }

+ 2 - 1
MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/TechProcDto.cs

@@ -1,4 +1,5 @@
 using Bussiness.Model.Tech;
+using Bussiness.MongoModel.Tech;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -20,7 +21,7 @@ namespace Business.ResourceExamineManagement.Dto
         /// <summary>
         /// 工艺路径
         /// </summary>
-        public List<mes_tech_process> processes { get; set; }
+        public List<mo_mes_tech_process> processes { get; set; }
 
         /// <summary>
         /// 工序详细情况

+ 32 - 24
MicroServices/Business/Business.Application/ResourceExamineManagement/MorderAppService.cs

@@ -1,5 +1,6 @@
 using Business.Core.Enum;
 using Business.Core.MongoDBHelper;
+using Business.Core.Utilities;
 using Business.ResourceExamineManagement.Dto;
 using Bussiness.Model.MES.IC;
 using Bussiness.Model.Production;
@@ -26,16 +27,16 @@ namespace Business.ResourceExamineManagement
         /// <summary>
         /// 生产工单主表
         /// </summary>
-        private readonly IMongoDB<mes_morder> _mes_morder;
+        private readonly IMongoDB<mo_mes_morder> _mo_mes_morder;
         /// <summary>
         /// 生产工单子表
         /// </summary>
-        private readonly IMongoDB<mes_moentry> _mes_moentry;
+        private readonly IMongoDB<mo_mes_moentry> _mo_mes_moentry;
 
         /// <summary>
         /// 在制工单占用记录表
         /// </summary>
-        private readonly IMongoDB<mes_mooccupy> _mes_mooccupy;
+        private readonly IMongoDB<mo_mes_mooccupy> _mo_mes_mooccupy;
         /// <summary>
         /// 销售订单
         /// </summary>
@@ -48,6 +49,10 @@ namespace Business.ResourceExamineManagement
         /// 产能检查
         /// </summary>
         private readonly ProductExamineAppService _productExamineAppService;
+        /// <summary>
+        ///  雪花算法
+        /// </summary>
+        SnowFlake snowFlake = new SnowFlake();
 
         #endregion
         #region 构造函数
@@ -57,18 +62,18 @@ namespace Business.ResourceExamineManagement
         /// <param name="icitem"></param>
         /// <param name="icbom"></param>
         public MorderAppService(
-            IMongoDB<mes_morder> mes_morder,
-            IMongoDB<mes_moentry> mes_moentry,
-            IMongoDB<mes_mooccupy> mes_mooccupy,
+            IMongoDB<mo_mes_morder> mo_mes_morder,
+            IMongoDB<mo_mes_moentry> mo_mes_moentry,
+            IMongoDB<mo_mes_mooccupy> mo_mes_mooccupy,
             IRepository<crm_seorder, long> mysql_crm_seorder,
             IRepository<crm_seorderentry, long> mysql_crm_seorderentry,
             ProductExamineAppService productExamineAppService
             )
         {
 
-            _mes_morder = mes_morder;
-            _mes_moentry = mes_moentry;
-            _mes_mooccupy = mes_mooccupy;
+            _mo_mes_morder = mo_mes_morder;
+            _mo_mes_moentry = mo_mes_moentry;
+            _mo_mes_mooccupy = mo_mes_mooccupy;
             _mysql_crm_seorder = mysql_crm_seorder;
             _mysql_crm_seorderentry = mysql_crm_seorderentry;
             _productExamineAppService = productExamineAppService;
@@ -95,7 +100,8 @@ namespace Business.ResourceExamineManagement
             var seorder = _mysql_crm_seorder.FindAsync(x => x.Id == generateMorderDto.seorderentry.seorder_id).Result;
 
             mo_mes_morder mes_Morder = new mo_mes_morder();
-            mes_Morder.GenerateNewId();
+            mes_Morder.mysql_id = snowFlake.NextId();
+            mes_Morder.bang_id = generateMorderDto.bang_id;
             mes_Morder.morder_type = generateMorderDto.morder_type;
             mes_Morder.parent_id = generateMorderDto.ParentId;
             //mes_Morder.morder_icitem_type
@@ -150,9 +156,10 @@ namespace Business.ResourceExamineManagement
             mes_Morder.need_number = generateMorderDto.Quantity;
             mes_Morder.remaining_number = 0;
             //生成工单子表数据
-            mes_moentry mes_Moentry = new mes_moentry();
-            mes_Moentry.GenerateNewId();
-            mes_Moentry.moentry_moid = mes_Morder.Id;
+            mo_mes_moentry mes_Moentry = new mo_mes_moentry();
+            mes_Moentry.mysql_id = snowFlake.NextId();
+            mes_Moentry.bang_id = generateMorderDto.bang_id;
+            mes_Moentry.moentry_moid = mes_Morder.mysql_id;
             mes_Moentry.moentry_mono = mes_Morder.morder_no;
             mes_Moentry.soentry_id = generateMorderDto.seorderentry.Id;
             mes_Moentry.fbill_no = generateMorderDto.seorderentry.bill_no;
@@ -187,7 +194,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="DeliverDate">交付日期</param>
         /// <param name="seorderentry_id">销售订单子表ID</param>
         /// <returns></returns>
-        public async Task<List<mo_mes_mooccupy>> CheckMorder(string bomNumber, decimal Quantity, DateTime DeliverDate, mo_crm_seorderentry seorderentry, mo_ic_item ic_Item, bool flag = true)
+        public async Task<List<mo_mes_mooccupy>> CheckMorder(string bomNumber, decimal Quantity, DateTime DeliverDate, crm_seorderentry seorderentry, mo_ic_item ic_Item, long bang_id, bool flag = true)
         {
             if (string.IsNullOrEmpty(bomNumber))
             {
@@ -199,21 +206,21 @@ namespace Business.ResourceExamineManagement
             //var seorderentry = await _mysql_crm_seorderentry.FindAsync(x => x.Id == seorderentry_id);
             //根据Bom编码查询出对应工单并且状态不为完成、关闭,非委外工单。
             //TODO:工单类型;
-            var morderList = await _mes_morder.GetManyByCondition(x => x.bom_number == bomNumber && (x.morder_state != MorderEnum.Accomplish_state || x.morder_state != MorderEnum.Close_state
+            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);
 
             //获取物料详情
             //var ic_item = _ic_item.GetManyByCondition(x => x.number == seorderentry.item_number && x.tenant_id == seorderentry.tenant_id).Result.FirstOrDefault();
 
             //工单已被占用后要与占用表关联查询...减去占用量后 剩下生产数量可供下个销售工单使用。
-            var mes_mooccupyList = await _mes_mooccupy.GetManyByCondition(x => x.moo_state == 1 && !x.IsDeleted && x.tenant_id == seorderentry.tenant_id
+            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);
 
             //首先满足需求数量工单其次判断是否满足交付日期、当数量不满足时继续查找最早交付日期订单 工单数量累加。
             //当前工单计划日期-1天 小于交付日期 && 计算生产数量-入库数据并且大于需求产品数量。
             var morderDataList = morderList.Where(x => x.moentry_sys_etime.GetValueOrDefault().AddDays(-1) < DeliverDate &&
             (x.morder_production_number - x.inventory_number) > Quantity).OrderByDescending(x => x.planner_end_date).ToList();
-            List<mes_mooccupy> mes_Mooccupies = new List<mes_mooccupy>();
+            List<mo_mes_mooccupy> mes_Mooccupies = new List<mo_mes_mooccupy>();
             //当数量或日期不满足的时候,寻找最早日期的工单
             if (morderDataList.Count == 0)
             {
@@ -224,7 +231,7 @@ namespace Business.ResourceExamineManagement
             foreach (var item in morderDataList)
             {
                 //查询当前工单是否存在占用情况
-                var mooccupies = mes_mooccupyList.Where(x => x.moo_moid == item.Id).ToList();
+                var mooccupies = mes_mooccupyList.Where(x => x.moo_moid == item.mysql_id).ToList();
                 //已占用数据
                 var Sumqty = mooccupies.Count > 0 ? mooccupies.Sum(x => x.moo_qty) : 0.00m;
                 //判断此工单剩余可占用数量
@@ -284,7 +291,7 @@ namespace Business.ResourceExamineManagement
                         //工单可占用数量满足 需求数量时直接占用需求数量
                         QuantityNumber = Quantity;
                     }
-                    var mes_Mooccupy = GetMooccupies(seorderentry, ic_Item, item, QuantityNumber);
+                    var mes_Mooccupy = GetMooccupies(seorderentry, ic_Item, item, QuantityNumber, bang_id);
                     mes_Mooccupies.Add(mes_Mooccupy);
                     //当剩余需要数量大于0则继续寻找可占用工单,已满足需要数量停止循环查找
                     if (Quantity - Sum <= 0)
@@ -391,19 +398,20 @@ namespace Business.ResourceExamineManagement
         /// <param name="item">工单表</param>
         /// <param name="mes_mooccupy">占用工单表</param>
         /// <returns></returns>
-        public mes_mooccupy GetMooccupies(mo_crm_seorderentry seorderentry, ic_item ic_item, mes_morder item, decimal? number)
+        public mo_mes_mooccupy GetMooccupies(crm_seorderentry seorderentry, mo_ic_item ic_item, mo_mes_morder item, decimal? number, long bang_id)
         {
             //生成mes_mooccupy工单占用表数据,代表多个工单被某个销售订单已占用。 
-            mes_mooccupy mes_Mooccupy = new mes_mooccupy();
-            mes_Mooccupy.GenerateNewId();
-            mes_Mooccupy.moo_id_type = "资源检查";
+            mo_mes_mooccupy mes_Mooccupy = new mo_mes_mooccupy();
+            mes_Mooccupy.mysql_id = snowFlake.NextId();
+            mes_Mooccupy.bang_id = bang_id;
+            mes_Mooccupy.moo_id_type = MorderEnum.Zyjc_Type;
             mes_Mooccupy.moo_id_billid = seorderentry.seorder_id;//销售订单ID
             mes_Mooccupy.fbill_no = seorderentry.bill_no;//销售订单号
             mes_Mooccupy.fentry_id = seorderentry.entry_seq.Value;//销售订单行
             mes_Mooccupy.fitem_name = ic_item.name;//物料名称
             mes_Mooccupy.fitem_number = ic_item.number;
             mes_Mooccupy.fmodel = ic_item.model;//规格型号
-            mes_Mooccupy.moo_moid = item.Id;
+            mes_Mooccupy.moo_moid = item.mysql_id;
             mes_Mooccupy.moo_mo = item.morder_no;
             //占用量=生产计划数量-入库数量-已被占用数量
             mes_Mooccupy.moo_qty = number;

+ 30 - 34
MicroServices/Business/Business.Application/ResourceExamineManagement/ProductExamineAppService.cs

@@ -2,6 +2,8 @@
 using Business.ResourceExamineManagement.Dto;
 using Bussiness.Model.Production;
 using Bussiness.Model.Tech;
+using Bussiness.MongoModel.Production;
+using Bussiness.MongoModel.Tech;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -21,47 +23,47 @@ namespace Business.ResourceExamineManagement
         /// <summary>
         /// 工艺路径
         /// </summary>
-        private readonly IMongoDB<mes_technique> _mes_technique;
+        private readonly IMongoDB<mo_mes_technique> _mes_technique;
 
         /// <summary>
         /// 工序
         /// </summary>
-        private readonly IMongoDB<mes_process> _mes_process;
+        private readonly IMongoDB<mo_mes_process> _mes_process;
 
         /// <summary>
         /// 工艺关联工序
         /// </summary>
-        private readonly IMongoDB<mes_tech_process> _mes_tech_process;
+        private readonly IMongoDB<mo_mes_tech_process> _mes_tech_process;
 
         /// <summary>
         /// 工作日历
         /// </summary>
-        private readonly IMongoDB<mes_work_calendar> _mes_work_calendar;
+        private readonly IMongoDB<mo_mes_work_calendar> _mes_work_calendar;
 
         /// <summary>
         /// 工作日历明细
         /// </summary>
-        private readonly IMongoDB<mes_work_calendar_list> _mes_work_calendar_list;
+        private readonly IMongoDB<mo_mes_work_calendar_list> _mes_work_calendar_list;
 
         /// <summary>
         /// 工艺工序关联工位
         /// </summary>
-        private readonly IMongoDB<mes_tech_proc_workshop> _mes_tech_proc_workshop;
+        private readonly IMongoDB<mo_mes_tech_proc_workshop> _mes_tech_proc_workshop;
 
         /// <summary>
         /// 排程占用记录
         /// </summary>
-        private readonly IMongoDB<mes_schedule_occupy> _mes_schedule_occupy;
+        private readonly IMongoDB<mo_mes_schedule_occupy> _mes_schedule_occupy;
         #endregion
 
         /// <summary>
         /// 构造函数
         /// </summary>
         public ProductExamineAppService(
-            IMongoDB<mes_technique> mes_technique,
-            IMongoDB<mes_process> mes_process,
-            IMongoDB<mes_tech_process> mes_tech_process,
-            IMongoDB<mes_tech_proc_workshop> mes_tech_proc_workshop
+            IMongoDB<mo_mes_technique> mes_technique,
+            IMongoDB<mo_mes_process> mes_process,
+            IMongoDB<mo_mes_tech_process> mes_tech_process,
+            IMongoDB<mo_mes_tech_proc_workshop> mes_tech_proc_workshop
             )
         {
             _mes_technique = mes_technique;
@@ -79,42 +81,36 @@ namespace Business.ResourceExamineManagement
         {
             if (param.packages <= 0)
             {
-                var rtn = 10 * param.packages;
-                return rtn;
-                //throw new NotImplementedException("产能计算参数有误!");
+                throw new NotImplementedException("产能计算参数有误!");
             }
             #region 1、数据准备
             //1.1、获取工艺路径数据
-            mes_technique tech = _mes_technique.Find(p => p.bom == param.bom_number && p.bomver == param.version && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted).Result.FirstOrDefault();
+            mo_mes_technique tech = _mes_technique.Find(p => p.bom == param.bom_number && p.bomver == param.version && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted).Result.FirstOrDefault();
             if (tech == null)
             {
-                var rtn = 10 * param.packages;
-                return rtn;
-                //throw new NotImplementedException("请先配置工艺路径!");
+                throw new NotImplementedException("请先配置工艺路径!");
             }
 
             //1.2、获取工艺路径关联工序数据
-            List<mes_tech_process> tech_Processes = await _mes_tech_process.GetManyByCondition(p => p.tech_id == tech.Id && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted);
+            List<mo_mes_tech_process> tech_Processes = await _mes_tech_process.GetManyByCondition(p => p.tech_id == tech.mysql_id && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted);
             if (tech_Processes.Count == 0)
             {
-                var rtn = 10 * param.packages;
-                return rtn;
-                //throw new NotImplementedException("请先配置工序!");
+                throw new NotImplementedException("请先配置工序!");
             }
 
             //1.3、获取当前工艺路径下的工序数据
             //FilterDefinition<mes_process> filter = Builders<mes_process>.Filter.In(s => s.Id, tech_Processes.Select(m => m.proc_id).ToList());
             //List<mes_process> process = await _mes_process.GetManyByIds(filter);
             List<long> procIds = tech_Processes.Select(m => m.proc_id.GetValueOrDefault()).ToList();
-            List<mes_process> process = await _mes_process.GetManyByCondition(p => procIds.Contains(p.Id) && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted);
+            List<mo_mes_process> process = await _mes_process.GetManyByCondition(p => procIds.Contains(p.mysql_id) && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted);
 
             //1.3、获取工艺工序关联工位信息
-            List<long> techProcIds = tech_Processes.Select(m => m.Id).ToList();
-            List<mes_tech_proc_workshop> tech_Proc_Workshops = await _mes_tech_proc_workshop.GetManyByCondition(p => techProcIds.Contains(p.tech_proc_id.Value) && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted);
+            List<long> techProcIds = tech_Processes.Select(m => m.mysql_id).ToList();
+            List<mo_mes_tech_proc_workshop> tech_Proc_Workshops = await _mes_tech_proc_workshop.GetManyByCondition(p => techProcIds.Contains(p.tech_proc_id.Value) && p.tenant_id == param.tenantId && p.factory_id == param.factoryId && !p.IsDeleted);
             #endregion
 
             //1、获取工艺路径下的第一层级工序:目前只考虑第一层级
-            List<mes_tech_process> fistLevels = tech_Processes.Where(p => p.parentprocid == tech.Id).ToList();
+            List<mo_mes_tech_process> fistLevels = tech_Processes.Where(p => p.parentprocid == tech.mysql_id).ToList();
             if (fistLevels.Count == 0)
             {
                 throw new NotImplementedException("当前工艺路径没有配置工序,请调整!");
@@ -132,7 +128,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="processes">工艺关联工序list</param>
         /// <param name="packages">生产件数</param>
         /// <returns></returns>
-        private List<TechProcDto> TechProcPretreatment(List<mes_tech_process> processes,int packages)
+        private List<TechProcDto> TechProcPretreatment(List<mo_mes_tech_process> processes,int packages)
         { 
             //工艺路径预处理dto
             List<TechProcDto> techProcDtos = new List<TechProcDto>();
@@ -142,11 +138,11 @@ namespace Business.ResourceExamineManagement
             //获取起点工序
             var startProcs = processes.Where(p => !nextProcIds.Contains(p.proc_id.GetValueOrDefault())).ToList();
             //递归处理工序返回值
-            List<mes_tech_process> rtnList;
+            List<mo_mes_tech_process> rtnList;
             for (int i = 0; i < startProcs.Count; i++)
             {
                 dto = new TechProcDto();
-                rtnList = new List<mes_tech_process>();
+                rtnList = new List<mo_mes_tech_process>();
                 GetNextProc(startProcs[i], processes, rtnList);
                 dto.serialno = i + 1;
                 dto.processes = rtnList;
@@ -164,7 +160,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="proc"></param>
         /// <param name="processes"></param>
         /// <param name="rtnList"></param>
-        private void GetNextProc(mes_tech_process proc, List<mes_tech_process> processes, List<mes_tech_process> rtnList)
+        private void GetNextProc(mo_mes_tech_process proc, List<mo_mes_tech_process> processes, List<mo_mes_tech_process> rtnList)
         {
             rtnList.Add(proc);
             //下一工序id为null,终止
@@ -187,7 +183,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="Processes"></param>
         /// <param name="packages"></param>
         /// <returns></returns>
-        private List<StartTimeDto> CalcTakeTimeByLq(List<mes_tech_process> Processes, int packages)
+        private List<StartTimeDto> CalcTakeTimeByLq(List<mo_mes_tech_process> Processes, int packages)
         {
             //工序需要等待时间记录
             List<StartTimeDto> starts = new List<StartTimeDto>();
@@ -217,7 +213,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="quantity">LeadQuantity to Start Next</param>
         /// <param name="packages">件数</param>
         /// <returns></returns>
-        private StartTimeDto CalcProcTakeTimeByLq(mes_tech_process proc, decimal quantity, int packages)
+        private StartTimeDto CalcProcTakeTimeByLq(mo_mes_tech_process proc, decimal quantity, int packages)
         {
             //记录当前工序耗时
             StartTimeDto dto = new StartTimeDto();
@@ -261,7 +257,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="Processes"></param>
         /// <param name="packages"></param>
         /// <returns></returns>
-        private List<StartTimeDto> CalcTakeTimeByLqt(List<mes_tech_process> Processes, int packages)
+        private List<StartTimeDto> CalcTakeTimeByLqt(List<mo_mes_tech_process> Processes, int packages)
         {
             //工序需要等待时间记录
             List<StartTimeDto> starts = new List<StartTimeDto>();
@@ -296,7 +292,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="proc"></param>
         /// <param name="packages">件数</param>
         /// <returns></returns>
-        private decimal CalcProcTakeTime(mes_tech_process proc, int packages)
+        private decimal CalcProcTakeTime(mo_mes_tech_process proc, int packages)
         {
             //当前工序生产时间
             decimal takeTiem = 0.00m;

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

@@ -702,7 +702,7 @@ namespace Business.ResourceExamineManagement
                             {
                                 //在途满足,写占用表
                                 itemlist.Add(new ICItemDateDto { item_id = itemPO[i].icitem_id.Value, dateTime = itemPO[i].rarrdate });
-                                srm_po_occupy po_Occupy = new srm_po_occupy();
+                                mo_srm_po_occupy po_Occupy = new mo_srm_po_occupy();
                                 po_Occupy.GenerateNewId();
                                 po_Occupy.polist_id = itemPO[i].po_id;//采购订单id
                                 po_Occupy.polist_row = itemPO[i].polist_row;//采购订单行号
@@ -725,7 +725,7 @@ namespace Business.ResourceExamineManagement
                             {
                                 //不满足逐步扣减
                                 itemPOQty = itemPOQty + itemPO[i].qty - itemPO[i].esqty;
-                                srm_po_occupy po_Occupy = new srm_po_occupy();
+                                mo_srm_po_occupy po_Occupy = new mo_srm_po_occupy();
                                 po_Occupy.GenerateNewId();
                                 po_Occupy.polist_id = itemPO[i].po_id;//采购订单id
                                 po_Occupy.polist_row = itemPO[i].polist_row;//采购订单行号
@@ -807,9 +807,9 @@ namespace Business.ResourceExamineManagement
         /// </summary>
         /// <param name="returnlist"></param>
         /// <param name="factoryid"></param>
-        private mes_oorder CreateMesOOder(BomChildExamineDto returnlist, long tenantId, long factoryid, long bangId, List<ICItemLeadTimeDto> iCItemLeadTimes, List<ic_item_pur> supplierList, DateTime deliveryDate)
+        private mo_mes_oorder CreateMesOOder(BomChildExamineDto returnlist, long tenantId, long factoryid, long bangId, List<ICItemLeadTimeDto> iCItemLeadTimes, List<ic_item_pur> supplierList, DateTime deliveryDate)
         {
-            mes_oorder oOrder = new mes_oorder();
+            mo_mes_oorder oOrder = new mo_mes_oorder();
             oOrder.GenerateNewId();
             oOrder.oorder_no = getOrderNum("WW");//生产工单编号
             oOrder.oorder_type = "委外工单";//生产工单类型
@@ -918,7 +918,7 @@ namespace Business.ResourceExamineManagement
         private SRMPRDto CreateSRMPR(BomChildExamineDto returnlist, long tenantId, long factoryid, long bangId, int orderType, List<ICItemLeadTimeDto> iCItemLeadTimes, List<ic_item_pur> supplierList, List<ic_plan> planList, DateTime deliveryDate)
         {
             SRMPRDto sRMPR = new SRMPRDto();
-            srm_pr_main srm_Pr = new srm_pr_main();
+            mo_srm_pr_main srm_Pr = new mo_srm_pr_main();
             var leadTime = iCItemLeadTimes.Find(x => x.item_id == returnlist.item_id);
             var supplier = supplierList.Find(x => x.icitem_id == returnlist.item_id);//默认取第一个供应商
             var plan = planList.Find(x => x.icitem_id == returnlist.item_id);

+ 4 - 0
MicroServices/Business/Business.Core/Enum/MorderEnum.cs

@@ -68,5 +68,9 @@ namespace Business.Core.Enum
         /// 关闭
         /// </summary>
         public const string Close_state = "关闭";
+        /// <summary>
+        /// 资源检查
+        /// </summary>
+        public const string Zyjc_Type = "资源检查";
     }
 }

+ 10 - 0
MicroServices/Business/Bussiness.MongoModel/Base/MoBaseEntity.cs

@@ -11,11 +11,21 @@ using Volo.Abp.Domain.Entities.Auditing;
 using Volo.Abp.Domain.Entities;
 using Microsoft.EntityFrameworkCore;
 using MongoDB.Bson.Serialization.Attributes;
+using Business.Core.Utilities;
 
 namespace Bussiness.MongoModel
 {
     public abstract class MoBaseEntity 
     {
+        /// <summary>
+        /// 生成新的mysqlId
+        /// </summary>
+        public void GenerateNewId()
+        {
+            SnowFlake snow = new SnowFlake();
+            mysql_id = snow.NextId();
+        }
+
         /// <summary>
         /// mongodb表id
         /// </summary>