Parcourir la source

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

# Conflicts:
#	MicroServices/Business/Business.Application/ResourceExamineManagement/ResourceExamineAppService.cs
tangdi il y a 3 ans
Parent
commit
c76afd8d02
27 fichiers modifiés avec 10841 ajouts et 948 suppressions
  1. 23 0
      MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/ICItemDateDto.cs
  2. 5 0
      MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/ICItemLeadTimeDto.cs
  3. 4 19
      MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/SeorderentryDto.cs
  4. 32 0
      MicroServices/Business/Business.Application.Contracts/ScheduleTaskManagement/Dto/ResultDto.cs
  5. 21 0
      MicroServices/Business/Business.Application.Contracts/ScheduleTaskManagement/IScheduleTaskAppService.cs
  6. 431 149
      MicroServices/Business/Business.Application/ResourceExamineManagement/ResourceExamineAppService.cs
  7. 292 0
      MicroServices/Business/Business.Application/ScheduleTaskManagement/ScheduleTaskAppService.cs
  8. 6 0
      MicroServices/Business/Business.Core/MongoDBHelper/IMongoDB.cs
  9. 10 0
      MicroServices/Business/Business.EntityFrameworkCore/EntityFrameworkCore/BusinessDbContext.cs
  10. 2 2
      MicroServices/Business/Business.EntityFrameworkCore/EntityFrameworkCore/BusinessDbContextModelCreatingExtensions.cs
  11. 9464 0
      MicroServices/Business/Business.Host/Migrations/20230213062931_bang_id.Designer.cs
  12. 158 0
      MicroServices/Business/Business.Host/Migrations/20230213062931_bang_id.cs
  13. 281 765
      MicroServices/Business/Business.Host/Migrations/BusinessMigrationDbContextModelSnapshot.cs
  14. 39 0
      MicroServices/Business/Business.HttpApi/Controllers/ScheduleTaskController.cs
  15. 0 5
      MicroServices/Business/Bussiness.Model/MES/IC/ic_bom.cs
  16. 9 0
      MicroServices/Business/Bussiness.Model/MES/IC/ic_factory_details.cs
  17. 2 1
      MicroServices/Business/Bussiness.Model/MES/IC/ic_item_stock.cs
  18. 4 2
      MicroServices/Business/Bussiness.Model/MES/IC/ic_substitute_all_dtl.cs
  19. 7 0
      MicroServices/Business/Bussiness.Model/SRM/srm_po_list.cs
  20. 8 1
      MicroServices/Business/Bussiness.Model/SRM/srm_po_main.cs
  21. 8 0
      MicroServices/Business/Bussiness.Model/SRM/srm_po_occupy.cs
  22. 1 1
      MicroServices/Business/Bussiness.Model/SRM/srm_pr_main.cs
  23. 11 1
      MicroServices/Business/Bussiness.Model/Sale/crm_seorder.cs
  24. 11 1
      MicroServices/Business/Bussiness.Model/Sale/crm_seorderentry.cs
  25. 3 1
      MicroServices/Business/Bussiness.Model/SystemData/srm_supplier.cs
  26. 5 0
      MicroServices/Business/Bussiness.Model/Tech/mes_process.cs
  27. 4 0
      MicroServices/Business/Bussiness.Model/Tech/mes_technique.cs

+ 23 - 0
MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/ICItemDateDto.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.ComponentModel.DataAnnotations;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Business.ResourceExamineManagement.Dto
+{
+    public class ICItemDateDto
+    {
+        /// <summary>
+        /// 物料id
+        /// </summary>
+        public long item_id { get; set; }
+
+        /// <summary>
+        /// 最晚齐套时间
+        /// </summary>
+        public DateTime? dateTime { get; set; }
+    }
+}

+ 5 - 0
MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/ICItemLeadTimeDto.cs

@@ -29,5 +29,10 @@ namespace Business.ResourceExamineManagement.Dto
         /// 生产中提前期_天
         /// </summary>
         public decimal? production_leadtime { get; set; }
+
+        /// <summary>
+        /// 下单提前期_天
+        /// </summary>
+        public decimal? order_leadtime { get; set; }
     }
 }

+ 4 - 19
MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/SeorderentryDto.cs

@@ -7,36 +7,21 @@ namespace Business.ResourceExamineManagement.Dto
     /// <summary>
     /// 訧埭潰脤⻌統Dto
     /// </summary>
-    public class SeorderentryDto : PagedAndSortedResultRequestDto
+    public class SeorderentryDto:EntityDto 
     {
         /// <summary>
         /// 隆等id
         /// </summary>
-        public long sorderId;
-
-        /// <summary>
-        /// 隆等俴id
-        /// </summary>
-        public long soentryId;
-
-        /// <summary>
-        /// 隆等瘍
-        /// </summary>
-        public String fbillNo;
-
-        /// <summary>
-        /// 隆等俴瘍
-        /// </summary>
-        public int fentryId;
+        public long sorderId { get; set; }
 
         /// <summary>
         /// き珛id
         /// </summary>
-        public long tenantId;
+        public long tenantId { get; set; }
 
         /// <summary>
         /// 馱釦id
         /// </summary>
-        public long factoryId;
+        public long factoryId { get; set; }
     }
 }

+ 32 - 0
MicroServices/Business/Business.Application.Contracts/ScheduleTaskManagement/Dto/ResultDto.cs

@@ -0,0 +1,32 @@
+using System;
+using System.Collections.Generic;
+using Volo.Abp.Application.Dtos;
+using System.ComponentModel.DataAnnotations;
+namespace Business.ResourceExamineManagement.Dto
+{
+    /// <summary>
+    /// 数据同步返回结果Dto
+    /// </summary>
+    public class ResultDto
+    {
+        /// <summary>
+        /// 开始时间
+        /// </summary>
+        public DateTime start { get; set; }
+
+        /// <summary>
+        /// 结束时间
+        /// </summary>
+        public DateTime end { get; set; }
+
+        /// <summary>
+        /// 结果
+        /// </summary>
+        public bool isSuccess { get; set; }
+
+        /// <summary>
+        /// 异常信息
+        /// </summary>
+        public string msg { get; set; }
+    }
+}

+ 21 - 0
MicroServices/Business/Business.Application.Contracts/ScheduleTaskManagement/IScheduleTaskAppService.cs

@@ -0,0 +1,21 @@
+using Business.ResourceExamineManagement.Dto;
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Application.Services;
+
+namespace Business.ScheduleTaskManagement
+{
+    /// <summary>
+    /// 同步数据
+    /// </summary>
+    public interface IScheduleTaskAppService : IApplicationService
+    {
+        /// <summary>
+        /// 同步基础数据到mongodb
+        /// </summary>
+        /// <returns></returns>
+        Task<ResultDto> SyncBaseDataToMongoDB();
+    }
+}

+ 431 - 149
MicroServices/Business/Business.Application/ResourceExamineManagement/ResourceExamineAppService.cs

@@ -45,6 +45,8 @@ using Amazon.Runtime.Internal.Transform;
 using System.IO.Compression;
 using System.Collections;
 using System.Data.SqlTypes;
+using Microsoft.EntityFrameworkCore.Diagnostics;
+using Hangfire.Server;
 using WkHtmlToPdfDotNet;
 using Microsoft.EntityFrameworkCore.Migrations.Operations;
 
@@ -123,18 +125,47 @@ namespace Business.ResourceExamineManagement
         private readonly IMongoDB<ic_item_stock> _ic_item_stock;
         private IRepository<ic_item_stock, long> _mysql_ic_item_stock;
 
+        /// <summary>
+        /// 物料采购计划表
+        /// </summary>
+        private readonly IMongoDB<ic_plan> _ic_plan;
+        private IRepository<ic_plan, long> _mysql_ic_plan;
+
         /// <summary>
         /// 物料工厂明细表
         /// </summary>
         private readonly IMongoDB<ic_factory_details> _ic_factory_details;
         private IRepository<ic_factory_details, long> _mysql_ic_factory_details;
 
+        /// <summary>
+        /// 物料采购报价单
+        /// </summary>
+        private readonly IMongoDB<ic_item_pur> _ic_item_pur;
+        private IRepository<ic_item_pur, long> _mysql_ic_item_pur;
+
         /// <summary>
         /// 采购申请单
         /// </summary>
         private readonly IMongoDB<srm_pr_main> _srm_pr_main;
         private IRepository<srm_pr_main, long> _mysql_srm_pr_main;
 
+        /// <summary>
+        /// 采购订单表
+        /// </summary>
+        private readonly IMongoDB<srm_po_main> _srm_po_main;
+        private IRepository<srm_po_main, long> _mysql_srm_po_main;
+
+        /// <summary>
+        /// 采购订单明细表
+        /// </summary>
+        private readonly IMongoDB<srm_po_list> _srm_po_list;
+        private IRepository<srm_po_list, long> _mysql_srm_po_list;
+
+        /// <summary>
+        /// 采购订单占用详情
+        /// </summary>
+        private readonly IMongoDB<srm_po_occupy> _srm_po_occupy;
+        private IRepository<srm_po_occupy, long> _mysql_srm_po_occupy;
 
         /// <summary>
         /// 委外工单
@@ -177,13 +208,15 @@ namespace Business.ResourceExamineManagement
         /// </summary>
         private readonly IRepository<mes_mooccupy, long> _mysql_mes_mooccupy;
         /// <summary>
-        /// 销售
+        /// 销售
         /// </summary>
         private readonly IRepository<crm_seorder, long> _mysql_crm_seorder;
+        private readonly IMongoDB<crm_seorder> _crm_seorder;
         /// <summary>
-        /// 销售工单
+        /// 销售订单明细
         /// </summary>
         private readonly IRepository<crm_seorderentry, long> _mysql_crm_seorderentry;
+        private readonly IMongoDB<crm_seorderentry> _crm_seorderentry;
 
         /// <summary>
         /// 生产工单主表
@@ -213,6 +246,13 @@ namespace Business.ResourceExamineManagement
             IMongoDB<ic_factory_details> ic_factory_details,
             IMongoDB<mes_oorder> mes_oorder,
             IMongoDB<srm_pr_main> srm_pr_main,
+            IMongoDB<srm_po_main> srm_po_main,
+            IMongoDB<srm_po_list> srm_po_list,
+            IMongoDB<crm_seorder> crm_seorder,
+            IMongoDB<crm_seorderentry> crm_seorderentry,
+            IMongoDB<srm_po_occupy> srm_po_occupy,
+            IMongoDB<ic_item_pur> ic_item_pur,
+            IMongoDB<ic_plan> ic_plan,
             //IMongoDB<ic_substitute> ic_substitute,
             //IMongoDB<ic_substitute_all> ic_substitute_all,
             //IMongoDB<ic_substitute_all_dtl> ic_substitute_all_dtl,
@@ -234,7 +274,12 @@ namespace Business.ResourceExamineManagement
             IRepository<mes_morder, long> mysql_mes_morder,
             IRepository<mes_moentry, long> mysql_mes_moentry,
             IRepository<mes_process, long> mysql_mes_process,
-            IRepository<mes_tech_process, long> mysql_mes_tech_process
+            IRepository<mes_tech_process, long> mysql_mes_tech_process,
+            IRepository<srm_po_main, long> mysql_srm_po_main,
+            IRepository<srm_po_list, long> mysql_srm_po_list,
+            IRepository<srm_po_occupy, long> mysql_srm_po_occupy,
+            IRepository<ic_item_pur, long> mysql_ic_item_pur,
+            IRepository<ic_plan, long> mysql_ic_plan
             )
         {
             _mes_technique = mes_technique;
@@ -249,6 +294,13 @@ namespace Business.ResourceExamineManagement
             _ic_factory_details = ic_factory_details;
             _mes_oorder = mes_oorder;
             _srm_pr_main = srm_pr_main;
+            _srm_po_main = srm_po_main;
+            _srm_po_list = srm_po_list;
+            _crm_seorder = crm_seorder;
+            _crm_seorderentry = crm_seorderentry;
+            _srm_po_occupy= srm_po_occupy;
+            _ic_item_pur= ic_item_pur;
+            _ic_plan= ic_plan;
             //_ic_substitute = ic_substitute;
             //_ic_substitute_all = ic_substitute_all;
             //_ic_substitute_all_dtl = ic_substitute_all_dtl;
@@ -271,6 +323,11 @@ namespace Business.ResourceExamineManagement
             _mysql_mes_moentry = mysql_mes_moentry;
             _mysql_mes_process = mysql_mes_process;
             _mysql_mes_tech_process = mysql_mes_tech_process;
+            _mysql_srm_po_main = mysql_srm_po_main;
+            _mysql_srm_po_list = mysql_srm_po_list;
+            _mysql_srm_po_occupy= mysql_srm_po_occupy;
+            _mysql_ic_item_pur= mysql_ic_item_pur;
+            _mysql_ic_plan= mysql_ic_plan;
         }
 
         /// <summary>
@@ -338,25 +395,120 @@ namespace Business.ResourceExamineManagement
             SnowFlake snow = new SnowFlake();
             long bangid = snow.NextId();
 
+            //获取订单数据
+            crm_seorder sorder = _mysql_crm_seorder.GetAsync(p=>p.Id == input.sorderId && p.IsDeleted ==false).Result;
+            if (sorder == null)
+            {
+                throw new NotImplementedException("订单数据不存在!");
+            }
+            //获取订单行数据
+            List<crm_seorderentry> sentrys = _mysql_crm_seorderentry.GetListAsync(p => p.seorder_id == input.sorderId && p.IsDeleted == false).Result;
+            
+            string bom_number = "BOM00042070";
+            int packages = 1000;
+
+            input.tenantId = 102;
+            input.factoryId = 10201;
+
+            //数据准备
+            //await SaveChangesCompletedEventData()
+
             //数据库快照-同步mysql库数据到mongoDB中
-            //await SyncData(input.factoryId,bangid);
+            //await SyncData(input.tenantId, input.factoryId, bangid);
 
             //产能检查
-            await ProductiveExamine(1353957529328291842, 1000);
-
-            //await GenerateMorder(14);
+            await ProductiveExamine(bom_number, packages);
+            //var id = Save(input.tenantId, input.factoryId);
+            //await GenerateMorder(id);
             return null;
             throw new NotImplementedException();
         }
+        /// <summary>
+        /// 测试使用新增销售订单数据
+        /// </summary>
+        /// <param name="tenantId"></param>
+        /// <param name="factoryId"></param>
+        /// <returns></returns>
+        public long Save(long tenantId, long factoryId)
+        {
+            //销售订单
+            crm_seorder crm_Seorder = new crm_seorder()
+            {
+                IsDeleted = false,
+                bill_no = "SO201900000020",
+                order_type = 1,
+                trade_type = 1,
+                sale_style = 1,
+                custom_id = 1001,
+                custom_name = "温州正泰电器科技有限公司",
+                custom_no = "01.0098",
+                date = DateTime.Now.Date,
+                currency = 1,
+                exchange_rate = 1,
+                biller = "张晓延",
+                emp_no = "8604",
+                emp_name = "王劲松",
+                auditor = "邹晓燕",
+                audit_date = DateTime.Now.Date,
+                status = 1,
+                closed = true,
+                op_time = DateTime.Now.Date,
+                tenant_id = tenantId,
+                factory_id = factoryId,
+                org_id = tenantId
+            };
+            crm_Seorder.GenerateNewId();
+            crm_seorderentry crm_Seorderentry = new crm_seorderentry()
+            {
+                IsDeleted = false,
+                seorder_id = crm_Seorder.Id,
+                bill_no = "SO201900000020",
+                entry_seq = 1,
+                map_name = "自动转换开关电器",
+                map_number = "L6.733036.5",
+                item_number = "9.1.03.01.0541",
+                item_name = "自动转换开关电器",
+                fms_number = "988123",
+                specification = "FDQ3-RMQ6-63/4JC1R_基本型",
+                bom_number = "BOM00042070",
+                unit = "台",
+                qty = 1000,
+                price = 100,
+                tax_price = 0,
+                amount = 0,
+                tax_rate = 13,
+                discount_amount = 0,
+                discount_rate = 0,
+                aux_price_discount = 70,
+                total_amount = 0,
+                plan_date = DateTime.Parse("2023-04-29 00:00:00"),
+                planner_name = "钱萍萍",
+                planner_no = "9022",
+                state = true,
+                rstate = 0,
+                is_checked = true,
+                deliver_count = 0,
+                deliver_notice_count = 0,
+                tenant_id = tenantId,
+                factory_id = factoryId,
+                org_id = tenantId,
+            };
+            crm_Seorderentry.GenerateNewId();
+
+            _mysql_crm_seorder.InsertAsync(crm_Seorder);
+            _mysql_crm_seorderentry.InsertAsync(crm_Seorderentry);
+
+            return crm_Seorderentry.Id;
+        }
 
         /// <summary>
         /// 数据库快照
         /// </summary>
         /// <returns></returns>
-        public async Task SyncData(long factoryId, long bangid)
+        public async Task SyncData(long tenantId, long factoryId, long bangid)
         {
             //同步物料库存数据
-            var icitemStokc = _mysql_ic_item_stock.GetListAsync(p => p.factory_id == factoryId).Result;
+            var icitemStokc = _mysql_ic_item_stock.GetListAsync(p => p.tenant_id == tenantId && p.factory_id == factoryId).Result;
             if (icitemStokc.Count > 0)
             {
                 //设置当前计算bangid
@@ -364,34 +516,68 @@ namespace Business.ResourceExamineManagement
                 //插入数据
                 await _ic_item_stock.InsertMany(icitemStokc);
             }
-            //物料BOM
-            var icBom = _mysql_ic_bom.GetListAsync(x => x.factory_id == factoryId).Result;
-            if (icBom.Count > 0)
-            {
-                icBom.ForEach(item => { item.bang_id = bangid; });
-                await _ic_bom.InsertMany(icBom);
-            }
             //在制工单占用记录表
-            var mes_mooccupy = _mysql_mes_mooccupy.GetListAsync(x => x.factory_id == factoryId).Result;
+            var mes_mooccupy = _mysql_mes_mooccupy.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
             if (mes_mooccupy.Count > 0)
             {
                 mes_mooccupy.ForEach(item => { item.bang_id = bangid; });
                 await _mes_mooccupy.InsertMany(mes_mooccupy);
             }
             //工单主表
-            var mes_morder = _mysql_mes_morder.GetListAsync(x => x.factory_id == factoryId).Result;
+            var mes_morder = _mysql_mes_morder.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
             if (mes_morder.Count > 0)
             {
                 mes_morder.ForEach(item => { item.bang_id = bangid; });
                 await _mes_morder.InsertMany(mes_morder);
             }
             //工单子表
-            var mes_moentry = _mysql_mes_moentry.GetListAsync(x => x.factory_id == factoryId).Result;
+            var mes_moentry = _mysql_mes_moentry.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
             if (mes_moentry.Count > 0)
             {
                 mes_moentry.ForEach(item => { item.bang_id = bangid; });
                 await _mes_moentry.InsertMany(mes_moentry);
             }
+
+            //TODO:要不要根据某些条件只同步有效的数据
+            //销售订单
+            var crm_seorder = _mysql_crm_seorder.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
+            if (crm_seorder.Count > 0)
+            {
+                crm_seorder.ForEach(item => { item.bang_id = bangid; });
+                await _crm_seorder.InsertMany(crm_seorder);
+            }
+
+            //销售订单明细
+            var crm_seorderentry = _mysql_crm_seorderentry.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
+            if (crm_seorderentry.Count > 0)
+            {
+                crm_seorderentry.ForEach(item => { item.bang_id = bangid; });
+                await _crm_seorderentry.InsertMany(crm_seorderentry);
+            }
+
+            //采购订单
+            var srm_po_main = _mysql_srm_po_main.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
+            if (crm_seorderentry.Count > 0)
+            {
+                srm_po_main.ForEach(item => { item.bang_id = bangid; });
+                await _srm_po_main.InsertMany(srm_po_main);
+            }
+
+            //采购订单明细
+            var srm_po_list = _mysql_srm_po_list.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
+            if (srm_po_list.Count > 0)
+            {
+                srm_po_list.ForEach(item => { item.bang_id = bangid; });
+                await _srm_po_list.InsertMany(srm_po_list);
+            }
+
+            //采购订单占用详情
+            var srm_po_occupy = _mysql_srm_po_occupy.GetListAsync(x => x.tenant_id == tenantId && x.factory_id == factoryId).Result;
+            if (srm_po_occupy.Count > 0)
+            {
+                srm_po_occupy.ForEach(item => { item.bang_id = bangid; });
+                await _srm_po_occupy.InsertMany(srm_po_occupy);
+            }
         }
 
         /// <summary>
@@ -400,7 +586,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="tech_id">工艺路径主键</param>
         /// <param name="packages">需要生产产品件数</param>
         /// <returns>生产时长</returns>
