From c1f28a6c63036b7e105f578a47d9348812710dad Mon Sep 17 00:00:00 2001
From: 刘磊 <1161824510@qq.com>
Date: 星期三, 18 十二月 2024 21:31:34 +0800
Subject: [PATCH] 合并

---
 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs          |    4 
 Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_StationManager.vue           |   88 ++++++++
 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json                              |   55 ++--
 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_BZ/CommonConveyorLine_BZJob.cs |   35 +++
 Code Management/WCS/WIDESEAWCS_Client/src/views/basicinfo/Dt_needBarcode.vue                          |   90 +++++++++
 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json                              |    3 
 Code Management/WCS/WIDESEAWCS_Client/src/router/viewGird.js                                          |   19 +
 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs      |  125 +++++++++---
 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/dt_needBarcode.cs             |   14 -
 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicInfo/Dt_StationManager.cs             |    4 
 Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js                                            |   17 +
 Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_needBarcode.vue              |   90 +++++++++
 12 files changed, 464 insertions(+), 80 deletions(-)

diff --git a/Code Management/WCS/WIDESEAWCS_Client/src/router/viewGird.js b/Code Management/WCS/WIDESEAWCS_Client/src/router/viewGird.js
index e32800b..374e2bd 100644
--- a/Code Management/WCS/WIDESEAWCS_Client/src/router/viewGird.js
+++ b/Code Management/WCS/WIDESEAWCS_Client/src/router/viewGird.js
@@ -61,6 +61,23 @@
     path: '/router',
     name: 'router',
     component: () => import('@/views/basicinfo/router.vue')
-  }]
+  },
+  // {
+  //   path: '/Dt_StationManager',
+  //   name: 'Dt_StationManager',
+  //   component: () => import('@/views/widesea_wms/basicinfo/Dt_StationManager.vue'),
+  //   meta: {
+  //     keepAlive: false
+  //   }
+  // },
+  {
+    path: '/Dt_needBarcode',
+    name: 'Dt_needBarcode',
+    component: () => import('@/views/basicinfo/Dt_needBarcode.vue'),
+    meta: {
+      keepAlive: false
+    }
+  },
+]
 
 export default viewgird
