From 46af5a3a488e06c2eb4844a2dd72ad9ddcd7cdbd Mon Sep 17 00:00:00 2001
From: payne <bzrlw2012@163.com>
Date: 周四, 25 4月 2024 13:21:18 +0800
Subject: [PATCH] 物料详情接口 控制规则明细页面增加字段

---
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsControlRuleDetail/WmsControlRuleDetailService.cs |  492 ++++++++++++++++++++++----------------------
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialInput.cs                 |    1 
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/IWmsMaterialService.cs                  |    2 
 iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/editForm.vue                                  |    6 
 iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/index.vue                                     |   29 ++
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Core/Entity/WmsBase/WmsControlRuleDetail.cs                                     |    2 
 iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/addForm.vue                                   |    4 
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/WmsMaterialService.cs                   |   48 ++++
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialOutput.cs                |   27 ++
 9 files changed, 355 insertions(+), 256 deletions(-)

diff --git a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/addForm.vue b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/addForm.vue
index 43dc396..63b05f4 100644
--- a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/addForm.vue
+++ b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/addForm.vue
@@ -8,8 +8,8 @@
     @cancel="handleCancel">
     <a-spin :spinning="confirmLoading">
 		<a-form :form="form">
-        <a-form-item label="鎺у埗灞炴�ц鍒欑紪鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
-          <a-input placeholder="璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欑紪鍙�" v-decorator="['ruleCode', {rules: [{required: true, message: '璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欑紪鍙凤紒'}]}]" />
+        <a-form-item label="鎺у埗灞炴�ц鍒欏悕绉�" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
+          <a-input placeholder="璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欏悕绉�" v-decorator="['ruleName', {rules: [{required: true, message: '璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欏悕绉帮紒'}]}]" />
         </a-form-item>
         <a-form-item label="鏈�楂樺簱瀛�" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
           <a-input placeholder="璇疯緭鍏ユ渶楂樺簱瀛�" v-decorator="['maxImumqty']" />
diff --git a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/editForm.vue b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/editForm.vue
index bbadedf..ab4062c 100644
--- a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/editForm.vue
+++ b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/editForm.vue
@@ -8,8 +8,8 @@
     @cancel="handleCancel">
     <a-spin :spinning="confirmLoading">
       <a-form :form="form">
-        <a-form-item label="鎺у埗灞炴�ц鍒欑紪鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
-          <a-input placeholder="璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欑紪鍙�" v-decorator="['ruleCode', {rules: [{required: true, message: '璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欑紪鍙凤紒'}]}]" />
+        <a-form-item label="鎺у埗灞炴�ц鍒欏悕绉�" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
+          <a-input placeholder="璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欏悕绉�" v-decorator="['ruleName', {rules: [{required: true, message: '璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欏悕绉帮紒'}]}]" />
         </a-form-item>
         <a-form-item label="鏈�楂樺簱瀛�" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
           <a-input placeholder="璇疯緭鍏ユ渶楂樺簱瀛�" v-decorator="['maxImumqty']" />