-        public async Task<decimal> ProductiveExamine(long tech_id, int packages)
+        public async Task<decimal> ProductiveExamine(string bom_number, int packages)
         {
             if (packages <= 0)
             {
@@ -408,14 +594,14 @@ namespace Business.ResourceExamineManagement
             }
             #region 1、数据准备
             //1.1、获取工艺路径数据
-            mes_technique tech = await _mes_technique.GetOneByID(tech_id);
+            mes_technique tech = _mes_technique.Find(p => p.bom == bom_number && p.IsDeleted == false).Result.FirstOrDefault();
             if (tech == null)
             {
                 throw new NotImplementedException("请先配置工艺路径!");
             }
 
             //1.2、获取工艺路径关联工序数据
-            List<mes_tech_process> tech_Processes = await _mes_tech_process.GetManyByCondition(x => x.tech_id == tech_id);
+            List<mes_tech_process> tech_Processes = await _mes_tech_process.GetManyByCondition(p => p.tech_id == tech.Id && p.IsDeleted == false);
             if (tech_Processes.Count == 0)
             {
                 throw new NotImplementedException("请先配置工序!");
@@ -425,11 +611,11 @@ namespace Business.ResourceExamineManagement
             //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).ToList();
-            List<mes_process> process = await _mes_process.GetManyByCondition(p => procIds.Contains(p.Id));
+            List<mes_process> process = await _mes_process.GetManyByCondition(p => procIds.Contains(p.Id) && p.IsDeleted == false);
 
             //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));
+            List<mes_tech_proc_workshop> tech_Proc_Workshops = await _mes_tech_proc_workshop.GetManyByCondition(p => techProcIds.Contains(p.tech_proc_id) && p.IsDeleted == false);
             #endregion
 
             #region 计算产能,得到耗时
@@ -437,7 +623,7 @@ namespace Business.ResourceExamineManagement
             //工序需要等待时间记录
             List<StartTimeDto> starts = new List<StartTimeDto>();
             //1、获取工艺路径下的第一层级工序
-            List<mes_tech_process> fistChilds = tech_Processes.Where(p => p.parentprocid == tech_id).ToList();
+            List<mes_tech_process> fistChilds = tech_Processes.Where(p => p.parentprocid == tech.Id).ToList();
             if (fistChilds.Count == 0)
             {
                 throw new NotImplementedException("当前工艺路径没有配置工序,请调整!");
@@ -465,7 +651,7 @@ namespace Business.ResourceExamineManagement
                 }
                 sumTimes += curTakeTime;
                 //添加耗时记录
-                dto.tech_id = tech_id;
+                dto.tech_id = tech.Id;
                 dto.proc_id = chd.proc_id;
                 dto.nextproc_id = chd.nextprocid;
                 dto.wait_time = curTakeTime;
@@ -537,7 +723,9 @@ namespace Business.ResourceExamineManagement
             //获取销售订单信息
             var seorder = await _mysql_crm_seorder.FindAsync(x => x.Id == seorderentry.seorder_id);
             //物料BOM
-            var ic_bom = _ic_bom.GetManyByCondition(x => x.bom_number == seorderentry.bom_number && x.factory_id == seorderentry.factory_id).Result.FirstOrDefault();
+            // var ic_bom = _ic_bom.GetManyByCondition(x => x.bom_number == seorderentry.bom_number && x.factory_id == seorderentry.factory_id).Result.FirstOrDefault();
+
+            var ic_bom = _ic_bom.GetManyByCondition(x => x.bom_number == seorderentry.bom_number).Result.FirstOrDefault();
 
             mes_morder mes_Morder = new mes_morder();
             mes_Morder.GenerateNewId();
@@ -553,7 +741,7 @@ namespace Business.ResourceExamineManagement
             //根绝系统配置参数 取最早或者最晚开始日期
             var StartDate = DateTime.Now.Date.AddDays(3);
             mes_Morder.moentry_sys_stime = StartDate;
-            var ProductiveDate = ProductiveExamine(ic_bom.tech_id, (int)(seorderentry.qty.Value));
+            var ProductiveDate = ProductiveExamine(ic_bom.bom_number, (int)(seorderentry.qty.Value));
             //系统建议完工日期为 开工日期+产能检查时间=完工日期
             var Day = ProductiveDate.Result / (60 * 10); //返回的分钟除以十个小时得出工作天数;
             mes_Morder.moentry_sys_etime = StartDate.AddDays((double)Day);
@@ -567,6 +755,7 @@ namespace Business.ResourceExamineManagement
             mes_Morder.planner_num = seorderentry.planner_no;
             mes_Morder.planner_name = seorderentry.planner_name;
             mes_Morder.morder_date = DateTime.Now.Date;
+            //mes_Morder.morder_fstate = "计划";
             //TODO:目前没有取值位置
             mes_Morder.moentry_prd = null;
             mes_Morder.moentry_prdname = null;
@@ -591,24 +780,12 @@ namespace Business.ResourceExamineManagement
             mes_Moentry.need_number = seorderentry.qty;
             mes_Moentry.remaining_number = 0;
             mes_Moentry.factory_id = seorderentry.factory_id;
-            using (TransactionScope scope = new TransactionScope())
-            {
-                await _mes_morder.InsertOne(mes_Morder);
-                await _mes_moentry.InsertOne(mes_Moentry);
-                scope.Complete();
-            }
-        }
-        /// <summary>
-        /// 将decimal转换成日期格式
-        /// </summary>
-        /// <param name="date">yyyyMMddHHmmss</param>
-        /// <returns>yyyy-MM-dd HH:mm:ss</returns>
-        public static string TransDecimalToDateTime(string date)
-        {
-            DateTimeFormatInfo dtfi = new CultureInfo("zh-CN", false).DateTimeFormat;
-            DateTime dateTime = DateTime.Now;
-            DateTime.TryParseExact(date, "yyyyMMddHHmmss", dtfi, DateTimeStyles.None, out dateTime);
-            return dateTime.ToString("yyyy-MM-dd HH:mm:ss"); ;
+            //using (TransactionScope scope = new TransactionScope())
+            // {
+            await _mes_morder.InsertOne(mes_Morder);
+            await _mes_moentry.InsertOne(mes_Moentry);
+            //scope.Complete();
+            //}
         }
         /// <summary>
         /// 检查成品库存
@@ -645,7 +822,7 @@ namespace Business.ResourceExamineManagement
         /// <param name="DeliverDate">交付日期</param>
         /// <param name="seorderentry_id">销售订单子表ID</param>
         /// <returns></returns>
-        public async Task<List<mes_morder>> CheckMorder(string bomNumber, decimal? Quantity, DateTime DeliverDate, long seorderentry_id)
+        public async Task<bool> CheckMorder(string bomNumber, decimal? Quantity, DateTime DeliverDate, long seorderentry_id)
         {
             if (string.IsNullOrEmpty(bomNumber) || Quantity != null)
             {
@@ -685,7 +862,8 @@ namespace Business.ResourceExamineManagement
                 if (morderListData.Count == 0)
                 {
                     //TODO:后期处理无在制工单返回内容
-                    throw new NotImplementedException("无可用在制工单!");
+                    //throw new NotImplementedException("无可用在制工单!");
+                    return false;
                 }
                 List<mes_mooccupy> mes_Mooccupies = new List<mes_mooccupy>();
                 decimal? number = Quantity;
@@ -702,7 +880,7 @@ namespace Business.ResourceExamineManagement
                     }
                 }
             }
-            return morderList;
+            return true;
         }
         /// <summary>
         /// 拼接工单占用表
@@ -733,13 +911,15 @@ namespace Business.ResourceExamineManagement
             mes_Mooccupy.moo_mo = item.morder_no;
             //占用量=生产计划数量-入库数量-已被占用数量
             mes_Mooccupy.moo_qty = item.morder_production_number - item.inventory_number - Sumqty;
-            mes_Mooccupy.moo_stime = DateTime.Now;
+            mes_Mooccupy.moo_stime = DateTime.Now.Date;
             mes_Mooccupy.moo_etime = DateTime.Now;//日期来源需确定
             mes_Mooccupy.moo_state = 1;
             mes_Mooccupy.moo_cbr = string.Empty;
             //mes_Mooccupy.moo_ctime = ;
             mes_Mooccupy.moo_creason = string.Empty;
             mes_Mooccupy.tenant_id = seorderentry.tenant_id;//取销售子表企业ID
+            mes_Mooccupy.factory_id = seorderentry.factory_id;
+            mes_Mooccupy.factory_id = seorderentry.factory_id;
             return mes_Mooccupy;
         }
         /// <summary>
@@ -923,7 +1103,8 @@ namespace Business.ResourceExamineManagement
                                         //递归将替代关系组装出来。
                                         SubstitutePretreatment(sl, sal, dtl, item, returnlist, icitemlist, bomlist, bomchildlist, type);
                                     }
-                                    else {
+                                    else
+                                    {
                                         //将主料赋值上属性
                                         var dtlitem = returnlist.Find(s => s.item_id == dtl.icitem_id && s.level == item.level);
                                         dtlitem.substitute_all_num = sal.order_num;//群组优先级
@@ -1408,13 +1589,15 @@ namespace Business.ResourceExamineManagement
                                 }
                             }
                         }
-                        else {
+                        else
+                        {
                             g.kz = Math.Floor(g.sqty / g.qty);//自己不是BOM的情况下,算一下自己可制父级可以制造多少个,这个可制只是基于父级BOM才用来运算。
                             //todo:申老师说,如果是苏州工厂,原材料有可能也是自制的。
                             //所以这里在计算时,还可以直接拿缺料数量,去丢给苏州计算方法,得出原材料的库存加可制。
                         }
                     }
-                    else {
+                    else
+                    {
                         boolCount++;
                     }*/
                 }
@@ -1614,122 +1797,221 @@ namespace Business.ResourceExamineManagement
         }*/
         #endregion
 
-        //根据物料id获取物料3个提前期
-        private Task<List<ICItemLeadTimeDto>> GetLeadTime(List<BomChildExamineDto> returnlist, long factoryid)
+        //根据物料id获取物料4个提前期
+        private List<ICItemLeadTimeDto> GetLeadTime(List<BomChildExamineDto> returnlist, long tenantId, long factoryid)
         {
             //ToDo:企业Id
             ProjectionDefinitionBuilder<ic_factory_details> project = new ProjectionDefinitionBuilder<ic_factory_details>();
-            return _ic_factory_details.Find(p => returnlist.Select(x => x.item_id).Contains(p.icitem_id) && p.factory_id == factoryid,
-                project.Include(p => p.icitem_id).Include(p => p.production_leadtime).Include(p => p.stock_leadtime).Include(p => p.transportation_leadtime)).Result.
-                Select(x => new ICItemLeadTimeDto { item_id = x.icitem_id, transportation_leadtime = x.transportation_leadtime, stock_leadtime = x.stock_leadtime, production_leadtime = x.production_leadtime }).AsQueryable<ICItemLeadTimeDto>().ToListAsync();
+            return _ic_factory_details.Find(p => returnlist.Select(x => x.item_id).Contains(p.icitem_id) && p.factory_id == factoryid && p.tenant_id==tenantId && !p.IsDeleted,
+                project.Include(p => p.icitem_id).Include(p => p.production_leadtime).Include(p => p.stock_leadtime).Include(p => p.transportation_leadtime).Include(p=>p.order_leadtime)).Result.
+                Select(x => new ICItemLeadTimeDto { item_id = x.icitem_id, transportation_leadtime = x.transportation_leadtime, stock_leadtime = x.stock_leadtime, production_leadtime = x.production_leadtime, order_leadtime=x.order_leadtime }).AsQueryable<ICItemLeadTimeDto>().ToList();
+        }
+
+        //根据物料id获取物料供应商
+        private List<ic_item_pur> GetSupplier(List<BomChildExamineDto> returnlist, long tenantId,long factoryid)
+        {
+            //ToDo:企业Id
+            return _ic_item_pur.Find(p => returnlist.Select(x => x.item_id).Contains(p.icitem_id) && p.tenant_id == tenantId && p.factory_id == factoryid && !p.IsDeleted).Result;
         }
 
+        //根据物料id获取物料采购计划表
+        private List<ic_plan> GetICPlan(List<BomChildExamineDto> returnlist, long tenantId,long factoryid)
+        {
+            return _ic_plan.Find(p => returnlist.Select(x => x.item_id).Contains(p.icitem_id) &&p.tenant_id==tenantId  && p.factory_id == factoryid && !p.IsDeleted).Result;
+        }
+
+
         /// <summary>
-        /// 生成委外工单
+        /// 检查在途量
         /// </summary>
-        /// <param name="returnlist"></param>
-        /// <param name="factoryid"></param>
-        private void CreateMesOOder(List<BomChildExamineDto> returnlist, long factoryid)
+        /// <param name="returnlist">物料列表</param>
+        /// <param name="factoryid">工厂id</param>
+        /// <param name="deliveryDate">销售订单交付日期</param>
+        /// <returns></returns>
+        private async Task<List<ICItemDateDto>> CheckOnOrder(List<BomChildExamineDto> returnlist, long tenantId, long factoryid, DateTime deliveryDate)
         {
-            List<mes_oorder> oOderList = new List<mes_oorder>();
+            //ToDo:企业Id,数据状态过滤以及isdeleted
+            var po_list = _srm_po_list.Find(p => returnlist.Select(x => x.item_id).Contains(p.icitem_id) && p.tenant_id== tenantId && p.factory_id == factoryid && p.rarrdate >= DateTime.Now && p.rarrdate < deliveryDate && !p.IsDeleted).Result;
+            var itemlist = new List<ICItemDateDto>();//需要生成采购申请单的物料信息
+            var leadTimeList = GetLeadTime(returnlist, tenantId, factoryid);//提前期列表
+            var supplierList = GetSupplier(returnlist, tenantId, factoryid);//供应商列表
+            var planList = GetICPlan(returnlist, tenantId,factoryid);//plan列表
             foreach (var item in returnlist)
             {
-                mes_oorder oOrder = new mes_oorder();
-                oOrder.GenerateNewId();
-                oOrder.oorder_no = getOrderNum("WW");//生产工单编号
-                oOrder.oorder_type = "委外工单";//生产工单类型
-                oOrder.oorder_date = DateTime.Now;//委外订单日期
-                oOrder.oorder_state = "已提交";//订单状态
-                oOrder.ooentry_prd = 10000;//生产组织
-                oOrder.ooentry_prdname = "1000";//生产组织名称
-                oOrder.ooentry_wrkc = 10000;//工作中心id
-                oOrder.ooentry_wrkcname = "10001";//工作中心名称
-                oOrder.planner_num = "wwww";//计划员工号
-                oOrder.planner_name = "qqq";//计划员名称
-                oOrder.ooentry_stime = DateTime.Now;//计划开工日期
-                oOrder.ooentry_etime = DateTime.Now;//计划完工日期
-                oOrder.product_code = "产品代码";//产品代码
-                oOrder.ffms_number = "1000";//fms旧料号
-                oOrder.product_name = "test";//产品名称
-                oOrder.specification_model = "";//规格型号
-                oOrder.bom_number = "";//bom编码
-                oOrder.unit = "";//单位
-                oOrder.morder_progress = "";//工单进度
-                oOrder.morder_production_number = 120;//工单生产数量(计划数量)
-                oOrder.need_number = 11;//需求数量
-                oOrder.remaining_number = 11;//剩余可用数量
-                oOrder.work_number = 11;//报工数量
-                oOrder.inspection_number = 11;//报检数量
-                oOrder.qualified_number = 22;//合格数量
-                oOrder.inventory_number = 22;//入库数量
-                oOrder.notice_qty = 22;//已开通知单数量
-                oOrder.moentry_on = 22;//启动状态
-                oOrder.start_time = DateTime.Now;//开始时间
-                oOrder.pause_time = DateTime.Now;//最近暂停时间
-                oOrder.restart_time = DateTime.Now;//最近重启时间
-                oOrder.project_name = "22";//项目名称
-                oOrder.sent_status = 22;//发料状态 1-待发料  2-已发料
-                oOrder.production_unit = "ge";//加工单位
-                oOrder.production_unit_code = "元";//加工单位编码
-                oOrder.need_icitem_status = 1;//所需物料是否充足  1-充足 0-缺料
-                oOderList.Add(oOrder);
+                //缺料
+                if (item.lack_qty > 0)
+                {
+                    var itemPO = po_list.FindAll(x => x.icitem_id == item.item_id).OrderBy(v => v.rarrdate).ToList();
+                    if (itemPO.Count <= 0 || itemPO.Sum(p => (p.qty - p.esqty)) < item.lack_qty)
+                    {
+                        //外购生成采购申请单
+                        if (item.erp_cls == 3)
+                        {
+                            DateTime lastTime=CreateSRMPR(item, tenantId, factoryid, 2, leadTimeList, supplierList, planList,deliveryDate);
+                            itemlist.Add(new ICItemDateDto { item_id = item.item_id, dateTime = lastTime });
+                        }
+                        else if (item.erp_cls == 2)
+                        {
+                            //委外生成委外采购申请单和委外工单
+                            DateTime lastTime=CreateSRMPR(item, tenantId, factoryid, 1, leadTimeList, supplierList, planList,deliveryDate);
+                            CreateMesOOder(item, tenantId, factoryid, leadTimeList, supplierList,deliveryDate);
+                            itemlist.Add(new ICItemDateDto { item_id = item.item_id, dateTime = lastTime});
+                        }
+                    }
+                    else
+                    {
+                        decimal? itemPOQty = 0;//当前物料已抵扣数量
+                        for (int i = 0; i < itemPO.Count; i++)
+                        {
+                            if (itemPOQty + itemPO[i].qty - itemPO[i].esqty >= item.lack_qty)
+                            {
+                                //在途满足,写占用表
+                                itemlist.Add(new ICItemDateDto { item_id = itemPO[i].icitem_id, dateTime = itemPO[i].rarrdate });
+                                srm_po_occupy po_Occupy = new srm_po_occupy();
+                                po_Occupy.GenerateNewId();
+                                po_Occupy.polist_id = itemPO[i].po_id;//采购订单id
+                                po_Occupy.polist_row = itemPO[i].polist_row;//采购订单行号
+                                po_Occupy.eid = 111;//客户订单行id
+                                po_Occupy.bill_no = 111;//客户订单id
+                                po_Occupy.type = "在途占用";//类型
+                                po_Occupy.entry_id = 1;//行号
+                                po_Occupy.qty = item.lack_qty - itemPOQty;//占用量
+                                po_Occupy.stime = DateTime.Now;//开始时间
+                                po_Occupy.etime = deliveryDate;//结束时间
+                                po_Occupy.state = 1;//占用状态
+                                po_Occupy.cby = "";//变更人
+                                po_Occupy.creason = "";//变更原因
+                                po_Occupy.ctime = DateTime.Now;//变更时间
+                                await _srm_po_occupy.InsertOne(po_Occupy);
+                                break;
+                            }
+                            else
+                            {
+                                //不满足逐步扣减
+                                itemPOQty = itemPOQty + itemPO[i].qty - itemPO[i].esqty;
+                                srm_po_occupy po_Occupy = new srm_po_occupy();
+                                po_Occupy.GenerateNewId();
+                                po_Occupy.polist_id = itemPO[i].po_id;//采购订单id
+                                po_Occupy.polist_row = itemPO[i].polist_row;//采购订单行号
+                                po_Occupy.eid = 111;//客户订单行id
+                                po_Occupy.bill_no = 111;//客户订单id
+                                po_Occupy.type = "在途占用";//类型
+                                po_Occupy.entry_id = 1;//行号
+                                po_Occupy.qty = itemPO[i].qty - itemPO[i].esqty;//占用量
+                                po_Occupy.stime = DateTime.Now;//开始时间
+                                po_Occupy.etime = deliveryDate;//结束时间
+                                po_Occupy.state = 1;//占用状态
+                                po_Occupy.cby = "";//变更人
+                                po_Occupy.creason = "";//变更原因
+                                po_Occupy.ctime = DateTime.Now;//变更时间
+                               await _srm_po_occupy.InsertOne(po_Occupy);
+                            }
+                        }
+                    }
+                }
             }
-            _mes_oorder.InsertMany(oOderList);
+            return itemlist;
+        }
+
+        /// <summary>
+        /// 生成委外工单
+        /// </summary>
+        /// <param name="returnlist"></param>
+        /// <param name="factoryid"></param>
+        private DateTime CreateMesOOder(BomChildExamineDto returnlist, long tenantId, long factoryid, List<ICItemLeadTimeDto> iCItemLeadTimes,List<ic_item_pur> supplierList,DateTime deliveryDate)
+        {
+            mes_oorder oOrder = new mes_oorder();
+            oOrder.GenerateNewId();
+            oOrder.oorder_no = getOrderNum("WW");//生产工单编号
+            oOrder.oorder_type = "委外工单";//生产工单类型
+            oOrder.oorder_date = DateTime.Now;//委外订单日期
+            oOrder.oorder_state = "已提交";//订单状态
+            oOrder.ooentry_prd = 10000;//生产组织
+            oOrder.ooentry_prdname = "1000";//生产组织名称
+            oOrder.ooentry_wrkc = 10000;//工作中心id
+            oOrder.ooentry_wrkcname = "10001";//工作中心名称
+            oOrder.planner_num = "wwww";//计划员工号
+            oOrder.planner_name = "qqq";//计划员名称
+            oOrder.ooentry_stime = DateTime.Now;//计划开工日期
+            oOrder.ooentry_etime = DateTime.Now;//计划完工日期
+            oOrder.product_code = "产品代码";//产品代码
+            oOrder.ffms_number = "1000";//fms旧料号
+            oOrder.product_name = "test";//产品名称
+            oOrder.specification_model = returnlist.model;//规格型号
+            oOrder.bom_number = "";//bom编码
+            oOrder.unit = returnlist.unit;//单位
+            oOrder.morder_progress = "";//工单进度
+            oOrder.morder_production_number = returnlist.lack_qty;//工单生产数量(计划数量)
+            oOrder.need_number = returnlist.lack_qty;//需求数量
+            oOrder.remaining_number = returnlist.lack_qty;//剩余可用数量
+            oOrder.work_number = 0;//报工数量
+            oOrder.inspection_number = 0;//报检数量
+            oOrder.qualified_number = 0;//合格数量
+            oOrder.inventory_number = 0;//入库数量
+            oOrder.notice_qty = 0;//已开通知单数量
+            oOrder.moentry_on = 1;//启动状态
+            //oOrder.start_time = DateTime.Now;//开始时间
+            //oOrder.pause_time = DateTime.Now;//最近暂停时间
+            //oOrder.restart_time = DateTime.Now;//最近重启时间
+            oOrder.project_name = returnlist.item_name;//项目名称
+            oOrder.sent_status = 1;//发料状态 1-待发料  2-已发料
+            oOrder.production_unit = returnlist.unit;//加工单位
+            oOrder.production_unit_code = "";//加工单位编码
+            oOrder.need_icitem_status = 1;//所需物料是否充足  1-充足 0-缺料
+            oOrder.tenant_id = tenantId;
+            oOrder.factory_id = factoryid;
+            _mes_oorder.InsertOne(oOrder);
+            return DateTime.Now;
         }
 
 
         /// <summary>