diff --git a/Code Management/WCS/WIDESEAWCS_Client/src/views/basicinfo/Dt_needBarcode.vue b/Code Management/WCS/WIDESEAWCS_Client/src/views/basicinfo/Dt_needBarcode.vue
new file mode 100644
index 0000000..5359a18
--- /dev/null
+++ b/Code Management/WCS/WIDESEAWCS_Client/src/views/basicinfo/Dt_needBarcode.vue
@@ -0,0 +1,90 @@
+<!--
+*Author锛歫xx
+ *Contact锛�283591387@qq.com
+ *浠g爜鐢辨鏋剁敓鎴�,浠讳綍鏇存敼閮藉彲鑳藉鑷磋浠g爜鐢熸垚鍣ㄨ鐩�
+ *涓氬姟璇峰湪@/extension/widesea_wms/basicinfo/Dt_AreaInfo.js姝ゅ缂栧啓
+ -->
+<template>
+    <view-grid ref="grid" :columns="columns" :detail="detail" :editFormFields="editFormFields"
+        :editFormOptions="editFormOptions" :searchFormFields="searchFormFields" :searchFormOptions="searchFormOptions"
+        :table="table" :extend="extend">
+    </view-grid>
+</template>
+<script>
+import extend from "@/extension/basicinfo/Dt_needBarcode.js";
+import { ref, defineComponent } from "vue";
+export default defineComponent({
+    setup() {
+        const table = ref({
+            key: 'areaID',
+            footer: "Foots",
+            cnName: '鍦ㄩ�旀暟鎹�',
+            name: 'basicinfo/dt_needBarcode',
+            url: "/dt_needBarcode/",
+            sortName: "AreaCode"
+        });
+        const editFormFields = ref({
+            // "toArea": "",
+            // "fromArea": "",
+            // "barcodeType": "",
+            "productLine": "",
+            "inLineNum": "",
+            "cacheNum":""
+        });
+        const editFormOptions = ref([
+            // [
+            //     { "title": "鐩爣搴撳尯", "field": "toArea", type: "text" },
+            //     { "title": "鏉ユ簮搴撳尯", "field": "fromArea", type: "text" },
+            //     { "title": "鎵樼洏绫诲瀷", "field": "barcodeType", type: "text" },
+            // ],
+            [
+                { "title": "鎵�灞炰骇绾�", "field": "productLine", type: "text" },
+                { "title": "鍦ㄩ�旀暟閲�", "field": "inLineNum", type: "text" },
+                { "title": "鍙紦瀛樻暟閲�", "field": "cacheNum", type: "text" },
+            ]
+        ]);
+        const searchFormFields = ref({});
+        const searchFormOptions = ref([
+            // [
+            //     { "title": "鐩爣搴撳尯", "field": "toArea", type: "text" },
+            //     { "title": "鏉ユ簮搴撳尯", "field": "fromArea", type: "text" },
+            //     { "title": "鎵樼洏绫诲瀷", "field": "barcodeType", type: "text" },
+            // ],
+            [
+                { "title": "鎵�灞炰骇绾�", "field": "productLine", type: "text" },
+                { "title": "鍦ㄩ�旀暟閲�", "field": "inLineNum", type: "text" },
+                { "title": "鍙紦瀛樻暟閲�", "field": "cacheNum", type: "text" },
+            ]
+        ]);
+        const columns = ref([{ field: 'ID', title: '涓婚敭', type: 'int', sort: true, hidden: true, width: 110, readonly: true, require: true, align: 'left' },
+        //{ field: 'toArea', title: '鐩爣搴撳尯', type: 'string', sort: true, width: 110, require: true, align: 'left', sort: true },
+        //{ field: 'fromArea', title: '鏉ユ簮搴撳尯', type: 'string', sort: true, width: 110, align: 'left' },
+        //{ field: 'barcodeType', title: '鎵樼洏绫诲瀷', type: 'string', sort: true, width: 110, align: 'left' },
+        { field: 'productLine', title: '鎵�灞炰骇绾�', type: 'string', sort: true, width: 110, align: 'left',},
+        { field: 'inLineNum', title: '鍦ㄩ�旀暟閲�', type: 'int', sort: true, width: 110, align: 'left' },
+        { field: 'cacheNum', title: '鍙紦瀛樻暟閲�', type: 'int', sort: true, width: 100,  align: 'left' },
+        { field: 'creater', title: '鍒涘缓浜�', type: 'string', sort: true, width: 110, align: 'left' },
+        { field: 'createDate', title: '鍒涘缓鏃堕棿', type: 'datetime', sort: true, width: 150, align: 'left', sort: true },
+        { field: 'modifier', title: '淇敼浜�', type: 'string', sort: true, width: 100,  align: 'left' },
+        { field: 'modifyDate', title: '淇敼鏃堕棿', type: 'datetime', sort: true, width: 150,  align: 'left', sort: true },
+        ]);
+        const detail = ref({
+            cnName: "#detailCnName",
+            table: "#detailTable",
+            columns: [],
+            sortName: "",
+            key: ""
+        });
+        return {
+            table,
+            extend,
+            editFormFields,
+            editFormOptions,
+            searchFormFields,
+            searchFormOptions,
+            columns,
+            detail,
+        };
+    },
+});
+</script>
diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs
index cd3d5b4..5e77a0d 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_StationManager.cs
@@ -111,5 +111,9 @@
 
         public string stationStatus { get; set; }
 
+        /// <summary>
+        /// 浜х嚎
+        /// </summary>
+        public string productLine { get; set; }
     }
 }
diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/dt_needBarcode.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/dt_needBarcode.cs
index 6de828c..f226258 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/dt_needBarcode.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/dt_needBarcode.cs
@@ -8,6 +8,8 @@
 
 namespace WIDESEAWCS_Model.Models
 {
+    [SugarTable(nameof(dt_needBarcode), "鍦ㄩ�旀暟鎹�")]
+
     public class dt_needBarcode : BaseEntity
     {
         [Key]
@@ -56,17 +58,5 @@
         /// </summary>
         [NotMapped]
         public int haveOutNum { get; set; } = 0;
-
-        /// <summary>
-        /// 鍙叆鏁伴噺
-        /// </summary>
-        [NotMapped]
-        public int canInNum { get; set; } = 0;
-
-        /// <summary>
-        /// 宸插垱寤哄嚭搴撲换鍔�
-        /// </summary>
-        [NotMapped]
-        public List<Dt_Task> haveOutList { get; set; }
     }
 }
diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json
index 8b3e578..7496183 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json
@@ -12,7 +12,8 @@
   "MainDB": "DB_WIDESEA", //褰撳墠椤圭洰鐨勪富搴擄紝鎵�瀵瑰簲鐨勮繛鎺ュ瓧绗︿覆鐨凟nabled蹇呴』涓簍rue
   //杩炴帴瀛楃涓�
   //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=",
-  "ConnectionString": "Data Source=127.0.0.1;Initial Catalog=WIDESEA_WCS2F08;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=True",
+  //"ConnectionString": "Data Source=127.0.0.1;Initial Catalog=WIDESEA_WCS2F08;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=True",
+  "ConnectionString": "Data Source=.\\LIULEI;Initial Catalog=WIDESEAWCS_TEST;User ID=sa;Password=123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
   //"ConnectionString": "Data Source=192.168.20.251;Initial Catalog=WIDESEA_WCSDB;User ID=sa;Password=123456@gy;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
   //"ConnectionString": "Data Source=192.168.5.251;Initial Catalog=WIDESEAWCS_TEST;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
   //璺ㄥ煙
diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_BZ/CommonConveyorLine_BZJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_BZ/CommonConveyorLine_BZJob.cs
index 5a08e4b..35e4b19 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_BZ/CommonConveyorLine_BZJob.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_BZ/CommonConveyorLine_BZJob.cs
@@ -193,9 +193,9 @@
         public void RequestOutbound(CommonConveyorLine_BZ conveyorLine, ConveyorLineTaskCommand_After command, Dt_StationManager station)
         {
             //鏌ヨ瀵瑰簲浜х嚎鐨勫湪閫旀暟鎹�
-            dt_needBarcode needBarcode = _needBarcodeRepository.QueryFirst(x => x.productLine == station.stationRemark);
+            dt_needBarcode needBarcode = _needBarcodeRepository.QueryFirst(x => x.productLine == station.productLine);
 
-            //needBarcode.haveOutNum
+            needBarcode.inLineNum = _taskRepository.QueryData(x => x.TargetAddress == station.stationChildCode).Count();
 
             //鑻ュ湪閫旀暟閲忓皬浜庣洰鏍囦綅缃殑缂撳瓨鏁伴噺 鍒欏鎵惧搴斿父娓╁簱瀛樹腑甯告俯3宸ュ簭鐨勫彲鍑哄簱鏁版嵁 骞跺缓绔嬪嚭搴撲换鍔�
             if (needBarcode.inLineNum <= needBarcode.cacheNum)
@@ -221,18 +221,43 @@
             dt_needBarcode needBarcode = _needBarcodeRepository.QueryFirst(x => x.toArea == station.stationChildCode);
             if (needBarcode == null) throw new Exception($"鏈厤缃浉鍏硔station.stationChildCode}鐨勪骇绾垮湪閫旀暟鎹�");
 
-            if (task != null)
+            if (task != null) //濡備换鍔′笉涓虹┖ 鍒欎负閫佸寘瑁呮枡
             {
                 conveyorLine.SetValue(ConveyorLineDBName_After.ConveyorLineTargetAddress, task.NextAddress, station.stationChildCode);
                 _taskRepository.DeleteData(task);
+
+                needBarcode.inLineNum--;
+                _needBarcodeRepository.UpdateData(needBarcode);
             }
             else
             {
+                var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
+                var wmsBase = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.MOMIP_BASE)?.ConfigValue;
+                var ipAddress = config.FirstOrDefault(x => x.ConfigKey == SysConfigKeyConst.TrayCellsStatus)?.ConfigValue;
+                if (wmsBase == null || ipAddress == null)
+                {
+                    throw new InvalidOperationException("MOM IP 鏈厤缃�");
+                }
+                TrayCellsStatusDto trayCells = new TrayCellsStatusDto()
+                {
+                    Software = "WMS",
+                    TrayBarcode = command.ConveyorLineBarcode,
+                    EquipmentCode = station.stationEquipMOM,
+                    SessionId = Guid.NewGuid().ToString(),
+                    EmployeeNo = "MITest",
+                    //SceneType = "1",
+                    RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ")
+                };
+
+                var MOMIpAddress = wmsBase + ipAddress;
+
+                var result = HttpHelper.PostAsync(MOMIpAddress, trayCells.ToJsonString()).Result;
+                ResultTrayCellsStatus result1 = JsonConvert.DeserializeObject<ResultTrayCellsStatus>(result);
+
                 conveyorLine.SetValue(ConveyorLineDBName_After.ConveyorLineTargetAddress, station.stationNGChildCode, station.stationChildCode);
             }
 
-            needBarcode.inLineNum--;
-            _needBarcodeRepository.UpdateData(needBarcode);
+          
         }
     }
 }
diff --git a/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js b/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js
index c6dde69..8b4f264 100644
--- a/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js
+++ b/Code Management/WMS/WIDESEA_WMSClient/src/router/tables.js
@@ -234,6 +234,21 @@
     meta: {
       keepAlive: false
     }
-  }
+  },
+  {
+    path: '/Dt_StationManager',
+    name: 'Dt_StationManager',
+    component: () => import('@/views/widesea_wms/basicinfo/Dt_StationManager.vue'),
+    meta: {
+      keepAlive: false
+    }
+  },{
+    path: '/Dt_needBarcode',
+    name: 'Dt_needBarcode',
+    component: () => import('@/views/widesea_wms/basicinfo/Dt_needBarcode.vue'),
+    meta: {
+      keepAlive: false
+    }
+  },
 ]
 export default tables