@@ -78,7 +78,7 @@
           this.form.setFieldsValue(
             {
               id: record.id,
-              ruleCode: record.ruleCode,
+              ruleName: record.ruleName,
               maxImumqty: record.maxImumqty,
               minImumqty: record.minImumqty,
               safeImumqty: record.safeImumqty,
diff --git a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/index.vue b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/index.vue
index 627d961..31ca90c 100644
--- a/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/index.vue
+++ b/iWare_RawMaterialWarehouse_Web/src/views/main/WmsBase/WmsControlRuleDetail/index.vue
@@ -12,10 +12,15 @@
               </a-form-item>
             </a-col>
             <a-col :md="8" :sm="24">
-              <a-form-item label="鏈�楂樺簱瀛�">
-                <a-input v-model="queryParam.maxImumqty" allow-clear placeholder="璇疯緭鍏ユ渶楂樺簱瀛�"/>
+              <a-form-item label="鎺у埗灞炴�ц鍒欏悕绉�">
+                <a-input v-model="queryParam.ruleName" allow-clear placeholder="璇疯緭鍏ユ帶鍒跺睘鎬ц鍒欏悕绉�"/>
               </a-form-item>
             </a-col><template v-if="advanced">
+              <a-col :md="8" :sm="24">
+                <a-form-item label="鏈�楂樺簱瀛�">
+                  <a-input v-model="queryParam.maxImumqty" allow-clear placeholder="璇疯緭鍏ユ渶楂樺簱瀛�"/>
+                </a-form-item>
+              </a-col>
               <a-col :md="8" :sm="24">
                 <a-form-item label="鏈�浣庡簱瀛�">
                   <a-input v-model="queryParam.minImumqty" allow-clear placeholder="璇疯緭鍏ユ渶浣庡簱瀛�"/>
@@ -212,6 +217,26 @@
 	dataIndex: 'ruleCode'
 	},
 	{
+	title: '鎺у埗灞炴�ц鍒欏悕绉�',
+	align: 'center',
+	customHeaderCell: () => {
+	return {
+	 style: {
+	'min-width': '120px'//鏈�灏忓垪瀹借缃�
+	 }
+	 }
+	},
+	customCell: () => {
+	return {
+	style: {
+	'min-width': '120px'//鏈�灏忓垪瀹借缃�
+	}
+	}
+	},
+	sorter: true,
+	dataIndex: 'ruleName'
+	},
+	{
 	title: '鏈�楂樺簱瀛�',
 	align: 'center',
 	customHeaderCell: () => {
diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsControlRuleDetail/WmsControlRuleDetailService.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsControlRuleDetail/WmsControlRuleDetailService.cs
index 5f4405c..9037c71 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsControlRuleDetail/WmsControlRuleDetailService.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsControlRuleDetail/WmsControlRuleDetailService.cs
@@ -22,23 +22,23 @@
     [Route("api")]
     public class WmsControlRuleDetailService : IWmsControlRuleDetailService, IDynamicApiController, ITransient
     {
-        private readonly IRepository<WmsControlRuleDetail,MasterDbContextLocator> _wmsControlRuleDetailRep;
+        private readonly IRepository<WmsControlRuleDetail, MasterDbContextLocator> _wmsControlRuleDetailRep;
         private readonly IRepository<SysDictType, MasterDbContextLocator> _sysDictTypeRep;
         private readonly IRepository<SysDictData, MasterDbContextLocator> _sysDictDataRep;
         private readonly ISysExcelTemplateService _sysExcelTemplateService;
         private readonly static object _lock = new();
 
         public WmsControlRuleDetailService(
-            IRepository<WmsControlRuleDetail,MasterDbContextLocator> wmsControlRuleDetailRep
-            ,IRepository<SysDictType, MasterDbContextLocator> sysDictTypeRep
-            ,IRepository<SysDictData, MasterDbContextLocator> sysDictDataRep
-            ,ISysExcelTemplateService sysExcelTemplateService
+            IRepository<WmsControlRuleDetail, MasterDbContextLocator> wmsControlRuleDetailRep
+            , IRepository<SysDictType, MasterDbContextLocator> sysDictTypeRep
+            , IRepository<SysDictData, MasterDbContextLocator> sysDictDataRep
+            , ISysExcelTemplateService sysExcelTemplateService
         )
         {
             _wmsControlRuleDetailRep = wmsControlRuleDetailRep;
-         _sysDictTypeRep = sysDictTypeRep;
-         _sysDictDataRep = sysDictDataRep;
-         _sysExcelTemplateService = sysExcelTemplateService;
+            _sysDictTypeRep = sysDictTypeRep;
+            _sysDictDataRep = sysDictDataRep;
+            _sysExcelTemplateService = sysExcelTemplateService;
         }
 
         /// <summary>
@@ -60,8 +60,8 @@
                                      .Where(input.IsNotChek != null, u => u.IsNotChek == input.IsNotChek)
                                      .Where(input.ShelfLifeDays != null, u => u.ShelfLifeDays == input.ShelfLifeDays)
                                      .Where(input.IsDisabled != null, u => u.IsDisabled == input.IsDisabled)
-                                     .Where(input.CreatedTime!=null, u => u.CreatedTime>=  Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime<= Convert.ToDateTime(input.CreatedTime[1]))
-                                     .Where(input.UpdatedTime!=null, u => u.UpdatedTime>=  Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime<= Convert.ToDateTime(input.UpdatedTime[1]))
+                                     .Where(input.CreatedTime != null, u => u.CreatedTime >= Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime <= Convert.ToDateTime(input.CreatedTime[1]))
+                                     .Where(input.UpdatedTime != null, u => u.UpdatedTime >= Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime <= Convert.ToDateTime(input.UpdatedTime[1]))
                                      .Where(!string.IsNullOrEmpty(input.CreatedUserName), u => u.CreatedUserName == input.CreatedUserName)
                                      .Where(!string.IsNullOrEmpty(input.UpdatedUserName), u => u.UpdatedUserName == input.UpdatedUserName)
                                      .OrderBy(PageInputOrder.OrderBuilder<WmsControlRuleDetailSearch>(input))
@@ -103,8 +103,8 @@
                 .Where(pIsNotChek != null, u => u.IsNotChek == pIsNotChek)
                 .Where(pShelfLifeDays != null, u => u.ShelfLifeDays == pShelfLifeDays)
                 .Where(pIsDisabled != null, u => u.IsDisabled == pIsDisabled)
-           .Where(input.CreatedTime!=null, u => u.CreatedTime>=  Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime<= Convert.ToDateTime(input.CreatedTime[1]))
-           .Where(input.UpdatedTime!=null, u => u.UpdatedTime>=  Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime<= Convert.ToDateTime(input.UpdatedTime[1]))
+           .Where(input.CreatedTime != null, u => u.CreatedTime >= Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime <= Convert.ToDateTime(input.CreatedTime[1]))
+           .Where(input.UpdatedTime != null, u => u.UpdatedTime >= Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime <= Convert.ToDateTime(input.UpdatedTime[1]))
                 .Where(!string.IsNullOrEmpty(pCreatedUserName), u => u.CreatedUserName == pCreatedUserName)
                 .Where(!string.IsNullOrEmpty(pUpdatedUserName), u => u.UpdatedUserName == pUpdatedUserName)
             .OrderBy(PageInputOrder.OrderNonPageBuilder(input))
@@ -113,7 +113,7 @@
             return wmsControlRuleDetails;
         }
 
-         /// <summary>
+        /// <summary>
         /// 鑾峰彇鎺у埗灞炴�ц鍒欐槑缁�
         /// </summary>
         /// <param name="input"></param>
@@ -133,7 +133,7 @@
         public async Task<List<WmsControlRuleDetailOutput>> List([FromQuery] WmsControlRuleDetailInput input)
         {
             return await _wmsControlRuleDetailRep.DetachedEntities.ProjectToType<WmsControlRuleDetailOutput>().ToListAsync();
-        }    
+        }
 
         #region 澧炪�佸垹銆佹敼
 
@@ -147,7 +147,7 @@
         {
             var wmsControlRuleDetail = input.Adapt<WmsControlRuleDetail>();
             wmsControlRuleDetail.RuleCode = Yitter.IdGenerator.YitIdHelper.NextId().ToString();//TODO 瑕佽皟鐢ㄧ敓鎴� 缂栧彿鐨勬柟娉� 鍏堢敤闆姳ID
-                                                                                       //楠岃瘉
+                                                                                               //楠岃瘉
             await CheckExisit(wmsControlRuleDetail);
 
             wmsControlRuleDetail.CreatedUserId = wmsControlRuleDetail.UpdatedUserId = SysHelper.GetUserId();
@@ -166,7 +166,7 @@
         {
             var wmsControlRuleDetail = await _wmsControlRuleDetailRep.FirstOrDefaultAsync(u => u.Id == input.Id);
             await _wmsControlRuleDetailRep.DeleteAsync(wmsControlRuleDetail);
-            
+
         }
 
         /// <summary>
@@ -182,12 +182,12 @@
 
             var wmsControlRuleDetail = input.Adapt<WmsControlRuleDetail>();
             //楠岃瘉
-            await CheckExisit(wmsControlRuleDetail,true);
+            await CheckExisit(wmsControlRuleDetail, true);
 
             wmsControlRuleDetail.UpdatedUserId = SysHelper.GetUserId();
             wmsControlRuleDetail.UpdatedUserName = SysHelper.GetUserName();
             wmsControlRuleDetail.UpdatedTime = SysHelper.GetNowTime();
-            await _wmsControlRuleDetailRep.UpdateAsync(wmsControlRuleDetail,ignoreNullValues:true);
+            await _wmsControlRuleDetailRep.UpdateAsync(wmsControlRuleDetail, ignoreNullValues: true);
         }
 
         #endregion
@@ -201,17 +201,17 @@
         /// <returns>瀵煎叆鐨勮褰曟暟</returns>
         [HttpPost("WmsControlRuleDetail/importExcel")]
         public async Task<int> ImportExcelAsync(IFormFile file)
-        { 
+        {
             int _HeadStartLine = 2;//绗�1琛屾槸璇存槑,绗�2琛屾槸鍒楀悕
             int _DataStartLine = 3;//绗�3琛屽紑濮嬫槸鏁版嵁
 
             DataTable importDataTable = ExcelUtil.ImportExcelToDataTable(file, _HeadStartLine, _DataStartLine);
-            var addList =await CommonImport(importDataTable, _DataStartLine);
+            var addList = await CommonImport(importDataTable, _DataStartLine);
 
             lock (_lock)
             {
                 _wmsControlRuleDetailRep.InsertAsync(addList);
-               
+
             }
             await Task.CompletedTask;
             return addList.Count;
@@ -232,176 +232,176 @@
             {
                 index++;
 
-               //瀵煎叆妯$増瀹氬埗鍖栦唬鐮侊紙鏇挎崲妯$増浣跨敤锛�
-                                          
-                           var addItem = new WmsControlRuleDetail()
-                            {
-                               CreatedTime = SysHelper.GetNowTime(),
-                               CreatedUserId = SysHelper.GetUserId(),
-                               CreatedUserName = SysHelper.GetUserName(),
-                               UpdatedTime = SysHelper.GetNowTime(),
-                               UpdatedUserId = SysHelper.GetUserId(),
-                               UpdatedUserName = SysHelper.GetUserName()
-                             };
-                          #region 瀹氫箟鍙橀噺
-                           var _RuleName = "";//鎺у埗灞炴�ц鍒欏悕绉�
-                           var _MaxImumqty = "";//鏈�楂樺簱瀛�
-                           var _MinImumqty = "";//鏈�浣庡簱瀛�
-                           var _SafeImumqty = "";//瀹夊叏搴撳瓨
-                           var _MinStorageAge = "";//鏈�灏忓簱榫�
-                           var _MaxStorageAge = "";//鏈�澶у簱榫�
-                           var _IsNotChek = "";//鏄惁鍏嶆
-                           var _ShelfLifeDays = "";//淇濊川鏈熷ぉ鏁�
-                           var _IsDisabled = "";//鏄惁绂佺敤
-                          #endregion
-                          
-                          
-                          #region 鍙栧��
-                           _RuleName = row["鎺у埗灞炴�ц鍒欏悕绉�"]?.ToString() ;
-                           _MaxImumqty = row["鏈�楂樺簱瀛�"]?.ToString() ;
-                           _MinImumqty = row["鏈�浣庡簱瀛�"]?.ToString() ;
-                           _SafeImumqty = row["瀹夊叏搴撳瓨"]?.ToString() ;
-                           _MinStorageAge = row["鏈�灏忓簱榫�"]?.ToString() ;
-                           _MaxStorageAge = row["鏈�澶у簱榫�"]?.ToString() ;
-                           _IsNotChek = row["鏄惁鍏嶆"]?.ToString() ;
-                           _ShelfLifeDays = row["淇濊川鏈熷ぉ鏁�"]?.ToString() ;
-                           _IsDisabled = row["鏄惁绂佺敤"]?.ToString() ;
-              
+                //瀵煎叆妯$増瀹氬埗鍖栦唬鐮侊紙鏇挎崲妯$増浣跨敤锛�
+
+                var addItem = new WmsControlRuleDetail()
+                {
+                    CreatedTime = SysHelper.GetNowTime(),
+                    CreatedUserId = SysHelper.GetUserId(),
+                    CreatedUserName = SysHelper.GetUserName(),
+                    UpdatedTime = SysHelper.GetNowTime(),
+                    UpdatedUserId = SysHelper.GetUserId(),
+                    UpdatedUserName = SysHelper.GetUserName()
+                };
+                #region 瀹氫箟鍙橀噺
+                var _RuleName = "";//鎺у埗灞炴�ц鍒欏悕绉�
+                var _MaxImumqty = "";//鏈�楂樺簱瀛�
+                var _MinImumqty = "";//鏈�浣庡簱瀛�
+                var _SafeImumqty = "";//瀹夊叏搴撳瓨
+                var _MinStorageAge = "";//鏈�灏忓簱榫�
+                var _MaxStorageAge = "";//鏈�澶у簱榫�
+                var _IsNotChek = "";//鏄惁鍏嶆
+                var _ShelfLifeDays = "";//淇濊川鏈熷ぉ鏁�
+                var _IsDisabled = "";//鏄惁绂佺敤
+                #endregion
+
+
+                #region 鍙栧��
+                _RuleName = row["鎺у埗灞炴�ц鍒欏悕绉�"]?.ToString();
+                _MaxImumqty = row["鏈�楂樺簱瀛�"]?.ToString();
+                _MinImumqty = row["鏈�浣庡簱瀛�"]?.ToString();
+                _SafeImumqty = row["瀹夊叏搴撳瓨"]?.ToString();
+                _MinStorageAge = row["鏈�灏忓簱榫�"]?.ToString();
+                _MaxStorageAge = row["鏈�澶у簱榫�"]?.ToString();
+                _IsNotChek = row["鏄惁鍏嶆"]?.ToString();
+                _ShelfLifeDays = row["淇濊川鏈熷ぉ鏁�"]?.ToString();
+                _IsDisabled = row["鏄惁绂佺敤"]?.ToString();
+
                 #endregion
 
 
                 #region 楠岃瘉
 
                 if (string.IsNullOrEmpty(_RuleName))
-                          {
-                            throw Oops.Oh($"绗瑊index}琛孾鎺у埗灞炴�ц鍒欏悕绉癩{_RuleName}涓嶈兘涓虹┖锛�");
-                          }
-                          
-                          if(!string.IsNullOrEmpty(_RuleName))
-                          {
-                                addItem.RuleName = (string)_RuleName;
-                           }
-                          if(!string.IsNullOrEmpty(_MaxImumqty))
-                          {
-                              if (!decimal.TryParse(_MaxImumqty, out decimal outMaxImumqty)&&!string.IsNullOrEmpty(_MaxImumqty))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�楂樺簱瀛榏{_MaxImumqty}鍊间笉姝g‘锛�");
-                              }
-                              if (outMaxImumqty <= 0&&!string.IsNullOrEmpty(_MaxImumqty))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�楂樺簱瀛榏{_MaxImumqty}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.MaxImumqty = outMaxImumqty;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_MinImumqty))
-                          {
-                              if (!decimal.TryParse(_MinImumqty, out decimal outMinImumqty)&&!string.IsNullOrEmpty(_MinImumqty))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�浣庡簱瀛榏{_MinImumqty}鍊间笉姝g‘锛�");
-                              }
-                              if (outMinImumqty <= 0&&!string.IsNullOrEmpty(_MinImumqty))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�浣庡簱瀛榏{_MinImumqty}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.MinImumqty = outMinImumqty;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_SafeImumqty))
-                          {
-                              if (!decimal.TryParse(_SafeImumqty, out decimal outSafeImumqty)&&!string.IsNullOrEmpty(_SafeImumqty))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾瀹夊叏搴撳瓨]{_SafeImumqty}鍊间笉姝g‘锛�");
-                              }
-                              if (outSafeImumqty <= 0&&!string.IsNullOrEmpty(_SafeImumqty))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾瀹夊叏搴撳瓨]{_SafeImumqty}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.SafeImumqty = outSafeImumqty;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_MinStorageAge))
-                          {
-                              if (!decimal.TryParse(_MinStorageAge, out decimal outMinStorageAge)&&!string.IsNullOrEmpty(_MinStorageAge))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�灏忓簱榫刔{_MinStorageAge}鍊间笉姝g‘锛�");
-                              }
-                              if (outMinStorageAge <= 0&&!string.IsNullOrEmpty(_MinStorageAge))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�灏忓簱榫刔{_MinStorageAge}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.MinStorageAge = outMinStorageAge;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_MaxStorageAge))
-                          {
-                              if (!decimal.TryParse(_MaxStorageAge, out decimal outMaxStorageAge)&&!string.IsNullOrEmpty(_MaxStorageAge))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�澶у簱榫刔{_MaxStorageAge}鍊间笉姝g‘锛�");
-                              }
-                              if (outMaxStorageAge <= 0&&!string.IsNullOrEmpty(_MaxStorageAge))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾鏈�澶у簱榫刔{_MaxStorageAge}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.MaxStorageAge = outMaxStorageAge;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_IsNotChek))
-                          {
-                            if(!_IsNotChek.Equals("鏄�") && !_IsNotChek.Equals("鍚�"))
-                             {
-                               throw Oops.Oh($"绗瑊index}琛孾鏄惁鍏嶆]{_IsNotChek}鍊间笉姝g‘锛�");
-                             }
-                             else
-                             {
-                               bool outIsNotChek = _IsNotChek.Equals("鏄�") ? true : false;
-                               addItem.IsNotChek = outIsNotChek;
-                             }
-                           }
-                          
-                          if(!string.IsNullOrEmpty(_ShelfLifeDays))
-                          {
-                              if (!decimal.TryParse(_ShelfLifeDays, out decimal outShelfLifeDays)&&!string.IsNullOrEmpty(_ShelfLifeDays))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾淇濊川鏈熷ぉ鏁癩{_ShelfLifeDays}鍊间笉姝g‘锛�");
-                              }
-                              if (outShelfLifeDays <= 0&&!string.IsNullOrEmpty(_ShelfLifeDays))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾淇濊川鏈熷ぉ鏁癩{_ShelfLifeDays}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.ShelfLifeDays = outShelfLifeDays;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_IsDisabled))
-                          {
-                            if(!_IsDisabled.Equals("鏄�") && !_IsDisabled.Equals("鍚�"))
-                             {
-                               throw Oops.Oh($"绗瑊index}琛孾鏄惁绂佺敤]{_IsDisabled}鍊间笉姝g‘锛�");
-                             }
-                             else
-                             {
-                               bool outIsDisabled = _IsDisabled.Equals("鏄�") ? true : false;
-                               addItem.IsDisabled = outIsDisabled;
-                             }
-                             }
+                {
+                    throw Oops.Oh($"绗瑊index}琛孾鎺у埗灞炴�ц鍒欏悕绉癩{_RuleName}涓嶈兘涓虹┖锛�");
+                }
+
+                if (!string.IsNullOrEmpty(_RuleName))
+                {
+                    addItem.RuleName = (string)_RuleName;
+                }
+                if (!string.IsNullOrEmpty(_MaxImumqty))
+                {
+                    if (!decimal.TryParse(_MaxImumqty, out decimal outMaxImumqty) && !string.IsNullOrEmpty(_MaxImumqty))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�楂樺簱瀛榏{_MaxImumqty}鍊间笉姝g‘锛�");
+                    }
+                    if (outMaxImumqty <= 0 && !string.IsNullOrEmpty(_MaxImumqty))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�楂樺簱瀛榏{_MaxImumqty}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.MaxImumqty = outMaxImumqty;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_MinImumqty))
+                {
+                    if (!decimal.TryParse(_MinImumqty, out decimal outMinImumqty) && !string.IsNullOrEmpty(_MinImumqty))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�浣庡簱瀛榏{_MinImumqty}鍊间笉姝g‘锛�");
+                    }
+                    if (outMinImumqty <= 0 && !string.IsNullOrEmpty(_MinImumqty))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�浣庡簱瀛榏{_MinImumqty}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.MinImumqty = outMinImumqty;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_SafeImumqty))
+                {
+                    if (!decimal.TryParse(_SafeImumqty, out decimal outSafeImumqty) && !string.IsNullOrEmpty(_SafeImumqty))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾瀹夊叏搴撳瓨]{_SafeImumqty}鍊间笉姝g‘锛�");
+                    }
+                    if (outSafeImumqty <= 0 && !string.IsNullOrEmpty(_SafeImumqty))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾瀹夊叏搴撳瓨]{_SafeImumqty}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.SafeImumqty = outSafeImumqty;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_MinStorageAge))
+                {
+                    if (!decimal.TryParse(_MinStorageAge, out decimal outMinStorageAge) && !string.IsNullOrEmpty(_MinStorageAge))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�灏忓簱榫刔{_MinStorageAge}鍊间笉姝g‘锛�");
+                    }
+                    if (outMinStorageAge <= 0 && !string.IsNullOrEmpty(_MinStorageAge))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�灏忓簱榫刔{_MinStorageAge}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.MinStorageAge = outMinStorageAge;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_MaxStorageAge))
+                {
+                    if (!decimal.TryParse(_MaxStorageAge, out decimal outMaxStorageAge) && !string.IsNullOrEmpty(_MaxStorageAge))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�澶у簱榫刔{_MaxStorageAge}鍊间笉姝g‘锛�");
+                    }
+                    if (outMaxStorageAge <= 0 && !string.IsNullOrEmpty(_MaxStorageAge))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏈�澶у簱榫刔{_MaxStorageAge}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.MaxStorageAge = outMaxStorageAge;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_IsNotChek))
+                {
+                    if (!_IsNotChek.Equals("鏄�") && !_IsNotChek.Equals("鍚�"))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏄惁鍏嶆]{_IsNotChek}鍊间笉姝g‘锛�");
+                    }
+                    else
+                    {
+                        bool outIsNotChek = _IsNotChek.Equals("鏄�") ? true : false;
+                        addItem.IsNotChek = outIsNotChek;
+                    }
+                }
+
+                if (!string.IsNullOrEmpty(_ShelfLifeDays))
+                {
+                    if (!decimal.TryParse(_ShelfLifeDays, out decimal outShelfLifeDays) && !string.IsNullOrEmpty(_ShelfLifeDays))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾淇濊川鏈熷ぉ鏁癩{_ShelfLifeDays}鍊间笉姝g‘锛�");
+                    }
+                    if (outShelfLifeDays <= 0 && !string.IsNullOrEmpty(_ShelfLifeDays))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾淇濊川鏈熷ぉ鏁癩{_ShelfLifeDays}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.ShelfLifeDays = outShelfLifeDays;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_IsDisabled))
+                {
+                    if (!_IsDisabled.Equals("鏄�") && !_IsDisabled.Equals("鍚�"))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏄惁绂佺敤]{_IsDisabled}鍊间笉姝g‘锛�");
+                    }
+                    else
+                    {
+                        bool outIsDisabled = _IsDisabled.Equals("鏄�") ? true : false;
+                        addItem.IsDisabled = outIsDisabled;
+                    }
+                }
 
 
                 #endregion