-        /// 生成采购申请单
+        /// 生成采购申请单,颗粒度是一个物料一个单,没必要弄列表
         /// </summary>
         /// <param name="returnlist"></param>
         /// <param name="factoryid"></param>
         /// <param name="orderType">1委外采购申请单,2采购申请单</param>
-        private void CreateSRMPR(List<BomChildExamineDto> returnlist, long factoryid, int orderType)
+        private DateTime CreateSRMPR(BomChildExamineDto returnlist, long tenantId, long factoryid, int orderType,List<ICItemLeadTimeDto> iCItemLeadTimes, List<ic_item_pur> supplierList, List<ic_plan> planList,DateTime deliveryDate)
         {
-            List<srm_pr_main> prList = new List<srm_pr_main>();
-            foreach (var item in returnlist)
-            {
-                srm_pr_main srm_Pr = new srm_pr_main();
-                srm_Pr.GenerateNewId();
-                srm_Pr.pr_billno = "";//pr单号
-                srm_Pr.pr_mono = "";//关联工单号
-                srm_Pr.entity_id = 1;//pr单号
-                srm_Pr.pr_purchaseid = 1001;//供应商id
-                srm_Pr.pr_purchasenumber = "10000";//供应商编码
-                srm_Pr.pr_purchasename = "1000";//供应商名称
-                srm_Pr.pr_purchaser = "10000";//采购员
-                srm_Pr.pr_purchaser_num = "10001";//采购员工号(采购信息表)
-                srm_Pr.pr_rqty = 20;//需求数量
-                srm_Pr.pr_aqty = 1000;//申请数量
-                srm_Pr.pr_sqty = 22;//建议数量
-                srm_Pr.icitem_id = 10001;//物料id
-                srm_Pr.icitem_name = "test111";//物料名称
-                srm_Pr.pr_order_type = 1000;//单据类型
-                srm_Pr.pr_ssend_date = DateTime.Now;//系统建议下单日期
-                srm_Pr.pr_sarrive_date = DateTime.Now;//系统建议到达日期(建议到货日期)
-                srm_Pr.pr_bsarrive_date = DateTime.Now;//采购员建议到货日期
-                srm_Pr.pr_oarrive_date = DateTime.Now;//订单到货日期
-                srm_Pr.pr_psend_date = DateTime.Now;//计划下单日期
-                srm_Pr.pr_parrive_date = DateTime.Now;//计划到达日期
-                srm_Pr.pr_rarrive_date = DateTime.Now;//需求到货日期
-                srm_Pr.pr_rparrive_date = DateTime.Now;//再计划到货日期
-                srm_Pr.pr_psend_date = DateTime.Now;//计划下单日期
-                srm_Pr.pr_pur_affirm_date = DateTime.Now;//采购确认到货日期
-                srm_Pr.pr_sysprice = 22;//系统价格(含税)
-                srm_Pr.pr_orderprice = 22;//订单价格(含税)
-                srm_Pr.pr_price = 22;//采购净价(不含税)
-                srm_Pr.pr_rate = 22;//税率
-                srm_Pr.pr_unit = "元";//单位
-                srm_Pr.state = 22;//状态
-                srm_Pr.old_apply_aqty = 22;//已申请数量
-                srm_Pr.pr_type = 22;//申请类型
-                srm_Pr.currencytype = 22;//币种
-                srm_Pr.secInv_ratio = 22;//安全库存触发采购比例
-                srm_Pr.remark = "元";//备注
-                srm_Pr.pr_rreason = "元";//拒绝原因
-                prList.Add(srm_Pr);
-            }
-            _srm_pr_main.InsertMany(prList);
+            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);//
+            srm_pr_main srm_Pr = new srm_pr_main();
+            srm_Pr.GenerateNewId();
+            srm_Pr.pr_billno = getOrderNum("PR");//pr单号
+            srm_Pr.pr_mono = "";//关联工单号
+            srm_Pr.entity_id = 1;//工单行号
+            srm_Pr.pr_purchaseid = supplier.supplier_id;//供应商id  
+            srm_Pr.pr_purchasenumber = supplier.supplier_number;//供应商编码
+            srm_Pr.pr_purchasename =supplier.supplier_name;//供应商名称
+            srm_Pr.pr_purchaser =supplier.purcher;//采购员
+            srm_Pr.pr_purchaser_num ="";//采购员工号(采购信息表)
+            srm_Pr.pr_rqty =returnlist.lack_qty;//需求数量
+            srm_Pr.pr_aqty = returnlist.lack_qty;//申请数量
+            srm_Pr.pr_sqty = returnlist.lack_qty;//建议数量
+            srm_Pr.icitem_id =returnlist.item_id;//物料id
+            srm_Pr.icitem_name = returnlist.item_name;//物料名称
+            srm_Pr.pr_order_type = 1;//单据类型
+            srm_Pr.pr_ssend_date = deliveryDate.AddDays((double)leadTime.order_leadtime * -1);//系统建议下单日期
+            srm_Pr.pr_sarrive_date = deliveryDate.AddDays((double)leadTime.transportation_leadtime * -1);//系统建议到达日期(建议到货日期)
+            srm_Pr.pr_psend_date = deliveryDate.AddDays((double)leadTime.order_leadtime * -1);//计划下单日期
+            srm_Pr.pr_parrive_date = deliveryDate.AddDays((double)leadTime.transportation_leadtime * -1);//计划到达日期
+            srm_Pr.pr_psend_date = deliveryDate.AddDays((double)leadTime.order_leadtime * -1);//计划下单日期
+            srm_Pr.pr_sysprice = returnlist.lack_qty* supplier.netpurchase_price*(1+ supplier.taxrate);//系统价格(含税)
+            srm_Pr.pr_orderprice = returnlist.lack_qty * supplier.netpurchase_price * (1 + supplier.taxrate);//订单价格(含税)
+            srm_Pr.pr_price =supplier.netpurchase_price;//采购净价(不含税)
+            srm_Pr.pr_rate =supplier.taxrate;//税率
+            srm_Pr.pr_unit = returnlist.unit;//单位
+            srm_Pr.state = 1;//状态
+            srm_Pr.old_apply_aqty = 0;//已申请数量
+            srm_Pr.pr_type = orderType;//申请类型
+            srm_Pr.currencytype =supplier.currency_type;//币种
+            srm_Pr.secInv_ratio = plan.secinv_ratio;//安全库存触发采购比例
+            srm_Pr.tenant_id = tenantId;
+            srm_Pr.factory_id = factoryid;
+            _srm_pr_main.InsertOne(srm_Pr);
+            decimal? totalLeadTime = leadTime.transportation_leadtime + leadTime.stock_leadtime + leadTime.production_leadtime + leadTime.order_leadtime;
+            return deliveryDate.AddDays((double)totalLeadTime*-1);//减去提前期
         }
 
         // 生成订单编号 字母+年月日+8位随机数+时间戳

+ 292 - 0
MicroServices/Business/Business.Application/ScheduleTaskManagement/ScheduleTaskAppService.cs

@@ -0,0 +1,292 @@
+using Microsoft.EntityFrameworkCore;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Linq.Dynamic.Core;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Domain.Repositories;
+using Business.Models;
+using Microsoft.AspNetCore.Authorization;
+using Business.Permissions;
+using XCZ;
+using Business.ResourceExamineManagement.Dto;
+using Bussiness.Model.MES.IC;
+using AutoMapper.Internal.Mappers;
+using Bussiness.Model.Tech;
+using Bussiness.Model.Production;
+using Business.Core.MongoDBHelper;
+using Business.Core.Utilities;
+using Hangfire.Storage.Monitoring;
+using Business.BookManagement.Dto;
+using Volo.Abp.ObjectMapping;
+using Volo.Abp.Application.Services;
+using ZstdSharp.Unsafe;
+using System.Transactions;
+using NUglify.JavaScript.Syntax;
+using System.Linq.Expressions;
+using XCZ.Extensions;
+using System.ComponentModel;
+using System.Reflection.Emit;
+using NUglify.Helpers;
+using Microsoft.AspNetCore.SignalR.Protocol;
+using System.ComponentModel.Design;
+using Volo.Abp.Validation.StringValues;
+using System.Runtime.CompilerServices;
+using MongoDB.Driver;
+using Volo.Abp.Validation.Localization;
+using Hangfire.Annotations;
+using System.Globalization;
+using MongoDB.Driver.Linq;
+using Bussiness.Model.SRM;
+using System.ComponentModel.DataAnnotations;
+using Bussiness.Model.Sale;
+using Amazon.Runtime.Internal.Transform;
+using System.IO.Compression;
+using System.Collections;
+using System.Data.SqlTypes;
+using Bussiness.Model.SystemData;
+
+namespace Business.ScheduleTaskManagement
+{
+    /// <summary>
+    /// 资源检查
+    /// </summary>
+    public class ScheduleTaskAppService : ApplicationService, IScheduleTaskAppService
+    {
+        #region 服务
+        /// <summary>
+        /// 物料bom
+        /// </summary>
+        private readonly IMongoDB<ic_bom> _ic_bom;
+        private IRepository<ic_bom, long> _mysql_ic_bom;
+
+        /// <summary>
+        /// 物料bom子表
+        /// </summary>
+        private readonly IMongoDB<ic_bom_child> _ic_bom_child;
+        private IRepository<ic_bom_child, long> _mysql_ic_bom_child;
+
+        /// <summary>
+        /// 物料
+        /// </summary>
+        private readonly IMongoDB<ic_item> _ic_item;
+        private IRepository<ic_item, long> _mysql_ic_item;
+
+        /// <summary>
+        /// 替代群组
+        /// </summary>
+        private readonly IMongoDB<ic_substitute> _ic_substitute;
+        private IRepository<ic_substitute, long> _mysql_ic_substitute;
+
+        /// <summary>
+        /// 物料替代多群组
+        /// </summary>
+        private readonly IMongoDB<ic_substitute_all> _ic_substitute_all;
+        private IRepository<ic_substitute_all, long> _mysql_ic_substitute_all;
+
+        /// <summary>
+        /// 物料替代多群组明细
+        /// </summary>
+        private readonly IMongoDB<ic_substitute_all_dtl> _ic_substitute_all_dtl;
+        private IRepository<ic_substitute_all_dtl, long> _mysql_ic_substitute_all_dtl;
+
+        /// <summary>
+        /// 供应商
+        /// </summary>
+        private readonly IMongoDB<srm_supplier> _srm_supplier;
+        private IRepository<srm_supplier, long> _mysql_srm_supplier;
+
+        /// <summary>
+        /// 工艺路径
+        /// </summary>
+        private readonly IMongoDB<mes_technique> _mes_technique;
+        private IRepository<mes_technique, long> _mysql_mes_technique;
+
+        /// <summary>
+        /// 工序
+        /// </summary>
+        private readonly IMongoDB<mes_process> _mes_process;
+        private IRepository<mes_process, long> _mysql_mes_process;
+
+        /// <summary>
+        /// 工艺路径关联工序
+        /// </summary>
+        private readonly IMongoDB<mes_tech_process> _mes_tech_process;
+        private IRepository<mes_tech_process, long> _mysql_mes_tech_process;
+        #endregion
+
+        /// <summary>
+        /// 构造函数
+        /// </summary>
+        public ScheduleTaskAppService(
+            IMongoDB<ic_bom> ic_bom,
+            IMongoDB<ic_bom_child> ic_bom_child,
+            IMongoDB<ic_item> ic_item,
+            IMongoDB<ic_substitute> ic_substitute,
+            IMongoDB<ic_substitute_all> ic_substitute_all,
+            IMongoDB<ic_substitute_all_dtl> ic_substitute_all_dtl,
+            IMongoDB<srm_supplier> srm_supplier,
+            IMongoDB<mes_technique> mes_technique,
+            IMongoDB<mes_process> mes_process,
+            IMongoDB<mes_tech_process> mes_tech_process,
+            IRepository<ic_bom, long> mysql_ic_bom,
+            IRepository<ic_bom_child, long> mysql_ic_bom_child,
+            IRepository<ic_item, long> mysql_ic_item,
+            IRepository<ic_substitute, long> mysql_ic_substitute,
+            IRepository<ic_substitute_all, long> mysql_ic_substitute_all,
+            IRepository<ic_substitute_all_dtl, long> mysql_ic_substitute_all_dtl,
+            IRepository<srm_supplier, long> mysql_srm_supplier,
+            IRepository<mes_technique, long> mysql_mes_technique,
+            IRepository<mes_process, long> mysql_mes_process,
+            IRepository<mes_tech_process, long> mysql_mes_tech_process
+            )
+        {
+            _ic_bom= ic_bom;
+            _ic_bom_child= ic_bom_child;
+            _ic_item= ic_item;
+            _ic_substitute= ic_substitute;
+            _ic_substitute_all= ic_substitute_all;
+            _ic_substitute_all_dtl= ic_substitute_all_dtl;
+            _srm_supplier= srm_supplier;
+            _mes_technique = mes_technique;
+            _mes_process= mes_process;
+            _mes_tech_process = mes_tech_process;
+            _mysql_ic_bom= mysql_ic_bom;
+            _mysql_ic_bom_child= mysql_ic_bom_child;
+            _mysql_ic_item= mysql_ic_item;
+            _mysql_ic_substitute= mysql_ic_substitute;
+            _mysql_ic_substitute_all= mysql_ic_substitute_all;
+            _mysql_ic_substitute_all_dtl= mysql_ic_substitute_all_dtl;
+            _mysql_srm_supplier= mysql_srm_supplier;
+            _mysql_mes_technique= mysql_mes_technique;
+            _mysql_mes_process= mysql_mes_process;
+            _mysql_mes_tech_process= mysql_mes_tech_process;
+        }
+
+        /// <summary>
+        /// 同步基础数据到mongodb
+        /// </summary>
+        /// <returns></returns>
+        /// <exception cref="NotImplementedException"></exception>
+        public async Task<ResultDto> SyncBaseDataToMongoDB()
+        {
+            //数据同步返回结果
+            ResultDto result = new ResultDto();
+            result.start = DateTime.Now;
+            try
+            {
+                //同步物料Bom数据
+                var icBoms = await _mysql_ic_bom.GetListAsync();
+                if (icBoms.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _ic_bom.DeleteAll();
+                    //插入数据
+                    await _ic_bom.InsertMany(icBoms);
+                }
+
+                //同步物料BOM明细数据
+                var icbom_childs = await _mysql_ic_bom_child.GetListAsync();
+                if (icbom_childs.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _ic_bom_child.DeleteAll();
+                    //插入数据
+                    await _ic_bom_child.InsertMany(icbom_childs);
+                }
+
+                //同步物料数据
+                var icItems = await _mysql_ic_item.GetListAsync();
+                if (icItems.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _ic_item.DeleteAll();
+                    //插入数据
+                    await _ic_item.InsertMany(icItems);
+                }
+
+                //同步替代群组数据
+                var subtitutes = await _mysql_ic_substitute.GetListAsync();
+                if (subtitutes.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _ic_substitute.DeleteAll();
+                    //插入数据
+                    await _ic_substitute.InsertMany(subtitutes);
+                }
+
+                //同步物料替代多群组数据
+                var subAlls = await _mysql_ic_substitute_all.GetListAsync();
+                if (subAlls.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _ic_substitute_all.DeleteAll();
+                    //插入数据
+                    await _ic_substitute_all.InsertMany(subAlls);
+                }
+
+                //同步物料替代多群组明细数据
+                var subAllDtls = await _mysql_ic_substitute_all_dtl.GetListAsync();
+                if (subAllDtls.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _ic_substitute_all_dtl.DeleteAll();
+                    //插入数据
+                    await _ic_substitute_all_dtl.InsertMany(subAllDtls);
+                }
+
+                //同步供应商数据
+                var suppliers = await _mysql_srm_supplier.GetListAsync();
+                if (suppliers.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _srm_supplier.DeleteAll();
+                    //插入数据
+                    await _srm_supplier.InsertMany(suppliers);
+                }
+
+                //同步工艺路径数据
+                var techs = await _mysql_mes_technique.GetListAsync();
+                if (techs.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _mes_technique.DeleteAll();
+                    //插入数据
+                    await _mes_technique.InsertMany(techs);
+                }
+
+                //同步工序数据
+                var processes = await _mysql_mes_process.GetListAsync();
+                if (suppliers.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _mes_process.DeleteAll();
+                    //插入数据
+                    await _mes_process.InsertMany(processes);
+                }
+
+                //同步工艺关联工序数据
+                var tech_procs = await _mysql_mes_tech_process.GetListAsync();
+                if (tech_procs.Count > 0)
+                {
+                    //先清空表数据(删除mongodb中的集合)
+                    await _mes_tech_process.DeleteAll();
+                    //插入数据
+                    await _mes_tech_process.InsertMany(tech_procs);
+                }
+
+                result.end = DateTime.Now;
+                result.isSuccess = true;
+                return result;
+            }
+            catch (Exception ex)
+            {
+                result.end = DateTime.Now;
+                result.isSuccess = false;
+                result.msg = ex.Message;
+                return result;
+            }
+        }
+    }
+}

+ 6 - 0
MicroServices/Business/Business.Core/MongoDBHelper/IMongoDB.cs

@@ -92,6 +92,12 @@ namespace Business.Core.MongoDBHelper
         /// <returns></returns>
         Task<DeleteResult> Delete(FilterDefinition<T> filter, bool isOne = false);
 
+        /// <summary>
+        /// 删除数据-直接删除集合,慎用,慎用,慎用
+        /// </summary>
+        /// <returns></returns>
+        Task DeleteAll();
+
         /// <summary>
         /// 根据条件获取结果列表
         /// </summary>

+ 10 - 0
MicroServices/Business/Business.EntityFrameworkCore/EntityFrameworkCore/BusinessDbContext.cs

@@ -4,6 +4,7 @@ using Bussiness.Model.MES.IC;
 using Bussiness.Model.Production;
 using Bussiness.Model.Sale;
 using Bussiness.Model.SRM;
+using Bussiness.Model.SystemData;
 using Bussiness.Model.Tech;
 using Microsoft.EntityFrameworkCore;
 using System;
@@ -191,6 +192,15 @@ namespace Business.EntityFrameworkCore
         #region SRM
         public DbSet<srm_pr_main> srm_pr_main { get; set; }
         public DbSet<mes_oorder> mes_oorder { get; set; }
+        public DbSet<srm_po_main> srm_po_main { get; set; }
+        public DbSet<srm_po_list> srm_po_list { get; set; }
+
+        public DbSet<srm_po_occupy> srm_po_occupy { get; set; }
+
+        /// <summary>
+        /// ¹©Ó¦ÉÌ
+        /// </summary>
+        public DbSet<srm_supplier> srm_supplier { get; set; }
         #endregion
         //Code generation...
         public BusinessDbContext(DbContextOptions<BusinessDbContext> options)

+ 2 - 2
MicroServices/Business/Business.EntityFrameworkCore/EntityFrameworkCore/BusinessDbContextModelCreatingExtensions.cs