diff --git a/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_StationManager.vue b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_StationManager.vue
new file mode 100644
index 0000000..adc64e9
--- /dev/null
+++ b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_StationManager.vue
@@ -0,0 +1,88 @@
+<!--
+*Author锛歫xx
+ *Contact锛�283591387@qq.com
+ *浠g爜鐢辨鏋剁敓鎴�,浠讳綍鏇存敼閮藉彲鑳藉鑷磋浠g爜鐢熸垚鍣ㄨ鐩�
+ *涓氬姟璇峰湪@/extension/widesea_wms/basicinfo/Dt_AreaInfo.js姝ゅ缂栧啓
+ -->
+<template>
+    <view-grid ref="grid" :columns="columns" :detail="detail" :editFormFields="editFormFields"
+        :editFormOptions="editFormOptions" :searchFormFields="searchFormFields" :searchFormOptions="searchFormOptions"
+        :table="table" :extend="extend">
+    </view-grid>
+</template>
+<script>
+import extend from "@/extension/widesea_wms/basicinfo/Dt_StationManager.js";
+import { ref, defineComponent } from "vue";
+export default defineComponent({
+    setup() {
+        const table = ref({
+            key: 'areaID',
+            footer: "Foots",
+            cnName: '绔欏彴淇℃伅',
+            name: 'basicinfo/Dt_StationManager',
+            url: "/Dt_StationManager/",
+            sortName: "AreaCode"
+        });
+        const editFormFields = ref({
+            
+        });
+        const editFormOptions = ref([
+            
+        ]);
+        const searchFormFields = ref({});
+        const searchFormOptions = ref([
+            [
+                { "title": "绔欏彴绫诲瀷", "field": "stationType", type: "text" },
+                { "title": "鎵�灞濸LC", "field": "stationPLC", type: "text" },
+                { "title": "宸烽亾鍙�", "field": "roadway", type: "text" },
+               
+            ],
+            [
+                { "title": "璁惧鍖哄煙", "field": "stationArea", type: "text" },
+                { "title": "MOM璁惧缂栧彿", "field": "stationEquipMOM", type: "text" },
+                { "title": "NG瀛愯澶囩紪鍙�", "field": "stationNGChildCode", type: "text" },
+                
+            ],
+            [
+                { "title": "NG瀛愯澶囧潗鏍�", "field": "remark", type: "text" },
+                { "title": "绾夸綋缂栧彿", "field": "stationChildCode", type: "text" },
+                { "title": "浜х嚎", "field": "productLine", type: "text" },
+                
+            ]
+        ]);
+        const columns = ref([{ field: 'stationID', title: '涓婚敭', type: 'int', sort: true, hidden: true, width: 110, readonly: true, require: true, align: 'left' },
+        { field: 'stationType', title: '绔欏彴绫诲瀷', type: 'int', sort: true, width: 110, require: true, align: 'left', sort: true },
+        { field: 'stationPLC', title: '鎵�灞濸LC', type: 'string', sort: true, width: 110, align: 'left' },
+        { field: 'roadway', title: '宸烽亾鍙�', type: 'string', sort: true, width: 110, align: 'left' },   
+        { field: 'stationChildCode', title: '绾夸綋缂栧彿(瀛愯澶囩紪鍙�)', type: 'string', sort: true, width: 110, align: 'left' },
+        { field: 'stationArea', title: '璁惧鍖哄煙', type: 'int', sort: true, width: 100,  align: 'left' },
+        { field: 'stationEquipMOM', title: 'MOM璁惧缂栧彿', type: 'string', sort: true, width: 150,  align: 'left' },
+        { field: 'stationNGChildCode', title: 'NG瀛愯澶囩紪鍙�', type: 'string', sort: true, width: 110,  align: 'left' },
+        { field: 'productLine', title: '浜х嚎', type: 'string', sort: true, width: 110,  align: 'left' },
+        { field: 'remark', title: 'NG瀛愯澶囧潗鏍�', type: 'string', sort: true, width: 110,  align: 'left' },
+        { field: 'stationRemark', title: '澶囨敞', type: 'int', sort: true, width: 110, align: 'left',  },
+        { field: 'creater', title: '鍒涘缓浜�', type: 'string', sort: true, width: 110, align: 'left' },
+        { field: 'createDate', title: '鍒涘缓鏃堕棿', type: 'datetime', sort: true, width: 150, align: 'left', sort: true },
+        { field: 'modifier', title: '淇敼浜�', type: 'string', sort: true, width: 100,  align: 'left' },
+        { field: 'modifyDate', title: '淇敼鏃堕棿', type: 'datetime', sort: true, width: 150,  align: 'left', sort: true },
+        ]);
+        const detail = ref({
+            cnName: "#detailCnName",
+            table: "#detailTable",
+            columns: [],
+            sortName: "",
+            key: ""
+        });
+        return {
+            table,
+            extend,
+            editFormFields,
+            editFormOptions,
+            searchFormFields,
+            searchFormOptions,
+            columns,
+            detail,
+        };
+    },
+});
+</script>
diff --git a/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_needBarcode.vue b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_needBarcode.vue
new file mode 100644
index 0000000..24b6e62
--- /dev/null
+++ b/Code Management/WMS/WIDESEA_WMSClient/src/views/widesea_wms/basicinfo/Dt_needBarcode.vue
@@ -0,0 +1,90 @@
+<!--
+*Author锛歫xx
+ *Contact锛�283591387@qq.com
+ *浠g爜鐢辨鏋剁敓鎴�,浠讳綍鏇存敼閮藉彲鑳藉鑷磋浠g爜鐢熸垚鍣ㄨ鐩�
+ *涓氬姟璇峰湪@/extension/widesea_wms/basicinfo/Dt_AreaInfo.js姝ゅ缂栧啓
+ -->
+<template>
+    <view-grid ref="grid" :columns="columns" :detail="detail" :editFormFields="editFormFields"
+        :editFormOptions="editFormOptions" :searchFormFields="searchFormFields" :searchFormOptions="searchFormOptions"
+        :table="table" :extend="extend">
+    </view-grid>
+</template>
+<script>
+import extend from "@/extension/widesea_wms/basicinfo/Dt_needBarcode.js";
+import { ref, defineComponent } from "vue";
+export default defineComponent({
+    setup() {
+        const table = ref({
+            key: 'areaID',
+            footer: "Foots",
+            cnName: '鍦ㄩ�旀暟鎹�',
+            name: 'basicinfo/dt_needBarcode',
+            url: "/dt_needBarcode/",
+            sortName: "AreaCode"
+        });
+        const editFormFields = ref({
+            // "toArea": "",
+            // "fromArea": "",
+            // "barcodeType": "",
+            "productLine": "",
+            "inLineNum": "",
+            "cacheNum":""
+        });
+        const editFormOptions = ref([
+            // [
+            //     { "title": "鐩爣搴撳尯", "field": "toArea", type: "text" },
+            //     { "title": "鏉ユ簮搴撳尯", "field": "fromArea", type: "text" },
+            //     { "title": "鎵樼洏绫诲瀷", "field": "barcodeType", type: "text" },
+            // ],
+            [
+                { "title": "鎵�灞炰骇绾�", "field": "productLine", type: "text" },
+                { "title": "鍦ㄩ�旀暟閲�", "field": "inLineNum", type: "text" },
+                { "title": "鍙紦瀛樻暟閲�", "field": "cacheNum", type: "text" },
+            ]
+        ]);
+        const searchFormFields = ref({});
+        const searchFormOptions = ref([
+            // [
+            //     { "title": "鐩爣搴撳尯", "field": "toArea", type: "text" },
+            //     { "title": "鏉ユ簮搴撳尯", "field": "fromArea", type: "text" },
+            //     { "title": "鎵樼洏绫诲瀷", "field": "barcodeType", type: "text" },
+            // ],
+            [
+                { "title": "鎵�灞炰骇绾�", "field": "productLine", type: "text" },
+                { "title": "鍦ㄩ�旀暟閲�", "field": "inLineNum", type: "text" },
+                { "title": "鍙紦瀛樻暟閲�", "field": "cacheNum", type: "text" },
+            ]
+        ]);
+        const columns = ref([{ field: 'ID', title: '涓婚敭', type: 'int', sort: true, hidden: true, width: 110, readonly: true, require: true, align: 'left' },
+        //{ field: 'toArea', title: '鐩爣搴撳尯', type: 'string', sort: true, width: 110, require: true, align: 'left', sort: true },
+        //{ field: 'fromArea', title: '鏉ユ簮搴撳尯', type: 'string', sort: true, width: 110, align: 'left' },
+        //{ field: 'barcodeType', title: '鎵樼洏绫诲瀷', type: 'string', sort: true, width: 110, align: 'left' },
+        { field: 'productLine', title: '鎵�灞炰骇绾�', type: 'string', sort: true, width: 110, align: 'left',},
+        { field: 'inLineNum', title: '鍦ㄩ�旀暟閲�', type: 'int', sort: true, width: 110, align: 'left' },
+        { field: 'cacheNum', title: '鍙紦瀛樻暟閲�', type: 'int', sort: true, width: 100,  align: 'left' },
+        { field: 'creater', title: '鍒涘缓浜�', type: 'string', sort: true, width: 110, align: 'left' },
+        { field: 'createDate', title: '鍒涘缓鏃堕棿', type: 'datetime', sort: true, width: 150, align: 'left', sort: true },
+        { field: 'modifier', title: '淇敼浜�', type: 'string', sort: true, width: 100,  align: 'left' },
+        { field: 'modifyDate', title: '淇敼鏃堕棿', type: 'datetime', sort: true, width: 150,  align: 'left', sort: true },
+        ]);
+        const detail = ref({
+            cnName: "#detailCnName",
+            table: "#detailTable",
+            columns: [],
+            sortName: "",
+            key: ""
+        });
+        return {
+            table,
+            extend,
+            editFormFields,
+            editFormOptions,
+            searchFormFields,
+            searchFormOptions,
+            columns,
+            detail,
+        };
+    },
+});
+</script>
diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicInfo/Dt_StationManager.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicInfo/Dt_StationManager.cs
index 16774dd..5c7c210 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicInfo/Dt_StationManager.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/BasicInfo/Dt_StationManager.cs
@@ -109,5 +109,9 @@
         public string stationNGLocation { get; set; }
         public string remark { get; set; }
 
+        /// <summary>
+        /// 浜х嚎
+        /// </summary>
+        public string productLine { get; set; }
     }
 }
diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs
index 89e5155..36eeb55 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs
@@ -1,4 +1,5 @@
-锘縰sing Masuit.Tools;
+锘縰sing log4net.Core;
+using Masuit.Tools;
 using WIDESEA_Core.Const;
 using WIDESEA_DTO.MOM;
 using WIDESEA_DTO.WMS;
@@ -365,6 +366,7 @@
 
     #region 搴撲綅鍒嗛厤
 
+    #region 鑾峰彇璐т綅
     /// <summary>
     ///
     /// </summary>
@@ -373,8 +375,6 @@
     /// <returns></returns>
     private async Task<DtLocationInfo> RequestLocation(RequestTaskDto requestTask, bool isCheckRequest = false)
     {
-        #region 鑾峰彇璐т綅
-
         try
         {
             List<DtLocationInfo> locations;
@@ -400,8 +400,9 @@
             return null;
         }
 
-        #endregion 鑾峰彇璐т綅
     }
+    #endregion 鑾峰彇璐т綅
+
 
     #endregion 搴撲綅鍒嗛厤
 
@@ -486,25 +487,69 @@
             return content.Error(ex.Message);
         }
     }
-
+    #endregion
     #region 寮傚父鍙d换鍔℃娴�
     public async Task<Dt_Task> CheckAbnormalTaskAsync(RequestTaskDto input, Dt_StationManager stationManager)
     {
         try
         {
+            if (stationManager.stationType == 15) throw new Exception("");
+
             // 鍒涘缓涓�涓猅rayCellsStatusDto瀵硅薄锛屽苟璧嬪��
             TrayCellsStatusDto trayCells = new TrayCellsStatusDto()
             {
                 Software = "WMS",
                 TrayBarcode = input.PalletCode,
                 //EquipmentCode = "EQ_CWJZ01"
-                EquipmentCode = input.EquiCodeMOM
+                EquipmentCode = input.EquiCodeMOM,
+                SceneType = "1",
             };
 
             // 璋冪敤GetTrayCellStatusAsync鏂规硶锛岃幏鍙栨暣鐩樼數鑺�
             WebResponseContent content = await GetTrayCellStatusAsync(trayCells);
             // 濡傛灉鐘舵�佷负false锛屽垯杩斿洖content
-            if (!content.Status) throw new Exception(content.Message);
+            if (!content.Status)  //鍏堢敤瀹炴姝e父鑾峰彇鏁寸洏鐢佃姱鏁版嵁锛� 濡傚紓甯� 鍦ㄦ浣跨敤绌烘绫诲瀷鍐嶆鑾峰彇 鍐嶆湁寮傚父鍒欐姏鍑�
+            {
+
+                TrayCellsStatusDto trayCells_Empty = new TrayCellsStatusDto()
+                {
+                    Software = "WMS",
+                    TrayBarcode = input.PalletCode,
+                    //EquipmentCode = "EQ_CWJZ01"
+                    EquipmentCode = input.EquiCodeMOM,
+                    SceneType = "4"
+                };
+                content = await GetTrayCellStatusAsync(trayCells);
+
+                if (!content.Status) throw new Exception(content.Message);
+
+                if (content.Status)   //褰撳仛绌烘鍏ュ簱
+                {
+                    DtLocationInfo EmptylocationInfo = await RequestLocation(input);
+
+                    if (EmptylocationInfo == null) throw new Exception("搴撲綅宸叉弧");
+
+                    var Epmtytask = new Dt_Task
+                    {
+                        CurrentAddress = input.Position,
+                        Grade = 3,  //浼樺厛澶勭悊寮傚父鎺掑嚭鍙g殑浠诲姟 闃叉姝e父闇�鎺掑嚭寮傚父鍙g殑浠诲姟鍫电嚎
+                        Roadway = input.Roadways,
+                        TargetAddress = EmptylocationInfo.LocationCode,
+                        Dispatchertime = DateTime.Now,
+                        MaterialNo = "",
+                        NextAddress = input.Roadways,
+                        OrderNo = null,
+                        PalletCode = input.PalletCode,
+                        SourceAddress = stationManager.stationLocation,
+                        TaskState = (int)TaskInStatusEnum.Line_InFinish,
+                        TaskType = (int)TaskInboundTypeEnum.Inbound,
+                        TaskNum = await BaseDal.GetTaskNo(),
+                        Creater = "Systeam"
+                    };
+
+                    return Epmtytask;
+                }
+            }
 
             // 娣诲姞缁勭洏淇℃伅
             // 灏哻ontent.Data杞崲涓篟esultTrayCellsStatus瀵硅薄
@@ -512,24 +557,25 @@
             if (result.SerialNos.Count <= 0)
             {
                 ConsoleHelper.WriteErrorLine(result.MOMMessage);
-                var taskNG = new Dt_Task
-                {
-                    CurrentAddress = input.Position,
-                    Grade = 1,
-                    Roadway = input.Roadways,
-                    TargetAddress = stationManager.stationNGLocation,
-                    Dispatchertime = DateTime.Now,
-                    MaterialNo = "",
-                    NextAddress = stationManager.stationNGChildCode,
-                    OrderNo = null,
-                    PalletCode = input.PalletCode,
-                    SourceAddress = stationManager.stationLocation,
-                    TaskState = (int)TaskInStatusEnum.Line_InFinish,
-                    TaskType = (int)TaskOutboundTypeEnum.InToOut,
-                    TaskNum = await BaseDal.GetTaskNo(),
-                    Creater = "Systeam"
-                };
-                return taskNG;
+                throw new Exception("鏃犵數鑺暟鎹�");
+                //var taskNG = new Dt_Task
+                //{
+                //    CurrentAddress = input.Position,
+                //    Grade = 1,
+                //    Roadway = input.Roadways,
+                //    TargetAddress = stationManager.stationNGLocation,
+                //    Dispatchertime = DateTime.Now,
+                //    MaterialNo = "",
+                //    NextAddress = stationManager.stationNGChildCode,
+                //    OrderNo = null,
+                //    PalletCode = input.PalletCode,
+                //    SourceAddress = stationManager.stationLocation,
+                //    TaskState = (int)TaskInStatusEnum.Line_InFinish,
+                //    TaskType = (int)TaskOutboundTypeEnum.InToOut,
+                //    TaskNum = await BaseDal.GetTaskNo(),
+                //    Creater = "Systeam"
+                //};
+                //return taskNG;
             }
 
             //Console.WriteLine(result);
@@ -558,20 +604,33 @@
             ////var processResponse = await GetProcessResponseAsync(process, input.Position);
             var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing);
 
+            DtLocationInfo locationInfo = null;
+            if (stationManager.Roadway.Contains("FR"))
+            {
+                locationInfo = await RequestLocation(input, true);
+            }
+            else
+            {
+                locationInfo = await RequestLocation(input);
+            }
+            //DtLocationInfo locationInfo = await RequestLocation(input);
+
+            if (locationInfo == null) throw new Exception("搴撲綅宸叉弧");
+
             var task = new Dt_Task
             {
                 CurrentAddress = input.Position,
-                Grade = 1,
+                Grade = 3,  //浼樺厛澶勭悊寮傚父鎺掑嚭鍙g殑浠诲姟 闃叉姝e父闇�鎺掑嚭寮傚父鍙g殑浠诲姟鍫电嚎
                 Roadway = input.Roadways,
-                TargetAddress = stationManager.stationLocation,
+                TargetAddress = locationInfo.LocationCode,
                 Dispatchertime = DateTime.Now,
                 MaterialNo = "",
                 NextAddress = input.Roadways,
                 OrderNo = null,
-                //PalletCode = stockinfo.PalletCode,
-                //SourceAddress = stockinfo.LocationCode,
-                TaskState = (int)TaskOutStatusEnum.OutNew,
-                TaskType = (int)TaskOutboundTypeEnum.OutTray,
+                PalletCode = input.PalletCode,
+                SourceAddress = stationManager.stationLocation,
+                TaskState = (int)TaskInStatusEnum.Line_InFinish,
+                TaskType = (int)TaskInboundTypeEnum.Inbound,
                 TaskNum = await BaseDal.GetTaskNo(),
                 Creater = "Systeam"
             };
@@ -766,7 +825,7 @@
         {
             Dt_StationManager station = _stationManagerRepository.QueryFirst(x => x.stationChildCode == json.Position);
 
-            DtStockInfo stockInfo = _stockInfoRepository.QueryFirst(X => X.IsFull && X.AreaCode == "CWSC3" && X.ProductionLine == "ZJ-7");
+            DtStockInfo stockInfo = _stockInfoRepository.QueryFirst(X => X.IsFull && X.AreaCode == "CWSC3" && X.ProductionLine == station.productLine);
             if (stockInfo == null) throw new Exception("搴撳唴鏃犳弧瓒虫潯浠剁殑搴撳瓨鍙嚭搴�");
 
             Dt_StationManager OutStation = _stationManagerRepository.QueryFirst(x => x.stationPLC == "1016" && x.stationType == 10);
@@ -801,4 +860,4 @@
             return content.Error($"澶辫触锛歿ex.Message}");
         }
     }
-} 
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json
index 0220b35..6a31190 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json
@@ -1,30 +1,31 @@
 {
-    "Logging": {
-        "LogLevel": {
-            "Default": "Information",
-            "Microsoft.AspNetCore": "Warning"
-        }
-    },
-    "AllowedHosts": "*",
-    "urls": "http://*:5000",
-    "MainDB": "DB_WIDESEA", //褰撳墠椤圭洰鐨勪富搴擄紝鎵�瀵瑰簲鐨勮繛鎺ュ瓧绗︿覆鐨凟nabled蹇呴』涓簍rue
-    //杩炴帴瀛楃涓�
-    //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=",
-    //"ConnectionString": "Data Source=192.168.5.251;Initial Catalog=WIDESEA_WMSDB_BBMain;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
-    "ConnectionString": "Data Source=127.0.0.1;Initial Catalog=WIDESEA_WMS2F08;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
-    //"ConnectionString": "Data Source=192.168.20.251;Initial Catalog=WIDESEA_WMSDB;User ID=sa;Password=123456@gy;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
-    
-    //璺ㄥ煙
-    "Cors": {
-        "PolicyName": "CorsIpAccess", //绛栫暐鍚嶇О
-        "EnableAllIPs": true, //褰撲负true鏃讹紝寮�鏀炬墍鏈塈P鍧囧彲璁块棶銆�
-        // 鏀寔澶氫釜鍩熷悕绔彛锛屾敞鎰忕鍙e彿鍚庝笉瑕佸甫/鏂滄潌锛氭瘮濡俵ocalhost:8000/锛屾槸閿欑殑
-        // 娉ㄦ剰锛宧ttp://127.0.0.1:1818 鍜� http://localhost:1818 鏄笉涓�鏍风殑
-        "IPs": "http://127.0.0.1:8080,http://localhost:8080,http://127.0.0.1:8081,http://localhost:8081"
-    },
-    "ApiName": "WIDESEA",
-    "ExpMinutes": 120,
+  "Logging": {
+    "LogLevel": {
+      "Default": "Information",
+      "Microsoft.AspNetCore": "Warning"
+    }
+  },
+  "AllowedHosts": "*",
+  "urls": "http://*:5000",
+  "MainDB": "DB_WIDESEA", //褰撳墠椤圭洰鐨勪富搴擄紝鎵�瀵瑰簲鐨勮繛鎺ュ瓧绗︿覆鐨凟nabled蹇呴』涓簍rue
+  //杩炴帴瀛楃涓�
+  //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=",
+  //"ConnectionString": "Data Source=192.168.5.251;Initial Catalog=WIDESEA_WMSDB_BBMain;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
+  //"ConnectionString": "Data Source=127.0.0.1;Initial Catalog=WIDESEA_WMS2F08;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
+  "ConnectionString": "Data Source=.\\LIULEI;Initial Catalog=WIDESEA_WMSDB_BBMain;User ID=sa;Password=123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
+  //"ConnectionString": "Data Source=192.168.20.251;Initial Catalog=WIDESEA_WMSDB;User ID=sa;Password=123456@gy;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False",
 
-    // 闇�瑕佺Щ搴撶殑琛�
-    "TransfertRows": "1,4,5,8"
+  //璺ㄥ煙
+  "Cors": {
+    "PolicyName": "CorsIpAccess", //绛栫暐鍚嶇О
+    "EnableAllIPs": true, //褰撲负true鏃讹紝寮�鏀炬墍鏈塈P鍧囧彲璁块棶銆�
+    // 鏀寔澶氫釜鍩熷悕绔彛锛屾敞鎰忕鍙e彿鍚庝笉瑕佸甫/鏂滄潌锛氭瘮濡俵ocalhost:8000/锛屾槸閿欑殑
+    // 娉ㄦ剰锛宧ttp://127.0.0.1:1818 鍜� http://localhost:1818 鏄笉涓�鏍风殑
+    "IPs": "http://127.0.0.1:8080,http://localhost:8080,http://127.0.0.1:8081,http://localhost:8081"
+  },
+  "ApiName": "WIDESEA",
+  "ExpMinutes": 120,
+
+  // 闇�瑕佺Щ搴撶殑琛�
+  "TransfertRows": "1,4,5,8"
 }

--
Gitblit v1.9.3