@@ -410,9 +410,9 @@
                 addItem.RuleCode = Yitter.IdGenerator.YitIdHelper.NextId().ToString();//TODO 瑕佽皟鐢ㄧ敓鎴� 缂栧彿鐨勬柟娉� 鍏堢敤闆姳ID
                 details.Add(addItem);
             }
-              //楠岄噸
-              await CheckExisitForImport(details);
-            
+            //楠岄噸
+            await CheckExisitForImport(details);
+
             return details;
         }
 
@@ -439,78 +439,80 @@
         /// <param name="input"></param>
         /// <param name="isEdit"></param>
         /// <returns></returns>
-        private async Task CheckExisit( WmsControlRuleDetail input,bool isEdit=false)
+        private async Task CheckExisit(WmsControlRuleDetail input, bool isEdit = false)
         {
-           
 
-           
-           bool isExist = false;
-           if (!isEdit)//鏂板
-           {
-                   //鏁版嵁鏄惁瀛樺湪閲嶅
-                   isExist = await _wmsControlRuleDetailRep.AnyAsync(u =>
-                                   u.RuleName.Equals(input.RuleName)
-                   ,false);
-          }
-           else//缂栬緫 
-          {
 
-          
-                
-                 //褰撳墠缂栬緫鏁版嵁浠ュ鏄惁瀛樺湪閲嶅
-                  isExist = await _wmsControlRuleDetailRep.AnyAsync(u => 
-                                    u.Id != input.Id
-                                    &&u.RuleName.Equals(input.RuleName)
-                    ,false);
-               }
-               
-        
+
+            bool isExist = false;
+            if (!isEdit)//鏂板
+            {
+                //鏁版嵁鏄惁瀛樺湪閲嶅
+                isExist = await _wmsControlRuleDetailRep.AnyAsync(u =>
+                                u.RuleName.Equals(input.RuleName)
+                , false);
+            }
+            else//缂栬緫 
+            {
+
+
+
+                //褰撳墠缂栬緫鏁版嵁浠ュ鏄惁瀛樺湪閲嶅
+                isExist = await _wmsControlRuleDetailRep.AnyAsync(u =>
+                                  u.Id != input.Id
+                                  && u.RuleName.Equals(input.RuleName)
+                  , false);
+            }
+
+
 
             if (isExist) throw Oops.Oh(ErrorCode.E0001);
-       }
-        
+        }
+
         /// <summary>
         /// 鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁鏄惁宸插瓨鍦�-瀵煎叆鏃堕獙璇�
         /// </summary>
         /// <param name="inputs"></param>
         /// <returns></returns>
         private async Task CheckExisitForImport(List<WmsControlRuleDetail> inputs)
-        { 
+        {
             //鏍规嵁鑱斿悎涓婚敭楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�  
-                 if (inputs?.Count <= 0)
-                 {
-                     throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
-                 }
-                 //鏁版嵁鏄惁閲嶅
-                 var existExcelItem = inputs.GroupBy(g => new {
-                                               g.RuleName
-                                               })
-                                               .Where(g => g.Count() > 1)
-                                               .Select(s => new {
-                                               s.Key.RuleName
-                                               }).FirstOrDefault();
-                 if (existExcelItem != null)
-                 {
-                   var item= existExcelItem.Adapt<WmsControlRuleDetail>();
-                   throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,鎺у埗灞炴�ц鍒欏悕绉癧{item.RuleName}]宸插瓨鍦�");
-                 }
-                      
+            if (inputs?.Count <= 0)
+            {
+                throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
+            }
+            //鏁版嵁鏄惁閲嶅
+            var existExcelItem = inputs.GroupBy(g => new
+            {
+                g.RuleName
+            })
+                                          .Where(g => g.Count() > 1)
+                                          .Select(s => new
+                                          {
+                                              s.Key.RuleName
+                                          }).FirstOrDefault();
+            if (existExcelItem != null)
+            {
+                var item = existExcelItem.Adapt<WmsControlRuleDetail>();
+                throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,鎺у埗灞炴�ц鍒欏悕绉癧{item.RuleName}]宸插瓨鍦�");
+            }
 
 
 
-    //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
-                 var existDBItem = await _wmsControlRuleDetailRep.DetachedEntities.FirstOrDefaultAsync(w=> 
-                                                                         inputs.Select(s=>""
-                                                                           +s.RuleName
-                                                                        )
-                                                                        .Contains(""
-                                                                         +w.RuleName
-                  ));
-                  if (existDBItem != null)
-                 {
-                   var item= existDBItem.Adapt<WmsControlRuleDetail>();
-                   throw Oops.Oh($"绯荤粺涓�,鎺у埗灞炴�ц鍒欏悕绉癧{item.RuleName}]宸插瓨鍦�");
-                 }
+
+            //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+            var existDBItem = await _wmsControlRuleDetailRep.DetachedEntities.FirstOrDefaultAsync(w =>
+                                                                    inputs.Select(s => ""
+                                                                      + s.RuleName
+                                                                   )
+                                                                   .Contains(""
+                                                                    + w.RuleName
+             ));
+            if (existDBItem != null)
+            {
+                var item = existDBItem.Adapt<WmsControlRuleDetail>();
+                throw Oops.Oh($"绯荤粺涓�,鎺у埗灞炴�ц鍒欏悕绉癧{item.RuleName}]宸插瓨鍦�");
+            }
         }
 
         #endregion
diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialInput.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialInput.cs
index 95ef2c7..a6c6aec 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialInput.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialInput.cs
@@ -458,4 +458,5 @@
         public List<BaseCustomerInput> BaseCustomerList   { get; set; }
     }
 
+
 }
diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialOutput.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialOutput.cs
index 8b40223..a9f7638 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialOutput.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/Dto/WmsMaterialOutput.cs
@@ -139,4 +139,31 @@
         public string UpdatedUserName { get; set; }
         
     }
+
+
+    /// <summary>
+    /// 鐗╂枡涓氬姟淇℃伅瀹炰綋鍑哄弬--鍖呭惈鐗╂枡銆佺墿鏂欏鎴峰叧绯汇�佹帶鍒跺睘鎬с�佹浛浠e搧
+    /// </summary>
+    public class WmsMaterialInfoOutput
+    {
+        /// <summary>
+        /// 鐗╂枡鍩虹淇℃伅
+        /// </summary>
+        public WmsMaterialOutput MaterialInfo { get; set; }
+
+        /// <summary>
+        /// 鎺у埗灞炴�ц鍒�
+        /// </summary>
+        public List<WmsControlRuleDetailOutput> ControlRuleDetailList { get; set; }
+
+        /// <summary>
+        /// 鏇夸唬鍝�
+        /// </summary>
+        public List<WmsSubstituteGoodOutput> SubstituteGoodList { get; set; }
+
+        /// <summary>
+        /// 寰�鏉ュ叧绯�
+        /// </summary>
+        public List<BaseCustomerOutput> BaseCustomerList { get; set; }
+    }
 }
diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/IWmsMaterialService.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/IWmsMaterialService.cs
index 2b885b8..ad86d92 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/IWmsMaterialService.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/IWmsMaterialService.cs
@@ -8,7 +8,7 @@
 {
     public interface IWmsMaterialService
     {
-        Task<WmsMaterialOutput> Get([FromQuery] QueryeWmsMaterialInput input);
+        Task<WmsMaterialInfoOutput> Get([FromQuery] QueryeWmsMaterialInput input);
         Task<List<WmsMaterialOutput>> List([FromQuery] WmsMaterialInput input);
         Task<PageResult<WmsMaterialOutput>> Page([FromQuery] WmsMaterialSearch input);
         Task<List<WmsMaterialOutput>> ListNonPageAsync([FromQuery] WmsMaterialSearchNonPage input);
diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/WmsMaterialService.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/WmsMaterialService.cs
index 7e2b3d6..7b882f7 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/WmsMaterialService.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/WmsMaterialService.cs
@@ -28,14 +28,18 @@
         private readonly ISysExcelTemplateService _sysExcelTemplateService;
         private readonly static object _lock = new();
         private readonly IRepository<WmsMaterialCustomer, MasterDbContextLocator> _wmsMaterialCustomerRep;
+        private readonly IRepository<BaseCustomer, MasterDbContextLocator> _baseCustomerRep;
         private readonly IRepository<WmsSubstituteGood, MasterDbContextLocator> _wmsSubstituteGoodRep;
+        private readonly IRepository<WmsControlRuleDetail, MasterDbContextLocator> _wmsControlRuleDetailRep;
         public WmsMaterialService(
             IRepository<WmsMaterial,MasterDbContextLocator> wmsMaterialRep
             ,IRepository<SysDictType, MasterDbContextLocator> sysDictTypeRep
             ,IRepository<SysDictData, MasterDbContextLocator> sysDictDataRep
             ,ISysExcelTemplateService sysExcelTemplateService
             , IRepository<WmsMaterialCustomer, MasterDbContextLocator> wmsMaterialCustomerRep
+            , IRepository<BaseCustomer, MasterDbContextLocator> baseCustomerRep
             , IRepository<WmsSubstituteGood, MasterDbContextLocator> wmsSubstituteGoodRep
+            , IRepository<WmsControlRuleDetail, MasterDbContextLocator> wmsControlRuleDetailRep
         )
         {
             _wmsMaterialRep = wmsMaterialRep;
@@ -43,7 +47,9 @@
          _sysDictDataRep = sysDictDataRep;
          _sysExcelTemplateService = sysExcelTemplateService;
             _wmsMaterialCustomerRep = wmsMaterialCustomerRep;
+            _baseCustomerRep = baseCustomerRep;
             _wmsSubstituteGoodRep = wmsSubstituteGoodRep;
+            _wmsControlRuleDetailRep = wmsControlRuleDetailRep;
         }
         /// <summary>
         /// 鍒嗛〉鏌ヨ鐗╂枡淇℃伅
@@ -156,9 +162,39 @@
         /// <param name="input"></param>
         /// <returns></returns>
         [HttpGet("WmsMaterial/detail")]
-        public async Task<WmsMaterialOutput> Get([FromQuery] QueryeWmsMaterialInput input)
+        public async Task<WmsMaterialInfoOutput> Get([FromQuery] QueryeWmsMaterialInput input)
         {
-            return (await _wmsMaterialRep.DetachedEntities.FirstOrDefaultAsync(u => u.Id == input.Id)).Adapt<WmsMaterialOutput>();
+            WmsMaterialInfoOutput resultInfo = new WmsMaterialInfoOutput();
+            //鑾峰彇鐗╂枡淇℃伅
+            var wmsMaterialInfo =(await _wmsMaterialRep.DetachedEntities.FirstOrDefaultAsync(u => u.Id == input.Id)).Adapt<WmsMaterialOutput>();
+            //鑾峰彇鏇挎崲鐗╂枡淇℃伅
+            var wmsSubstituteGoods = await _wmsSubstituteGoodRep.DetachedEntities
+                                         .Where(u => u.MaterialCode == wmsMaterialInfo.MaterialName)
+                                         .Where(u => u.IsDeleted == false)
+                                         .Where(u => u.IsDisabled == false)
+                                         .OrderBy(o => o.CreatedTime)
+                                         .ProjectToType<WmsSubstituteGoodOutput>()
+                                         .ToListAsync();
+            //鑾峰彇鎺у埗灞炴�ц鍒�
+            var wmsControlRuleDetails = await _wmsControlRuleDetailRep.DetachedEntities
+                                              .Where(u => u.Id == wmsMaterialInfo.ControlRuleId)
+                                              .Where(u => u.IsDeleted == false)
+                                              .Where(u => u.IsDisabled == false)
+                                              .OrderBy(o=>o.CreatedTime)
+                                              .ProjectToType<WmsControlRuleDetailOutput>()
+                                              .ToListAsync();
+
+            //鏍规嵁鐗╂枡瀹㈡埛鍏宠仈琛ㄨ幏鍙栧線鏉ヤ俊鎭�
+            var baseCustomers = await _baseCustomerRep.DetachedEntities.Join(_wmsMaterialCustomerRep.DetachedEntities, bc => bc.Id, mc => mc.CustId, (bc, mc) => new { bc, mc })
+                                      .Where(p =>p.mc.MaterialId== wmsMaterialInfo.Id)
+                                      .OrderBy(o => o.mc.CreatedTime)
+                                      .ProjectToType<BaseCustomerOutput>()
+                                      .ToListAsync();
+
+            resultInfo.MaterialInfo = wmsMaterialInfo;
+            resultInfo.SubstituteGoodList = wmsSubstituteGoods;
+            resultInfo.ControlRuleDetailList = wmsControlRuleDetails;
+            return resultInfo;
         }
 
         /// <summary>
@@ -220,6 +256,10 @@
 
             //鏇夸唬鍝佷俊鎭�
             var substituteGoodList = input.SubstituteGoodList.Adapt<List<WmsSubstituteGood>>();
+            foreach (var item in substituteGoodList)
+            {
+                item.SubstituteCode = Yitter.IdGenerator.YitIdHelper.NextId().ToString();//TODO 瑕佽皟鐢ㄧ敓鎴� 缂栧彿鐨勬柟娉� 鍏堢敤闆姳ID
+            }
 
             wmsMaterial.UpdatedUserId = SysHelper.GetUserId();
             wmsMaterial.UpdatedUserName = SysHelper.GetUserName();
@@ -314,6 +354,10 @@
 
             //鏇夸唬鍝佷俊鎭�
             var substituteGoodList = input.SubstituteGoodList.Adapt<List<WmsSubstituteGood>>();
+            foreach (var item in substituteGoodList)
+            {
+                item.SubstituteCode = Yitter.IdGenerator.YitIdHelper.NextId().ToString();//TODO 瑕佽皟鐢ㄧ敓鎴� 缂栧彿鐨勬柟娉� 鍏堢敤闆姳ID
+            }
 
             if (materialCustomerList?.Count > 0)
             {
diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Core/Entity/WmsBase/WmsControlRuleDetail.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Core/Entity/WmsBase/WmsControlRuleDetail.cs
index 89903e4..9f94880 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Core/Entity/WmsBase/WmsControlRuleDetail.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Core/Entity/WmsBase/WmsControlRuleDetail.cs
@@ -84,7 +84,7 @@
         /// </summary>
         [Comment("鏄惁鍏嶆")]
 
-        public bool IsNotChek { get; set; }
+        public bool? IsNotChek { get; set; }
 
 
         /// <summary>

--
Gitblit v1.9.3