@@ -97,7 +97,8 @@ namespace Business.EntityFrameworkCore
             builder.Entity<ic_item_stock>(b =>
             {
                 b.ToTable("ic_item_stock").HasComment("物料库存表");
-
+                //不映射到数据库中
+                b.Ignore(x => x.bang_id);
                 b.ConfigureByConvention();
             });
 
@@ -321,7 +322,6 @@ namespace Business.EntityFrameworkCore
             builder.Entity<crm_seorderentry>(b =>
             {
                 b.ToTable("crm_seorderentry").HasComment("销售订单明细表");
-
                 b.ConfigureByConvention();
             });
 

+ 9464 - 0
MicroServices/Business/Business.Host/Migrations/20230213062931_bang_id.Designer.cs

@@ -0,0 +1,9464 @@
+// <auto-generated />
+using System;
+using Business.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using Volo.Abp.EntityFrameworkCore;
+
+#nullable disable
+
+namespace Business.Migrations
+{
+    [DbContext(typeof(BusinessMigrationDbContext))]
+    [Migration("20230213062931_bang_id")]
+    partial class bang_id
+    {
+        protected override void BuildTargetModel(ModelBuilder modelBuilder)
+        {
+#pragma warning disable 612, 618
+            modelBuilder
+                .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql)
+                .HasAnnotation("ProductVersion", "6.0.5")
+                .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+            modelBuilder.Entity("Business.Models.Book", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<DateTime>("CreationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("CreationTime");
+
+                    b.Property<Guid?>("CreatorId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("CreatorId");
+
+                    b.Property<string>("Description")
+                        .HasColumnType("longtext");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<DateTime?>("LastModificationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("LastModificationTime");
+
+                    b.Property<Guid?>("LastModifierId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("LastModifierId");
+
+                    b.Property<string>("Name")
+                        .IsRequired()
+                        .HasColumnType("longtext");
+
+                    b.Property<int>("Price")
+                        .HasColumnType("int");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("Book", (string)null);
+                });
+
+            modelBuilder.Entity("Business.Models.PrintTemplate", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<string>("Content")
+                        .HasColumnType("longtext");
+
+                    b.Property<DateTime>("CreationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("CreationTime");
+
+                    b.Property<Guid?>("CreatorId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("CreatorId");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<bool>("IsDefault")
+                        .HasColumnType("tinyint(1)");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<DateTime?>("LastModificationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("LastModificationTime");
+
+                    b.Property<Guid?>("LastModifierId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("LastModifierId");
+
+                    b.Property<string>("Name")
+                        .IsRequired()
+                        .HasColumnType("longtext");
+
+                    b.Property<int?>("Orientation")
+                        .HasColumnType("int");
+
+                    b.Property<double?>("PaperHeight")
+                        .HasColumnType("double");
+
+                    b.Property<int?>("PaperKind")
+                        .HasColumnType("int");
+
+                    b.Property<double?>("PaperWidth")
+                        .HasColumnType("double");
+
+                    b.Property<string>("Remark")
+                        .HasColumnType("longtext");
+
+                    b.Property<int>("Sort")
+                        .HasColumnType("int");
+
+                    b.Property<int>("Status")
+                        .HasColumnType("int");
+
+                    b.Property<int>("TempType")
+                        .HasColumnType("int");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_print_template", (string)null);
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_bom", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<DateTime?>("begin_day")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("生效日期");
+
+                    b.Property<string>("biller")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("图片");
+
+                    b.Property<int>("bom_num")
+                        .HasColumnType("int")
+                        .HasComment("序号");
+
+                    b.Property<string>("bom_number")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("bom单编号");
+
+                    b.Property<string>("chartnumber")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("图表编号");
+
+                    b.Property<DateTime?>("check_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("检验时间");
+
+                    b.Property<string>("checker")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("检验人");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<DateTime?>("end_day")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("失效日期");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("fse_status")
+                        .HasColumnType("int")
+                        .HasComment("使用状态");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("item_name")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("item_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料代码");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("product_designer")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("产品设计员");
+
+                    b.Property<string>("product_principal")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("生产负责人");
+
+                    b.Property<long>("tech_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺主键");
+
+                    b.Property<string>("tech_name")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("工艺名称");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<DateTime?>("use_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("bom创建时间");
+
+                    b.Property<string>("user")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("bom创建人");
+
+                    b.Property<string>("version")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("版本");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_bom", (string)null);
+
+                    b.HasComment("物料BOM");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_bom_child", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<int>("backflush")
+                        .HasColumnType("int")
+                        .HasComment("是否倒冲");
+
+                    b.Property<DateTime?>("begin_day")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("生效日期");
+
+                    b.Property<long>("bom_id")
+                        .HasColumnType("bigint")
+                        .HasComment("bom主键");
+
+                    b.Property<string>("bom_number")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("bom单编号");
+
+                    b.Property<int>("child_num")
+                        .HasColumnType("int")
+                        .HasComment("序号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<DateTime?>("end_day")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("失效日期");
+
+                    b.Property<int>("entryid")
+                        .HasColumnType("int")
+                        .HasComment("顺序号");
+
+                    b.Property<int>("erp_cls")
+                        .HasColumnType("int")
+                        .HasComment("物料属性");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("haveicsubs")
+                        .HasColumnType("int")
+                        .HasComment("存在替代关系");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_ids")
+                        .HasMaxLength(2000)
+                        .HasColumnType("varchar(2000)")
+                        .HasComment("组合模式");
+
+                    b.Property<int>("is_bom")
+                        .HasColumnType("int")
+                        .HasComment("是否是BOM");
+
+                    b.Property<int>("is_replace")
+                        .HasColumnType("int")
+                        .HasComment("是否群组替代");
+
+                    b.Property<int>("iskeyitem")
+                        .HasColumnType("int")
+                        .HasComment("是否关键件");
+
+                    b.Property<string>("item_name")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("item_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料代码");
+
+                    b.Property<string>("note")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("备注");
+
+                    b.Property<DateTime?>("op_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("操作时间");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("用量");
+
+                    b.Property<decimal?>("scrap")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("损耗率");
+
+                    b.Property<string>("substitute_code")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("群组代码");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<int>("type")
+                        .HasColumnType("int")
+                        .HasComment("物料类型");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<int>("use_status")
+                        .HasColumnType("int")
+                        .HasComment("使用状态");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_bom_child", (string)null);
+
+                    b.HasComment("物料BOM明细");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_factory_details", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<int>("batch_manager")
+                        .HasColumnType("int")
+                        .HasComment("是否采用业务批次管理");
+
+                    b.Property<long>("cav_acct")
+                        .HasColumnType("bigint")
+                        .HasComment("标准成本调整差异科目代码");
+
+                    b.Property<decimal?>("check_cycle")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("盘点周期");
+
+                    b.Property<string>("check_cycunit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("盘点周期单位");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<decimal?>("daily_consume")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("日消耗量");
+
+                    b.Property<int>("days_per")
+                        .HasColumnType("int")
+                        .HasComment("每周_月第天");
+
+                    b.Property<long>("default_chkloc")
+                        .HasColumnType("bigint")
+                        .HasComment("默认待检仓库");
+
+                    b.Property<long>("default_chksp")
+                        .HasColumnType("bigint")
+                        .HasComment("默认待检仓位");
+
+                    b.Property<long>("default_loc")
+                        .HasColumnType("bigint")
+                        .HasComment("默认仓库");
+
+                    b.Property<string>("default_manager")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("默认仓管员");
+
+                    b.Property<long>("default_sp")
+                        .HasColumnType("bigint")
+                        .HasComment("默认仓位");
+
+                    b.Property<string>("factory_fode")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("工厂编码");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<decimal?>("high_limit")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("最高存量");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("item_shelve")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("货架信息");
+
+                    b.Property<DateTime?>("last_checkdate")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("上次盘点日期");
+
+                    b.Property<decimal?>("low_limit")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("最低存量");
+
+                    b.Property<decimal?>("mat_enter_days")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("原材料入库时间/天");
+
+                    b.Property<long>("mcv_acct")
+                        .HasColumnType("bigint")
+                        .HasComment("材料成本差异科目代码");
+
+                    b.Property<string>("note")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("特殊备注");
+
+                    b.Property<decimal?>("ordissu_days")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("工单发料时间/天");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("pcv_acct")
+                        .HasColumnType("bigint")
+                        .HasComment("加工费差异科目代码");
+
+                    b.Property<long>("pick_type")
+                        .HasColumnType("bigint")
+                        .HasComment("领料类型");
+
+                    b.Property<decimal?>("prd_out_days")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("成品发货时间/天");
+
+                    b.Property<decimal?>("prdenter_days")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("成品入库时间/天");
+
+                    b.Property<string>("product_line")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("产品线");
+
+                    b.Property<decimal?>("production_leadtime")
+                        .IsRequired()
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("生产中提前期_天");
+
+                    b.Property<decimal?>("qty_max")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("最大订货量");
+
+                    b.Property<decimal?>("raw_matreceiv_days")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("原材料收货处理时间/天");
+
+                    b.Property<long>("sl_acct")
+                        .HasColumnType("bigint")
+                        .HasComment("废品损失科目代码");
+
+                    b.Property<decimal?>("stock_leadtime")
+                        .IsRequired()
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("仓库中提前期_天");
+
+                    b.Property<int>("stock_time")
+                        .HasColumnType("int")
+                        .HasComment("是否需要库龄管理");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<decimal?>("transportation_leadtime")
+                        .IsRequired()
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("运输中提前期_天");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<string>("warehouse_note")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("库存备注");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_factory_details", (string)null);
+
+                    b.HasComment("工厂物料明细表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_item", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<int>("allowbatch")
+                        .HasColumnType("int")
+                        .HasComment("批号管理");
+
+                    b.Property<int>("allowmanu")
+                        .HasColumnType("int")
+                        .HasComment("允许生产");
+
+                    b.Property<int>("allowout")
+                        .HasColumnType("int")
+                        .HasComment("允许委外");
+
+                    b.Property<int>("allowpur")
+                        .HasColumnType("int")
+                        .HasComment("允许采购");
+
+                    b.Property<int>("allowsale")
+                        .HasColumnType("int")
+                        .HasComment("允许销售");
+
+                    b.Property<int>("allowserial")
+                        .HasColumnType("int")
+                        .HasComment("序列号管理");
+
+                    b.Property<string>("box_model")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)")
+                        .HasComment("盒贴规格");
+
+                    b.Property<string>("chart_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("图号");
+
+                    b.Property<string>("check_bybarcode")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("严格进行二维码数量校验");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("cubic_measure")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("长度单位");
+
+                    b.Property<int>("enable_warning")
+                        .HasColumnType("int")
+                        .HasComment("启用预警");
+
+                    b.Property<int>("erp_cls")
+                        .HasColumnType("int")
+                        .HasComment("物料属性");
+
+                    b.Property<string>("erp_cls_name")
+                        .HasColumnType("longtext")
+                        .HasComment("物料属性");
+
+                    b.Property<string>("erp_oldnumber")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("erp旧料号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("fms_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("fms旧料号");
+
+                    b.Property<string>("full_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("全名");
+
+                    b.Property<string>("fversion")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("版本号");
+
+                    b.Property<decimal?>("gross_weight")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("毛重");
+
+                    b.Property<long>("hb_level")
+                        .HasColumnType("bigint")
+                        .HasComment("环保等级");
+
+                    b.Property<decimal?>("height")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("高度");
+
+                    b.Property<int>("is_equipment")
+                        .HasColumnType("int")
+                        .HasComment("是否为设备");
+
+                    b.Property<int>("iskeyitem")
+                        .HasColumnType("int")
+                        .HasComment("是否关键件");
+
+                    b.Property<long>("item_level")
+                        .HasColumnType("bigint")
+                        .HasComment("物料等级");
+
+                    b.Property<decimal?>("length")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("长度");
+
+                    b.Property<long>("matatt")
+                        .HasColumnType("bigint")
+                        .HasComment("物料类别");
+
+                    b.Property<string>("maund")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("重量单位");
+
+                    b.Property<string>("model")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)")
+                        .HasComment("规格型号");
+
+                    b.Property<string>("name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<decimal?>("net_weight")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("净重");
+
+                    b.Property<string>("number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料编码");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("output_type_id")
+                        .HasColumnType("bigint")
+                        .HasComment("出库类型");
+
+                    b.Property<string>("photo")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("图片");
+
+                    b.Property<long>("picktype")
+                        .HasColumnType("bigint")
+                        .HasComment("领料类型");
+
+                    b.Property<decimal?>("size")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("体积");
+
+                    b.Property<string>("source")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)")
+                        .HasComment("来源");
+
+                    b.Property<decimal?>("standard_manhour")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("单位标准工时_小时");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("单位");
+
+                    b.Property<decimal?>("unit_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("单位包装数量");
+
+                    b.Property<decimal?>("unititem_amount")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("单位材料定额_元");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<decimal?>("width")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("宽度");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_item", (string)null);
+
+                    b.HasComment("物料详情");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_item_ie", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("back_flush_sp")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("倒冲仓位");
+
+                    b.Property<string>("back_flush_stock")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("倒冲仓库");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("ir_note")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("ie备注");
+
+                    b.Property<int>("isbackflush")
+                        .HasColumnType("int")
+                        .HasComment("是否倒冲");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("product_principal")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("生产负责人");
+
+                    b.Property<int>("put_integer")
+                        .HasColumnType("int")
+                        .HasComment("投料自动取整");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_item_ie", (string)null);
+
+                    b.HasComment("物料ie信息表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_item_inventory", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<decimal?>("bal")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("金额");
+
+                    b.Property<string>("batch_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("批次号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_stock_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料库存主键");
+
+                    b.Property<DateTime?>("kf_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("保质期时间");
+
+                    b.Property<decimal?>("kf_period")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("保质期时长");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("数量");
+
+                    b.Property<decimal?>("qty_lock")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("锁定库存");
+
+                    b.Property<DateTime?>("rq")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("日期");
+
+                    b.Property<decimal?>("sec_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("安全库存");
+
+                    b.Property<long>("stock_id")
+                        .HasColumnType("bigint")
+                        .HasComment("仓库id");
+
+                    b.Property<string>("stock_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("仓库名称");
+
+                    b.Property<string>("stock_place_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("库位编码");
+
+                    b.Property<long>("stock_place_id")
+                        .HasColumnType("bigint")
+                        .HasComment("库位id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_item_inventory", (string)null);
+
+                    b.HasComment("物料库存信息表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_item_pur", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("currency_type")
+                        .HasColumnType("bigint")
+                        .HasComment("币种");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("ic_plan_id")
+                        .HasColumnType("bigint")
+                        .HasComment("采购计划id");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<decimal?>("netpurchase_price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("采购净价(不含税)");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("purchase_unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购计量单位");
+
+                    b.Property<string>("purcher")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购员");
+
+                    b.Property<string>("purchgroup")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购组");
+
+                    b.Property<long>("supplier_id")
+                        .HasColumnType("bigint")
+                        .HasComment("供应商id");
+
+                    b.Property<string>("supplier_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商名称");
+
+                    b.Property<string>("supplier_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商编码");
+
+                    b.Property<decimal?>("taxrate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("税率");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_item_pur", (string)null);
+
+                    b.HasComment("物料采购报价单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_item_stock", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("factory_fode")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("工厂编码");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("quantity_in_transit")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("调拨在途数量");
+
+                    b.Property<decimal?>("sqty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("物料库存量");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_item_stock", (string)null);
+
+                    b.HasComment("物料库存表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_metering_unit", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("order_unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购计量单位");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("product_unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("生产计量单位");
+
+                    b.Property<int>("qty_decimal")
+                        .HasColumnType("int")
+                        .HasComment("数量精度");
+
+                    b.Property<string>("sale_unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售计量单位");
+
+                    b.Property<string>("store_unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("库存计量单位");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("基本计量单位");
+
+                    b.Property<string>("unit_group")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计量单位组");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_metering_unit", (string)null);
+
+                    b.HasComment("物料计量表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_plan", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<int>("aux_prop_plan")
+                        .HasColumnType("int")
+                        .HasComment("辅助属性参与计划运算");
+
+                    b.Property<decimal?>("bat_change_economy")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("变动提前期批量");
+
+                    b.Property<int>("book_plan")
+                        .HasColumnType("int")
+                        .HasComment("是否需要进行订补货计划的运算");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("factory_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("工厂编码");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<decimal?>("fix_leadtime")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("固定提前期(天)");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<int>("isfixedreorder")
+                        .HasColumnType("int")
+                        .HasComment("设置为固定再订货点");
+
+                    b.Property<decimal?>("lead_time")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("变动提前期");
+
+                    b.Property<decimal?>("order_inter_val")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("订货间隔期_天");
+
+                    b.Property<string>("order_point")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("再订货点");
+
+                    b.Property<int>("order_trategy")
+                        .HasColumnType("int")
+                        .HasComment("订货策略");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<int>("plan_trategy")
+                        .HasColumnType("int")
+                        .HasComment("计划策略");
+
+                    b.Property<string>("planner_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计划员");
+
+                    b.Property<string>("planner_num")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计划员_工号");
+
+                    b.Property<string>("plannote")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("计划备注");
+
+                    b.Property<decimal?>("secinv")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("安全库存数量");
+
+                    b.Property<decimal?>("secinv_ratio")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("安全库存触发采购比例");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<decimal?>("total_tqq")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("累计提前期");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_plan", (string)null);
+
+                    b.HasComment("物料采购计划表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_substitute", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("substitute_code")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("群组代码");
+
+                    b.Property<int?>("substitute_mode")
+                        .HasColumnType("int")
+                        .HasComment("替代方式");
+
+                    b.Property<int?>("substitute_strategy")
+                        .HasColumnType("int")
+                        .HasComment("替代策略");
+
+                    b.Property<int>("substitute_type")
+                        .HasColumnType("int")
+                        .HasComment("替代类型");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_substitute", (string)null);
+
+                    b.HasComment("替代群组");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_substitute_all", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("order_num")
+                        .HasColumnType("int")
+                        .HasComment("排序");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("product_line")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("产品线");
+
+                    b.Property<string>("replace_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("替代名称");
+
+                    b.Property<string>("replace_relation")
+                        .HasMaxLength(2000)
+                        .HasColumnType("varchar(2000)")
+                        .HasComment("替代关系");
+
+                    b.Property<string>("replace_way")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("替代方式");
+
+                    b.Property<string>("substitute_code")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("群组代码");
+
+                    b.Property<long>("substitute_id")
+                        .HasColumnType("bigint")
+                        .HasComment("群组主键");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<string>("use_model")
+                        .HasMaxLength(5000)
+                        .HasColumnType("varchar(5000)")
+                        .HasComment("使用机型");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_substitute_all", (string)null);
+
+                    b.HasComment("物料替代多群组");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.MES.IC.ic_substitute_all_dtl", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料主键");
+
+                    b.Property<int>("ismain")
+                        .HasColumnType("int")
+                        .HasComment("主/替");
+
+                    b.Property<int>("num")
+                        .HasColumnType("int")
+                        .HasComment("序号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("replace_amount")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("替代数量");
+
+                    b.Property<long>("substitute_allid")
+                        .HasColumnType("bigint")
+                        .HasComment("替代多群组主键");
+
+                    b.Property<string>("substitute_code")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("群组代码");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ic_substitute_all_dtl", (string)null);
+
+                    b.HasComment("物料替代多群组明细");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Production.mes_moentry", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("fbill_no")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("订单编号");
+
+                    b.Property<long>("fentry_id")
+                        .HasColumnType("bigint")
+                        .HasComment("订单行号");
+
+                    b.Property<long>("moentry_moid")
+                        .HasColumnType("bigint")
+                        .HasComment("工单主表id");
+
+                    b.Property<string>("moentry_mono")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("工单编号");
+
+                    b.Property<decimal?>("morder_production_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("工单生产数量(计划数量)");
+
+                    b.Property<decimal?>("need_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("需求数量");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("remaining_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("剩余可用数量");
+
+                    b.Property<long>("soentry_id")
+                        .HasColumnType("bigint")
+                        .HasComment("订单行id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_moentry", (string)null);
+
+                    b.HasComment("生成工单子表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Production.mes_mooccupy", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("fbill_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("订单号");
+
+                    b.Property<long>("fentry_id")
+                        .HasColumnType("bigint")
+                        .HasComment("行号");
+
+                    b.Property<string>("fitem_name")
+                        .IsRequired()
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("fitem_number")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("物料编码");
+
+                    b.Property<string>("fmodel")
+                        .IsRequired()
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("规格型号");
+
+                    b.Property<string>("moo_cbr")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("变更人");
+
+                    b.Property<string>("moo_creason")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("变更原因");
+
+                    b.Property<DateTime?>("moo_ctime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("变更时间");
+
+                    b.Property<DateTime?>("moo_etime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束时间");
+
+                    b.Property<long>("moo_id_billid")
+                        .HasColumnType("bigint")
+                        .HasComment("订单id");
+
+                    b.Property<string>("moo_id_type")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("类型--原始,分配");
+
+                    b.Property<string>("moo_mo")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工单号");
+
+                    b.Property<long>("moo_moid")
+                        .HasColumnType("bigint")
+                        .HasComment("工单id");
+
+                    b.Property<decimal?>("moo_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("占用量");
+
+                    b.Property<int>("moo_state")
+                        .HasColumnType("int")
+                        .HasComment("占用状态-1占用  默认0");
+
+                    b.Property<DateTime?>("moo_stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_mooccupy", (string)null);
+
+                    b.HasComment("在制工单占用记录表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Production.mes_morder", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<string>("bom_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("bom编码");
+
+                    b.Property<DateTime?>("convey_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("下达日期");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("fmodel")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("规格型号");
+
+                    b.Property<string>("fms_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("fms旧料号");
+
+                    b.Property<decimal?>("inspection_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("报检数量");
+
+                    b.Property<decimal?>("inventory_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("入库数量");
+
+                    b.Property<DateTime?>("mat_end_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("基于物料结束时间");
+
+                    b.Property<DateTime?>("mat_start_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("基于物料开始时间");
+
+                    b.Property<DateTime?>("moentry_etime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("生产工单结束日期");
+
+                    b.Property<long?>("moentry_prd")
+                        .HasColumnType("bigint")
+                        .HasComment("生产组织id");
+
+                    b.Property<string>("moentry_prdname")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产组织名称");
+
+                    b.Property<int?>("moentry_startup_status")
+                        .HasColumnType("int")
+                        .HasComment("启动状态");
+
+                    b.Property<DateTime?>("moentry_stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("生产工单开始日期");
+
+                    b.Property<DateTime?>("moentry_sys_etime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("系统建议完工时间");
+
+                    b.Property<DateTime?>("moentry_sys_stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("系统建议开工时间");
+
+                    b.Property<long?>("moentry_wrkc")
+                        .HasColumnType("bigint")
+                        .HasComment("工作中心id");
+
+                    b.Property<string>("moentry_wrkcname")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工作中心名称");
+
+                    b.Property<string>("morder_batchno")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工单批号--(批号管理的物料出入库要使用)");
+
+                    b.Property<DateTime?>("morder_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("生产工单日期");
+
+                    b.Property<string>("morder_fstate")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("前状态--计划、下达、完成、关闭");
+
+                    b.Property<string>("morder_icitem_type")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("工单所属物料类型");
+
+                    b.Property<decimal?>("morder_need_time")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("工单所需工时");
+
+                    b.Property<string>("morder_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单编号");
+
+                    b.Property<decimal?>("morder_production_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("工单生产数量(计划数量)");
+
+                    b.Property<string>("morder_progress")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("工单进度");
+
+                    b.Property<string>("morder_state")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单状态(订单状态:初始,下达,暂停、完成)");
+
+                    b.Property<string>("morder_type")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单类型(类型:计划工单、销售工单、委外工单、预测工单)");
+
+                    b.Property<decimal?>("need_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("需求数量");
+
+                    b.Property<decimal?>("notice_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("已开入库通知单数量");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("overdue_Remark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("逾期原因备注");
+
+                    b.Property<long?>("parent_id")
+                        .HasColumnType("bigint")
+                        .HasComment("上级工单id");
+
+                    b.Property<DateTime?>("pause_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("最近暂停时间");
+
+                    b.Property<decimal?>("picking_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("已领料数量");
+
+                    b.Property<DateTime?>("planner_end_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("计划员设定结束时间");
+
+                    b.Property<string>("planner_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计划员名称");
+
+                    b.Property<string>("planner_num")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计划员工号");
+
+                    b.Property<DateTime?>("planner_start_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("计划员设定开始时间");
+
+                    b.Property<string>("product_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("产品代码");
+
+                    b.Property<string>("product_name")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("产品名称");
+
+                    b.Property<string>("project_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("项目名称");
+
+                    b.Property<decimal?>("qualified_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("合格数量");
+
+                    b.Property<DateTime?>("reality_end_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("实际结束时间");
+
+                    b.Property<DateTime?>("reality_start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("实际开始时间");
+
+                    b.Property<long?>("relation_moid")
+                        .HasColumnType("bigint")
+                        .HasComment("关联工单id");
+
+                    b.Property<string>("relation_mono")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("关联编号");
+
+                    b.Property<decimal?>("remaining_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("剩余可用数量");
+
+                    b.Property<DateTime?>("restart_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("最近重启时间");
+
+                    b.Property<DateTime?>("start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<decimal?>("work_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("报工数量");
+
+                    b.Property<string>("work_order_type")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("工单类型(类型:发货工单、试产工单、备库工单、常规工单、返工工单)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_morder", (string)null);
+
+                    b.HasComment("工单主表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Production.mes_morder_loss_time", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("card_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("用工卡号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("dept_id")
+                        .HasColumnType("bigint")
+                        .HasComment("责任单位id");
+
+                    b.Property<string>("dept_name")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("责任单位名称");
+
+                    b.Property<string>("description")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("描述");
+
+                    b.Property<DateTime>("end_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("损失结束时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("is_stop_production")
+                        .HasColumnType("int")
+                        .HasComment("是否停产(0未停产,1停产)");
+
+                    b.Property<decimal>("loss_work_hours")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("损失时间(用户输入)");
+
+                    b.Property<long>("morder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("生产工单id");
+
+                    b.Property<string>("morder_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单编号");
+
+                    b.Property<int>("morder_no_row")
+                        .HasColumnType("int")
+                        .HasComment("生产工单编号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("reason")
+                        .IsRequired()
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("损失时间原因");
+
+                    b.Property<long>("recorder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("记录人id");
+
+                    b.Property<string>("recorder_name")
+                        .IsRequired()
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("记录人名称");
+
+                    b.Property<decimal>("staff_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("人员数量");
+
+                    b.Property<DateTime>("start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("损失开始时间");
+
+                    b.Property<decimal>("sys_loss_time")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("系统计算损失时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long>("workc_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工作中心id");
+
+                    b.Property<string>("workc_name")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工作中心名称");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_morder_loss_time", (string)null);
+
+                    b.HasComment("工单损失时间表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Production.mes_oorder", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("bom_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("bom编码");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("ffms_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("fms旧料号");
+
+                    b.Property<decimal?>("inspection_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("报检数量");
+
+                    b.Property<decimal?>("inventory_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("入库数量");
+
+                    b.Property<int?>("moentry_on")
+                        .HasColumnType("int")
+                        .HasComment("启动状态");
+
+                    b.Property<decimal?>("morder_production_number")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("工单生产数量(计划数量)");
+
+                    b.Property<string>("morder_progress")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("工单进度");
+
+                    b.Property<int?>("need_icitem_status")
+                        .HasColumnType("int")
+                        .HasComment("所需物料是否充足  1-充足 0-缺料");
+
+                    b.Property<decimal?>("need_number")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("需求数量");
+
+                    b.Property<decimal?>("notice_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("已开通知单数量");
+
+                    b.Property<DateTime?>("ooentry_etime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("计划完工日期");
+
+                    b.Property<long?>("ooentry_prd")
+                        .HasColumnType("bigint")
+                        .HasComment("生产组织");
+
+                    b.Property<string>("ooentry_prdname")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产组织名称");
+
+                    b.Property<DateTime?>("ooentry_stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("计划开工日期");
+
+                    b.Property<long?>("ooentry_wrkc")
+                        .HasColumnType("bigint")
+                        .HasComment("工作中心id");
+
+                    b.Property<string>("ooentry_wrkcname")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工作中心名称");
+
+                    b.Property<DateTime?>("oorder_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("委外订单日期");
+
+                    b.Property<string>("oorder_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单编号");
+
+                    b.Property<string>("oorder_state")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("订单状态");
+
+                    b.Property<string>("oorder_type")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("生产工单类型");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<DateTime?>("pause_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("最近暂停时间");
+
+                    b.Property<string>("planner_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计划员名称");
+
+                    b.Property<string>("planner_num")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计划员工号");
+
+                    b.Property<string>("product_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("产品代码");
+
+                    b.Property<string>("product_name")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("产品名称");
+
+                    b.Property<string>("production_unit")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("加工单位");
+
+                    b.Property<string>("production_unit_code")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("加工单位编码");
+
+                    b.Property<string>("project_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("项目名称");
+
+                    b.Property<decimal?>("qualified_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("合格数量");
+
+                    b.Property<decimal?>("remaining_number")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("剩余可用数量");
+
+                    b.Property<DateTime?>("restart_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("最近重启时间");
+
+                    b.Property<int?>("sent_status")
+                        .HasColumnType("int")
+                        .HasComment("发料状态 1-待发料  2-已发料");
+
+                    b.Property<string>("specification_model")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("规格型号");
+
+                    b.Property<DateTime?>("start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<decimal?>("work_number")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("报工数量");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_oorder", (string)null);
+
+                    b.HasComment("委外订单表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Production.mes_schedule_occupy", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<DateTime?>("end_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("is_Locked")
+                        .HasColumnType("int")
+                        .HasComment("是否锁定 0-正常,1-锁定");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("prd_org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("生产组织id");
+
+                    b.Property<DateTime?>("start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<int>("status")
+                        .HasColumnType("int")
+                        .HasComment("状态 0-待使用,1-已使用");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long>("work_calendar_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工作日历id");
+
+                    b.Property<long>("work_center_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工作中心id");
+
+                    b.Property<decimal?>("working_minute")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("工作时长(h)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_schedule_occupy", (string)null);
+
+                    b.HasComment("排程时间占用记录表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Production.mes_stockoccupy", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("fbill_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("订单编号");
+
+                    b.Property<long?>("fentry_id")
+                        .HasColumnType("bigint")
+                        .HasComment("订单行号");
+
+                    b.Property<string>("fitem_name")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("fitem_number")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("物料编码");
+
+                    b.Property<string>("fmodel")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)")
+                        .HasComment("规格型号");
+
+                    b.Property<decimal?>("occupyqty")
+                        .HasPrecision(20, 2)
+                        .HasColumnType("decimal(20,2)")
+                        .HasComment("占用量");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("soccupy_cby")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("变更人");
+
+                    b.Property<string>("soccupy_creason")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("变更原因");
+
+                    b.Property<DateTime?>("soccupy_ctime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("变更时间");
+
+                    b.Property<DateTime?>("soccupy_etime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束时间");
+
+                    b.Property<string>("soccupy_state")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("占用状态");
+
+                    b.Property<DateTime?>("soccupy_stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<string>("soccupy_type")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("类型");
+
+                    b.Property<long?>("soentry_id")
+                        .HasColumnType("bigint")
+                        .HasComment("订单行id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long>("warehouse_id")
+                        .HasColumnType("bigint")
+                        .HasComment("仓库id");
+
+                    b.Property<string>("warehouse_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("仓库名称");
+
+                    b.Property<string>("warehouse_type")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("仓库类型");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_stockoccupy", (string)null);
+
+                    b.HasComment("成品库存占用表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_loss_time_record", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("cause")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("原因");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("desc")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("问题描述");
+
+                    b.Property<DateTime?>("end_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("损失结束时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("isstop")
+                        .HasColumnType("int")
+                        .HasComment("是否停线");
+
+                    b.Property<long>("morder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工单id");
+
+                    b.Property<string>("morder_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工单编号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("product_line")
+                        .HasColumnType("bigint")
+                        .HasComment("生产产线");
+
+                    b.Property<long>("product_org")
+                        .HasColumnType("bigint")
+                        .HasComment("生产车间");
+
+                    b.Property<long>("record_id")
+                        .HasColumnType("bigint")
+                        .HasComment("记录人id");
+
+                    b.Property<string>("record_no")
+                        .IsRequired()
+                        .HasColumnType("longtext")
+                        .HasComment("记录人工号");
+
+                    b.Property<DateTime>("record_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("记录时间");
+
+                    b.Property<DateTime?>("start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("损失开始时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_loss_time_record", (string)null);
+
+                    b.HasComment("损失时间记录表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_meaction", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("morder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("生产工单id");
+
+                    b.Property<string>("morder_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单号");
+
+                    b.Property<long?>("oprby")
+                        .HasColumnType("bigint")
+                        .HasComment("操作人id");
+
+                    b.Property<string>("oprbyname")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("操作人名称");
+
+                    b.Property<string>("oprbyno")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("操作人工号");
+
+                    b.Property<DateTime?>("oprtime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("操作时间");
+
+                    b.Property<string>("oprtype")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("操作类型");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_meaction", (string)null);
+
+                    b.HasComment("生产动作表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_mebycard", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("mebycard_byno")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("刷卡人员卡号");
+
+                    b.Property<long>("mebycard_moid")
+                        .HasColumnType("bigint")
+                        .HasComment("生产工单号id");
+
+                    b.Property<string>("mebycard_mono")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单号");
+
+                    b.Property<long>("mebycard_pid")
+                        .HasColumnType("bigint")
+                        .HasComment("工序id");
+
+                    b.Property<string>("mebycard_pname")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工序名称");
+
+                    b.Property<string>("mebycard_pno")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工序编码");
+
+                    b.Property<DateTime>("mebycard_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("刷卡时间");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_mebycard", (string)null);
+
+                    b.HasComment("产线刷卡记录");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_merecheck", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("morder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("生产工单id");
+
+                    b.Property<string>("morder_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单号");
+
+                    b.Property<long>("oprby")
+                        .HasColumnType("bigint")
+                        .HasComment("报检人id");
+
+                    b.Property<DateTime>("oprtime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("报检时间");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal>("qty")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("报检数量");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_merecheck", (string)null);
+
+                    b.HasComment("生产报检记录");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_mereport", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<decimal>("instock_qty")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("报工数量");
+
+                    b.Property<long>("morder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("生产工单id");
+
+                    b.Property<string>("morder_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal>("qty")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("报工数量");
+
+                    b.Property<long>("report_by")
+                        .HasColumnType("bigint")
+                        .HasComment("报工人id");
+
+                    b.Property<string>("report_byno")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("报工人工号");
+
+                    b.Property<DateTime>("report_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("报工时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_mereport", (string)null);
+
+                    b.HasComment("生产报工记录");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_prd_sendmat", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("prdsm_by")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("制单人");
+
+                    b.Property<DateTime>("prdsm_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("单据日期");
+
+                    b.Property<DateTime?>("prdsm_ddate")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("配送日期");
+
+                    b.Property<long>("prdsm_moid")
+                        .HasColumnType("bigint")
+                        .HasComment("生产工单id");
+
+                    b.Property<string>("prdsm_mono")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("生产工单号");
+
+                    b.Property<string>("prdsm_no")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("单据编号");
+
+                    b.Property<string>("prdsm_note")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("备注");
+
+                    b.Property<string>("prdsm_po_no")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("关联委外po单号");
+
+                    b.Property<int?>("prdsm_po_row")
+                        .HasColumnType("int")
+                        .HasComment("关联委外po行号");
+
+                    b.Property<long>("prdsm_prdid")
+                        .HasColumnType("bigint")
+                        .HasComment("生产组织id");
+
+                    b.Property<decimal>("prdsm_qty")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("叫料数量");
+
+                    b.Property<string>("prdsm_reason")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("补料理由");
+
+                    b.Property<int?>("prdsm_state")
+                        .HasColumnType("int")
+                        .HasComment("状态");
+
+                    b.Property<string>("prdsm_type")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("单据类型 (发料、叫料、补料、退料)");
+
+                    b.Property<long>("prdsm_workcid")
+                        .HasColumnType("bigint")
+                        .HasComment("工作中心id");
+
+                    b.Property<int>("srcbill_state")
+                        .HasColumnType("int")
+                        .HasComment("源单状态");
+
+                    b.Property<int>("srcbill_type")
+                        .HasColumnType("int")
+                        .HasComment("原单类型");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_prd_sendmat", (string)null);
+
+                    b.HasComment("发料单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_prd_sendmat_list", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int?>("fbackflush")
+                        .HasColumnType("int")
+                        .HasComment("是否倒冲");
+
+                    b.Property<decimal?>("fdiscard_aux_qty")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("报废数量");
+
+                    b.Property<string>("fisKey_item")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("子项属性");
+
+                    b.Property<string>("fitem_name")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("物料编码");
+
+                    b.Property<string>("fitem_number")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("物料编码");
+
+                    b.Property<string>("fmateriel_type")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("子项属性");
+
+                    b.Property<string>("fmodel")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("物料编码");
+
+                    b.Property<decimal?>("fqty_send_back")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("退料数量");
+
+                    b.Property<decimal?>("fqty_supply")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("补料数量");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("prdsm_breason")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("退料原因");
+
+                    b.Property<long>("prdsm_id")
+                        .HasColumnType("bigint")
+                        .HasComment("发料单id");
+
+                    b.Property<decimal?>("prdsml_cqtyper")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("确认单位数量");
+
+                    b.Property<string>("prdsml_procname")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("工序名称");
+
+                    b.Property<string>("prdsml_procno")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工序编码");
+
+                    b.Property<decimal>("prdsml_qtyissued")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("已发数量");
+
+                    b.Property<decimal?>("prdsml_qtyper")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("单位数量");
+
+                    b.Property<decimal?>("prdsml_qtyplan")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("计划数量");
+
+                    b.Property<decimal?>("prdsml_qtyto")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("应发数量");
+
+                    b.Property<string>("prdsml_unit")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("计量单位");
+
+                    b.Property<long>("prdsml_whid")
+                        .HasColumnType("bigint")
+                        .HasComment("发料仓库id");
+
+                    b.Property<string>("prdsml_whname")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("发料仓库名称");
+
+                    b.Property<string>("prdsml_whno")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("发料仓库编码");
+
+                    b.Property<int?>("prsml_row")
+                        .HasColumnType("int")
+                        .HasComment("行号");
+
+                    b.Property<DateTime?>("send_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("计划发料日期");
+
+                    b.Property<string>("station")
+                        .IsRequired()
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("工位");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_prd_sendmat_list", (string)null);
+
+                    b.HasComment("发料单详情");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_prdlog", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long?>("prdlog_by_id")
+                        .HasColumnType("bigint")
+                        .HasComment("执行人id");
+
+                    b.Property<string>("prdlog_by_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("执行人姓名");
+
+                    b.Property<int>("prdlog_entryid")
+                        .HasColumnType("int")
+                        .HasComment("行号");
+
+                    b.Property<string>("prdlog_no")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("业务类型");
+
+                    b.Property<string>("prdlog_note")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("内容");
+
+                    b.Property<DateTime?>("prdlog_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("执行时间");
+
+                    b.Property<string>("prdlog_type")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("业务类型");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_prdlog", (string)null);
+
+                    b.HasComment("生产操作日志");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_product_work_time", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("card_no")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("卡号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("product_line")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("产线");
+
+                    b.Property<DateTime?>("start")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<DateTime?>("stop")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<DateTime?>("work_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("生产时间记录id");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_product_work_time", (string)null);
+
+                    b.HasComment("mo的生产时间记录");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_stock_enter", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("eby")
+                        .HasColumnType("bigint")
+                        .HasComment("入库人id");
+
+                    b.Property<string>("ebyname")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("入库人姓名");
+
+                    b.Property<DateTime>("edate")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("入库日期");
+
+                    b.Property<int>("eqty")
+                        .HasColumnType("int")
+                        .HasComment("入库数量");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("ffull_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("全名");
+
+                    b.Property<string>("fitem_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("fitem_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("物料编码");
+
+                    b.Property<string>("fmodel")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("规格型号");
+
+                    b.Property<string>("order_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("工单号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_stock_enter", (string)null);
+
+                    b.HasComment("入库单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_stock_out", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("eby")
+                        .HasColumnType("bigint")
+                        .HasComment("出库人id");
+
+                    b.Property<string>("eby_name")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("出库人姓名");
+
+                    b.Property<DateTime>("edate")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("出库日期");
+
+                    b.Property<int>("eqty")
+                        .HasColumnType("int")
+                        .HasComment("出库数量");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("ffull_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("全名");
+
+                    b.Property<string>("fitem_name")
+                        .IsRequired()
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("fitem_number")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料编码");
+
+                    b.Property<string>("fmodel")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("规格型号");
+
+                    b.Property<string>("order_no")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售订单号");
+
+                    b.Property<int?>("order_number")
+                        .HasColumnType("int")
+                        .HasComment("订单行号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("out_no")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("出库单号");
+
+                    b.Property<string>("shipn_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("发运通知单号");
+
+                    b.Property<string>("stock_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("仓库名称");
+
+                    b.Property<string>("stock_no")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("仓库编码");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("计量单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_stock_out", (string)null);
+
+                    b.HasComment("出库单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.ProductionProcess.mes_swipe_card", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("card_no")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("卡号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<DateTime?>("off_line_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("下线时间");
+
+                    b.Property<string>("order_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工单编号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("product_line")
+                        .IsRequired()
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("生产产线");
+
+                    b.Property<string>("product_org")
+                        .IsRequired()
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("生产车间");
+
+                    b.Property<DateTime>("swipe_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("刷卡日期");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<int>("type")
+                        .HasColumnType("int")
+                        .HasComment("刷卡类型");
+
+                    b.Property<DateTime?>("up_line_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("上线时间");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_swipe_card", (string)null);
+
+                    b.HasComment("mes打卡记录表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.crm_seorder", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<DateTime?>("audit_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("审核日期");
+
+                    b.Property<string>("auditor")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("审核人");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<string>("bill_from")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("订单来源");
+
+                    b.Property<string>("bill_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("订单编号");
+
+                    b.Property<string>("biller")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("制单人");
+
+                    b.Property<bool>("closed")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("是否关闭1关闭0未关闭");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<long?>("create_dept")
+                        .HasColumnType("bigint")
+                        .HasComment("创建部门id");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<int?>("currency")
+                        .HasMaxLength(50)
+                        .HasColumnType("int")
+                        .HasComment("币种");
+
+                    b.Property<int?>("custom_id")
+                        .HasColumnType("int")
+                        .HasComment("客户id");
+
+                    b.Property<string>("custom_level")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("客户级别");
+
+                    b.Property<string>("custom_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("客户名称");
+
+                    b.Property<string>("custom_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("客户编码");
+
+                    b.Property<DateTime?>("date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("签订日期");
+
+                    b.Property<string>("emp_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("业务员名称");
+
+                    b.Property<string>("emp_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("业务员工号");
+
+                    b.Property<decimal?>("exchange_rate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("汇率");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<DateTime?>("op_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("操作时间");
+
+                    b.Property<int?>("order_type")
+                        .HasColumnType("int")
+                        .HasComment("订单类别(销售、计划)");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<int?>("out_stock_type")
+                        .HasColumnType("int")
+                        .HasComment("销售出库类型");
+
+                    b.Property<string>("project_code")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("项目编号");
+
+                    b.Property<string>("project_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("项目名称");
+
+                    b.Property<DateTime?>("rdate")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("采购下单日期");
+
+                    b.Property<string>("sale_dept_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售部门编号");
+
+                    b.Property<long?>("sale_dept_id")
+                        .HasColumnType("bigint")
+                        .HasComment("销售部门id");
+
+                    b.Property<string>("sale_dept_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售部门名称");
+
+                    b.Property<int?>("sale_style")
+                        .HasColumnType("int")
+                        .HasComment("销售订单类型");
+
+                    b.Property<string>("sale_style_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售订单类型编码");
+
+                    b.Property<int?>("status")
+                        .HasColumnType("int")
+                        .HasComment("订单状态");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<int?>("trade_type")
+                        .HasColumnType("int")
+                        .HasComment("贸易类型");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<int?>("urgent")
+                        .HasColumnType("int")
+                        .HasComment("加急级别");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("crm_seorder", (string)null);
+
+                    b.HasComment("销售订单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.crm_seorderentry", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<DateTime?>("adjust_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("调整建议交期");
+
+                    b.Property<decimal?>("amount")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("金额");
+
+                    b.Property<decimal?>("aux_price_discount")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("实际含税单价");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<string>("bill_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("销售订单编号");
+
+                    b.Property<string>("bom_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("BOM编号");
+
+                    b.Property<string>("contract_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("合同编号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<long?>("create_dept")
+                        .HasColumnType("bigint")
+                        .HasComment("创建部门id");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("custom_order_bill_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("客户订单号");
+
+                    b.Property<int?>("custom_order_entryid")
+                        .HasColumnType("int")
+                        .HasComment("客户订单行号");
+
+                    b.Property<string>("custom_order_itemno")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("客户料号");
+
+                    b.Property<DateTime?>("date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("最终交货日期");
+
+                    b.Property<decimal?>("deliver_count")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("发货数量(已出库数量)");
+
+                    b.Property<decimal?>("deliver_notice_count")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("发货通知单数量");
+
+                    b.Property<decimal?>("discount_amount")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("折扣额");
+
+                    b.Property<decimal?>("discount_rate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("折扣率");
+
+                    b.Property<int?>("entry_seq")
+                        .HasColumnType("int")
+                        .HasComment("行号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("fms_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("FMS旧料号");
+
+                    b.Property<bool?>("is_checked")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("是否完成检测,0未完成,1完成");
+
+                    b.Property<string>("item_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("产品名称");
+
+                    b.Property<string>("item_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("产品代码");
+
+                    b.Property<string>("map_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("代码名称");
+
+                    b.Property<string>("map_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("对应代码");
+
+                    b.Property<bool?>("mrp_closed")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("mrp关闭");
+
+                    b.Property<DateTime?>("op_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("操作时间");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("out_stock_type")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("出库类型");
+
+                    b.Property<DateTime?>("plan_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("客户要求交期");
+
+                    b.Property<string>("planner_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("计划员");
+
+                    b.Property<string>("planner_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("计划员_工号");
+
+                    b.Property<decimal?>("price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("单价");
+
+                    b.Property<string>("progress")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("订单进度");
+
+                    b.Property<decimal?>("qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("订单数量");
+
+                    b.Property<string>("remark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("备注");
+
+                    b.Property<int?>("rnumber")
+                        .HasColumnType("int")
+                        .HasComment("评审次数");
+
+                    b.Property<int?>("rstate")
+                        .HasColumnType("int")
+                        .HasComment("评审状态");
+
+                    b.Property<string>("se_reject_reason")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("业务员工号");
+
+                    b.Property<long>("seorder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("销售订单id");
+
+                    b.Property<string>("soure_bill_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("源单编号");
+
+                    b.Property<string>("specification")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("规格型号");
+
+                    b.Property<bool>("state")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("数据状态标识 0停用 1启用");
+
+                    b.Property<DateTime?>("sys_capacity_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("系统建议交期(产能)");
+
+                    b.Property<DateTime?>("sys_material_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("系统建议交期(物料)");
+
+                    b.Property<decimal?>("tax_amtount")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("销项税额");
+
+                    b.Property<decimal?>("tax_price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("含税单价");
+
+                    b.Property<decimal?>("tax_rate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("税率");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<decimal?>("total_amount")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("价税合计");
+
+                    b.Property<string>("unit")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<int?>("urgent")
+                        .HasColumnType("int")
+                        .HasComment("加急级别");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("crm_seorderentry", (string)null);
+
+                    b.HasComment("销售订单明细表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.crm_seorderprog", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("bill_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售订单编号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<long?>("create_dept")
+                        .HasColumnType("bigint")
+                        .HasComment("创建部门id");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<int?>("entry_seq")
+                        .HasColumnType("int")
+                        .HasComment("销售订单行号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("seorder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("销售订单id");
+
+                    b.Property<long?>("seprog_by_id")
+                        .HasColumnType("bigint")
+                        .HasComment("提交人id");
+
+                    b.Property<string>("seprog_by_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("提交人姓名");
+
+                    b.Property<DateTime?>("seprog_etime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("完成时间");
+
+                    b.Property<string>("seprog_stage")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("进度阶段");
+
+                    b.Property<long?>("seprog_stage_id")
+                        .HasColumnType("bigint")
+                        .HasComment("进度阶段id");
+
+                    b.Property<DateTime?>("seprog_stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<int?>("seprog_type")
+                        .HasColumnType("int")
+                        .HasComment("进度类型");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("crm_seorderprog", (string)null);
+
+                    b.HasComment("销售订单进度表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.crm_seorderreview", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("audit_procedure_id")
+                        .HasColumnType("bigint")
+                        .HasComment("当前审批步骤id");
+
+                    b.Property<string>("audit_procedure_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("当前审批步骤名称");
+
+                    b.Property<string>("bill_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售订单编号");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<int?>("entry_seq")
+                        .HasColumnType("int")
+                        .HasComment("销售订单行号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("reject_reason")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("拒绝原因");
+
+                    b.Property<DateTime?>("review_adjust_time")
+                        .HasMaxLength(255)
+                        .HasColumnType("datetime(6)")
+                        .HasComment("可接受交期");
+
+                    b.Property<long?>("review_by_id")
+                        .HasColumnType("bigint")
+                        .HasComment("提交人id");
+
+                    b.Property<string>("review_by_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("提交人姓名");
+
+                    b.Property<string>("review_reject_level")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("拒绝等级");
+
+                    b.Property<string>("review_reject_remark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("拒绝备注");
+
+                    b.Property<string>("review_result")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("评审结果");
+
+                    b.Property<DateTime?>("review_stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("提交时间");
+
+                    b.Property<DateTime?>("review_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("评审时间");
+
+                    b.Property<string>("review_title")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("标题");
+
+                    b.Property<string>("review_type")
+                        .IsRequired()
+                        .HasColumnType("longtext")
+                        .HasComment("业务类型");
+
+                    b.Property<long?>("reviewer_id")
+                        .HasColumnType("bigint")
+                        .HasComment("评审人id");
+
+                    b.Property<string>("reviewer_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("评审人姓名");
+
+                    b.Property<long>("seorder_id")
+                        .HasColumnType("bigint")
+                        .HasComment("销售订单id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("crm_seorderreview", (string)null);
+
+                    b.HasComment("销售订单评审表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.wms_prdprogress", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("prdprog_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("进度名称");
+
+                    b.Property<int>("prdprog_seq")
+                        .HasColumnType("int")
+                        .HasComment("进度顺序");
+
+                    b.Property<string>("prdprog_type")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("进度类型");
+
+                    b.Property<bool>("state")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("进度状态1启用0停用");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("wms_prdprogress", (string)null);
+
+                    b.HasComment("进度字典");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.wms_shipnotice", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("address")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("发运地址");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<DateTime>("shipnotice_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("发运时间");
+
+                    b.Property<string>("shipnotice_no")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("发运通知单号");
+
+                    b.Property<long>("shipplan_id")
+                        .HasColumnType("bigint")
+                        .HasComment("发货计划id");
+
+                    b.Property<string>("shipplan_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("发货计划号");
+
+                    b.Property<string>("state")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("状态");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("wms_shipnotice", (string)null);
+
+                    b.HasComment("发货通知单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.wms_shipnoticelist", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("address")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("发运地址");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long?>("shipnotice_custid")
+                        .HasColumnType("bigint")
+                        .HasComment("客户id");
+
+                    b.Property<string>("shipnotice_custname")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户名称");
+
+                    b.Property<string>("shipnotice_custno")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("客户编号");
+
+                    b.Property<long>("shipnotice_id")
+                        .HasMaxLength(80)
+                        .HasColumnType("bigint")
+                        .HasComment("发货计划号");
+
+                    b.Property<decimal?>("shipplanl_fqty")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("实际发货数量");
+
+                    b.Property<decimal?>("shipplanl_iqty")
+                        .HasPrecision(20, 10)
+                        .HasColumnType("decimal(20,10)")
+                        .HasComment("计划发货数量");
+
+                    b.Property<int?>("shipplanl_soeid")
+                        .HasColumnType("int")
+                        .HasComment("销售单行号");
+
+                    b.Property<long?>("shipplanl_soid")
+                        .HasColumnType("bigint")
+                        .HasComment("销售单id");
+
+                    b.Property<string>("shipplanl_sono")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("销售单号");
+
+                    b.Property<long?>("shipplanlist_id")
+                        .HasColumnType("bigint")
+                        .HasComment("发货详情id");
+
+                    b.Property<string>("state")
+                        .IsRequired()
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("状态");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("wms_shipnoticelist", (string)null);
+
+                    b.HasComment("发货通知单明细表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Sale.wms_shipplan", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<DateTime?>("shipplan_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("发货计划时间");
+
+                    b.Property<string>("shipplan_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("发货计划编号");
+
+                    b.Property<string>("state")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("状态");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("wms_shipplan", (string)null);
+
+                    b.HasComment("发货计划表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SIM.sim_base", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<decimal?>("interval_days")
+                        .HasPrecision(10)
+                        .HasColumnType("decimal(10,0)")
+                        .HasComment("间隔天数");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("rise_cycle")
+                        .HasPrecision(10)
+                        .HasColumnType("decimal(10,0)")
+                        .HasComment("上升周期");
+
+                    b.Property<DateTime?>("rise_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("上升时间");
+
+                    b.Property<string>("sim_grade")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("sim等级");
+
+                    b.Property<int?>("sim_level")
+                        .HasColumnType("int")
+                        .HasComment("sim层级顺序");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sim_base", (string)null);
+
+                    b.HasComment("sim基本表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SIM.sim_issue_type", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("app_scenario")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("应用场景");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("duty_dept")
+                        .HasColumnType("bigint")
+                        .HasComment("责任部门id");
+
+                    b.Property<string>("duty_person")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("责任人");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("issue_grade")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("问题等级");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("type_code")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("类别代码");
+
+                    b.Property<string>("type_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("类别名称");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sim_issue_type", (string)null);
+
+                    b.HasComment("sim事项类别表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SIM.sim_plant", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("plant_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("事项名称");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sim_plant", (string)null);
+
+                    b.HasComment("sim事项表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SIM.sim_user_relation", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("sim_id")
+                        .HasColumnType("bigint")
+                        .HasComment("base_sim表ID");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long>("user_id")
+                        .HasColumnType("bigint")
+                        .HasComment("用户id");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sim_user_relation", (string)null);
+
+                    b.HasComment("sim用户关联表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SRM.srm_po_list", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("currencytype")
+                        .HasColumnType("bigint")
+                        .HasComment("币别");
+
+                    b.Property<decimal?>("esqty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("已入库数量");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("物料名称");
+
+                    b.Property<decimal?>("netprice")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("净价");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("plan_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("计划数量");
+
+                    b.Property<string>("po_billno")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("po单号");
+
+                    b.Property<long>("po_id")
+                        .HasColumnType("bigint")
+                        .HasComment("po单id");
+
+                    b.Property<string>("po_mono")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("关联工单号");
+
+                    b.Property<int>("polist_row")
+                        .HasColumnType("int")
+                        .HasComment("行号");
+
+                    b.Property<string>("pr_billno")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("pr申请单号");
+
+                    b.Property<long>("pr_id")
+                        .HasColumnType("bigint")
+                        .HasComment("pr申请单id");
+
+                    b.Property<long>("pr_purchase_id")
+                        .HasColumnType("bigint")
+                        .HasComment("供应商id");
+
+                    b.Property<string>("pr_purchase_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商名称");
+
+                    b.Property<decimal?>("price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("含税单价");
+
+                    b.Property<decimal?>("procurement_rarr_date")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("采购到货日期");
+
+                    b.Property<decimal?>("pur_affirmdate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("采购确认到货日期");
+
+                    b.Property<decimal?>("purchase_date")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("供应商交期");
+
+                    b.Property<decimal?>("qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("订单数量");
+
+                    b.Property<DateTime?>("rarrdate")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("需求到货日期");
+
+                    b.Property<decimal?>("rate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("税率");
+
+                    b.Property<int>("rnumber")
+                        .HasColumnType("int")
+                        .HasComment("评审次数");
+
+                    b.Property<decimal?>("rparrive_date")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("再计划到货日期");
+
+                    b.Property<decimal?>("rqty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("已收货数量");
+
+                    b.Property<int>("rstate")
+                        .HasColumnType("int")
+                        .HasComment("评审状态");
+
+                    b.Property<int>("state")
+                        .HasColumnType("int")
+                        .HasComment("数据状态标识");
+
+                    b.Property<long>("stock_id")
+                        .HasColumnType("bigint")
+                        .HasComment("收货仓库id");
+
+                    b.Property<string>("stock_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("收货仓库名称");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<decimal?>("total_price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("总价");
+
+                    b.Property<long>("unit")
+                        .HasColumnType("bigint")
+                        .HasComment("单位");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("srm_po_list", (string)null);
+
+                    b.HasComment("采购订单明细详情");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SRM.srm_po_main", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<int>("bill_type")
+                        .HasColumnType("int")
+                        .HasComment("金蝶单据类型值");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("currency")
+                        .HasColumnType("bigint")
+                        .HasComment("币别");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("po_billno")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("PO单号");
+
+                    b.Property<long>("po_delivery")
+                        .HasColumnType("bigint")
+                        .HasComment("交货方式");
+
+                    b.Property<int>("po_express")
+                        .HasColumnType("int")
+                        .HasComment("是否加急");
+
+                    b.Property<string>("po_note")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("备注");
+
+                    b.Property<int>("po_order_type")
+                        .HasColumnType("int")
+                        .HasComment("单据类型");
+
+                    b.Property<long>("po_purchase_id")
+                        .HasColumnType("bigint")
+                        .HasComment("供应商id");
+
+                    b.Property<string>("po_purchase_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商名称");
+
+                    b.Property<string>("po_purchaser")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购员");
+
+                    b.Property<string>("po_purchaser_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购员工号");
+
+                    b.Property<DateTime?>("po_ssend_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("下单日期");
+
+                    b.Property<decimal?>("po_tax_rate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("税率");
+
+                    b.Property<decimal?>("po_total")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("订单总价");
+
+                    b.Property<DateTime?>("review_rtime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("评审通过时间");
+
+                    b.Property<decimal?>("rnumber")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("评审次数");
+
+                    b.Property<int>("rstate")
+                        .HasColumnType("int")
+                        .HasComment("评审状态");
+
+                    b.Property<int>("state")
+                        .HasColumnType("int")
+                        .HasComment("数据状态");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("srm_po_main", (string)null);
+
+                    b.HasComment("采购订单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SRM.srm_po_occupy", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("bang_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计算id");
+
+                    b.Property<long>("bill_no")
+                        .HasColumnType("bigint")
+                        .HasComment("客户订单id");
+
+                    b.Property<string>("cby")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("变更人");
+
+                    b.Property<string>("creason")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("变更原因");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<DateTime?>("ctime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("变更时间");
+
+                    b.Property<long>("eid")
+                        .HasColumnType("bigint")
+                        .HasComment("客户订单行id");
+
+                    b.Property<int>("entry_id")
+                        .HasColumnType("int")
+                        .HasComment("行号");
+
+                    b.Property<DateTime?>("etime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("polist_id")
+                        .HasColumnType("bigint")
+                        .HasComment("采购订单id");
+
+                    b.Property<int>("polist_row")
+                        .HasColumnType("int")
+                        .HasComment("采购订单行号");
+
+                    b.Property<decimal?>("qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("占用量");
+
+                    b.Property<int>("state")
+                        .HasColumnType("int")
+                        .HasComment("占用状态");
+
+                    b.Property<DateTime?>("stime")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("type")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("类型");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("srm_po_occupy", (string)null);
+
+                    b.HasComment("采购订单占用详情");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SRM.srm_pr_main", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("currencytype")
+                        .HasColumnType("bigint")
+                        .HasComment("币种");
+
+                    b.Property<int?>("entity_id")
+                        .HasColumnType("int")
+                        .HasComment("工单行号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<decimal?>("old_apply_aqty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("已申请数量");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<decimal?>("pr_aqty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("申请数量");
+
+                    b.Property<string>("pr_billno")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("pr单号");
+
+                    b.Property<DateTime?>("pr_bsarrive_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("采购员建议到货日期");
+
+                    b.Property<string>("pr_mono")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("关联工单号");
+
+                    b.Property<DateTime?>("pr_oarrive_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("订单到货日期");
+
+                    b.Property<int>("pr_order_type")
+                        .HasColumnType("int")
+                        .HasComment("单据类型");
+
+                    b.Property<decimal?>("pr_orderprice")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("订单价格(含税)");
+
+                    b.Property<DateTime?>("pr_parrive_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("计划到达日期");
+
+                    b.Property<decimal?>("pr_price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("采购净价(不含税)");
+
+                    b.Property<DateTime?>("pr_psend_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("计划下单日期");
+
+                    b.Property<DateTime?>("pr_pur_affirm_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("采购确认到货日期");
+
+                    b.Property<long>("pr_purchaseid")
+                        .HasColumnType("bigint")
+                        .HasComment("供应商id");
+
+                    b.Property<string>("pr_purchasename")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商名称");
+
+                    b.Property<string>("pr_purchasenumber")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商编码");
+
+                    b.Property<string>("pr_purchaser")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购员");
+
+                    b.Property<string>("pr_purchaser_num")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购员工号");
+
+                    b.Property<DateTime?>("pr_rarrive_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("需求到货日期");
+
+                    b.Property<decimal?>("pr_rate")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("税率");
+
+                    b.Property<DateTime?>("pr_rparrive_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("再计划到货日期");
+
+                    b.Property<decimal?>("pr_rqty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("需求数量");
+
+                    b.Property<string>("pr_rreason")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("拒绝原因");
+
+                    b.Property<DateTime?>("pr_sarrive_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("系统建议到达日期");
+
+                    b.Property<decimal?>("pr_sqty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("建议数量");
+
+                    b.Property<DateTime?>("pr_ssend_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("系统建议下单日期");
+
+                    b.Property<decimal?>("pr_sysprice")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("系统价格(含税)");
+
+                    b.Property<int>("pr_type")
+                        .HasColumnType("int")
+                        .HasComment("申请类型");
+
+                    b.Property<string>("pr_unit")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)")
+                        .HasComment("单位");
+
+                    b.Property<string>("remark")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)")
+                        .HasComment("备注");
+
+                    b.Property<decimal?>("secInv_ratio")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("安全库存触发采购比例");
+
+                    b.Property<int>("state")
+                        .HasColumnType("int")
+                        .HasComment("状态");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("srm_pr_main", (string)null);
+
+                    b.HasComment("采购申请单");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SRM.srm_purchase", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<decimal?>("batch_append_qty")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("批量增量");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("factory_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("工厂编码");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("ic_plan_id")
+                        .HasColumnType("bigint")
+                        .HasComment("计划id");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<string>("icitem_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("物料名称");
+
+                    b.Property<string>("order_dept")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购部门");
+
+                    b.Property<decimal?>("order_price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("采购单价");
+
+                    b.Property<string>("order_rector_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购负责人");
+
+                    b.Property<string>("order_rector_num")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购负责人_工号");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("piv_acct")
+                        .HasColumnType("bigint")
+                        .HasComment("采购发票差异科目代码");
+
+                    b.Property<long>("pov_acct")
+                        .HasColumnType("bigint")
+                        .HasComment("采购订单差异科目代码");
+
+                    b.Property<decimal?>("qty_min")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("最小订货量");
+
+                    b.Property<decimal?>("sale_price")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("销售单价");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("srm_purchase", (string)null);
+
+                    b.HasComment("物料采购信息表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.crm_customer", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("address")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("地址");
+
+                    b.Property<int>("carrying_aos")
+                        .HasColumnType("int")
+                        .HasComment("默认运输提前期_天");
+
+                    b.Property<string>("city")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("城市");
+
+                    b.Property<string>("contact")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("联系人");
+
+                    b.Property<string>("corperate")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("法人代表");
+
+                    b.Property<string>("country")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("国别地区");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("currency")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("结算币种");
+
+                    b.Property<string>("cust_group_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户分组名称");
+
+                    b.Property<string>("cust_group_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户分组编号");
+
+                    b.Property<string>("cust_type")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户类别");
+
+                    b.Property<string>("cust_type_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户类别编码");
+
+                    b.Property<string>("customer_level")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户级别");
+
+                    b.Property<string>("customer_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户名称");
+
+                    b.Property<string>("customer_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("客户编号");
+
+                    b.Property<string>("email")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("邮件地址");
+
+                    b.Property<string>("employee_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("专营业务员");
+
+                    b.Property<string>("employee_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("专营业务员_工号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("mobile")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("手机号码");
+
+                    b.Property<DateTime?>("op_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("操作时间");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("post_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("邮政编码");
+
+                    b.Property<string>("province")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("省份");
+
+                    b.Property<string>("region")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("区");
+
+                    b.Property<string>("sale_mode")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("销售模式");
+
+                    b.Property<string>("short_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户简称");
+
+                    b.Property<string>("short_number")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("客户简码");
+
+                    b.Property<string>("state")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("状态");
+
+                    b.Property<string>("telephone")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("电话号码");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<decimal?>("value_add_rate")
+                        .HasPrecision(18, 10)
+                        .HasColumnType("decimal(18,10)")
+                        .HasComment("增值税率");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("crm_customer", (string)null);
+
+                    b.HasComment("客户表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.srm_supplier", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("addr_en")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("英文地址");
+
+                    b.Property<DateTime?>("approve_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("批准日期");
+
+                    b.Property<bool?>("auto_create_mr")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("交货自动生成收货单据");
+
+                    b.Property<bool?>("auto_validate_order")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("自动确认订单");
+
+                    b.Property<string>("bank")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("开户银行");
+
+                    b.Property<string>("bank_account")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("银行账号");
+
+                    b.Property<DateTime?>("begin_day")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("生效日期");
+
+                    b.Property<string>("branch_info")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("分支机构信息");
+
+                    b.Property<string>("checker")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("审核人");
+
+                    b.Property<string>("company_type")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("公司类别");
+
+                    b.Property<string>("contact")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("联系人");
+
+                    b.Property<string>("country")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("国别地区");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("currency")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("结算币种");
+
+                    b.Property<string>("department")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("分管部门");
+
+                    b.Property<string>("email")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("邮件地址");
+
+                    b.Property<string>("employee_name")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("专营业务员");
+
+                    b.Property<string>("employee_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("专营业务员_工号");
+
+                    b.Property<DateTime?>("end_day")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("失效日期");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("fax")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("传真号码");
+
+                    b.Property<bool?>("isuse_supplier_portal")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("启用供应商门户");
+
+                    b.Property<string>("licence")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("营业执照");
+
+                    b.Property<string>("mobile")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("移动电话");
+
+                    b.Property<string>("name_en")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("英文名称");
+
+                    b.Property<DateTime?>("op_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("操作时间");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("po_mode")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("采购模式");
+
+                    b.Property<string>("post_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("邮政编码");
+
+                    b.Property<string>("region")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("区域");
+
+                    b.Property<string>("regmark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("注册商标");
+
+                    b.Property<DateTime?>("regster_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("注册日期");
+
+                    b.Property<string>("settlement")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("结算方式");
+
+                    b.Property<string>("state")
+                        .HasColumnType("longtext")
+                        .HasComment("状态");
+
+                    b.Property<string>("stockid_assignee")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("受托代销虚仓");
+
+                    b.Property<string>("supplier_address")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("供应商地址");
+
+                    b.Property<string>("supplier_full_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("供应商全称");
+
+                    b.Property<string>("supplier_help_code")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商助记码");
+
+                    b.Property<string>("supplier_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("供应商名称");
+
+                    b.Property<string>("supplier_no")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商编号");
+
+                    b.Property<string>("supplier_short_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("供应商简称");
+
+                    b.Property<string>("supply_grade")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商等级");
+
+                    b.Property<string>("supply_type")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应类别");
+
+                    b.Property<string>("taxid")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("税务登记号");
+
+                    b.Property<string>("telephone")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("联系电话");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<string>("trade")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("行业");
+
+                    b.Property<string>("type")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("供应商分类");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<decimal?>("value_add_rate")
+                        .HasPrecision(18, 10)
+                        .HasColumnType("decimal(18,10)")
+                        .HasComment("增值税率");
+
+                    b.Property<string>("vmi_stock")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("VMI仓");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("srm_supplier", (string)null);
+
+                    b.HasComment("供应商表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_code", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<string>("chinese_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("中文注释");
+
+                    b.Property<DateTime?>("code_date")
+                        .IsRequired()
+                        .HasColumnType("datetime(6)")
+                        .HasComment("编码生成时间");
+
+                    b.Property<string>("code_name")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("编码生成名称");
+
+                    b.Property<string>("code_rule")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("编码生成规则");
+
+                    b.Property<long>("code_value")
+                        .HasColumnType("bigint")
+                        .HasComment("编码生成当前值");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_code", (string)null);
+
+                    b.HasComment("系统编码表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_code_pre", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<DateTime>("code_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("编码生成时间");
+
+                    b.Property<string>("code_name")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("编码生成名称");
+
+                    b.Property<long>("code_value")
+                        .HasColumnType("bigint")
+                        .HasComment("编码生成当前值");
+
+                    b.Property<string>("pre_name")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("编码生成前置名称");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_code_pre", (string)null);
+
+                    b.HasComment("系统编码前置表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_config", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("financeis_close")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("账务状态(0-关帐,1-开帐)");
+
+                    b.Property<bool>("is_show")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("是否显示(0不显示、1显示)");
+
+                    b.Property<DateTime?>("next_open_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("下一个开帐日期");
+
+                    b.Property<string>("type")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("配置类型");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_config", (string)null);
+
+                    b.HasComment("系统配置表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_measure_unit", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("is_standard")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("是否是标准单位0-否,1是");
+
+                    b.Property<bool>("status")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("状态:0-无效,1-有效");
+
+                    b.Property<string>("unit_code")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("单位编码");
+
+                    b.Property<string>("unit_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("单位名称");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_measure_unit", (string)null);
+
+                    b.HasComment("计量单位表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_post", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("dept_id")
+                        .HasColumnType("bigint")
+                        .HasComment("部门id");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long?>("parent_id")
+                        .HasColumnType("bigint")
+                        .HasComment("上级岗位");
+
+                    b.Property<string>("post_code")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("岗位编码");
+
+                    b.Property<int?>("post_level")
+                        .HasColumnType("int")
+                        .HasComment("岗位级别");
+
+                    b.Property<string>("post_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("岗位名称");
+
+                    b.Property<string>("post_path")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("岗位路径");
+
+                    b.Property<string>("post_remark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("岗位备注");
+
+                    b.Property<int?>("post_sort")
+                        .HasColumnType("int")
+                        .HasComment("岗位排序");
+
+                    b.Property<bool>("state")
+                        .HasMaxLength(255)
+                        .HasColumnType("tinyint(255)")
+                        .HasComment("数据状态标识 1启用 -1停用");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_post", (string)null);
+
+                    b.HasComment("岗位表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_post_staff", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("post_id")
+                        .HasColumnType("bigint")
+                        .HasComment("岗位id");
+
+                    b.Property<long>("staff_id")
+                        .HasColumnType("bigint")
+                        .HasComment("员工id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_post_staff", (string)null);
+
+                    b.HasComment("员工岗位关联表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_schedule", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<bool>("is_across")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("是否跨天 1是 0否");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("remark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("备注");
+
+                    b.Property<DateTime?>("schedule_end_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束工作时间");
+
+                    b.Property<string>("schedule_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("班次名称");
+
+                    b.Property<string>("schedule_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("班次编码");
+
+                    b.Property<DateTime?>("schedule_start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("起始工作时间");
+
+                    b.Property<bool>("state")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("数据状态标识 1启用 0停用");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<int?>("validate_hours")
+                        .HasColumnType("int")
+                        .HasComment("有效时长");
+
+                    b.Property<int?>("work_hours")
+                        .HasColumnType("int")
+                        .HasComment("工作时长");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_schedule", (string)null);
+
+                    b.HasComment("班次表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_shift", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<bool>("is_across")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("岗位id");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("remark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("备注");
+
+                    b.Property<string>("shift_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("班制名称");
+
+                    b.Property<string>("shift_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("班制编码");
+
+                    b.Property<bool>("state")
+                        .HasColumnType("tinyint(1)")
+                        .HasComment("数据状态标识 1启用 0停用");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<int?>("validate_hours")
+                        .HasColumnType("int")
+                        .HasComment("有效时长");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_shift", (string)null);
+
+                    b.HasComment("班制表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_shift_invalid_time", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<DateTime>("end_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("schedule_id")
+                        .HasColumnType("bigint")
+                        .HasComment("班次id");
+
+                    b.Property<DateTime>("start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_shift_invalid_time", (string)null);
+
+                    b.HasComment("班次无效时间表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_shift_schedule", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("schedule_id")
+                        .HasMaxLength(255)
+                        .HasColumnType("bigint")
+                        .HasComment("班次id");
+
+                    b.Property<long>("shift_id")
+                        .HasMaxLength(50)
+                        .HasColumnType("bigint")
+                        .HasComment("班制id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_shift_schedule", (string)null);
+
+                    b.HasComment("班制班次关联表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_staff", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<DateOnly?>("birthday")
+                        .HasColumnType("date")
+                        .HasComment("生日");
+
+                    b.Property<string>("card_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("卡号");
+
+                    b.Property<string>("chinese_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("中文名");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("dept_id")
+                        .HasColumnType("bigint")
+                        .HasComment("部门id");
+
+                    b.Property<string>("dept_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("部门名称");
+
+                    b.Property<string>("dept_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("部门编号");
+
+                    b.Property<string>("email")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("邮箱");
+
+                    b.Property<string>("emp_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("工号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("id_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("身份证号");
+
+                    b.Property<string>("mobile")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("移动电话");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("org_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("组织名称");
+
+                    b.Property<string>("phone")
+                        .HasMaxLength(80)
+                        .HasColumnType("varchar(80)")
+                        .HasComment("电话");
+
+                    b.Property<string>("photo")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("照片");
+
+                    b.Property<string>("politics")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("政治面貌");
+
+                    b.Property<string>("sex")
+                        .HasMaxLength(1)
+                        .HasColumnType("varchar(1)")
+                        .HasComment("性别 1 男 2 女");
+
+                    b.Property<string>("staff_no")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("员工编码");
+
+                    b.Property<string>("staff_remark")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("备注");
+
+                    b.Property<bool>("state")
+                        .HasMaxLength(255)
+                        .HasColumnType("tinyint(255)")
+                        .HasComment("数据状态标识 1启用 0停用");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long?>("user_id")
+                        .HasColumnType("bigint")
+                        .HasComment("用户id");
+
+                    b.Property<string>("user_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("用户名称");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_staff", (string)null);
+
+                    b.HasComment("员工表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.SystemData.sys_upload", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<string>("data_type")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("文件数据类型");
+
+                    b.Property<string>("file_type")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("文件后缀");
+
+                    b.Property<string>("file_url")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("文件存储路径");
+
+                    b.Property<string>("original_file_name")
+                        .HasMaxLength(255)
+                        .HasColumnType("varchar(255)")
+                        .HasComment("源文件名称");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("sys_upload", (string)null);
+
+                    b.HasComment("文件上传表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_process", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("long_desc")
+                        .HasMaxLength(2000)
+                        .HasColumnType("varchar(2000)")
+                        .HasComment("详细描述");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("proc_name")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工序名称");
+
+                    b.Property<string>("short_desc")
+                        .HasMaxLength(500)
+                        .HasColumnType("varchar(500)")
+                        .HasComment("简述");
+
+                    b.Property<string>("subids")
+                        .HasMaxLength(2000)
+                        .HasColumnType("varchar(2000)")
+                        .HasComment("组合工序id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_process", (string)null);
+
+                    b.HasComment("工序表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_tech_proc_accessory", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("equip_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工装id");
+
+                    b.Property<string>("equip_no")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工装编号");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<int>("qty")
+                        .HasColumnType("int")
+                        .HasComment("数量");
+
+                    b.Property<long>("tech_proc_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺工序主键");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_tech_proc_accessory", (string)null);
+
+                    b.HasComment("治具表(工装表)");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_tech_proc_document", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("name")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("作业指导书名称");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tech_proc_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺工序主键");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long>("upload_id")
+                        .HasColumnType("bigint")
+                        .HasComment("作业指导书主键");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_tech_proc_document", (string)null);
+
+                    b.HasComment("工序作业指导书表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_tech_proc_equipment", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long>("equip_id")
+                        .HasColumnType("bigint")
+                        .HasComment("设备id");
+
+                    b.Property<string>("equip_name")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("设备名称");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tech_proc_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺工序id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long?>("work_calendar_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工作日历id");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_tech_proc_workshop_equipment", (string)null);
+
+                    b.HasComment("工艺路径关联设备表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_tech_proc_icitem", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long>("icitem_id")
+                        .HasColumnType("bigint")
+                        .HasComment("物料id");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<int>("qty")
+                        .HasColumnType("int")
+                        .HasComment("数量");
+
+                    b.Property<long>("tech_proc_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺工序id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_tech_proc_workshop_icitem", (string)null);
+
+                    b.HasComment("发料到工位表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_tech_proc_workshop", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<int?>("serialno")
+                        .HasColumnType("int")
+                        .HasComment("序列号");
+
+                    b.Property<long>("tech_proc_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺工序id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long>("workshop_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工位id");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_tech_proc_workshop", (string)null);
+
+                    b.HasComment("工艺路径关联工位表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_tech_proc_workshop_staff", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("staff_id")
+                        .HasColumnType("bigint")
+                        .HasComment("员工id");
+
+                    b.Property<string>("staff_name")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("员工姓名");
+
+                    b.Property<long>("tech_proc_workshop_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺工位id");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_tech_proc_workshop_staff", (string)null);
+
+                    b.HasComment("工序工位员工信息表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_tech_process", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<decimal?>("ct")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("节拍时间");
+
+                    b.Property<decimal?>("effect_ratio")
+                        .HasPrecision(10, 4)
+                        .HasColumnType("decimal(10,4)")
+                        .HasComment("效率系数");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("is_schedule")
+                        .HasColumnType("int")
+                        .HasComment("是否需要排产:1-是;0-否");
+
+                    b.Property<int>("level")
+                        .HasColumnType("int")
+                        .HasComment("组合层级");
+
+                    b.Property<decimal?>("lq")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("前置最小数量");
+
+                    b.Property<int?>("maxworkshop")
+                        .HasColumnType("int")
+                        .HasComment("最大并行工位数");
+
+                    b.Property<int?>("mototrack")
+                        .HasColumnType("int")
+                        .HasComment("是否需要跟踪工序");
+
+                    b.Property<int?>("needqc")
+                        .HasColumnType("int")
+                        .HasComment("是否需要质检");
+
+                    b.Property<long?>("nextprocid")
+                        .HasColumnType("bigint")
+                        .HasComment("下一工序id");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long?>("parentprocid")
+                        .HasColumnType("bigint")
+                        .HasComment("父级工序id");
+
+                    b.Property<long>("proc_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工序主键");
+
+                    b.Property<decimal?>("readytime")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("前置准备时间");
+
+                    b.Property<long>("tech_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工艺主键");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<int>("type")
+                        .HasColumnType("int")
+                        .HasComment("效率计算类型 1-节拍时间;2-UPH");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<decimal?>("upe")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("一次可加工数量");
+
+                    b.Property<decimal?>("uph")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("UPH");
+
+                    b.Property<decimal?>("upp")
+                        .HasPrecision(20, 8)
+                        .HasColumnType("decimal(20,8)")
+                        .HasComment("子工序加工数量");
+
+                    b.Property<int?>("wctype")
+                        .HasColumnType("int")
+                        .HasComment("工作中心类型");
+
+                    b.Property<int?>("wsinuse")
+                        .HasColumnType("int")
+                        .HasComment("实际运行工位数");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_tech_process", (string)null);
+
+                    b.HasComment("工艺关联工序表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_technique", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("bom")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("产品");
+
+                    b.Property<string>("bomver")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("产品版本");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<string>("desc")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("描述");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<int>("level")
+                        .HasColumnType("int")
+                        .HasComment("效率计算层级");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("tech_name")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工艺路径名称");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_technique", (string)null);
+
+                    b.HasComment("工艺路径表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_work_calendar", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<int?>("calendar1")
+                        .HasColumnType("int")
+                        .HasComment("周1");
+
+                    b.Property<int?>("calendar2")
+                        .HasColumnType("int")
+                        .HasComment("周2");
+
+                    b.Property<int?>("calendar3")
+                        .HasColumnType("int")
+                        .HasComment("周3");
+
+                    b.Property<int?>("calendar4")
+                        .HasColumnType("int")
+                        .HasComment("周4");
+
+                    b.Property<int?>("calendar5")
+                        .HasColumnType("int")
+                        .HasComment("周5");
+
+                    b.Property<int?>("calendar6")
+                        .HasColumnType("int")
+                        .HasComment("周6");
+
+                    b.Property<int?>("calendar7")
+                        .HasColumnType("int")
+                        .HasComment("周7");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<DateTime?>("end_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("结束时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<int?>("rest_period")
+                        .HasColumnType("int")
+                        .HasComment("休息周期");
+
+                    b.Property<long?>("shift_id")
+                        .HasColumnType("bigint")
+                        .HasComment("班制id");
+
+                    b.Property<int?>("standard_period")
+                        .HasColumnType("int")
+                        .HasComment("标准周期");
+
+                    b.Property<DateTime?>("start_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("开始时间");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<string>("work_calendar_name")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工作日历名称");
+
+                    b.Property<string>("work_calendar_no")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工作日历编码");
+
+                    b.Property<int?>("work_period")
+                        .HasColumnType("int")
+                        .HasComment("工作周期");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_work_calendar", (string)null);
+
+                    b.HasComment("工作日历表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_work_calendar_list", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<DateTime?>("work_cal_list_date")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("日期");
+
+                    b.Property<int?>("work_cal_list_num")
+                        .HasColumnType("int")
+                        .HasComment("班次数");
+
+                    b.Property<int?>("work_cal_list_times")
+                        .HasColumnType("int")
+                        .HasComment("工作时长(分钟)");
+
+                    b.Property<int?>("work_cal_list_type")
+                        .HasColumnType("int")
+                        .HasComment("类型:1-工作日;0-休息日");
+
+                    b.Property<long>("work_calendar_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工作日历id");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_work_calendar_list", (string)null);
+
+                    b.HasComment("工作日历明细表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_workshop", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<string>("building")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("楼栋");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("floor")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("楼层");
+
+                    b.Property<string>("geoinfo")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("坐标");
+
+                    b.Property<string>("name")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("工位名称");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<string>("subids")
+                        .HasMaxLength(2000)
+                        .HasColumnType("varchar(2000)")
+                        .HasComment("组合工位ids");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long?>("work_calendar_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工作日历id");
+
+                    b.Property<string>("zone")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("区域");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_workshop", (string)null);
+
+                    b.HasComment("工位表");
+                });
+
+            modelBuilder.Entity("Bussiness.Model.Tech.mes_workshop_shelf", b =>
+                {
+                    b.Property<long>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("bigint");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted")
+                        .HasComment("删除标识");
+
+                    b.Property<long?>("create_by")
+                        .HasColumnType("bigint")
+                        .HasComment("创建人id");
+
+                    b.Property<string>("create_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("创建人名称");
+
+                    b.Property<DateTime?>("create_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("创建时间");
+
+                    b.Property<long?>("factory_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工厂ID");
+
+                    b.Property<string>("geoinfo")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("坐标");
+
+                    b.Property<long?>("org_id")
+                        .HasColumnType("bigint")
+                        .HasComment("组织ID");
+
+                    b.Property<int?>("serialno")
+                        .HasColumnType("int")
+                        .HasComment("线边仓序列号");
+
+                    b.Property<string>("sheifno")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)")
+                        .HasComment("仓库编号");
+
+                    b.Property<long>("tenant_id")
+                        .HasColumnType("bigint")
+                        .HasComment("企业ID");
+
+                    b.Property<long?>("update_by")
+                        .HasColumnType("bigint")
+                        .HasComment("修改人");
+
+                    b.Property<string>("update_by_name")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)")
+                        .HasComment("修改人名称");
+
+                    b.Property<DateTime?>("update_time")
+                        .HasColumnType("datetime(6)")
+                        .HasComment("修改时间");
+
+                    b.Property<long>("workshop_id")
+                        .HasColumnType("bigint")
+                        .HasComment("工位id");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("mes_workshop_shelf", (string)null);
+
+                    b.HasComment("工位关联线边仓表");
+                });
+
+            modelBuilder.Entity("XCZ.FlowManagement.BaseFlow", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("Code")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<DateTime>("CreationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("CreationTime");
+
+                    b.Property<Guid?>("CreatorId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("CreatorId");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<Guid>("FormId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<DateTime?>("LastModificationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("LastModificationTime");
+
+                    b.Property<Guid?>("LastModifierId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("LastModifierId");
+
+                    b.Property<int>("Level")
+                        .HasColumnType("int");
+
+                    b.Property<string>("Remark")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<int>("Status")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("int")
+                        .HasDefaultValue(0);
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.Property<string>("Title")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)");
+
+                    b.Property<string>("UseDate")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("FormId");
+
+                    b.ToTable("base_flow", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.FlowManagement.FlowLine", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<Guid>("BaseFlowId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<string>("From")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<string>("Label")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)");
+
+                    b.Property<string>("Remark")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.Property<string>("To")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_flow_line", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.FlowManagement.FlowNode", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<Guid>("BaseFlowId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<string>("Executor")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<string>("Ico")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<string>("Left")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("Name")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)");
+
+                    b.Property<string>("NodeId")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)");
+
+                    b.Property<string>("Remark")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<string>("Roles")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)");
+
+                    b.Property<string>("State")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.Property<string>("Top")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("Type")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("Users")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_flow_node", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.FlowManagement.LineForm", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<Guid>("BaseFlowId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<string>("Condition")
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)");
+
+                    b.Property<string>("Content")
+                        .HasMaxLength(1000)
+                        .HasColumnType("varchar(1000)");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<Guid>("FieldId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("FieldName")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)");
+
+                    b.Property<string>("FieldType")
+                        .HasMaxLength(20)
+                        .HasColumnType("varchar(20)");
+
+                    b.Property<Guid>("FlowLineId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<int>("IntContent")
+                        .HasColumnType("int");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<string>("Remark")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_flow_line_form", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.FormManagement.Form", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("Api")
+                        .IsRequired()
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<DateTime>("CreationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("CreationTime");
+
+                    b.Property<Guid?>("CreatorId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("CreatorId");
+
+                    b.Property<string>("Description")
+                        .IsRequired()
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<bool>("Disabled")
+                        .HasColumnType("tinyint(1)");
+
+                    b.Property<string>("DisplayName")
+                        .IsRequired()
+                        .HasMaxLength(100)
+                        .HasColumnType("varchar(100)");
+
+                    b.Property<string>("EntityName")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<string>("FormName")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<DateTime?>("LastModificationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("LastModificationTime");
+
+                    b.Property<Guid?>("LastModifierId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("LastModifierId");
+
+                    b.Property<string>("Namespace")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("Remark")
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<string>("TableName")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_form", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.FormManagement.FormData", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<DateTime>("CreationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("CreationTime");
+
+                    b.Property<Guid?>("CreatorId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("CreatorId");
+
+                    b.Property<string>("Data")
+                        .HasColumnType("longtext");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<Guid>("FormId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<DateTime?>("LastModificationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("LastModificationTime");
+
+                    b.Property<Guid?>("LastModifierId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("LastModifierId");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_form_datas", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.FormManagement.FormField", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<string>("DataType")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("DefaultValue")
+                        .HasMaxLength(256)
+                        .HasColumnType("varchar(256)");
+
+                    b.Property<bool>("Disabled")
+                        .HasColumnType("tinyint(1)");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<string>("FieldName")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<int>("FieldOrder")
+                        .HasColumnType("int");
+
+                    b.Property<string>("FieldType")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<Guid>("FormId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("Icon")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<bool>("IsIndex")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false);
+
+                    b.Property<bool>("IsReadonly")
+                        .HasColumnType("tinyint(1)");
+
+                    b.Property<bool>("IsRequired")
+                        .HasColumnType("tinyint(1)");
+
+                    b.Property<bool>("IsSort")
+                        .HasColumnType("tinyint(1)");
+
+                    b.Property<string>("Label")
+                        .IsRequired()
+                        .HasMaxLength(128)
+                        .HasColumnType("varchar(128)");
+
+                    b.Property<int?>("Maxlength")
+                        .HasColumnType("int");
+
+                    b.Property<string>("Placeholder")
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<string>("Regx")
+                        .HasColumnType("longtext");
+
+                    b.Property<int>("Span")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("int")
+                        .HasDefaultValue(24);
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_form_fields", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.FormManagement.FormFieldOption", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<Guid>("FormFieldId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<Guid>("FormId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("Label")
+                        .IsRequired()
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("Value")
+                        .IsRequired()
+                        .HasMaxLength(200)
+                        .HasColumnType("varchar(200)");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("base_form_fields_opts", (string)null);
+                });
+
+            modelBuilder.Entity("XCZ.WorkFlow.FormWorkFlow", b =>
+                {
+                    b.Property<Guid>("Id")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("char(36)");
+
+                    b.Property<Guid>("BaseFlowId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("varchar(40)")
+                        .HasColumnName("ConcurrencyStamp");
+
+                    b.Property<DateTime>("CreationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("CreationTime");
+
+                    b.Property<Guid?>("CreatorId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("CreatorId");
+
+                    b.Property<Guid>("EntityId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<string>("ExtraProperties")
+                        .HasColumnType("longtext")
+                        .HasColumnName("ExtraProperties");
+
+                    b.Property<Guid>("FormId")
+                        .HasColumnType("char(36)");
+
+                    b.Property<bool>("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("tinyint(1)")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property<DateTime?>("LastModificationTime")
+                        .HasColumnType("datetime(6)")
+                        .HasColumnName("LastModificationTime");
+
+                    b.Property<Guid?>("LastModifierId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("LastModifierId");
+
+                    b.Property<string>("NodeId")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("varchar(50)");
+
+                    b.Property<int>("Status")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("int")
+                        .HasDefaultValue(0);
+
+                    b.Property<Guid?>("TenantId")
+                        .HasColumnType("char(36)")
+                        .HasColumnName("TenantId");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("EntityId");
+
+                    b.HasIndex("NodeId");
+
+                    b.ToTable("base_form_workflow", (string)null);
+                });
+#pragma warning restore 612, 618
+        }
+    }
+}

+ 158 - 0
MicroServices/Business/Business.Host/Migrations/20230213062931_bang_id.cs

@@ -0,0 +1,158 @@
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace Business.Migrations
+{
+    public partial class bang_id : Migration
+    {
+        protected override void Up(MigrationBuilder migrationBuilder)
+        {
+            migrationBuilder.AlterColumn<int>(
+                name: "entity_id",
+                table: "srm_pr_main",
+                type: "int",
+                nullable: true,
+                comment: "工单行号",
+                oldClrType: typeof(int),
+                oldType: "int",
+                oldComment: "工单行号");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "srm_po_occupy",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "srm_po_main",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "srm_po_list",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AlterColumn<int>(
+                name: "need_icitem_status",
+                table: "mes_oorder",
+                type: "int",
+                nullable: true,
+                comment: "所需物料是否充足  1-充足 0-缺料",
+                oldClrType: typeof(int),
+                oldType: "int",
+                oldNullable: true,
+                oldComment: "加工单位编码");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "mes_morder",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "mes_mooccupy",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "mes_moentry",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "ic_item_stock",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "crm_seorderentry",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+
+            migrationBuilder.AddColumn<long>(
+                name: "bang_id",
+                table: "crm_seorder",
+                type: "bigint",
+                nullable: true,
+                comment: "计算id");
+        }
+
+        protected override void Down(MigrationBuilder migrationBuilder)
+        {
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "srm_po_occupy");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "srm_po_main");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "srm_po_list");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "mes_morder");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "mes_mooccupy");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "mes_moentry");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "ic_item_stock");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "crm_seorderentry");
+
+            migrationBuilder.DropColumn(
+                name: "bang_id",
+                table: "crm_seorder");
+
+            migrationBuilder.AlterColumn<int>(
+                name: "entity_id",
+                table: "srm_pr_main",
+                type: "int",
+                nullable: false,
+                defaultValue: 0,
+                comment: "工单行号",
+                oldClrType: typeof(int),
+                oldType: "int",
+                oldNullable: true,
+                oldComment: "工单行号");
+
+            migrationBuilder.AlterColumn<int>(
+                name: "need_icitem_status",
+                table: "mes_oorder",
+                type: "int",
+                nullable: true,
+                comment: "加工单位编码",
+                oldClrType: typeof(int),
+                oldType: "int",
+                oldNullable: true,
+                oldComment: "所需物料是否充足  1-充足 0-缺料");
+        }
+    }
+}

Fichier diff supprimé car celui-ci est trop grand
+ 281 - 765
MicroServices/Business/Business.Host/Migrations/BusinessMigrationDbContextModelSnapshot.cs


+ 39 - 0
MicroServices/Business/Business.HttpApi/Controllers/ScheduleTaskController.cs

@@ -0,0 +1,39 @@
+using Business.ResourceExamineManagement.Dto;
+using Business.ScheduleTaskManagement;
+using Microsoft.AspNetCore.Mvc;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Volo.Abp;
+using Volo.Abp.AspNetCore.Mvc;
+
+namespace Business.Controllers
+{
+    /// <summary>
+    /// 同步数据
+    /// </summary>
+    [RemoteService]
+    [Area("Business")]
+    [Route("api/business/schedule-task")]
+    public class ScheduleTaskController : AbpController
+    {
+        private readonly IScheduleTaskAppService _ScheduleTaskAppService;
+
+        public ScheduleTaskController(IScheduleTaskAppService ScheduleTaskAppService)
+        {
+            _ScheduleTaskAppService = ScheduleTaskAppService;
+        }
+
+        /// <summary>
+        /// 同步基础数据到mongodb
+        /// </summary>
+        /// <returns></returns>
+        [HttpGet]
+        public Task<ResultDto> SyncBaseDataToMongoDB()
+        {
+            return _ScheduleTaskAppService.SyncBaseDataToMongoDB();
+        }
+    }
+}

+ 0 - 5
MicroServices/Business/Bussiness.Model/MES/IC/ic_bom.cs

@@ -133,10 +133,5 @@ namespace Bussiness.Model.MES.IC
         [StringLength(20)]
         [Description("单位")]
         public string? unit { get; set; }
-        /// <summary>
-        /// 计算ID
-        /// </summary>
-        [Description("计算id")]
-        public long? bang_id { get; set; }
     }
 }

+ 9 - 0
MicroServices/Business/Bussiness.Model/MES/IC/ic_factory_details.cs

@@ -228,5 +228,14 @@ namespace Bussiness.Model.MES.IC
         [Precision(20, 8)]
         public decimal? production_leadtime { get; set; }
 
+        /// <summary>
+        /// 下单前置期_天
+        /// </summary>
+        [Description("下单前置期_天")]
+        [Required]
+        [DefaultValue(0)]
+        [Precision(20, 8)]
+        public decimal? order_leadtime { get; set; }
+
     }
 }

+ 2 - 1
MicroServices/Business/Bussiness.Model/MES/IC/ic_item_stock.cs

@@ -3,6 +3,7 @@ using Business.Model;
 using Microsoft.EntityFrameworkCore;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
 
 namespace Bussiness.Model.MES.IC
 {
@@ -47,7 +48,7 @@ namespace Bussiness.Model.MES.IC
         /// 计算id
         /// </summary>
         [Description("计算id")]
+        [NotMapped]
         public long? bang_id { get; set; }
-
     }
 }

+ 4 - 2
MicroServices/Business/Bussiness.Model/MES/IC/ic_substitute_all_dtl.cs

@@ -1,6 +1,7 @@
 using Business.Core.Attributes;
 using Business.Model;
 using Microsoft.EntityFrameworkCore;
+using MongoDB.Bson.Serialization.Attributes;
 using System;
 using System.Collections.Generic;
 using System.ComponentModel;
@@ -28,6 +29,7 @@ namespace Bussiness.Model.MES.IC
         /// </summary>
         [StringLength(20)]
         [Description("群组代码")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string? substitute_code { get; set; }
         /// <summary>
         /// 物料主键
@@ -39,7 +41,7 @@ namespace Bussiness.Model.MES.IC
         /// 主/替
         /// </summary>
         [Description("主/替")]
-        public int ismain { get; set; }
+        public int? ismain { get; set; }
 
         /*/// <summary>
         /// 使用数量
@@ -52,7 +54,7 @@ namespace Bussiness.Model.MES.IC
         /// 序号
         /// </summary>
         [Description("序号")]
-        public int num { get; set; }
+        public int? num { get; set; }
 
         /// <summary>
         /// 替代数量

+ 7 - 0
MicroServices/Business/Bussiness.Model/SRM/srm_po_list.cs

@@ -3,6 +3,7 @@ using Business.Model;
 using Microsoft.EntityFrameworkCore;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
 
 namespace Bussiness.Model.SRM
 {
@@ -188,5 +189,11 @@ namespace Bussiness.Model.SRM
         [Description("币别")]
         public long currencytype { get; set; }
 
+        /// <summary>
+        /// 计算ID
+        /// </summary>
+        [Description("计算id")]
+        [NotMapped]
+        public long? bang_id { get; set; }
     }
 }

+ 8 - 1
MicroServices/Business/Bussiness.Model/SRM/srm_po_main.cs

@@ -3,6 +3,7 @@ using Business.Model;
 using Microsoft.EntityFrameworkCore;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
 
 namespace Bussiness.Model.SRM
 {
@@ -12,7 +13,6 @@ namespace Bussiness.Model.SRM
     [CollectionName("dopbase", "srm_po_main")]
     public class srm_po_main : BaseEntity
     {
-
         /// <summary>
         /// PO单号
         /// </summary>
@@ -114,5 +114,12 @@ namespace Bussiness.Model.SRM
         /// </summary>
         [Description("金蝶单据类型值")]
         public int bill_type { get; set; }
+
+        /// <summary>
+        /// 计算ID
+        /// </summary>
+        [Description("计算id")]
+        [NotMapped]
+        public long? bang_id { get; set; }
     }
 }

+ 8 - 0
MicroServices/Business/Bussiness.Model/SRM/srm_po_occupy.cs

@@ -3,6 +3,7 @@ using Business.Model;
 using Microsoft.EntityFrameworkCore;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
 
 namespace Bussiness.Model.SRM
 {
@@ -85,5 +86,12 @@ namespace Bussiness.Model.SRM
         [Description("变更时间")]
         public DateTime? ctime { get; set; }
 
+        /// <summary>
+        /// 计算ID
+        /// </summary>
+        [Description("计算id")]
+        [NotMapped]
+        public long? bang_id { get; set; }
+
     }
 }

+ 1 - 1
MicroServices/Business/Bussiness.Model/SRM/srm_pr_main.cs

@@ -28,7 +28,7 @@ namespace Bussiness.Model.SRM
         /// 工单行号
         /// </summary>
         [Description("工单行号")]
-        public int entity_id { get; set; }
+        public int? entity_id { get; set; }
         /// <summary>
         /// 供应商id
         /// </summary>

+ 11 - 1
MicroServices/Business/Bussiness.Model/Sale/crm_seorder.cs

@@ -1,7 +1,9 @@
-using Business.Model;
+using Business.Core.Attributes;
+using Business.Model;
 using Microsoft.EntityFrameworkCore;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
 
 namespace Bussiness.Model.Sale
 {
@@ -9,6 +11,7 @@ namespace Bussiness.Model.Sale
     ///销售订单表
     /// </summary>
     [Description("销售订单表")]
+    [CollectionName("dopbase", "crm_seorder")]
     public class crm_seorder : BaseEntity
     {
         ///// <summary>
@@ -216,5 +219,12 @@ namespace Bussiness.Model.Sale
         /// </summary>
         [Description("创建部门id")]
         public long? create_dept { get; set; }
+
+        /// <summary>
+        /// 计算ID
+        /// </summary>
+        [Description("计算id")]
+        [NotMapped]
+        public long? bang_id { get; set; }
     }
 }

+ 11 - 1
MicroServices/Business/Bussiness.Model/Sale/crm_seorderentry.cs

@@ -1,7 +1,9 @@
-using Business.Model;
+using Business.Core.Attributes;
+using Business.Model;
 using Microsoft.EntityFrameworkCore;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
 
 namespace Bussiness.Model.Sale
 {
@@ -9,6 +11,7 @@ namespace Bussiness.Model.Sale
     ///销售订单明细表
     /// </summary>
     [Description("销售订单明细表")]
+    [CollectionName("dopbase", "crm_seorderentry")]
     public class crm_seorderentry : BaseEntity
     {
         ///// <summary>
@@ -332,5 +335,12 @@ namespace Bussiness.Model.Sale
         /// </summary>
         [Description("创建部门id")]
         public long? create_dept { get; set; }
+
+        /// <summary>
+        /// 计算ID
+        /// </summary>
+        [Description("计算id")]
+        [NotMapped]
+        public long? bang_id { get; set; }
     }
 }

+ 3 - 1
MicroServices/Business/Bussiness.Model/SystemData/srm_supplier.cs

@@ -1,4 +1,5 @@
-using Business.Model;
+using Business.Core.Attributes;
+using Business.Model;
 using Microsoft.EntityFrameworkCore;
 using System.ComponentModel;
 using System.ComponentModel.DataAnnotations;
@@ -9,6 +10,7 @@ namespace Bussiness.Model.SystemData
     /// 供应商
     /// </summary>
     [Description("供应商")]
+    [CollectionName("dopbase", "srm_supplier")]
     public class srm_supplier: BaseEntity
     {
         ///// <summary>

+ 5 - 0
MicroServices/Business/Bussiness.Model/Tech/mes_process.cs

@@ -9,6 +9,7 @@ using System.Text;
 using System.Threading.Tasks;
 using MongoDB.Driver.Core;
 using Business.Core.Attributes;
+using MongoDB.Bson.Serialization.Attributes;
 
 namespace Bussiness.Model.Tech
 {
@@ -31,6 +32,7 @@ namespace Bussiness.Model.Tech
         [Required]
         [StringLength(100)]
         [Description("工序名称")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string proc_name { get; set; }
 
         /// <summary>
@@ -38,6 +40,7 @@ namespace Bussiness.Model.Tech
         /// </summary>
         [StringLength(500)]
         [Description("简述")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string? short_desc { get; set; }
 
         /// <summary>
@@ -45,6 +48,7 @@ namespace Bussiness.Model.Tech
         /// </summary>
         [StringLength(2000)]
         [Description("详细描述")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string? long_desc { get; set; }
 
         /// <summary>
@@ -52,6 +56,7 @@ namespace Bussiness.Model.Tech
         /// </summary>
         [StringLength(2000)]
         [Description("组合工序id")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string? subids { get; set; }
 
     }

+ 4 - 0
MicroServices/Business/Bussiness.Model/Tech/mes_technique.cs

@@ -25,6 +25,7 @@ namespace Bussiness.Model.Tech
         [Required]
         [StringLength(100)]
         [Description("工艺路径名称")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string tech_name { get; set; }
 
         /// <summary>
@@ -39,6 +40,7 @@ namespace Bussiness.Model.Tech
         /// </summary>
         [StringLength(100)]
         [Description("产品")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string? bom { get; set; }
 
         /// <summary>
@@ -46,6 +48,7 @@ namespace Bussiness.Model.Tech
         /// </summary>
         [StringLength(100)]
         [Description("产品版本")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string? bomver { get; set; }
 
         /// <summary>
@@ -53,6 +56,7 @@ namespace Bussiness.Model.Tech
         /// </summary>
         [StringLength(100)]
         [Description("描述")]
+        [BsonRepresentation(MongoDB.Bson.BsonType.String)]
         public string? desc { get; set; }
     }
 }

Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff