From 09be761e45c76c095ddbae1c401d780bae162fdd Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期四, 09 五月 2024 19:20:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java  |  147 +
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/GlassInfoService.java                          |   12 
 UI-Project/src/views/User/rolelist.vue                                                                                                   |  461 ++++++
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java                                |   28 
 UI-Project/src/views/Identify/identify.vue                                                                                               |   32 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java                          |   12 
 UI-Project/src/views/Caching/cachingbefore.vue                                                                                           |   21 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/PLCAutoMes.java                                           |    4 
 UI-Project/src/lang/locales/zh-CN.json                                                                                                   |  569 -------
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java                  |   24 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/tools/ExcelToJsonConverter.java                                  |    8 
 UI-Project/src/views/UnLoadGlass/loadmachinerack.vue                                                                                     |    5 
 UI-Project/src/views/Caching/cachingun.vue                                                                                               |  219 +-
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java     |   26 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/mapper/DownWorkstationTaskMapper.java            |    3 
 UI-Project/src/views/User/permissions.vue                                                                                                |  461 ++++++
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java |   26 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java         |    4 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java                  |    2 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java          |    6 
 UI-Project/config.js                                                                                                                     |    4 
 UI-Project/src/views/StockBasicData/stockBasicData.vue                                                                                   |  270 ++-
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java         |   90 +
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java         |    4 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java                      |    6 
 UI-Project/src/views/Slicecage/slicecage.vue                                                                                             | 1334 ++++++++----------
 /dev/null                                                                                                                                |    0 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json                                          |  362 +++++
 UI-Project/src/views/User/user.vue                                                                                                       |   49 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java                                         |   18 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java                  |    2 
 UI-Project/src/router/index.js                                                                                                           |   36 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java     |   34 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java           |   11 
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java                 |   20 
 35 files changed, 2,652 insertions(+), 1,658 deletions(-)

diff --git a/UI-Project/config.js b/UI-Project/config.js
index bf51358..2dfd4e0 100644
--- a/UI-Project/config.js
+++ b/UI-Project/config.js
@@ -1,6 +1,6 @@
 export default {
-  serverUrl: "127.0.0.1:88/api",
-  //serverUrl: "localhost:88/api/",
+ serverUrl: "10.153.19.150:88/api",
+
   serverUrl2: "10.153.19.150:88"
   //serverUrl:"res.abeim.cn"
 }
\ No newline at end of file
diff --git a/UI-Project/src/lang/locales/zh-CN.json b/UI-Project/src/lang/locales/zh-CN.json
index cc0ef84..b06a25b 100644
--- a/UI-Project/src/lang/locales/zh-CN.json
+++ b/UI-Project/src/lang/locales/zh-CN.json
@@ -1,521 +1,72 @@
 {
-  "Clear":"娓呴櫎",
-  "ip":"192.168.10.21",
-  "username": "鐢ㄦ埛鍚�",
+  "northglassMESsystem": "鍖楃幓MES绯荤粺",
+  "username": "璐﹀彿",
   "password": "瀵嗙爜",
-  "usernamePlaceholder": "璇疯緭鍏ョ敤鎴峰悕",
+  "usernamePlaceholder": "璇疯緭鍏ヨ处鍙�",
   "passwordPlaceholder": "璇疯緭鍏ュ瘑鐮�",
   "loginButton": "鐧诲綍",
   "registerButton": "娉ㄥ唽",
-  "resetButton": "閲嶇疆",
-  "usernameRequired": "璇疯緭鍏ョ敤鎴峰悕",
-  "usernameLength": "鐢ㄦ埛鍚嶉暱搴﹀湪5-15涓瓧绗︿箣闂�",
+  "registerButton": "娉ㄥ唽鏂扮敤鎴�",
+  "username": "濮撳悕",
+  "usernameRequired": "璇疯緭鍏ュ鍚�",
   "passwordRequired": "璇疯緭鍏ュ瘑鐮�",
-  "passwordLength": "瀵嗙爜闀垮害鍦�5-15涓瓧绗︿箣闂�",
+  "passwordRequired": "纭瀵嗙爜",
+  "passwordRequired": "璇风‘璁ゅ瘑鐮�",
+  "passwordRequired": "纭娉ㄥ唽",
+  "langCancel": "鍙栨秷",
   "loginSuccess": "鐧诲綍鎴愬姛",
   "langBtnCN": "涓枃",
   "langBtnEN": "English",
-  "langHome": "棣栭〉",
-  "langUserManagement": "鐢ㄦ埛绠$悊",
-  "langUserList": "鐢ㄦ埛鍒楄〃",
-  "langUsernamePlaceholder": "璇疯緭鍏ョ敤鎴峰悕",
-  "langEmailPlaceholder": "璇疯緭鍏ラ偖绠�",
-  "langSearch": "鎼滅储",
-  "langAddUser": "娣诲姞鐢ㄦ埛",
-  "langUsername": "鐢ㄦ埛鍚�",
-  "langEmail": "閭",
-  "langCreateTime": "鍒涘缓鏃堕棿",
-  "langDisabled": "鏄惁绂佺敤",
-  "langAction": "鎿嶄綔",
-  "langEdit": "淇敼",
-  "langDelete": "鍒犻櫎",
-  "langAddUserTitle": "娣诲姞鐢ㄦ埛",
-  "langPassword": "瀵嗙爜",
+  "langHome": "娆㈣繋",
+  "langUserManagement": "浣跨敤鍖楃幓MES绯荤粺",
+  "langUserList": "閫�鍑�",
+  "langUsernamePlaceholder": "鎵撴爣鏈哄氨缁姸鎬�",
+  "langEmailPlaceholder": "鍒囧壊鏈哄氨缁姸鎬�",
+  "langSearch": "鎵嬪姩纭",
+  "langAddUser": "閫夋嫨宸ョ▼",
+  "langUsername": "寮�濮嬩笂鐗�",
+  "langEmail": "鏆傚仠",
+  "langCreateTime": "鍋滄浠诲姟",
+  "langDisabled": "宸ョ▼鍙�",
+  "langAction": "鍘熺墖瀹�",
+  "langEdit": "鍘熺墖闀�",
+  "langDelete": "鑶滅郴",
+  "langAddUserTitle": "鏁伴噺",
+  "langPassword": "鍘氬害",
   "langState": "鐘舵��",
-  "langSelect": "璇烽�夋嫨",
-  "langEditUserTitle": "淇敼鐢ㄦ埛",
-  "northglassMESsystem": "鍖楃幓MES绯荤粺",
-  "exit": "閫�鍑�",
-  "changePassword": "淇敼瀵嗙爜",
-  "Old password":"鏃у瘑鐮�",
-  "New password":"鏂板瘑鐮�",
-  "Confirm password":"鎻愪氦瀵嗙爜",
-  "resetPassword": "閲嶇疆瀵嗙爜",
-  "home": "涓婚〉",
-  "role": "瑙掕壊",
-  "langRoleManagement": "瑙掕壊绠$悊",
-  "langRoleList": "瑙掕壊鍒楄〃",
-  "langEnterRoleName": "璇疯緭鍏ヨ鑹插悕绉�",
-  "langAddRole": "娣诲姞瑙掕壊",
-  "langName": "鍚嶇О",
-  "langIsValid": "鏄惁鏈夋晥",
-  "langOperation": "鎿嶄綔",
-  "langPleaseSelect": "璇烽�夋嫨",
-  "langValid": "鏈夋晥",
-  "langInvalid": "鏃犳晥",
-  "langConfirm": "纭畾",
-  "langCancel": "鍙栨秷",
-  "langAddRoleSuccess": "娣诲姞瑙掕壊鎴愬姛",
-  "langEnterName": "璇疯緭鍏ュ悕绉�",
-  "langLengthBetween": "闀垮害鍦�",
-  "langAnd": "鍜�",
-  "langCharacters": "涓瓧绗︿箣闂�",
-  "langEnterState": "璇疯緭鍏ョ姸鎬�",
-  "langUpdateState": "鐘舵�佹洿鏂版垚鍔�",
-  "langEditRole": "缂栬緫瑙掕壊",
-  "langEditRoleSuccess": "缂栬緫瑙掕壊鎴愬姛",
-  "langDeleteRoleConfirm": "纭畾瑕佸垹闄よ瑙掕壊鍚楋紵",
-  "langPrompt": "鎻愮ず",
-  "langDeleteRoleSuccess": "鍒犻櫎瑙掕壊鎴愬姛",
-  "langCancelDelete": "宸插彇娑堝垹闄�",
-  "langRoleName": "瑙掕壊鍚嶇О",
-  "updateSuccessMessage": "鏇存柊鎴愬姛",
-  "paginationTotal": "鍏� {total} 鏉�",
-  "paginationSizes": "姣忛〉鏄剧ず",
-  "paginationPrev": "涓婁竴椤�",
-  "paginationPager": "{currentPage}/{pageCount}",
-  "paginationNext": "涓嬩竴椤�",
-  "paginationJumper": "璺宠嚦",
-  "breadcrumb": {
-    "home": "棣栭〉",
-    "permissionManagement": "鏉冮檺绠$悊",
-    "permissionList": "鏉冮檺鍒楄〃"
-  },
-  "search": {
-    "placeholder": "璇疯緭鍏ュ叧閿瓧"
-  },
-  "button": {
-    "addPermission": "娣诲姞鏉冮檺",
-    "cancel": "鍙栨秷",
-    "confirm": "纭"
-  },
-  "table": {
-    "role": "瑙掕壊",
-    "permissionDescription": "鏉冮檺鎻忚堪",
-    "permissionValue": "鏉冮檺鍊�",
-    "createTime": "鍒涘缓鏃堕棿",
-    "isActive": "鏄惁婵�娲�",
-    "operation": "鎿嶄綔"
-  },
-  "tooltip": {
-    "edit": "淇敼",
-    "delete": "鍒犻櫎"
-  },
-  "dialog": {
-    "addPermission": "娣诲姞鏉冮檺",
-    "editPermission": "缂栬緫鏉冮檺"
-  },
-  "form": {
-    "role": "瑙掕壊",
-    "select": "璇烽�夋嫨",
-    "permission": "鏉冮檺",
-    "isActive": "鏄惁婵�娲�"
-  },
-  "鎿嶄綔": "鎿嶄綔",
-  "鏈夋晥": "鏈夋晥",
-  "鏃犳晥": "鏃犳晥",
-  "璇疯緭鍏ュ悕绉�": "璇疯緭鍏ュ悕绉�",
-  "闀垮害鍦� 2 鍒� 15 涓瓧绗�": "闀垮害鍦� 2 鍒� 15 涓瓧绗�",
-  "璇疯緭鍏ョ姸鎬�": "璇疯緭鍏ョ姸鎬�",
-  "娣诲姞瑙掕壊": "娣诲姞瑙掕壊",
-  "淇敼瑙掕壊": "淇敼瑙掕壊",
-  "鍒犻櫎瑙掕壊": "鍒犻櫎瑙掕壊",
-  "姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ヨ鑹�, 鏄惁缁х画?": "姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ヨ鑹�, 鏄惁缁х画?",
-  "鎻愮ず": "鎻愮ず",
-  "纭畾": "纭畾",
-  "鍙栨秷": "鍙栨秷",
-  "娣诲姞瑙掕壊鎴愬姛": "娣诲姞瑙掕壊鎴愬姛",
-  "鏇存柊鐘舵�佹垚鍔�": "鏇存柊鐘舵�佹垚鍔�",
-  "淇敼瑙掕壊鎴愬姛": "淇敼瑙掕壊鎴愬姛",
-  "鍒犻櫎瑙掕壊鎴愬姛": "鍒犻櫎瑙掕壊鎴愬姛",
-  "translation": {
-    "D01 VFD error": "D01 VFD 閿欒",
-    "D02 VFD error": "D02 VFD 閿欒",
-    "D03 VFD error": "D03 VFD 閿欒",
-    "D04 VFD error": "D04 VFD 閿欒",
-    "D05 VFD error": "D05 VFD 閿欒",
-    "D06 VFD error": "D06 VFD 閿欒",
-    "B01 VFD error": "B01 VFD 閿欒",
-    "B02 VFD error": "B02 VFD 閿欒",
-    "A01 VFD error": "A01 VFD 閿欒",
-    "A02 VFD error": "A02 VFD 閿欒",
-    "A01 servo turn error": "A01 servo turn 閿欒",
-    "A02 servo turn error": "A02 servo turn 閿欒",
-    "A01 servo travel error": "A01 servo travel 閿欒",
-    "A02 servo travel error": "A02 servo travel 閿欒",
-    "B01 servo travel error": "B01 servo travel 閿欒",
-    "B02 servo travel error": "B02 servo travel 閿欒",
-    "D01 DEC error": "D01 DEC 閿欒",
-    "D01 pos error": "D01 pos 閿欒",
-    "D02 DEC error": "D02 DEC 閿欒",
-    "D02 pos error": "D02 pos 閿欒",
-    "D03 DEC error": "D03 DEC 閿欒",
-    "D03 pos error": "D03 pos 閿欒",
-    "D04 DEC error": "D04 DEC 閿欒",
-    "D04 pos error": "D04 pos 閿欒",
-    "D05 DEC error": "D05 DEC 閿欒",
-    "D05 pos error": "D05 pos 閿欒",
-    "D06 DEC error": "D06 DEC 閿欒",
-    "D06 pos error": "D06 pos 閿欒",
-    "A01 DEC error": "A01 DEC 閿欒",
-    "A01 pos error": "A01 pos 閿欒",
-    "A02 DEC error": "A02 DEC 閿欒",
-    "A02 pos error": "A02 pos 閿欒",
-    "B01 IN DEC error": "B01 IN DEC 閿欒",
-    "B01 IN pos error": "B01 IN pos 閿欒",
-    "B01 OUT DEC error": "B01 OUT DEC 閿欒",
-    "B01 OUT pos error": "B01 OUT pos 閿欒",
-    "B02 IN DEC error": "B02 IN DEC 閿欒",
-    "B02 IN pos error": "B02 IN pos 閿欒",
-    "B02 OUT DEC error": "B02 OUT DEC 閿欒",
-    "B02 OUT pos error": "B02 OUT pos 閿欒"
-  },
-  "Electrical": "鐢ㄦ埛绠$悊",
-  "Parameter": "鏉冮檺绠$悊",
-  "Action": "涓婄墖鏈�",
-  "Sign": "鎺扮墖/璇嗗埆",
-  "State": "鐘舵��",
-  "Alarm": "鎶ヨ淇℃伅",
-  "Distribute": "涓嬪彂",
-  "Search": "鎼滅储",
-  "dvstate": {
-    "automatic": "鑷姩",
-    "manual": "鎵嬪姩"
-  },
-  "langUsernameLabel": "鐢ㄦ埛鍚�",
-  "langPasswordLabel": "瀵嗙爜",
-  "langPasswordPlaceholder": "璇疯緭鍏ュ瘑鐮�",
-  "langConfirmPasswordLabel": "纭瀵嗙爜",
-  "langConfirmPasswordPlaceholder": "璇风‘璁ゅ瘑鐮�",
-  "langEmailLabel": "閭",
-  "langQQLabel": "QQ",
-  "langQQPlaceholder": "璇疯緭鍏Q鍙风爜",
-  "langPhoneNumberLabel": "鎵嬫満鍙风爜",
-  "langPhoneNumberPlaceholder": "璇疯緭鍏ユ墜鏈哄彿鐮�",
-  "langUsernameRequiredMessage": "璇疯緭鍏ョ敤鎴峰悕",
-  "langUsernameLengthMessage": "鐢ㄦ埛鍚嶉暱搴﹀湪5鍒�15涓瓧绗︿箣闂�",
-  "langPasswordRequiredMessage": "璇疯緭鍏ュ瘑鐮�",
-  "langPasswordLengthMessage": "瀵嗙爜闀垮害鍦�5鍒�15涓瓧绗︿箣闂�",
-  "langEmailRequiredMessage": "璇疯緭鍏ラ偖绠�",
-  "langEmailFormatMessage": "閭鏍煎紡涓嶆纭�",
-  "langRegisterButton": "娉ㄥ唽",
-  "langResetButton": "閲嶇疆",
-  "langCancelButton": "鍙栨秷",
-  "langRegisterSuccessMessage": "娉ㄥ唽鎴愬姛",
-  "娣诲姞鐢ㄦ埛鎴愬姛": "娣诲姞鐢ㄦ埛鎴愬姛",
-  "confirmResetPassword": "纭閲嶇疆瀵嗙爜涓洪粯璁ゅ�煎悧锛�",
-  "confirm": "纭畾",
-  "cancel": "鍙栨秷",
-  "passwordResetSuccess": "瀵嗙爜宸查噸缃负榛樿鍊�",
-  "confirmDeleteCategory": "姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ュ垎绫�, 鏄惁缁х画?",
-  "prompt": "鎻愮ず",
-  "userDeleteSuccess": "鍒犻櫎鐢ㄦ埛鎴愬姛",
-  "deleteCanceled": "宸插彇娑堝垹闄�",
-  "addUserSuccess": "娣诲姞鐢ㄦ埛鎴愬姛",
-  "editUserSuccess": "淇敼鐢ㄦ埛鎴愬姛",
-  "effective": "鏈夋晥",
-  "invalid": "鏃犳晥",
-  "addSuccessMessage": "娣诲姞鎴愬姛",
-  "deleteConfirmMessage": "纭畾瑕佸垹闄よ鏉冮檺鍚楋紵",
-  "confirmButtonText": "纭畾",
-  "cancelButtonText": "鍙栨秷",
-  "deleteSuccessMessage": "鍒犻櫎鎴愬姛",
-  "deleteCancelledMessage": "宸插彇娑堝垹闄ゆ搷浣�",
-  "Enter the glass barcode": "杈撳叆鐜荤拑id",
-  "Infeed Barcodeid": "鎵嬪姩涓婄墖",
-  "Enter the order number": "杈撳叆璁㈠崟鍙�",
-  "Exit the glass by order number": "鎸夎鍗曞嚭鐗�",
-  "Please confirm the glass information": "璇风‘璁ょ幓鐠冧俊鎭�",
-  "Please confirm the Ordering Information": "璇风‘璁よ鍗曚俊鎭�",
-  "Alarm Information": "鎶ヨ淇℃伅",
-  "Cage Details": "鐞嗙墖绗艰鎯�",
-  "order": "璁㈠崟",
-  "Length": "闀�",
-  "Width": "瀹�",
-  "Operate": "鎿嶄綔",
-  "Terminate Task":"缁撴潫浠诲姟",
-  "end task": "瀹屾垚浠诲姟",
-  "Number": "鏁伴噺",
-  "Outfeed glass barcode": "鍑虹墖鐜荤拑id",
-  "Infeed glass barcode": "杩涚墖鐜荤拑id",
-  "Order No": "璁㈠崟缂栧彿",
-  "List No": "鍒楄〃缂栧彿",
-  "Box No": "绠卞瓙缂栧彿",
-  "Dim": "灏哄",
-  "id": "id",
-  "content": "鍐呭",
-  "timeon": "鎶ヨ鏃堕棿",
-  "endTime": "缁撴潫鏃堕棿",
-  "Cage No": "绗煎瓙",
-  "The Side": "鍐呭渚�",
-  "Slot No": "鏍煎瓙",
-  "Barcode": "鐜荤拑id",
-  "Delete": "鍒犻櫎",
-  "Out": "鍑虹墖",
-  "Operation successful": "鎿嶄綔鎴愬姛",
-  "Operation canceled": "鎿嶄綔鍙栨秷",
-  "There is no such order": "娌℃湁姝よ鍗曠殑鐜荤拑",
-  "There are currently tasks": "褰撳墠鏈変换鍔�",
-  "There is no such glass": "娌℃湁姝ょ幓鐠�",
-  "There is no such slot": "娌℃湁绌洪棽鏍煎瓙",
-  "No delete allowed": "涓嶈兘鍒犻櫎",
-  "No out allowed": "涓嶈兘鍑虹墖",
-  "Are you sure to perform this operation ?": "纭畾鎵ц姝ゆ搷浣�?",
-  "prompt": "鎻愮ず",
-  "Yes": "鏄�",
-  "No": "鍚�",
-  "today": "浠婂ぉ",
-  "yesterday": "鏄ㄥぉ",
-  "week": "涓�鍛ㄥ墠",
-  "shijian": "鏃ユ湡",
-  "Pick a day": "閫夋嫨鏃ユ湡",
-  "alarmid": "id",
-  "alacontent": "鎶ヨ鍐呭",
-  "time-on": "寮�濮嬫椂闂�",
-  "End-Time": "缁撴潫鏃堕棿",
-  "Please enter the password": "璇疯緭鍏ュ瘑鐮�",
-  "Password error": "瀵嗙爜閿欒",
-  "DataBase Connection failed": "鏁版嵁搴撹繛鎺ュけ璐�",
-  "Distribute parameters": "涓嬪彂鍙傛暟",
-  "The glass size is not within the range": "鐜荤拑灏哄涓嶅湪鑼冨洿鍐�",
-  "Add": "娣诲姞",
-  "Enable": "鍚敤",
-  "Disable": "绂佺敤",
-  "Usage": "浣跨敤鐜�",
-  "Space (Pieces)": "绌洪棿(鐗囨暟)",
-  "This glass is already in the cage": "绗煎瓙閲屽凡鏈夋鐜荤拑",
-  "Enter the Order No": "璇疯緭鍏ヨ鍗昳d",
-  "OrderInfo": "璁㈠崟淇℃伅",
-  "Query": "鏌ヨ",
-  "permission update": "鏉冮檺缂栬緫",
-  "query was successful": "鏌ヨ鎴愬姛",
-  "Scan Code Point": "鎵爜浣�",
-  "Upper film position": "涓婄墖浣�",
-  "Glass Information": "鐜荤拑淇℃伅",
-  "current Information": "褰撳墠淇℃伅",
-  "Modify Information": "淇敼淇℃伅",
-  "Clear Current": "娓呴櫎褰撳墠",
-  "Confirm": "纭",
-  "The glass ID already exists in the loading queue": "涓婄墖闃熷垪宸插瓨鍦ㄦ鐜荤拑id",
-  "This glass ID already exists in the sorting cage": "鐞嗙墖绗煎唴宸插瓨鍦ㄦ鐜荤拑id",
-  "Outing Queue":"鍑虹墖闃熷垪",
-  "Enter the Aluminum Frame No":"璇疯緭鍏ラ摑妗唅d",
-  "Frame No":"閾濇id",
-  "Glass information corresponding to aluminum frame":"閾濇瀵瑰簲鐨勭幓鐠冧俊鎭�",
-  "In the cage":"鍦ㄧ鍐�",
-  "Flipped":"缈昏浆",
-  "In the queue":"鍦ㄩ槦鍒�",
-  "Enter the Frame No":"璇疯緭鍏ラ摑妗唅d",
-  "Manually Infeed Glass":"鎵嬪姩杩涚墖",
-  "Normal":"姝e父",
-  "Entering":"姝e湪杩�",
-  "Outing":"姝e湪鍑�",
-  "Suspend":"鏆傚仠",
-  "Stop":"鍋滄",
-  "Start":"寮�濮�",
-  "Sequence":"椤哄簭",
-  "Position":"浣嶇疆",
-  "Top":"缃《",
-  "Up":"涓婄Щ",
-  "Down":"涓嬬Щ",
-  "You do not have this permission":"You do not have this permission",
-  "Unable to find the placement method of the aluminum frame":"鏌ヨ涓嶅埌閾濇鎽嗘斁鏂瑰紡",
-  "Unable to find whether the aluminum frame is flipped or not":"鏌ヨ涓嶅埌閾濇鏄惁缈昏浆",
-  "This glass is already in the Queue":"姝ょ幓鐠冨凡鍦ㄥ嚭鐗囬槦鍒椾腑",
-  "Complete":"瀹屾垚",
-  "Not Allow":"涓嶅厑璁�",
-  "Allow":"鍏佽",
-  "Completed":"宸插畬鎴�",
-  "Waiting":"绛夊緟涓�",
-  "Deleted":"宸插垹闄�",
-  "Glass State":"鐜荤拑鐘舵��",
-  "Absent":"涓嶅瓨鍦�",
-  "Approximately resettable time":"鍙浣嶅ぇ姒傛椂闂�",
-  "EXTERIQR OUT AND BYPASS TO THE LEFT":"EXTERIQR OUT AND BYPASS TO THE LEFT",
-  "EXTERIQR OUT AND BYPASS TO THE RIGHT":"EXTERIQR OUT AND BYPASS TO THE RIGHT",
-  "Complete Task":"瀹屾垚浠诲姟",
-  "Outed":"宸插嚭绗�",
-  "Queue State":"闃熷垪鐘舵��",
-  "Sorting State":"鎺掑簭鐘舵��",
-  "Confirm State":"纭鐘舵��",
-  "Next":"涓嬩竴涓�",
-  "Current Frame":"褰撳墠閾濇",
-  "Outside":"澶栦晶",
-  "Inside":"鍐呬晶",
-  "Cancel":"鍙栨秷",
-  "Are you sure to clear this barcode ?":"纭畾娓呴櫎姝ょ幓鐠僫d鍚� ?",
-  "Terminate Feeding":"缁堟杩涚墖",
-  "Terminate Outing":"缁堟鍑虹墖",
-  "SoftEmergencyStop":"杞�ュ仠",
-  "Unable to clear glass ID in automatic mode":"鏃犳硶鍦ㄨ嚜鍔ㄦā寮忎笅娓呴櫎鐜荤拑ID",
-  "Are you sure you want an emergency stop ?":"纭畾瑕佹�ュ仠鍚�?",
-  "Current State":"褰撳墠鐘舵��",
-  "Automatic":"鑷姩",
-  "Hand Movement":"鎵嬪姩",
-  "Please enter the correct glassID":"璇疯緭鍏ユ纭殑鐜荤拑ID",
-  "Switch":"鍒囨崲",
-  "This frame has glass that is currently outing":"姝ら摑妗嗘湁姝e湪鍑虹墖鐨勭幓鐠�",
-  "langparameter": {
-    "conveyor Velocity(Auto FAST)": "D01-D06 鐨甫杈撻�佽嚜鍔ㄥ揩閫�",
-    "conveyor Velocity(Auto SLOW)": "D01-D06 鐨甫杈撻�佽嚜鍔ㄦ參閫�",
-    "conveyor Velocity(Manual)": "D01-D06 鐨甫杈撻�佹墜鍔ㄩ�熷害",
-    "A01 A02 TURN JOG Velocity": "A01 A02 缈昏浆鐐瑰姩閫熷害",
-    "A01 A02 TRAVEL JOG Velocity": "A01 A02 琛岃蛋鐐瑰姩閫熷害",
-    "B01 B02 TRAVEL JOG Velocity": "B01 B02 琛岃蛋鐐瑰姩閫熷害",
-    "A01 A02 TURN POS Velocity AUTO": "A01 A02 缈昏浆鑷姩瀹氫綅閫熷害",
-    "A01 A02 TURN POS Velocity manual": "A01 A02 缈昏浆鎵嬪姩瀹氫綅閫熷害",
-    "A01 A02 TRAVEL POS Velocity AUTO": "A01 A02 琛岃蛋鑷姩瀹氫綅閫熷害",
-    "A01 A02 TRAVEL POS Velocity manual": "A01 A02 琛岃蛋鎵嬪姩瀹氫綅閫熷害",
-    "B01 B02 TRAVEL POS Velocity AUTO": "B01 B02 琛岃蛋鑷姩瀹氫綅閫熷害",
-    "B01 B02 TRAVEL POS Velocity manual": "B01 B02 琛岃蛋鎵嬪姩瀹氫綅閫熷害"
-  },
-  "langActions": {
-    "D01 VFD conveyor": "D01 杈撻�佸彉棰�",
-    "D02 VFD conveyor": "D02 杈撻�佸彉棰�",
-    "D03 VFD conveyor": "D03 杈撻�佸彉棰�",
-    "D04 VFD conveyor": "D04 杈撻�佸彉棰�",
-    "D05 VFD conveyor": "D05 杈撻�佸彉棰�",
-    "D06 VFD conveyor": "D06 杈撻�佸彉棰�",
-    "A01 VFD conveyor": "A01 杈撻�佸彉棰�",
-    "A02 VFD conveyor": "A02 杈撻�佸彉棰�",
-    "B01 VFD conveyor": "B01 杈撻�佸彉棰�",
-    "B02 VFD conveyor": "B02 杈撻�佸彉棰�",
-    "A01 SERVE TURN JOG+": "A01 缈昏浆浼烘湇鐐瑰姩",
-    "A02 SERVE TURN JOG-": "A02 缈昏浆浼烘湇鐐瑰姩",
-    "A01 SERVE TRAVEL JOG+": "A01 琛岃蛋浼烘湇鐐瑰姩",
-    "A02 SERVE TRAVEL JOG-": "A02 琛岃蛋浼烘湇鐐瑰姩",
-    "B01 SERVE TRAVEL JOG+": "B01 琛岃蛋浼烘湇鐐瑰姩",
-    "B02 SERVE TRAVEL JOG-": "B02 琛岃蛋浼烘湇鐐瑰姩",
-    "A01 SERVE TURN POS": "A01 缈昏浆浼烘湇瀹氫綅",
-    "A02 SERVE TURN POS": "A02 缈昏浆浼烘湇瀹氫綅",
-    "A01 SERVE TRAVEL POS": "A01 琛岃蛋浼烘湇瀹氫綅",
-    "A02 SERVE TRAVEL POS": "A02 琛岃蛋浼烘湇瀹氫綅",
-    "B01 SERVE TRAVEL POS": "B01 琛岃蛋浼烘湇瀹氫綅",
-    "B02 SERVE TRAVEL POS": "B02 琛岃蛋浼烘湇瀹氫綅",
-    "B01 YV TURN": "B01 鎶捣鐢电闃�",
-    "B01 YV UP DOWN": "B01 涓婂崌涓嬮檷鐢电闃�",
-    "B02 YV TURN": "B02 鎶捣鐢电闃�",
-    "B02 YV UP DOWN": "B02 涓婂崌涓嬮檷鐢电闃�"
-  },
-  "Signlang": {
-    "D01.SR dec": "D01.鍑忛�熶紶鎰熷櫒",
-    "D01.SR in pos": "D01.鍒颁綅浼犳劅鍣�",
-    "D02.SR dec": "D02.鍑忛�熶紶鎰熷櫒",
-    "D02.SR in pos": "D02.鍒颁綅浼犳劅鍣�",
-    "D03.SR into": "D03.杩涚墖浼犳劅鍣�",
-    "D03.SR dec": "D03.鍑忛�熶紶鎰熷櫒",
-    "D03.SR in pos": "D03.鍒颁綅浼犳劅鍣�",
-    "D04.SR dec": "D04.鍑忛�熶紶鎰熷櫒",
-    "D04.SR in pos": "D04.鍒颁綅浼犳劅鍣�",
-    "D05.SR dec": "D05.鍑忛�熶紶鎰熷櫒",
-    "D05.SR in pos": "D05.鍒颁綅浼犳劅鍣�",
-    "D06.SR dec": "D06.鍑忛�熶紶鎰熷櫒",
-    "D06.SR in pos": "D06.鍒颁綅浼犳劅鍣�",
-    "B01.SR in dec": "B01.杩涚墖鍑忛�熶紶鎰熷櫒",
-    "B01.SR in in pos": "B01.杩涚墖鍒颁綅浼犳劅鍣�",
-    "B01.SR out dec": "B01.鍑虹墖鍑忛�熶紶鎰熷櫒",
-    "B01.SR out in pos": "B01.鍑虹墖鍒颁綅浼犳劅鍣�",
-    "B01.SR turn on": "B01.缈昏浆涓婂埌浣嶄紶鎰熷櫒",
-    "B01.SR turn off": "B01.缈昏浆涓嬪埌浣嶄紶鎰熷櫒",
-    "B01.SR up": "B01.涓婂崌鍒颁綅浼犳劅鍣�",
-    "B01.SR down": "B01.涓嬮檷鍒颁綅浼犳劅鍣�",
-    "B02.SR out dec": "B02.鍑虹墖鍑忛�熶紶鎰熷櫒",
-    "B02.SR out in pos": "B02.鍑虹墖鍒颁綅浼犳劅鍣�",
-    "B02.SR in dec": "B02.杩涚墖鍑忛�熶紶鎰熷櫒",
-    "B02.SR in in pos": "B02.杩涚墖鍒颁綅浼犳劅鍣�",
-    "B02.SR turn on": "B02.缈昏浆涓婂埌浣嶄紶鎰熷櫒",
-    "B02.SR turn off": "B02.缈昏浆涓嬪埌浣嶄紶鎰熷櫒",
-    "B02.SR up": "B02.涓婂崌鍒颁綅浼犳劅鍣�",
-    "B02.SR down": "B02.涓嬮檷鍒颁綅浼犳劅鍣�",
-    "B01.SR in safety": "B01.杩涚墖瀹夊叏浼犳劅鍣�",
-    "B01.SR out safety": "B01.鍑虹墖瀹夊叏浼犳劅鍣�",
-    "B02.SR in safety": "B02.杩涚墖瀹夊叏浼犳劅鍣�",
-    "SB.start(+)": "SB.鍚姩锛�+锛夋寜閽�",
-    "SB.stop(1)": "SB.鍋滄锛�-锛夋寜閽�",
-    "SB.reset": "SB.澶嶄綅鎸夐挳",
-    "SB.auto/manul": "SB.鎵�/鑷垏鎹㈡寜閽�",
-    "D01.SB.confirm": "鐜荤拑淇℃伅纭",
-    "SB.emg": "SB.鎬ュ仠鎸夐挳",
-    "D01.SB.start": "D01.鍚姩",
-    "D06.SB.start": "D06.鍚姩",
-    "B02.SR out safety ": "B02.鍑虹墖瀹夊叏浼犳劅鍣�",
-    "SafetyDoor.requset": "瀹夊叏闂ㄨ姹傝繘鍏�",
-    "SafetyDoor.confirm": "瀹夊叏闂ㄧ‘璁�",
-    "SafetyDoor.reset": "瀹夊叏闂ㄥ浣�",
-    "A01.SR left dec":"A01宸﹂敭閫�",
-    "A01.SR left in pos":"A01宸﹀埌浣�",
-    "A01.SR left safety":"A01宸﹀畨鍏�",
-    "A01.SR right dec":"A01鍙抽敭閫�",
-    "A01.SR right in pos":"A01鍙冲埌浣�",
-    "A01.SR right safety":"A01鍙冲畨鍏�",
-    "A01.SR turn home":"A01缈昏浆鍘熺偣",
-    "A01.SR turn up":"A01缈昏浆涓婃瀬闄�",
-    "A01.SR turn down":"A01缈昏浆涓嬫瀬闄�",
-    "A01.SR travel home":"A01琛岃蛋鍘熺偣",
-    "A01.SR travel left dec":"A01琛岃蛋宸﹀噺閫�",
-    "A01.SR travel left limit":"A01琛岃蛋宸︽瀬闄�",
-    "A01.SR travel right dec":"A01琛岃蛋鍙冲噺閫�",
-    "A01.SR travel right limit":"A01琛岃蛋鍙虫瀬闄�",
-    "A02.SR left dec":"A02宸﹂敭閫�",
-    "A02.SR left in pos":"A02宸﹀埌浣�",
-    "A02.SR left safety":"A02宸﹀畨鍏�",
-    "A02.SR right dec":"A02鍙抽敭閫�",
-    "A02.SR right in pos":"A02鍙冲埌浣�",
-    "A02.SR right safety":"A02鍙冲畨鍏�",
-    "A02.SR turn home":"A02缈昏浆鍘熺偣",
-    "A02.SR turn up":"A02缈昏浆涓婃瀬闄�",
-    "A02.SR turn down":"A02缈昏浆涓嬫瀬闄�",
-    "A02.SR travel home":"A02琛岃蛋鍘熺偣",
-    "A02.SR travel left dec":"A02琛岃蛋宸﹀噺閫�",
-    "A02.SR travel left limit":"A02琛岃蛋宸︽瀬闄�",
-    "A02.SR travel right dec":"A02琛岃蛋鍙冲噺閫�",
-    "A02.SR travel right limit":"A02琛岃蛋鍙虫瀬闄�",
-    "B01.SR origin":"B01.鍘熺偣",
-    "B01.SR left limit":"B01.宸︽瀬闄�",
-    "B01.SR right limit":"B01.鍙虫瀬闄�",
-    "B02.SR origin":"B02.鍘熺偣",
-    "B02.SR left limit":"B02.宸︽瀬闄�",
-    "B02.SR right limit":"B02.鍙虫瀬闄�",
-    "LED.red": "涓夎壊鐏孩",
-    "LED.green": "涓夎壊鐏豢",
-    "LED.yellow": "涓夎壊鐏粍",
-    "D01.LED.green": "D01.缁跨伅",
-    "D06.LED.green": "D06.缁跨伅",
-    "B01.YV.turn": "B01.鐢电闃�缈昏浆",
-    "B01.YV.up down": "B01.鐢电闃�涓婂崌涓嬮檷",
-    "B01.YV.gassing": "B01.鐢电闃�鍚规皵",
-    "B02.YV.turn": "B02.鐢电闃�缈昏浆",
-    "B02.YV.up down": "B02.鐢电闃�涓婂崌涓嬮檷",
-    "B02.YV.gassing": "B02.鐢电闃�鍚规皵",
-    "SafetyDoor.Led": "瀹夊叏闂ㄧ姸鎬佺伅",
-    "SafetyDoor.open": "瀹夊叏闂ㄦ墦寮�",
-    "D01 SB.confirm":"鐜荤拑淇℃伅纭鎸囩ず鐏�",
-    "A01 oilPump":"A01娉ㄦ补娉�",
-    "A01 motorCtr":"A01鐢垫満鎺у埗",
-    "A02 oilPump":"A02娉ㄦ补娉�",
-    "A02 motorCtr":"A02鐢垫満鎺у埗",
-    "space":"澶囩敤"
-
-  },
-  "Statelang": {
-    "D01.State": "D01.鐘舵��",
-    "D02.State": "D02.鐘舵��",
-    "B01.State": "B01.鐘舵��",
-    "B02.State": "B02.鐘舵��",
-    "A01.State": "A01.鐘舵��",
-    "A02.State": "A02.鐘舵��",
-    "D03.State": "D03.鐘舵��",
-    "D04.State": "D04.鐘舵��",
-    "D05.State": "D05.鐘舵��",
-    "D06.State": "D06.鐘舵��"
-  },
-  "Automatic State":"鑷姩鐘舵��",
-  "ManualJog":"寮�鍏虫帶鍒�",
-  "ManualonePosition":"鎵嬪姩瀹氫綅",
-  "Servomanualone":"鍗婅嚜鍔�",
-  "Address parameter settings":"鍦板潃鍙傛暟璁剧疆",
-  "Speed parameter settings":"閫熷害鍙傛暟璁剧疆",
-  "InteractionState":"浜や簰鐘舵��",
-  "Set":"璁惧畾"
+  "langSelect": "瀹�",
+  "langEditUserTitle": "闀�",
+  "exit": "鎿嶄綔",
+  "changePassword": "宸ョ▼",
+  "Old password":"璇烽�夋嫨宸ョ▼",
+  "New password":"娣诲姞鍘熺墖",
+  "langConfirm": "纭",
+  "langUsernameLabel": "娣诲姞",
+  "langPasswordLabel": "鍒犻櫎",
+  "langPasswordLabel": "鏄惁鍒犻櫎璇ユ潯淇℃伅锛�",
+  "langPasswordLabel": "鏄惁寮�濮嬩笂鐗囷紵",
+  "langPasswordLabel": "鏄惁鏆傚仠锛�",
+  "langPasswordLabel": "鏄惁鍋滄浠诲姟锛�",
+  "langPasswordLabel": "鏍呮牸鍙�",
+  "langPasswordLabel": "鐜荤拑缂栧彿",
+  "langPasswordLabel": "楂�",
+  "langPasswordLabel": "鍚敤鐘舵��",
+  "langPasswordLabel": "鍚敤",
+  "langPasswordLabel": "鏈惎鐢�",
+  "langPasswordLabel": "鎶ョ己",
+  "langPasswordLabel": "杩涚倝涓�",
+  "langPasswordLabel": "杩涚倝鍓�",
+  "langPasswordLabel": "宸插嚭鐐夌幓鐠�",
+  "langPasswordLabel": "鐗堝浘缂栧彿",
+  "langPasswordLabel": "涓嬬墖浣�",
+  "langPasswordLabel": "鏋跺彿",
+  "langPasswordLabel": "娴佺▼鍗″彿",
+  "langPasswordLabel": "鎬绘暟閲�",
+  "langPasswordLabel": "宸茶惤鏋舵暟閲�",
+  "langPasswordLabel": "鐘舵��",
+  "langPasswordLabel": "璁惧鍙�",
+  "langPasswordLabel": "鍚敤鐘舵��",
+  "langPasswordLabel": "缁戝畾鏋跺瓙",
+  "langPasswordLabel": "娓呯┖",
 
 }
\ No newline at end of file
diff --git a/UI-Project/src/router/index.js b/UI-Project/src/router/index.js
index ceeccbb..c0773c2 100644
--- a/UI-Project/src/router/index.js
+++ b/UI-Project/src/router/index.js
@@ -1,8 +1,8 @@
 import {createRouter, createWebHashHistory} from 'vue-router'
 
-import User from '../views/sys/User.vue'
-import Role from '../views/sys/Role.vue'
-import Menu from '../views/sys/Menu.vue'
+// import User from '../views/sys/User.vue'
+// import Role from '../views/sys/Role.vue'
+// import Menu from '../views/sys/Menu.vue'
 
 const router = createRouter({
   history: createWebHashHistory(),
@@ -212,21 +212,21 @@
           name: 'screen',
           component: () => import('../views/Visualization/screen.vue'),
           children: [
-            {
-              path: '/sys/users',
-              name: 'SysUser',
-              component: User
-            },
-            {
-              path: '/sys/roles',
-              name: 'SysRole',
-              component: Role
-            },
-            {
-              path: '/sys/menus',
-              name: 'SysMenu',
-              component: Menu
-            },
+            // {
+            //   path: '/sys/users',
+            //   name: 'SysUser',
+            //   component: User
+            // },
+            // {
+            //   path: '/sys/roles',
+            //   name: 'SysRole',
+            //   component: Role
+            // },
+            // {
+            //   path: '/sys/menus',
+            //   name: 'SysMenu',
+            //   component: Menu
+            // },
           ]
         },
         {
diff --git a/UI-Project/src/views/Caching/cachingbefore.vue b/UI-Project/src/views/Caching/cachingbefore.vue
index 5cf4a38..5d9d157 100644
--- a/UI-Project/src/views/Caching/cachingbefore.vue
+++ b/UI-Project/src/views/Caching/cachingbefore.vue
@@ -55,7 +55,7 @@
 const open = async(row) => {  
   try {  
     const confirmResult = await ElMessageBox.confirm(  
-      '鏄惁鍒犻櫎璇ユ潯淇℃伅?',  
+      '鏄惁鎶ョ己璇ユ潯淇℃伅?',  
       '鎻愮ず',  
       {  
         confirmButtonText: '鏄�',  
@@ -66,15 +66,15 @@
     if (confirmResult === 'confirm') {  
       // 鐢ㄦ埛鐐瑰嚮浜嗏�滄槸鈥濓紝鐜板湪璋冪敤鍒犻櫎鎺ュ彛  
       const deleteResponse = await request.post("/cacheGlass/edgStorageCage/edgStorageCageGlass", {
-        id:0,
-        slot: row.slot
+        id: row.id,
+        esdId: row.esdId
     })
       if (response.code == 200) {  
         // 鍒犻櫎鎴愬姛锛屾偍鍙互鏍规嵁闇�瑕佸鐞嗘垚鍔熺殑鎯呭喌  
         alert('鍒犻櫎鎴愬姛锛�');  
       } else {  
         // 鍒犻櫎澶辫触锛屾偍鍙互澶勭悊閿欒鎴栨樉绀洪敊璇俊鎭粰鐢ㄦ埛  
-        alert('鍒犻櫎澶辫触锛�' + deleteResponse.message);  
+        alert('鍒犻櫎澶辫触锛�' + deleteResponse.message); 
       }  
     }  
   } catch (error) {  
@@ -171,9 +171,6 @@
   ]
  
 })
-
-
-
 </script>
 
 <template>
@@ -206,16 +203,6 @@
         </el-table>
       </div>
     </el-card>
-    <!-- <el-dialog v-model="adda" top="30vh" width="25%" title="鏄惁鍒犻櫎璇ユ潯淇℃伅?" >
-    <template #footer>
-      <div id="dialog-footer">
-        <el-button type="primary" @click="handleConfirma">
-          纭
-        </el-button>
-        <el-button @click="adda = false">鍙栨秷</el-button>
-      </div>
-    </template>
-  </el-dialog> -->
   </div>
   <div id="awatch">
     <img src="../../assets/woshihuancun.png" alt="" style="width: 60%;height: 90%;margin-left: 260px;margin-top: 20px;">
diff --git a/UI-Project/src/views/Caching/cachingun.vue b/UI-Project/src/views/Caching/cachingun.vue
index 7ed5e6a..5a82915 100644
--- a/UI-Project/src/views/Caching/cachingun.vue
+++ b/UI-Project/src/views/Caching/cachingun.vue
@@ -3,6 +3,7 @@
 import {reactive} from "vue";
 import {useRouter} from "vue-router"
 const router = useRouter()
+const adda = ref(false)
 
 import request from "@/utils/request"
 import { ref, onMounted } from "vue";
@@ -11,94 +12,126 @@
 //  import LanguageMixin from './lang/LanguageMixin'
 
 const tableData = ref([])
+const slot = ref('')
+  
 
-// 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰
-// const fetchTableData = async () => {
-//   try {
-//     // 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰锛屽苟绛夊緟鍝嶅簲
-//     // const response = await request.post("/loadGlass/optimizeProject/listByState", requestData);
-//     const response = await request.get("unLoadGlass/downStorage/selectStorageCage");
-
-//     // 妫�鏌ュ搷搴旂姸鎬�
-//     if (response.code === 200) {
-//       // 鏇存柊琛ㄦ牸鏁版嵁
-//       console.log('鎴愬姛鑾峰彇琛ㄦ牸鏁版嵁:', response.data);
-//       tableData.splice(0, tableData.length, ...response.data);
-//     } else {
-//       // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
-//       ElMessage.error(response.msg);
-//     }
-//   } catch (error) {
-//     // 澶勭悊璇锋眰澶辫触鐨勬儏鍐�
-//    ElMessage.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触锛岃閲嶈瘯');
-//   }
-// };
-// onMounted(fetchTableData);
-
-
-
-request.get("unLoadGlass/downStorage/selectStorageCage").then((res) => {
+request.get("/unLoadGlass/downStorage/selectStorageCage").then((res) => {
           if (res.code == 200) {
+            
           console.log(res.data);
           tableData.value = res.data
+          console.log(res.data[0].slot);
           } else {
           ElMessage.warning(res.msg)
         
           }
           });
 
-const dialogForm = () => {
-  ElMessageBox.confirm(
-    '鏄惁鎶ョ己?',
-    '鎻愮ず',
-    {
-      confirmButtonText: '鏄�',
-      cancelButtonText: '鍙栨秷',
-      type: 'warning',
-    }
-  )
-  .then(() => {
-    // this.boxa = true
-    // this.box = false
-      
+//   const getTableRow = (row,type) =>{
+//   switch (type) {
+//     case 'delete':{
+//       let flowData = ref({
+//         id:0,
+//         slot:row.slot
+//       })
+//       request.post("/cacheGlass/edgStorageCage/edgStorageCageGlass",flowData.value).then((res) => {
+//         if(res.code==200){
+//           ElMessage.success(t('searchOrder.msgDeleteSuccess'))
+//           router.push({path:'/main/delivery/selectDelivery',query:{random:Math.random()}})
+//         }else{
+//           ElMessage.warning(res.msg)
+//           router.push("/login")
+//         }
+//       })
+
+//       return
+//     }
+//   }
+// }
+// let slots = ref({
+//   id:0,
+//    slot: slot.value
+// })
+const open = async(row) => {  
+  try {  
+    const confirmResult = await ElMessageBox.confirm(  
+      '鏄惁鍒犻櫎璇ユ潯淇℃伅?',  
+      '鎻愮ず',  
+      {  
+        confirmButtonText: '鏄�',  
+        cancelButtonText: '鍙栨秷',  
+        type: 'warning',  
+      }  
+    );  
+    if (confirmResult === 'confirm') {  
+      // 鐢ㄦ埛鐐瑰嚮浜嗏�滄槸鈥濓紝鐜板湪璋冪敤鍒犻櫎鎺ュ彛  
+      const deleteResponse = await request.post("/cacheGlass/edgStorageCage/edgStorageCageGlass", {
+        id:0,
+        slot: row.slot
     })
-}
-const open = () => {
-  ElMessageBox.confirm(
-    '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
-    '鎻愮ず',
-    {
-      confirmButtonText: '鏄�',
-      cancelButtonText: '鍙栨秷',
-      type: 'warning',
-    }
-  )
-    .then(() => {
-      ElMessage({
-        type: 'success',
-        message: '鍒犻櫎鎴愬姛锛�',
-      })
-    })
-    .catch(() => {
-      ElMessage({
-        type: 'info',
-        message: '鍒犻櫎澶辫触',
-      })
-    })
-}
-const getTableRow = (row,type) =>{
-  switch (type) {
-    case 'edit' :{
-      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
-      router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }})
-      break
-    }
-    case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
-      break
-    }
-  }
-}
+      if (response.code == 200) {  
+        // 鍒犻櫎鎴愬姛锛屾偍鍙互鏍规嵁闇�瑕佸鐞嗘垚鍔熺殑鎯呭喌  
+        alert('鍒犻櫎鎴愬姛锛�');  
+      } else {  
+        // 鍒犻櫎澶辫触锛屾偍鍙互澶勭悊閿欒鎴栨樉绀洪敊璇俊鎭粰鐢ㄦ埛  
+        alert('鍒犻櫎澶辫触锛�' + deleteResponse.message);  
+      }  
+    }  
+  } catch (error) {  
+    // 澶勭悊鍙兘鍑虹幇鐨勯敊璇紝姣斿 ElMessageBox 鎶涘嚭鐨勫紓甯哥瓑  
+    console.error('鍙戠敓閿欒:', error);  
+  }  
+};  
+// const open = () => {
+//   ElMessageBox.confirm(
+//     '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+//     '鎻愮ず',
+//     {
+//       confirmButtonText: '鏄�',
+//       cancelButtonText: '鍙栨秷',
+//       type: 'warning',
+//     }
+//   )
+//     .then(() => {
+//       ElMessage({
+//         type: 'success',
+//         message: '鍒犻櫎鎴愬姛锛�',
+//       })
+//     })
+//     .catch(() => {
+//       ElMessage({
+//         type: 'info',
+//         message: '鍒犻櫎澶辫触',
+//       })
+//     })
+// }
+// 鍒犻櫎
+// const handleBindRacka = (row) => {
+//   adda.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
+// };
+// // 鍒犻櫎
+// const handleConfirma = async () => {
+//   try {
+//       window.localStorage.setItem('slot', res.data.slot)
+//     let slot = window.localStorage.getItem('slot')
+//     const response = await request.post('/cacheGlass/edgStorageCage/edgStorageCageGlass', {
+//       slot: slot.value,
+//       id: 0
+//     }); 
+ 
+//     if (response.code == 200) {
+//       // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+//       ElMessage.success(response.message);
+//       adda.value = false;
+//     } else {
+//       // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+//       ElMessage.error(response.msg);
+//     }
+//   } catch (error) {
+//     // 澶勭悊閿欒
+//     console.error(error);
+//   }
+// };
 
 const gridOptions = reactive({
   border:  "full",//琛ㄦ牸鍔犺竟妗�
@@ -150,19 +183,39 @@
         <el-table height="240" ref="table" 
         @selection-change="handleSelectionChange"
         :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
-          <el-table-column prop="id" align="center" label="鐜荤拑ID" min-width="80" />
-          <el-table-column prop="sequence" align="center" label="浣嶇疆" min-width="120" />
+          <el-table-column prop="slot" align="center" label="鏍呮牸鍙�" min-width="80" />
+          <el-table-column prop="glass_id" align="center" label="鐜荤拑缂栧彿" min-width="80" />
           <el-table-column prop="width" align="center" label="瀹�" min-width="120" />
-          <el-table-column prop="height" align="center" label="闀�" min-width="120" />
+          <el-table-column prop="height" align="center" label="楂�" min-width="120" />
+          <el-table-column
+            align="center"
+            label="鍚敤鐘舵��"
+            min-width="80"
+            prop="enable_state"
+          >
+          <template #default="scope">
+            <el-tag type="success" >{{ scope.row.enable_state==1?"鍚敤":"鏈惎鐢�"  }}</el-tag>
+          </template>
+          </el-table-column>
           <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200">
-            <template #default>
-              <el-button size="mini" type="text" plain  @click="dialogForm">鎶ョ己</el-button>
+            <template #default="scope">
+              <!-- <el-button size="mini" type="text" plain @click="handleBindRacka(scope.row)">鎶ョ己</el-button> -->
+              <el-button size="mini" type="text" plain  @click="open(scope.row)">鎶ョ己</el-button>
             </template>
         </el-table-column>
         </el-table>
       </div>
     </el-card>
-   
+    <!-- <el-dialog v-model="adda" top="30vh" width="25%" title="鏄惁鍒犻櫎璇ユ潯淇℃伅?" >
+    <template #footer>
+      <div id="dialog-footer">
+        <el-button type="primary" @click="handleConfirma">
+          纭
+        </el-button>
+        <el-button @click="adda = false">鍙栨秷</el-button>
+      </div>
+    </template>
+  </el-dialog> -->
   </div>
   <div id="awatch">
     <img src="../../assets/woshihuancun.png" alt="" style="width: 60%;height: 90%;margin-left: 260px;margin-top: 20px;">
diff --git a/UI-Project/src/views/Identify/identify.vue b/UI-Project/src/views/Identify/identify.vue
index 30fe865..5e2bc03 100644
--- a/UI-Project/src/views/Identify/identify.vue
+++ b/UI-Project/src/views/Identify/identify.vue
@@ -1,5 +1,6 @@
 <template>  
-<!-- <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading"> -->
+    <el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;" v-loading="loading">
+      <el-scrollbar height="700px">
   <div id="app" style="margin-top: 20px;">  
     <div  
       :style="{ width: `${olWidth}px`, height: `${olHeight}px`,position: 'relative' }"  
@@ -8,29 +9,51 @@
       v-for="(rect, index) in adjustedRects"  
       :key="index"  
       class="rect"  
+      @click="handleBind"
       :style="{ position: 'absolute', top: `${rect.y_axis}px`, left: `${rect.x_axis}px`, width: `${rect.width}px`, height: `${rect.height}px` }"  
     >
      <!-- 绠ご -->  
-     <div id="arrow"></div>  
-     <div id="line"></div>  
+     <!-- <div id="arrow"></div>  
+     <div id="line"></div>   -->
      <!-- <div  class="centered-text" >NG24030401B01</div> -->
      <div  class="centered-text">
     <div>{{ rect.process_id }}</div>  
     <div style="margin-top: 50px;margin-left: -85px;">{{ rect.width }}*{{ rect.height }}</div>  
   </div>
   </div> 
+  <!-- 鐐瑰嚮寮瑰嚭 -->
+  <el-dialog v-model="blind" top="30vh" width="15%" style="text-align: center;">
+    <!-- <template #footer> -->
+      <!-- <div id="dialog-footer"> -->
+        <el-button type="warning" plain :icon="Delete" @click="handle"  style="width: 120px;margin-left: 10px;">
+          鐮存崯
+        </el-button>
+        <el-button  type="danger" plain @click="blind = false" style="width: 120px;margin-top: 10px;">
+          <el-icon class="el-icon--right"><Upload /></el-icon>
+          浜哄伐鎷胯蛋</el-button>
+      <!-- </div> -->
+    <!-- </template> -->
+  </el-dialog> 
    </div>
   </div>  
+  </el-scrollbar>
+  </el-card>
 </template>  
   
-<script setup>  
+<script setup lang="ts">  
+import { Delete, Upload } from '@element-plus/icons-vue'
 import { ref, onMounted } from 'vue';  
 import request from "@/utils/request"
+const blind = ref(false)
 const olWidth = ref(); 
 const olHeight = ref();
 const process_id = ref(); // 鐢ㄤ簬瀛樺偍process_id鐨勫搷搴斿紡寮曠敤 
 // const rects = ref([]); // 鐢ㄤ簬瀛樺偍鐭╁舰鏁版嵁鐨勫搷搴斿紡寮曠敤  
 const adjustedRects = ref([]);
+const handleBind = (row) => {
+ 
+  blind.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
+};
 onMounted(async () => {  
   try {  
     const response = await request.post('/cacheGlass/taskCache/currentCutTerritory'); // 鏇挎崲涓轰綘鐨凙PI绔偣  
@@ -103,4 +126,5 @@
   width: 240px; /* 鐩寸嚎鐨勯暱搴︼紝鏍规嵁闇�瑕佽皟鏁� */  
   background-color: #911005; /* 鐩寸嚎鐨勯鑹� */  
 }  
+
 </style>
\ No newline at end of file
diff --git a/UI-Project/src/views/Slicecage/slicecage.vue b/UI-Project/src/views/Slicecage/slicecage.vue
index 2538c4e..22d0adc 100644
--- a/UI-Project/src/views/Slicecage/slicecage.vue
+++ b/UI-Project/src/views/Slicecage/slicecage.vue
@@ -1,27 +1,37 @@
 <script lang="ts" setup>
-import {reactive, ref} from 'vue'
-import {useRouter} from 'vue-router'
-import {ElMessage, ElMessageBox} from 'element-plus'
-
+import {Search} from "@element-plus/icons-vue";
+import {reactive} from "vue";
+import {useRouter} from "vue-router"
 const router = useRouter()
-
+ 
+import { ref } from 'vue'
+import { ElMessage, ElMessageBox } from 'element-plus'
+import { tr } from "element-plus/es/locale";
 const dialogFormVisible = ref(false)
 const dialogFormVisiblea = ref(false)
 const dialogFormVisibleb = ref(false)
-
-const carposition1 = ref(40)
-const carposition2 = ref(200)
-const timers1 = ref(true)
-const timers2 = ref(true)
-const cellshow = ref(false)
-const cellshow1 = ref(true)
-const cellshow2 = ref(true)
-const million = ref(0)
-const million1 = ref(0)
-
-const loading = null
-const handleSelectionChange = null
-
+ 
+const carposition1 = ref(60);
+const carposition2 = ref(220);
+const carposition3 = ref(60);
+const carposition4 = ref(260);
+const timers1 =ref(true);
+const timers2 =ref(true);
+const timers3 =ref(true);
+const timers4 =ref(true);
+const cellshow=ref(false);
+const cellshow5=ref(false);
+const c1=ref(false);
+const c2=ref(false);
+const cellshow1=ref(true);
+const cellshow2=ref(true);
+const cellshow3=ref(true);
+const cellshow4=ref(true);
+const million=ref(0);
+const million1=ref(0);
+const million3=ref(0);
+const million4=ref(0);
+ 
 const currentPage4 = ref(4)
 const pageSize4 = ref(100)
 const tableData = [
@@ -46,338 +56,320 @@
     e: '1',
     f: '100*100',
     g: '',
-  },
+  }
 ]
 const dialogForm = () => {
-  ElMessageBox.confirm('纭畾瑕佹�ュ仠鍚�?', '鎻愮ず', {
-    confirmButtonText: '鏄�',
-    cancelButtonText: '鍚�',
-    type: 'warning',
-  })
-      .then(() => {
-        ElMessage({
-          type: 'success',
-          message: '鎬ュ仠鎴愬姛锛�',
-        })
+  ElMessageBox.confirm(
+    '纭畾瑕佹�ュ仠鍚�?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '鏄�',
+      cancelButtonText: '鍚�',
+      type: 'warning',
+    }
+  )
+    .then(() => {
+      ElMessage({
+        type: 'success',
+        message: '鎬ュ仠鎴愬姛锛�',
       })
-      .catch(() => {
-        ElMessage({
-          type: 'info',
-          message: '鎬ュ仠澶辫触',
+    })
+    .catch(() => {
+      ElMessage({
+        type: 'info',
+        message: '鎬ュ仠澶辫触',
       })
     })
 }
-
-var timer = setInterval(() => {
-  console.log(million.value, million1.value)
-  million.value += 1
-  if (million.value - million1.value !== 12) {
-    if (million.value - million1.value >= 2) {
-      if (carposition1.value == 200) {
-        timers1.value = false
-      } else if (carposition1.value == 40) {
-        timers1.value = true
+ 
+  var timer=setInterval(() => {
+    console.log(million.value,million1.value);
+    million.value+=1;
+    if(million.value-million1.value!==12){
+      
+      if(million.value-million1.value>=2){
+        if(carposition1.value==220){
+          timers1.value=false;
+        }else if(carposition1.value==60){
+          timers1.value=true;
+        }
+        if(timers1.value==true){
+          carposition1.value=carposition1.value+16;
+        }else{
+          carposition1.value=carposition1.value-16;
+        }
+ 
+        
+        if(carposition2.value==220){
+          timers2.value=false;
+        }else if(carposition2.value==60){
+          timers2.value=true;
+        }
+        if(timers2.value==true){
+          carposition2.value+=16;
+        }else{
+          carposition2.value-=16;
+        }
+      }else{
+ 
       }
-      if (timers1.value == true) {
-        carposition1.value = carposition1.value + 16
-      } else {
-        carposition1.value = carposition1.value - 16
+    }else{
+      million1.value=million.value;
+      if(cellshow.value==true){
+        cellshow.value=false;
+        
+      }else{
+        cellshow.value=true;
+        
       }
-
-      if (carposition2.value == 200) {
-        timers2.value = false
-      } else if (carposition2.value == 40) {
-        timers2.value = true
+      if(cellshow1.value==true){
+        cellshow1.value=false;
+      }else{
+        cellshow1.value=true;
       }
-      if (timers2.value == true) {
-        carposition2.value += 16
-      } else {
-        carposition2.value -= 16
+      if(cellshow2.value==true){
+        cellshow2.value=false;
+      }else{
+        cellshow2.value=true;
       }
-    } else {
     }
-  } else {
-    million1.value = million.value
-    if (cellshow.value == true) {
-      cellshow.value = false
-    } else {
-      cellshow.value = true
+    
+  }, 1000);
+ 
+  var timer=setInterval(() => {
+    console.log(million3.value,million4.value);
+    million3.value+=1;
+    if(million3.value-million4.value!==12){
+      
+      if(million3.value-million4.value>=2){
+        if(carposition3.value==260){
+          timers3.value=false;
+        }else if(carposition3.value==60){
+          timers3.value=true;
+        }
+        if(timers3.value==true){
+          carposition3.value=carposition3.value+20;
+        }else{
+          carposition3.value=carposition3.value-20;
+        }
+ 
+        
+        if(carposition4.value==260){
+          timers4.value=false;
+        }else if(carposition4.value==60){
+          timers4.value=true;
+        }
+        if(timers4.value==true){
+          carposition4.value+=20;
+        }else{
+          carposition4.value-=20;
+        }
+      }else{
+ 
+      }
+    }else{
+      million4.value=million3.value;
+      if(cellshow5.value==true){
+        cellshow5.value=false;
+        
+      }else{
+        cellshow5.value=true;
+        
+      }
+      if(cellshow3.value==true){
+        cellshow3.value=false;
+      }else{
+        cellshow3.value=true;
+      }
+      if(cellshow4.value==true){
+        cellshow4.value=false;
+      }else{
+        cellshow4.value=true;
+      }
     }
-    if (cellshow1.value == true) {
-      cellshow1.value = false
-    } else {
-      cellshow1.value = true
-    }
-    if (cellshow2.value == true) {
-      cellshow2.value = false
-    } else {
-      cellshow2.value = true
-    }
-  }
-}, 100000)
-
-const getTableRow = (row, type) => {
+    
+  }, 1000);
+ 
+const getTableRow = (row,type) =>{
   switch (type) {
-    case 'edit': {
+    case 'edit' :{
       //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
-      router.push({
-        path: '/main/returns/createReturns',
-        query: {ReturnID: 'TH24010101'},
-      })
+      router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }})
       break
     }
-    case 'delete': {
+    case 'delete':{
       alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
 }
-
+ 
 const gridOptions = reactive({
-  border: 'full', //琛ㄦ牸鍔犺竟妗�
-  keepSource: true, //淇濇寔婧愭暟鎹�
-  align: 'center', //鏂囧瓧灞呬腑
-  stripe: true, //鏂戦┈绾�
-  rowConfig: {isCurrent: true, isHover: true, height: 50}, //榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
   id: 'OrderList',
-  showFooter: true, //鏄剧ず鑴�
+  showFooter: true,//鏄剧ず鑴�
   printConfig: {},
   importConfig: {},
   exportConfig: {},
-  scrollY: {enabled: true}, //寮�鍚櫄鎷熸粴鍔�
-  showOverflow: true,
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
   columnConfig: {
     resizable: true,
-    useKey: true,
+    useKey: true
   },
-  filterConfig: {
-    //绛涢�夐厤缃」
-    remote: true,
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
   },
   customConfig: {
-    storage: true,
+    storage: true
   },
   editConfig: {
     trigger: 'click',
     mode: 'row',
-    showStatus: true,
+    showStatus: true
   },
-  data: [
+  data:  [
     {
-      id: '1',
-      long: '5',
-      wide: '1005',
-      thick: '183.6',
-    },
+      'id': '1',
+      'long': '5',
+      'wide': '1005',
+      'thick': '183.6',
+    }
   ],
 })
 </script>
-
+ 
 <template>
   <div style="height: 700px;">
     <!-- <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="primary" @click="dialogFormVisible = true">鎵嬪姩杩涚墖</el-button> -->
-    <el-button style="margin-top: 5px;margin-left: 10px;"
-               id="searchButton"
-               type="primary"
-               @click="dialogFormVisiblea = true">璁㈠崟淇℃伅
-    </el-button>
-    <el-button style="margin-top: 5px;margin-left: 10px;"
-               id="searchButton"
-               type="success"
-               @click="dialogFormVisibleb = true">鍑虹墖闃熷垪
-    </el-button>
-    <el-button style="margin-top: 5px;margin-left: 10px;"
-               id="searchButton"
-               type="danger">缁堟杩涚墖
-    </el-button>
-    <el-button style="margin-top: 5px;margin-left: 10px;"
-               id="searchButton"
-               type="danger">缁堟鍑虹墖
-    </el-button>
-    <el-button style="margin-top: 5px;margin-left: 10px;"
-               id="searchButton"
-               type="danger"
-               @click="dialogForm">杞�ュ仠
-    </el-button>
-
-    <el-card style="flex: 1;margin-left: 10px;margin-top: 5px;"
-             v-loading="loading">
+    <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="primary" @click="dialogFormVisiblea = true">璁㈠崟淇℃伅</el-button>
+    <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="success" @click="dialogFormVisibleb = true">鍑虹墖闃熷垪</el-button>
+    <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="danger">缁堟杩涚墖</el-button>
+    <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="danger">缁堟鍑虹墖</el-button>
+    <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="danger"  @click="dialogForm">杞�ュ仠</el-button>
+    
+    <el-card style="flex: 1;margin-left: 10px;margin-top: 5px;" v-loading="loading">
       <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 100px;">
-        <el-table height="100%"
-                  ref="table"
-                  @selection-change="handleSelectionChange"
-                  :data="tableData"
-                  :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
-          <el-table-column prop="id"
-                           align="center"
-                           label="鍑虹墖鐜荤拑ID"
-                           min-width="80"/>
-          <el-table-column prop="a"
-                           align="center"
-                           label="绗煎瓙"
-                           min-width="120"/>
-          <el-table-column prop="b"
-                           align="center"
-                           label="鏍煎瓙"
-                           min-width="120"/>
-          <el-table-column prop="c"
-                           align="center"
-                           label="宸ョ▼鍙�"
-                           min-width="120"/>
-          <el-table-column prop="d"
-                           align="center"
-                           label="娴佺▼鍗″彿"
-                           min-width="120"/>
-          <el-table-column prop="e"
-                           align="center"
-                           label="閽㈠寲鐗堝浘鍙�"
-                           min-width="157"/>
-          <el-table-column prop="f"
-                           align="center"
-                           label="灏哄"
-                           min-width="120"/>
-          <el-table-column prop="g"
-                           align="center"
-                           label="缁撴潫浠诲姟"
-                           min-width="120">
-            <el-button style="margin-top: 5px;margin-left: 10px;"
-                       id="searchButton"
-                       type="text">瀹屾垚浠诲姟
-            </el-button>
-          </el-table-column>
+        <el-table height="100%" ref="table" 
+        @selection-change="handleSelectionChange"
+        :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+          <el-table-column prop="id" align="center" label="鍑虹墖鐜荤拑ID" min-width="80" />
+          <el-table-column prop="a" align="center" label="绗煎瓙" min-width="120" />
+          <el-table-column prop="b" align="center" label="鏍煎瓙" min-width="120" />
+          <el-table-column prop="c" align="center" label="宸ョ▼鍙�" min-width="120" />
+          <el-table-column prop="d" align="center" label="娴佺▼鍗″彿" min-width="120" />
+          <el-table-column prop="e" align="center" label="閽㈠寲鐗堝浘鍙�" min-width="157" />
+          <el-table-column prop="f" align="center" label="灏哄" min-width="120" />
+          <el-table-column prop="g" align="center" label="缁撴潫浠诲姟" min-width="120">
+    <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="text">瀹屾垚浠诲姟</el-button>
+</el-table-column>
         </el-table>
       </div>
     </el-card>
-    <el-card style="flex: 1;margin-left: 10px;margin-top: 3px;"
-             v-loading="loading">
+    <el-card style="flex: 1;margin-left: 10px;margin-top: 3px;" v-loading="loading">
       <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 100px;">
-        <el-table height="100%"
-                  ref="table"
-                  @selection-change="handleSelectionChange"
-                  :data="tableDatab"
-                  :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
-          <el-table-column prop="id"
-                           align="center"
-                           label="杩涚墖鐜荤拑ID"
-                           min-width="80"/>
-          <el-table-column prop="a"
-                           align="center"
-                           label="绗煎瓙"
-                           min-width="120"/>
-          <el-table-column prop="b"
-                           align="center"
-                           label="鏍煎瓙"
-                           min-width="120"/>
-          <el-table-column prop="c"
-                           align="center"
-                           label="宸ョ▼鍙�"
-                           min-width="120"/>
-          <el-table-column prop="d"
-                           align="center"
-                           label="娴佺▼鍗″彿"
-                           min-width="120"/>
-          <el-table-column prop="e"
-                           align="center"
-                           label="閽㈠寲鐗堝浘鍙�"
-                           min-width="157"/>
-          <el-table-column prop="f"
-                           align="center"
-                           label="灏哄"
-                           min-width="120"/>
-          <el-table-column prop="g"
-                           align="center"
-                           label="缁撴潫浠诲姟"
-                           min-width="120">
-            <el-button style="margin-top: 5px;margin-left: 10px;"
-                       id="searchButton"
-                       type="text">瀹屾垚浠诲姟
-            </el-button>
-          </el-table-column>
+        <el-table height="100%" ref="table" 
+        @selection-change="handleSelectionChange"
+        :data="tableDatab" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+          <el-table-column prop="id" align="center" label="杩涚墖鐜荤拑ID" min-width="80" />
+          <el-table-column prop="a" align="center" label="绗煎瓙" min-width="120" />
+          <el-table-column prop="b" align="center" label="鏍煎瓙" min-width="120" />
+          <el-table-column prop="c" align="center" label="宸ョ▼鍙�" min-width="120" />
+          <el-table-column prop="d" align="center" label="娴佺▼鍗″彿" min-width="120" />
+          <el-table-column prop="e" align="center" label="閽㈠寲鐗堝浘鍙�" min-width="157" />
+          <el-table-column prop="f" align="center" label="灏哄" min-width="120" />
+          <el-table-column prop="g" align="center" label="缁撴潫浠诲姟" min-width="120">
+    <el-button style="margin-top: 5px;margin-left: 10px;"   id="searchButton" type="text">瀹屾垚浠诲姟</el-button>
+</el-table-column>
         </el-table>
       </div>
     </el-card>
     <div style="padding: 10px;display: flex;height:110px;">
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#1</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#2</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#3</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#4</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#5</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#6</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#7</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <div id="occupy">
-        <el-col style="text-align:left;font-weight: bold;">#8</el-col>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
-        </el-col>
-        <hr style="width:80%;margin: 0 auto;"/>
-        <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
-          <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
-        </el-col>
-      </div>
-      <!-- <div v-for="n in 8" :key="n" id="occupy">
+      <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#1</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#2</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#3</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#4</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#5</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#6</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#7</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <div  id="occupy">
+                    <el-col style="text-align:left;font-weight: bold;">#8</el-col>
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
+                    </el-col>
+                    <hr style="width:80%;margin: 0 auto;" />
+                    <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
+                        <span id="biao">绌洪棽锛堟牸瀛愭暟锛�</span><span id="zhi">555</span>
+                    </el-col>
+                </div> 
+                <!-- <div v-for="n in 8" :key="n" id="occupy">
                     <el-col style="text-align:left;font-weight: bold;">#1</el-col>
                     <el-col style="text-align:left;display:flex;justify-content: space-between;align-items: center;">
                         <span id="biao">浣跨敤鐜�</span><span id="zhi">35%</span>
@@ -391,508 +383,360 @@
     <!-- <div id="awatch">
   <img src="../../assets/cp.png" alt="" style="width: 70%;height: 70%;margin-left: 160px;">
 </div> -->
-    <!-- // 鐖剁骇妗� -->
-    <div class="img-dlpl">
-      <div class="img-car1"
-           :style="'z-index:999;left:247px;top:' + carposition1 + 'px;position:absolute;'">
-        <div v-show="cellshow1"
-             style="margin-top:10px;width:200px;height:5px;background-color:red;"></div>
-      </div>
-
-      <div class="img-car2"
-           :style="'z-index:999;left:704px;top:' + carposition2 + 'px;position:absolute;'">
-        <div v-show="cellshow2"
-             style="margin-top:10px;width:200px;height:5px;background-color:red;"></div>
-      </div>
-      <div v-show="cellshow"
-           style="width: 200px;height: 5px;position: absolute;top:60px;left: 490px;background-color: red;">
-
-      </div>
+<!-- // 鐖剁骇妗� -->
+<div class="img-dlpl" >
+    <div class="img-car1" :style="'z-index:999;left:247px;top:' + carposition1 + 'px;position:absolute;'">
+      <div v-show="cellshow1" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
     </div>
-
+    <div v-show="c1" class="img-car2" :style="'z-index:999;left:704px;top:' + carposition2 + 'px;position:absolute;'">
+      <div v-show="cellshow2" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
+    </div>
+    
+    <div v-show="c2" class="img-car3" :style="'z-index:999;left:247px;top:' + carposition3 + 'px;position:absolute;'">
+      <div v-show="cellshow3" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
+    </div>
+    <div class="img-car4" :style="'z-index:999;left:704px;top:' + carposition4 + 'px;position:absolute;'">
+      <div v-show="cellshow4" style="margin-top:10px;width:200px;height:5px;background-color:#409EFF;"></div>
+    </div>
+    <div v-show="cellshow" style="width: 200px;height: 5px;position: absolute;top:70px;left: 480px;background-color: #409EFF;">
+    </div>
+    <div v-show="cellshow5" style="width: 200px;height: 5px;position: absolute;top:70px;left: 480px;background-color: #409EFF;">
+    </div>
+</div>
+    
   </div>
-  <el-dialog v-model="dialogFormVisible"
-             top="12vh"
-             width="85%"
-             title="璇风‘璁ょ幓鐠冧俊鎭�">
-    <div style="margin-left: 50px;margin-bottom: 10px;">
-      <div style="display: flex;">
-        <p style="margin-top: 4px;">纭鐘舵��:</p>
-        <el-button style="margin-left: 10px;size: mini;"
-                   type="success">鍏佽
-        </el-button>
-        <el-button style="margin-left: 10px;size: mini;"
-                   type="danger">涓嶅厑璁�
-        </el-button>
-        <p style="margin-left: 60px;margin-top: 4px;">褰撳墠鐘舵��:</p>
-        <div style="margin-top: 4px; margin-left: 10px;">鎵嬪姩</div>
-        <el-button style="margin-left: 10px;size: mini;"
-                   type="primary">鍒囨崲
-        </el-button>
-        <el-input placeholder="璇疯緭鍏ョ幓鐠僫d"
-                  style="width: 180px;size: mini;margin-left: 60px;"></el-input>
-        <el-button style="margin-left: 10px;size: mini;"
-                   type="primary">娣诲姞
-        </el-button>
-        <p style="margin-left: 60px;margin-top: 4px;">鐜荤拑id:</p>
-        <el-input style="width: 180px;size: mini;margin-left: 30px;"></el-input>
-      </div>
-      <div style="display: flex;">
-        <p style="margin-left: 290px;margin-top: 20px;font-weight: bold;">涓婄墖浣�</p>
-        <p style="margin-left: 630px;margin-top: 20px;font-weight: bold;">鎵爜浣�</p>
-      </div>
-      <div style="display: flex;">
-        <div style="margin-top: 20px;">
-          <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p>
-          <el-form label-position="right"
-                   label-width="90px">
-            <el-form-item style="width: 20vw"
-                          label="鐜荤拑id锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="璁㈠崟缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="鍒楄〃缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="绠卞瓙缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="闀匡細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ラ暱"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="瀹斤細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ"></el-input>
-            </el-form-item>
-          </el-form>
-        </div>
-        <div style="margin-top: 20px;">
-          <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p>
-          <el-form label-position="right"
-                   label-width="90px">
-            <el-form-item style="width: 20vw"
-                          label="鐜荤拑id锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="璁㈠崟缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="鍒楄〃缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="绠卞瓙缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="闀匡細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ラ暱"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="瀹斤細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ"></el-input>
-            </el-form-item>
-          </el-form>
-        </div>
-        <div style="margin-top: 20px;">
-          <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p>
-          <el-form label-position="right"
-                   label-width="90px">
-            <el-form-item style="width: 20vw"
-                          label="鐜荤拑id锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="璁㈠崟缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="鍒楄〃缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="绠卞瓙缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="闀匡細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ラ暱"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="瀹斤細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ"></el-input>
-            </el-form-item>
-          </el-form>
-        </div>
-        <div style="margin-top: 20px;">
-          <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p>
-          <el-form label-position="right"
-                   label-width="90px">
-            <el-form-item style="width: 20vw"
-                          label="鐜荤拑id锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="璁㈠崟缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="鍒楄〃缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="绠卞瓙缂栧彿锛�">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="闀匡細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ラ暱"></el-input>
-            </el-form-item>
-            <el-form-item style="width: 20vw"
-                          label="瀹斤細">
-              <el-input style="width: 180px"
-                        size="mini"
-                        placeholder="璇疯緭鍏ュ"></el-input>
-            </el-form-item>
-          </el-form>
-        </div>
-      </div>
-    </div>
-    <template #footer>
-      <div id="dialog-footer">
-        <el-button type="primary"
-                   @click="dialogFormVisible = false">
-          纭
-        </el-button>
-        <el-button @click="dialogFormVisible = false">鍙栨秷</el-button>
-      </div>
-    </template>
-  </el-dialog>
-  <el-dialog v-model="dialogFormVisiblea"
-             top="10vh"
-             width="85%"
-             title="璁㈠崟淇℃伅">
-    <el-input placeholder="璇疯緭鍏ュ伐绋嬪彿"
-              style="width: 180px;size: mini;"></el-input>
-    <el-button style="margin-left: 10px;size: mini;"
-               type="primary">鏌ヨ
-    </el-button>
-    <el-table ref="table"
-              style="margin-top: 20px;height: 500px;"
-              @selection-change="handleSelectionChange"
-              :data="tableDataa"
-              :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
-      <el-table-column prop="ida"
-                       align="center"
-                       label="鐜荤拑id"
-                       min-width="80"/>
-      <el-table-column prop="typea"
-                       align="center"
-                       label="宸ョ▼鍙�"
-                       min-width="120"/>
-      <el-table-column prop="typea"
-                       align="center"
-                       label="闀�"
-                       min-width="120"/>
-      <el-table-column prop="typea"
-                       align="center"
-                       label="瀹�"
-                       min-width="120"/>
-      <el-table-column prop="typea"
-                       align="center"
-                       label="鍘�"
-                       min-width="120"/>
-    </el-table>
-    <div id="demo-pagination-block">
-      <el-pagination style="margin-left: 850px;"
-                     v-model:current-page="currentPage4"
-                     v-model:page-size="pageSize4"
-                     :page-sizes="[100, 200, 300, 400]"
-                     :small="small"
-                     :disabled="disabled"
-                     :background="background"
-                     layout="total, sizes, prev, pager, next, jumper"
-                     :total="400"
-                     @size-change="handleSizeChange"
-                     @current-change="handleCurrentChange"/>
-    </div>
-  </el-dialog>
-  <el-dialog v-model="dialogFormVisibleb"
-             top="10vh"
-             width="85%"
-             title="鍑虹墖闃熷垪">
+<el-dialog v-model="dialogFormVisible" top="12vh" width="85%" title="璇风‘璁ょ幓鐠冧俊鎭�" >
+  <div style="margin-left: 50px;margin-bottom: 10px;">
     <div style="display: flex;">
-      <p style="margin-top: 4px;">闃熷垪鐘舵�侊細</p>
-      <p style="margin-top: 4px;">寮�濮�</p>
-      <el-button style="margin-left: 10px;size: mini;"
-                 type="danger">鍋滄
-      </el-button>
-      <el-button style="margin-left: 10px;size: mini;"
-                 type="primary">娣诲姞
-      </el-button>
+    <p style="margin-top: 4px;">纭鐘舵��:</p>
+    <el-button style="margin-left: 10px;size: mini;" type="success">鍏佽</el-button>
+    <el-button style="margin-left: 10px;size: mini;" type="danger">涓嶅厑璁�</el-button>
+    <p style="margin-left: 60px;margin-top: 4px;">褰撳墠鐘舵��:</p>
+    <div style="margin-top: 4px; margin-left: 10px;">鎵嬪姩</div>
+    <el-button style="margin-left: 10px;size: mini;" type="primary">鍒囨崲</el-button>
+    <el-input  placeholder="璇疯緭鍏ョ幓鐠僫d" style="width: 180px;size: mini;margin-left: 60px;"></el-input>
+    <el-button style="margin-left: 10px;size: mini;" type="primary">娣诲姞</el-button>
+    <p style="margin-left: 60px;margin-top: 4px;">鐜荤拑id:</p>
+    <el-input  style="width: 180px;size: mini;margin-left: 30px;"></el-input>
+  </div>
+    <div style="display: flex;">
+      <p style="margin-left: 290px;margin-top: 20px;font-weight: bold;">涓婄墖浣�</p>
+      <p style="margin-left: 630px;margin-top: 20px;font-weight: bold;">鎵爜浣�</p>
     </div>
-    <el-table ref="table"
-              style="margin-top: 20px;height: 500px;"
-              @selection-change="handleSelectionChange"
-              :data="tableDatab"
-              :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
-      <el-table-column prop="id"
-                       align="center"
-                       label="閾濇id"
-                       min-width="80"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="鐜荤拑id"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="璁㈠崟缂栧彿"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="鍒楄〃缂栧彿"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="绠卞瓙缂栧彿"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="闀�"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="瀹�"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="鐜荤拑鐘舵��"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="椤哄簭"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="瀹屾垚"
-                       min-width="120"/>
-      <el-table-column prop="type"
-                       align="center"
-                       label="鎿嶄綔"
-                       min-width="120"/>
-    </el-table>
-  </el-dialog>
-
+    <div style="display: flex;">
+    <div style="margin-top: 20px;">
+      <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p>
+      <el-form label-position="right" label-width="90px">
+      <el-form-item style="width: 20vw" label="鐜荤拑id锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="闀匡細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="瀹斤細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input>
+       </el-form-item>
+      </el-form>
+      </div>
+    <div style="margin-top: 20px;">
+      <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p>
+      <el-form label-position="right" label-width="90px">
+      <el-form-item style="width: 20vw" label="鐜荤拑id锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="闀匡細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="瀹斤細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input>
+       </el-form-item>
+      </el-form>
+      </div>
+    <div style="margin-top: 20px;">
+      <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">淇敼淇℃伅</p>
+      <el-form label-position="right" label-width="90px">
+      <el-form-item style="width: 20vw" label="鐜荤拑id锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="闀匡細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="瀹斤細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input>
+       </el-form-item>
+      </el-form>
+      </div>
+    <div style="margin-top: 20px;">
+      <p style="margin-top: 10px;margin-left: 100px;margin-bottom: 20px;">褰撳墠淇℃伅</p>
+      <el-form label-position="right" label-width="90px">
+      <el-form-item style="width: 20vw" label="鐜荤拑id锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ幓鐠僫d"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="璁㈠崟缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="鍒楄〃缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ垪琛ㄧ紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="绠卞瓙缂栧彿锛�">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ョ瀛愮紪鍙�"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="闀匡細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ラ暱"></el-input>
+       </el-form-item>
+      <el-form-item style="width: 20vw" label="瀹斤細">
+      <el-input style="width: 180px" size="mini" placeholder="璇疯緭鍏ュ"></el-input>
+       </el-form-item>
+      </el-form>
+      </div>
+    </div>
+        </div>
+  <template #footer>
+    <div id="dialog-footer">
+      <el-button type="primary" @click="dialogFormVisible = false">
+        纭
+      </el-button>
+      <el-button @click="dialogFormVisible = false">鍙栨秷</el-button>
+    </div>
+  </template>
+</el-dialog>
+<el-dialog v-model="dialogFormVisiblea" top="10vh" width="85%" title="璁㈠崟淇℃伅" >
+  <el-input  placeholder="璇疯緭鍏ュ伐绋嬪彿" style="width: 180px;size: mini;"></el-input>
+    <el-button style="margin-left: 10px;size: mini;" type="primary">鏌ヨ</el-button>
+    <el-table  ref="table" style="margin-top: 20px;height: 500px;"
+        @selection-change="handleSelectionChange"
+        :data="tableDataa" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+          <el-table-column prop="ida" align="center" label="鐜荤拑id" min-width="80" />
+          <el-table-column prop="typea" align="center" label="宸ョ▼鍙�" min-width="120" />
+          <el-table-column prop="typea" align="center" label="闀�" min-width="120" />
+          <el-table-column prop="typea" align="center" label="瀹�" min-width="120" />
+          <el-table-column prop="typea" align="center" label="鍘�" min-width="120" />
+        </el-table>
+        <div id="demo-pagination-block">
+    <el-pagination
+    style="margin-left: 850px;"
+      v-model:current-page="currentPage4"
+      v-model:page-size="pageSize4"
+      :page-sizes="[100, 200, 300, 400]"
+      :small="small"
+      :disabled="disabled"
+      :background="background"
+      layout="total, sizes, prev, pager, next, jumper"
+      :total="400"
+      @size-change="handleSizeChange"
+      @current-change="handleCurrentChange"
+    />
+  </div>
+</el-dialog>
+<el-dialog v-model="dialogFormVisibleb" top="10vh" width="85%" title="鍑虹墖闃熷垪" >
+  <div style="display: flex;">
+  <p style="margin-top: 4px;">闃熷垪鐘舵�侊細</p>
+  <p style="margin-top: 4px;">寮�濮�</p>
+    <el-button style="margin-left: 10px;size: mini;" type="danger">鍋滄</el-button>
+    <el-button style="margin-left: 10px;size: mini;" type="primary">娣诲姞</el-button>
+  </div>
+    <el-table  ref="table" style="margin-top: 20px;height: 500px;"
+        @selection-change="handleSelectionChange"
+        :data="tableDatab" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+          <el-table-column prop="id" align="center" label="閾濇id" min-width="80" />
+          <el-table-column prop="type" align="center" label="鐜荤拑id" min-width="120" />
+          <el-table-column prop="type" align="center" label="璁㈠崟缂栧彿" min-width="120" />
+          <el-table-column prop="type" align="center" label="鍒楄〃缂栧彿" min-width="120" />
+          <el-table-column prop="type" align="center" label="绠卞瓙缂栧彿" min-width="120" />
+          <el-table-column prop="type" align="center" label="闀�" min-width="120" />
+          <el-table-column prop="type" align="center" label="瀹�" min-width="120" />
+          <el-table-column prop="type" align="center" label="鐜荤拑鐘舵��" min-width="120" />
+          <el-table-column prop="type" align="center" label="椤哄簭" min-width="120" />
+          <el-table-column prop="type" align="center" label="瀹屾垚" min-width="120" />
+          <el-table-column prop="type" align="center" label="鎿嶄綔" min-width="120" />
+        </el-table>
+</el-dialog>
+ 
 </template>
 <style scoped>
-#dt {
-  display: block;
-  float: left;
-  line-height: 20px;
-  margin-left: 100px;
-}
-
-#dta {
-  display: block;
-  float: left;
-  line-height: 20px;
-  margin-left: 80%;
-}
-
-#dialog-footer {
+ 
+#dt { display:block; float:left;line-height: 20px;margin-left: 100px;}
+#dta { display:block; float:left;line-height: 20px;margin-left: 80%;}
+#dialog-footer{
   text-align: center;
   margin-top: -15px;
 }
-
-#message {
+#message{
   text-align: center;
   align-items: center;
   color: black;
-  width: 200px;
-  height: 100px;
-  background-color: #337ecc;
-  margin-left: 28%;
+   width: 200px;
+   height: 100px;
+   background-color: #337ecc;
+   margin-left: 28%;
 }
-
-#awatch {
+#awatch{
   height: 450px;
 }
-
 #occupy {
-  height: 100%;
-  width: 15%;
-  background-color: white;
-  margin: 0px 8px 0px 8px;
-  border: 1px #ebeef5 solid;
-  text-align: center;
-  padding: 5px;
+    height: 100%;
+    width: 15%;
+    background-color: white;
+    margin: 0px 8px 0px 8px;
+    border: 1px #EBEEF5 solid;
+    text-align: center;
+    padding: 5px;
 }
 #biao {
-  font-size: 12px;
+    font-size: 12px;
 }
 #zhi {
-  font-size: 18px;
-  font-weight: bold;
+    font-size: 18px;
+    font-weight: bold;
 }
-
 #demo-pagination-block + #demo-pagination-block {
   margin-top: 10px;
 }
-
 #demo-pagination-block #demonstration {
   margin-bottom: 16px;
 }
-
 ::-webkit-scrollbar {
-  width: 0 !important;
+     width: 0 !important;
+   }
+   ::-webkit-scrollbar {
+     width: 0 !important;height: 0;
+   }
+   .img-list{
+    
+  position:relative;
 }
-
-::-webkit-scrollbar {
-  width: 0 !important;
-  height: 0;
-}
-
-.img-list {
-  position: relative;
-}
-
-.data-img {
-  @apply float-none;
-
-  width: 100%;
-  height: 16rem;
+.data-img{
+  @apply float-none ;
+  
+  width:100%;
+  height:16rem;
   background: rgba(0, 0, 0, 0);
   opacity: 1;
   border-radius: 0.5rem 0.5rem 0px 0px;
+ 
 }
-
-.check-img {
+.check-img{
   position: absolute;
   width: 3.3125rem;
   height: 2.9375rem;
-  top: 20rem;
+  top:20rem;
   right: 57rem;
   z-index: 10;
+  
 }
-
-.check-imga {
+.check-imga{
   position: absolute;
   width: 3.3125rem;
   height: 2.9375rem;
-  top: 15rem;
+  top:15rem;
   right: 28.5rem;
   z-index: 10;
+  
 }
-
 .vertical {
-  width: 45px;
-  height: 25px;
-  background-color: #409eff;
-  top: 485px; /* 鍒濆浣嶇疆 */
-  left: 899px; /* 姘村钩灞呬腑 */
-  transform: translateX(-50%);
-  animation: move-vertical 6s infinite; /* 浠庝笂鍒颁笅鍔ㄧ敾锛屾寔缁�6绉掞紝鏃犻檺寰幆 */
+    width: 45px;
+    height: 25px;
+    background-color: #409EFF;
+    top: 485px; /* 鍒濆浣嶇疆 */
+    left: 899px; /* 姘村钩灞呬腑 */
+    transform: translateX(-50%);
+    animation: move-vertical 6s infinite; /* 浠庝笂鍒颁笅鍔ㄧ敾锛屾寔缁�6绉掞紝鏃犻檺寰幆 */
 }
-
+ 
 @keyframes move-vertical {
-  0% {
-    top: 485px; /* 璧峰浣嶇疆 */
-  }
-  100% {
-    top: calc(100% - 210px); /* 浠庝笂鍒颁笅缁撴潫浣嶇疆 */
-  }
+    0% {
+        top: 485px; /* 璧峰浣嶇疆 */
+    }
+    100% {
+        top: calc(100% - 210px); /* 浠庝笂鍒颁笅缁撴潫浣嶇疆 */
+    }
 }
-
-.img-dlpl {
+ 
+.img-dlpl{
   margin-left: 200px;
-  background-image: url('../../assets/dlpl.png');
+  background-image:url('../../assets/dlpl.png');
   background-repeat: no-repeat;
-  background-attachment: local;
-  min-height: 400px;
-  width: 1200px;
-  max-width: 100%;
-  background-size: 1200px 400px;
-  overflow: hidden;
-  position: relative;
+    background-attachment: local;
+    min-height: 400px;
+    width: 1200px;
+    max-width: 100%;
+    background-size: 1200px 400px;
+    overflow: hidden;
+    position:relative
 }
-
-.img-car1 {
-  background-image: url('../../assets/lpl.jpg');
+.img-car1{
+  background-image:url('../../assets/lp.png');
   position: absolute;
   background-repeat: no-repeat;
-  background-attachment: local;
-  min-height: 200px;
-  width: 200px;
-  max-width: 100%;
-  background-size: 200px 70px;
-  overflow: hidden;
-  position: relative;
+    background-attachment: local;
+    min-height: 200px;
+    width: 200px;
+    max-width: 100%;
+    background-size: 200px 70px;
+    overflow: hidden;
+    position:relative
 }
-
-.img-car2 {
-  background-image: url('../../assets/lpla.jpg');
+.img-car2{
+  background-image:url('../../assets/lpa.png');
   position: absolute;
   background-repeat: no-repeat;
-  background-attachment: local;
-  min-height: 200px;
-  width: 200px;
-  max-width: 100%;
-  background-size: 200px 70px;
-  overflow: hidden;
-  position: relative;
+    background-attachment: local;
+    min-height: 200px;
+    width: 200px;
+    max-width: 100%;
+    background-size: 200px 70px;
+    overflow: hidden;
+    position:relative
+}
+.img-car3{
+  background-image:url('../../assets/lp.png');
+  position: absolute;
+  background-repeat: no-repeat;
+    background-attachment: local;
+    min-height: 200px;
+    width: 200px;
+    max-width: 100%;
+    background-size: 200px 70px;
+    overflow: hidden;
+    position:relative
+}
+.img-car4{
+  background-image:url('../../assets/lpa.png');
+  position: absolute;
+  background-repeat: no-repeat;
+    background-attachment: local;
+    min-height: 200px;
+    width: 200px;
+    max-width: 100%;
+    background-size: 200px 70px;
+    overflow: hidden;
+    position:relative
 }
 </style>
\ No newline at end of file
diff --git a/UI-Project/src/views/StockBasicData/stockBasicData.vue b/UI-Project/src/views/StockBasicData/stockBasicData.vue
index b4e4821..efba1a1 100644
--- a/UI-Project/src/views/StockBasicData/stockBasicData.vue
+++ b/UI-Project/src/views/StockBasicData/stockBasicData.vue
@@ -3,99 +3,136 @@
 import {reactive} from "vue";
 import {useRouter} from "vue-router"
 const router = useRouter()
+const adda = ref(false)
 
-import { ref } from 'vue'
+import request from "@/utils/request"
+import { ref, onMounted } from "vue";
+// import { ref } from 'vue'
 import { ElMessage, ElMessageBox } from 'element-plus'
+//  import LanguageMixin from './lang/LanguageMixin'
 
-const tableData = [
-  {
-    id: '1',
-    long: '1005',
-    wide: '183.6',
-    thick: '1991',
-    type: '寰呰瘑鍒�',
-    typea: '1',
-  },
-  {
-    id: '2',
-    long: '105',
-    wide: '183',
-    thick: '191',
-    typea: '1',
-    type: '寰呰瘑鍒�'
-  },
-  {
-    id: '2',
-    long: '105',
-    wide: '183',
-    thick: '191',
-    typea: '1',
-    type: '寰呰瘑鍒�'
-  },
-]
-const open = () => {
-  ElMessageBox.confirm(
-    '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
-    '鎻愮ず',
-    {
-      confirmButtonText: '鏄�',
-      cancelButtonText: '鍙栨秷',
-      type: 'warning',
-    }
-  )
-    .then(() => {
-      ElMessage({
-        type: 'success',
-        message: '鍒犻櫎鎴愬姛锛�',
-      })
+const tableData = ref([])
+const slot = ref('')
+  
+
+request.post("/cacheGlass/taskCache/selectEdgTask").then((res) => {
+          if (res.code == 200) {
+            
+          console.log(res.data);
+          tableData.value = res.data
+          console.log(res.data[0].slot);
+          } else {
+          ElMessage.warning(res.msg)
+        
+          }
+          });
+
+//   const getTableRow = (row,type) =>{
+//   switch (type) {
+//     case 'delete':{
+//       let flowData = ref({
+//         id:0,
+//         slot:row.slot
+//       })
+//       request.post("/cacheGlass/edgStorageCage/edgStorageCageGlass",flowData.value).then((res) => {
+//         if(res.code==200){
+//           ElMessage.success(t('searchOrder.msgDeleteSuccess'))
+//           router.push({path:'/main/delivery/selectDelivery',query:{random:Math.random()}})
+//         }else{
+//           ElMessage.warning(res.msg)
+//           router.push("/login")
+//         }
+//       })
+
+//       return
+//     }
+//   }
+// }
+// let slots = ref({
+//   id:0,
+//    slot: slot.value
+// })
+const open = async(row) => {  
+  try {  
+    const confirmResult = await ElMessageBox.confirm(  
+      '鏄惁鍒犻櫎璇ユ潯淇℃伅?',  
+      '鎻愮ず',  
+      {  
+        confirmButtonText: '鏄�',  
+        cancelButtonText: '鍙栨秷',  
+        type: 'warning',  
+      }  
+    );  
+    if (confirmResult === 'confirm') {  
+      // 鐢ㄦ埛鐐瑰嚮浜嗏�滄槸鈥濓紝鐜板湪璋冪敤鍒犻櫎鎺ュ彛  
+      const deleteResponse = await request.post("/cacheGlass/edgStorageCage/edgStorageCageGlass", {
+        id:0,
+        slot: row.slot
     })
-    .catch(() => {
-      ElMessage({
-        type: 'info',
-        message: '鍒犻櫎澶辫触',
-      })
-    })
-}
-const getTableRow = (row,type) =>{
-  switch (type) {
-    case 'edit' :{
-      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
-      router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }})
-      break
-    }
-    case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
-      break
-    }
-  }
-}
-const dialogForm = () => {
-  ElMessageBox.confirm(
-    '鏄惁鐮存崯?',
-    '鎻愮ず',
-    {
-      confirmButtonText: '鏄�',
-      cancelButtonText: '鍙栨秷',
-      type: 'warning',
-    }
-  )
-  .then(() => {
-    // this.boxa = true
-    // this.box = false
-      
-    })
-}
-const dialogForma = () => {
-  ElMessageBox.confirm(
-    '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
-    '鎻愮ず',
-    {
-      confirmButtonText: '鏄�',
-      cancelButtonText: '鍙栨秷',
-      type: 'warning',
-    }
-  )
-}
+      if (response.code == 200) {  
+        // 鍒犻櫎鎴愬姛锛屾偍鍙互鏍规嵁闇�瑕佸鐞嗘垚鍔熺殑鎯呭喌  
+        alert('鍒犻櫎鎴愬姛锛�');  
+      } else {  
+        // 鍒犻櫎澶辫触锛屾偍鍙互澶勭悊閿欒鎴栨樉绀洪敊璇俊鎭粰鐢ㄦ埛  
+        alert('鍒犻櫎澶辫触锛�' + deleteResponse.message);  
+      }  
+    }  
+  } catch (error) {  
+    // 澶勭悊鍙兘鍑虹幇鐨勯敊璇紝姣斿 ElMessageBox 鎶涘嚭鐨勫紓甯哥瓑  
+    console.error('鍙戠敓閿欒:', error);  
+  }  
+};  
+// const open = () => {
+//   ElMessageBox.confirm(
+//     '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+//     '鎻愮ず',
+//     {
+//       confirmButtonText: '鏄�',
+//       cancelButtonText: '鍙栨秷',
+//       type: 'warning',
+//     }
+//   )
+//     .then(() => {
+//       ElMessage({
+//         type: 'success',
+//         message: '鍒犻櫎鎴愬姛锛�',
+//       })
+//     })
+//     .catch(() => {
+//       ElMessage({
+//         type: 'info',
+//         message: '鍒犻櫎澶辫触',
+//       })
+//     })
+// }
+// 鍒犻櫎
+// const handleBindRacka = (row) => {
+//   adda.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
+// };
+// // 鍒犻櫎
+// const handleConfirma = async () => {
+//   try {
+//       window.localStorage.setItem('slot', res.data.slot)
+//     let slot = window.localStorage.getItem('slot')
+//     const response = await request.post('/cacheGlass/edgStorageCage/edgStorageCageGlass', {
+//       slot: slot.value,
+//       id: 0
+//     }); 
+ 
+//     if (response.code == 200) {
+//       // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+//       ElMessage.success(response.message);
+//       adda.value = false;
+//     } else {
+//       // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+//       ElMessage.error(response.msg);
+//     }
+//   } catch (error) {
+//     // 澶勭悊閿欒
+//     console.error(error);
+//   }
+// };
+
 const gridOptions = reactive({
   border:  "full",//琛ㄦ牸鍔犺竟妗�
   keepSource: true,//淇濇寔婧愭暟鎹�
@@ -131,36 +168,48 @@
       'wide': '1005',
       'thick': '183.6',
     }
-  ],
+  ]
+ 
 })
+
+
 
 </script>
 
 <template>
   <div>
-    <el-card style="flex: 1;margin-left: 10px;margin-top: 5px;" v-loading="loading">
-      <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 200px;">
-        <el-table height="100%" ref="table" 
+    <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading">
+      <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;">
+        <el-table height="240" ref="table" 
         @selection-change="handleSelectionChange"
         :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
-          <el-table-column prop="id" align="center" label="id" min-width="80" />
-          <el-table-column prop="long" align="center" label="闀�" min-width="120" />
-          <el-table-column prop="wide" align="center" label="瀹�" min-width="120" />
-          <el-table-column prop="wide" align="center" label="鍘氬害" min-width="120" />
-          <el-table-column prop="wide" align="center" label="鑶滅郴" min-width="120" />
-          <el-table-column prop="wide" align="center" label="鍑虹墖椤哄簭" min-width="120" />
-          <el-table-column prop="wide" align="center" label="娴佺▼鍗″彿" min-width="120" />
-          <el-table-column prop="wide" align="center" label="鍏朵粬" min-width="120" />
+          <el-table-column prop="slot" align="center" label="id" min-width="80" />
+          <el-table-column prop="glass_id" align="center" label="闀�" min-width="80" />
+          <el-table-column prop="width" align="center" label="瀹�" min-width="120" />
+          <el-table-column prop="height" align="center" label="鍘氬害" min-width="120" />
+          <el-table-column prop="height" align="center" label="鑶滅郴" min-width="120" />
+          <el-table-column prop="height" align="center" label="鍑虹墖椤哄簭" min-width="120" />
+          <el-table-column prop="height" align="center" label="娴佺▼鍗″彿" min-width="120" />
+          <el-table-column prop="height" align="center" label="鍏朵粬" min-width="120" />
+          <el-table-column
+            align="center"
+            label="鍚敤鐘舵��"
+            min-width="80"
+            prop="enable_state"
+          >
+          <template #default="scope">
+            <el-tag type="success" >{{ scope.row.enable_state==1?"鍚敤":"鏈惎鐢�"  }}</el-tag>
+          </template>
+          </el-table-column>
           <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200">
-            <template #default>
-              <el-button size="mini" type="text" plain  @click="dialogForm">鐮存崯</el-button>
-              <el-button size="mini" type="text" plain  @click="dialogForma">鍒犻櫎</el-button>
+            <template #default="scope">
+              <el-button size="mini" type="text" plain  @click="open(scope.row)">鐮存崯</el-button>
+              <el-button size="mini" type="text" plain  @click="open(scope.row)">鍒犻櫎</el-button>
             </template>
         </el-table-column>
         </el-table>
       </div>
     </el-card>
-   
   </div>
 </template>
 
@@ -182,14 +231,7 @@
    margin-left: 28%;
 }
 #awatch{
-  height: 450px;
-}
-#main-body{
-  margin-top: -20px;
-  margin-left: 300px;
-}
-#main-bodya{
-  margin-top: -10px;
-  margin-left: 100px;
+  height: 460px;
+  /* margin-top: -60px; */
 }
 </style>
\ No newline at end of file
diff --git a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
index 0d44280..6f605ad 100644
--- a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
+++ b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
@@ -100,7 +100,8 @@
     const response = await request.get('unLoadGlass/downWorkStation/getflowCardId');
     console.log(response)
     if (response.code === 200) {
-      flowCardOptions.value = response.data.map(item => ({ flowcard_id: item.flow_card_id }));
+      flowCardOptions.value = response.data.map(item => ({ flowcard_id: item.flow_card_Id }));
+      console.log(flowCardOptions.value)
     } else {
       ElMessage.error(response.msg);
     }
@@ -198,7 +199,7 @@
 
 
 
-initWebSocket();
+// initWebSocket();
 onMounted(fetchTableData);
 // setInterval(fetchTableData, 2000)
 
diff --git a/UI-Project/src/views/User/permissions.vue b/UI-Project/src/views/User/permissions.vue
new file mode 100644
index 0000000..15a996d
--- /dev/null
+++ b/UI-Project/src/views/User/permissions.vue
@@ -0,0 +1,461 @@
+<script lang="ts" setup>
+import {Search} from "@element-plus/icons-vue";
+import {reactive} from "vue";
+import {useRouter} from "vue-router"
+import { ref } from 'vue'
+
+const router = useRouter()
+const value1 = ref(true)
+const add = ref(false)
+const adda = ref(false)
+
+const changer = ref(false)
+import { ElMessage, ElMessageBox } from 'element-plus'
+
+const tableData = [
+  {
+    id: '1',
+    long: '1005',
+    wide: '183.6',
+    thick: '1991',
+    time: '2024/4/1',
+    type: '寰呰瘑鍒�',
+    typea: '1',
+  },
+  {
+    id: '2',
+    long: '105',
+    wide: '183',
+    time: '2024/4/1',
+    thick: '191',
+    typea: '1',
+    type: '寰呰瘑鍒�'
+  },
+  {
+    id: '2',
+    long: '105',
+    wide: '183',
+    time: '2024/4/1',
+    thick: '191',
+    typea: '1',
+    type: '寰呰瘑鍒�'
+  },
+]
+const open = () => {
+  ElMessageBox.confirm(
+    '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '鏄�',
+      cancelButtonText: '鍙栨秷',
+      type: 'warning',
+    }
+  )
+    .then(() => {
+      ElMessage({
+        type: 'success',
+        message: '鍒犻櫎鎴愬姛锛�',
+      })
+    })
+    .catch(() => {
+      ElMessage({
+        type: 'info',
+        message: '鍒犻櫎澶辫触',
+      })
+    })
+}
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+  }
+}
+const dialogForm = () => {
+  ElMessageBox.confirm(
+    '鏄惁閲嶇疆瀵嗙爜?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '鏄�',
+      cancelButtonText: '鍙栨秷',
+      type: 'warning',
+    }
+  )
+  .then(() => {
+    // this.boxa = true
+    // this.box = false
+      
+    })
+}
+const dialogForma = () => {
+  ElMessageBox.confirm(
+    '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '鏄�',
+      cancelButtonText: '鍙栨秷',
+      type: 'warning',
+    }
+  )
+}
+
+const options = [
+  {
+    value: 'Option1',
+    label: 'admin',
+  },
+  {
+    value: 'Option2',
+    label: 'ueser2',
+  },
+  {
+    value: 'Option3',
+    label: 'ueser3',
+  },
+]
+const optionsa = [
+  {
+    valuea: 'Option1',
+    labela: '姝e父',
+  },
+  {
+    valuea: 'Option2',
+    labela: '绂佺敤',
+  },
+]
+
+const data= reactive({
+   tableList:[]//table鏁版嵁
+})
+
+const beforeChange = () => {
+  return new Promise((resolve) => {
+    setTimeout(() => {
+      ElMessage.success("淇敼鎴愬姛锛�");
+      return resolve(true);
+    }, 1000);
+  });
+};
+
+// //js灞傦紝瀹炴垬鐗堟湰,涓庡悗鍙版帴鍙d氦浜�
+// const gettableList = (id) = >{
+//   xxx鎺ュ彛.({
+//    id:id
+// }).then((res)=>{
+//    //灏嗘暟鎹紶缁檈l-table缁戝畾鐨�:data=>data.tableList
+//    data.tableList = res.data
+   
+// })
+// }
+ 
+// //鏈�鍚庡皢璇锋眰鍑芥暟鎸傝浇鍒皏ue瑙嗗浘涓�
+// onMounted(() => {
+//   gettableList ()
+
+// })
+// const delete = () => {
+//   ElMessageBox.confirm(
+//     '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+//     '鎻愮ず',
+//     {
+//       confirmButtonText: '鏄�',
+//       cancelButtonText: '鍙栨秷',
+//       type: 'warning',
+//     }
+//   )
+//   .then(() => {
+      
+//     })
+// }
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'OrderList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },
+  data:  [
+    {
+      'id': '1',
+      'long': '5',
+      'wide': '1005',
+      'thick': '183.6',
+      'time': '2024/4/1',
+    }
+  ]
+})
+
+</script>
+
+<template>
+  <div>
+        <el-button type="primary" style="margin-top: 10px;margin-left: 10px;"  size="mini" id="searchButton" @click="add = true">娣诲姞鐢ㄦ埛</el-button>
+        <el-input
+          clearable
+          placeholder="璇疯緭鍏ョ敤鎴峰悕"
+          size="mini"
+          style="margin-right: 20px; width: 200px;margin-left: 10px;margin-top: 10px;"
+        />
+        <el-input
+          clearable
+          placeholder="璇疯緭鍏ラ偖绠�"
+          size="mini"
+          style="margin-right: 20px; width: 200px;margin-left: 10px;margin-top: 10px;"
+        />
+        <el-button type="primary" size="mini" @click="searchSubmit" style="margin-top: 10px;">鏌ヨ</el-button >
+        <el-button type="primary" size="mini" @click="empty" style="margin-top: 10px;">娓呯┖</el-button>
+    <el-card style="flex: 1;margin-left: 10px;margin-top: 15px;" v-loading="loading">
+      <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 200px;">
+        <el-table height="100%" ref="table" 
+        @selection-change="handleSelectionChange"
+        :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+          <el-table-column prop="id" align="center" label="鐢ㄦ埛鍚�" min-width="80" />
+          <el-table-column prop="long" align="center" label="閭" min-width="120" />
+          <el-table-column prop="time" align="center" label="鍒涘缓鏃堕棿" min-width="120" />
+          <el-table-column  align="center" prop="changer"  label="鏄惁绂佺敤"   min-width="140"  >
+           <template #default="scope">
+           <el-switch  v-model="scope.row.changer"  :before-change="beforeChange" />
+         </template>
+         </el-table-column>
+
+          <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200">
+            <template #default>
+              <el-button size="mini" type="text" plain  @click="dialogForm">閲嶇疆瀵嗙爜</el-button>
+              <el-button size="mini" type="text" plain  @click="adda = true">缂栬緫</el-button>
+              <el-button size="mini" type="text" plain  @click="dialogForma">鍒犻櫎</el-button>
+            </template>
+        </el-table-column>
+        </el-table>
+      </div>
+    </el-card>
+   
+  </div>
+  
+  <el-dialog v-model="add" top="23vh" width="37%" title="娣诲姞鐢ㄦ埛" >
+    <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
+            <el-form  size="mini" label-width="150px">
+      <el-form label-width="100px" label-position="right">
+        <el-row style="margin-top: -15px;margin-bottom: -2px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鐢ㄦ埛鍚嶏細" :required="true" style="width: 25vw">
+                <el-input  autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瑙掕壊锛�" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨瑙掕壊"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in options"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="閭锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鏄惁绂佺敤" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨鏄惁绂佺敤"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in optionsa"
+            :key="item.valuea"
+            :label="item.labela"
+            :value="item.valuea"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瀵嗙爜锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        </el-form>
+            </el-form>
+          </div>
+    <template #footer>
+      <div id="dialog-footer">
+        <el-button type="primary" @click="getTableRow('edit')">
+          纭
+        </el-button>
+        <el-button @click="add = false">鍙栨秷</el-button>
+      </div>
+    </template>
+  </el-dialog>  
+  <el-dialog v-model="adda" top="23vh" width="37%" title="淇敼鐢ㄦ埛" >
+    <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
+            <el-form  size="mini" label-width="150px">
+      <el-form label-width="100px" label-position="right">
+        <el-row style="margin-top: -15px;margin-bottom: -2px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鐢ㄦ埛鍚嶏細" :required="true" style="width: 25vw">
+                <el-input  autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瑙掕壊锛�" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨瑙掕壊"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in options"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="閭锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鏄惁绂佺敤" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨鏄惁绂佺敤"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in optionsa"
+            :key="item.valuea"
+            :label="item.labela"
+            :value="item.valuea"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瀵嗙爜锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        </el-form>
+            </el-form>
+          </div>
+    <template #footer>
+      <div id="dialog-footer">
+        <el-button type="primary" @click="getTableRow('edit')">
+          纭
+        </el-button>
+        <el-button @click="adda = false">鍙栨秷</el-button>
+      </div>
+    </template>
+  </el-dialog>
+</template>
+
+<style scoped>
+
+#dt { display:block; float:left;line-height: 20px;margin-left: 100px;}
+#dta { display:block; float:left;line-height: 20px;margin-left: 80%;}
+#dialog-footer{
+  text-align: center;
+  margin-top: -15px;
+}
+#message{
+  text-align: center;
+  align-items: center;
+  color: black;
+   width: 200px;
+   height: 100px;
+   background-color: #337ecc;
+   margin-left: 28%;
+}
+#awatch{
+  height: 450px;
+}
+#main-body{
+  margin-top: -20px;
+  margin-left: 300px;
+}
+#main-bodya{
+  margin-top: -10px;
+  margin-left: 100px;
+}
+</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/User/rolelist.vue b/UI-Project/src/views/User/rolelist.vue
new file mode 100644
index 0000000..15a996d
--- /dev/null
+++ b/UI-Project/src/views/User/rolelist.vue
@@ -0,0 +1,461 @@
+<script lang="ts" setup>
+import {Search} from "@element-plus/icons-vue";
+import {reactive} from "vue";
+import {useRouter} from "vue-router"
+import { ref } from 'vue'
+
+const router = useRouter()
+const value1 = ref(true)
+const add = ref(false)
+const adda = ref(false)
+
+const changer = ref(false)
+import { ElMessage, ElMessageBox } from 'element-plus'
+
+const tableData = [
+  {
+    id: '1',
+    long: '1005',
+    wide: '183.6',
+    thick: '1991',
+    time: '2024/4/1',
+    type: '寰呰瘑鍒�',
+    typea: '1',
+  },
+  {
+    id: '2',
+    long: '105',
+    wide: '183',
+    time: '2024/4/1',
+    thick: '191',
+    typea: '1',
+    type: '寰呰瘑鍒�'
+  },
+  {
+    id: '2',
+    long: '105',
+    wide: '183',
+    time: '2024/4/1',
+    thick: '191',
+    typea: '1',
+    type: '寰呰瘑鍒�'
+  },
+]
+const open = () => {
+  ElMessageBox.confirm(
+    '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '鏄�',
+      cancelButtonText: '鍙栨秷',
+      type: 'warning',
+    }
+  )
+    .then(() => {
+      ElMessage({
+        type: 'success',
+        message: '鍒犻櫎鎴愬姛锛�',
+      })
+    })
+    .catch(() => {
+      ElMessage({
+        type: 'info',
+        message: '鍒犻櫎澶辫触',
+      })
+    })
+}
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+  }
+}
+const dialogForm = () => {
+  ElMessageBox.confirm(
+    '鏄惁閲嶇疆瀵嗙爜?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '鏄�',
+      cancelButtonText: '鍙栨秷',
+      type: 'warning',
+    }
+  )
+  .then(() => {
+    // this.boxa = true
+    // this.box = false
+      
+    })
+}
+const dialogForma = () => {
+  ElMessageBox.confirm(
+    '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+    '鎻愮ず',
+    {
+      confirmButtonText: '鏄�',
+      cancelButtonText: '鍙栨秷',
+      type: 'warning',
+    }
+  )
+}
+
+const options = [
+  {
+    value: 'Option1',
+    label: 'admin',
+  },
+  {
+    value: 'Option2',
+    label: 'ueser2',
+  },
+  {
+    value: 'Option3',
+    label: 'ueser3',
+  },
+]
+const optionsa = [
+  {
+    valuea: 'Option1',
+    labela: '姝e父',
+  },
+  {
+    valuea: 'Option2',
+    labela: '绂佺敤',
+  },
+]
+
+const data= reactive({
+   tableList:[]//table鏁版嵁
+})
+
+const beforeChange = () => {
+  return new Promise((resolve) => {
+    setTimeout(() => {
+      ElMessage.success("淇敼鎴愬姛锛�");
+      return resolve(true);
+    }, 1000);
+  });
+};
+
+// //js灞傦紝瀹炴垬鐗堟湰,涓庡悗鍙版帴鍙d氦浜�
+// const gettableList = (id) = >{
+//   xxx鎺ュ彛.({
+//    id:id
+// }).then((res)=>{
+//    //灏嗘暟鎹紶缁檈l-table缁戝畾鐨�:data=>data.tableList
+//    data.tableList = res.data
+   
+// })
+// }
+ 
+// //鏈�鍚庡皢璇锋眰鍑芥暟鎸傝浇鍒皏ue瑙嗗浘涓�
+// onMounted(() => {
+//   gettableList ()
+
+// })
+// const delete = () => {
+//   ElMessageBox.confirm(
+//     '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
+//     '鎻愮ず',
+//     {
+//       confirmButtonText: '鏄�',
+//       cancelButtonText: '鍙栨秷',
+//       type: 'warning',
+//     }
+//   )
+//   .then(() => {
+      
+//     })
+// }
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'OrderList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },
+  data:  [
+    {
+      'id': '1',
+      'long': '5',
+      'wide': '1005',
+      'thick': '183.6',
+      'time': '2024/4/1',
+    }
+  ]
+})
+
+</script>
+
+<template>
+  <div>
+        <el-button type="primary" style="margin-top: 10px;margin-left: 10px;"  size="mini" id="searchButton" @click="add = true">娣诲姞鐢ㄦ埛</el-button>
+        <el-input
+          clearable
+          placeholder="璇疯緭鍏ョ敤鎴峰悕"
+          size="mini"
+          style="margin-right: 20px; width: 200px;margin-left: 10px;margin-top: 10px;"
+        />
+        <el-input
+          clearable
+          placeholder="璇疯緭鍏ラ偖绠�"
+          size="mini"
+          style="margin-right: 20px; width: 200px;margin-left: 10px;margin-top: 10px;"
+        />
+        <el-button type="primary" size="mini" @click="searchSubmit" style="margin-top: 10px;">鏌ヨ</el-button >
+        <el-button type="primary" size="mini" @click="empty" style="margin-top: 10px;">娓呯┖</el-button>
+    <el-card style="flex: 1;margin-left: 10px;margin-top: 15px;" v-loading="loading">
+      <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 200px;">
+        <el-table height="100%" ref="table" 
+        @selection-change="handleSelectionChange"
+        :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+          <el-table-column prop="id" align="center" label="鐢ㄦ埛鍚�" min-width="80" />
+          <el-table-column prop="long" align="center" label="閭" min-width="120" />
+          <el-table-column prop="time" align="center" label="鍒涘缓鏃堕棿" min-width="120" />
+          <el-table-column  align="center" prop="changer"  label="鏄惁绂佺敤"   min-width="140"  >
+           <template #default="scope">
+           <el-switch  v-model="scope.row.changer"  :before-change="beforeChange" />
+         </template>
+         </el-table-column>
+
+          <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200">
+            <template #default>
+              <el-button size="mini" type="text" plain  @click="dialogForm">閲嶇疆瀵嗙爜</el-button>
+              <el-button size="mini" type="text" plain  @click="adda = true">缂栬緫</el-button>
+              <el-button size="mini" type="text" plain  @click="dialogForma">鍒犻櫎</el-button>
+            </template>
+        </el-table-column>
+        </el-table>
+      </div>
+    </el-card>
+   
+  </div>
+  
+  <el-dialog v-model="add" top="23vh" width="37%" title="娣诲姞鐢ㄦ埛" >
+    <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
+            <el-form  size="mini" label-width="150px">
+      <el-form label-width="100px" label-position="right">
+        <el-row style="margin-top: -15px;margin-bottom: -2px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鐢ㄦ埛鍚嶏細" :required="true" style="width: 25vw">
+                <el-input  autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瑙掕壊锛�" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨瑙掕壊"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in options"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="閭锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鏄惁绂佺敤" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨鏄惁绂佺敤"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in optionsa"
+            :key="item.valuea"
+            :label="item.labela"
+            :value="item.valuea"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瀵嗙爜锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        </el-form>
+            </el-form>
+          </div>
+    <template #footer>
+      <div id="dialog-footer">
+        <el-button type="primary" @click="getTableRow('edit')">
+          纭
+        </el-button>
+        <el-button @click="add = false">鍙栨秷</el-button>
+      </div>
+    </template>
+  </el-dialog>  
+  <el-dialog v-model="adda" top="23vh" width="37%" title="淇敼鐢ㄦ埛" >
+    <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
+            <el-form  size="mini" label-width="150px">
+      <el-form label-width="100px" label-position="right">
+        <el-row style="margin-top: -15px;margin-bottom: -2px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鐢ㄦ埛鍚嶏細" :required="true" style="width: 25vw">
+                <el-input  autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瑙掕壊锛�" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨瑙掕壊"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in options"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="閭锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="鏄惁绂佺敤" :required="true" style="width: 25vw;">
+                <el-select
+               v-model="value"
+               clearable
+               placeholder="璇烽�夋嫨鏄惁绂佺敤"
+               style="width: 330px"
+             >
+               <el-option
+            v-for="item in optionsa"
+            :key="item.valuea"
+            :label="item.labela"
+            :value="item.valuea"
+          />
+        </el-select>
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        <el-row style="margin-top: 10px;">
+          <el-col :span="6">
+              <div id="dt" style="font-size: 15px;">
+        <div>
+              <el-form-item label="瀵嗙爜锛�" :required="true" style="width: 25vw;">
+                <el-input autocomplete="off" />
+              </el-form-item></div></div>
+          </el-col>
+        </el-row>
+        </el-form>
+            </el-form>
+          </div>
+    <template #footer>
+      <div id="dialog-footer">
+        <el-button type="primary" @click="getTableRow('edit')">
+          纭
+        </el-button>
+        <el-button @click="adda = false">鍙栨秷</el-button>
+      </div>
+    </template>
+  </el-dialog>
+</template>
+
+<style scoped>
+
+#dt { display:block; float:left;line-height: 20px;margin-left: 100px;}
+#dta { display:block; float:left;line-height: 20px;margin-left: 80%;}
+#dialog-footer{
+  text-align: center;
+  margin-top: -15px;
+}
+#message{
+  text-align: center;
+  align-items: center;
+  color: black;
+   width: 200px;
+   height: 100px;
+   background-color: #337ecc;
+   margin-left: 28%;
+}
+#awatch{
+  height: 450px;
+}
+#main-body{
+  margin-top: -20px;
+  margin-left: 300px;
+}
+#main-bodya{
+  margin-top: -10px;
+  margin-left: 100px;
+}
+</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/User/user.vue b/UI-Project/src/views/User/user.vue
new file mode 100644
index 0000000..d0567d3
--- /dev/null
+++ b/UI-Project/src/views/User/user.vue
@@ -0,0 +1,49 @@
+<script setup>
+import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue"
+import {useRouter} from "vue-router";
+let indexFlag=$ref(1)
+function changeRouter(index){
+  indexFlag=index
+}
+
+</script>
+
+<template>
+  <!-- <div id="main-div"> -->
+   
+
+    <div id="main-body">
+      <router-view  />
+    </div>
+  <!-- </div> -->
+</template>
+
+<style scoped>
+#main-div{
+  width: 100%;
+  height: 100%;
+}
+#div-title{
+  height: 2%;
+  width: 100%;
+}
+#searchButton{
+  margin-top: -5px;
+  margin-left: 1rem;
+}
+/* #searchButton1{
+//margin-left: 10rem;
+} */
+/*main-body鏍峰紡*/
+#main-body{
+  width: 100%;
+  height: 95%;
+  /* margin-top: 1%; */
+}
+#select{
+  margin-left:0.5rem;
+}
+:deep(.indexTag .el-breadcrumb__inner){
+  color: #5CADFE !important;
+}
+</style>
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/PLCAutoMes.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/PLCAutoMes.java
index 6fd4740..e3218e1 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/PLCAutoMes.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/PLCAutoMes.java
@@ -8,7 +8,7 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import static com.mes.tools.InitUtil.readAndUpdateWordValues;
+//import static com.mes.tools.InitUtil.readAndUpdateWordValues;
 
 public class PLCAutoMes extends Thread {
 
@@ -61,7 +61,7 @@
             // System.out.println(jsonFilePath);
 
             // readAndUpdateWordValues(PlcReadObject);
-            readAndUpdateWordValues(PlcMesObject);
+            //readAndUpdateWordValues(PlcMesObject);
 
             List<String> addresses = new ArrayList<>();
             addresses.add("FeedID");
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java
index 48861a2..9b1b935 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/Plcdownglass.java
@@ -28,7 +28,7 @@
     private DownWorkstationService downWorkstationService;
 
 
-    @Scheduled(fixedDelay = 300)
+   @Scheduled(fixedDelay = 300)
     public void PlcdownglassTask() throws InterruptedException {
         JSONObject jsonObject = new JSONObject();
         try {
@@ -37,8 +37,8 @@
 
             //                String result = S7control.getinstance().ReadWord("DB14.0", 1).get(0) + "";
 //                String number = S7control.getinstance().ReadWord("DB14.2", 1).get(0) + "";
-            String result = "2";
-            String number = "1";
+            String result = "3";
+            String number = "4";
             // 杩涚墖璇锋眰
             if (RESULT_IN.equals(result)) {
                 downStorageCageService.processInto(number);
@@ -50,13 +50,19 @@
             // 杩涘嚭鐗囪姹�
             else if (RESULT_IN_OUT.equals(result)) {
                 // 鍏堝嚭鍚庤繘
-                if (!downStorageCageService.processOut()) {
+                if (downStorageCageService.processOut()) {
+                    //涓嬬墖鏇存柊
+                    downWorkstationService.insertdownglassinfo();
+                    // 鎵ц杩涚墖鎿嶄綔
                     downStorageCageService.processInto(number);
+                } else {
+                    // 濡傛灉 processOut() 杩斿洖 false锛屽彲浠ュ湪杩欓噷澶勭悊鍏朵粬閫昏緫
+                    log.info("鍑虹墖璇锋眰澶辫触锛屾棤娉曟墽琛岃繘鐗囨搷浣�");
                 }
+
             }
 
-            //涓嬬墖鏇存柊
-            downWorkstationService.insertdownglassinfo();
+
         } catch (Exception e) {
             e.printStackTrace();
         }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
deleted file mode 100644
index c0bf80e..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.mes.config;
-
-import com.mes.common.Plcdownglass;
-import com.mes.common.Plchome;
-import com.mes.device.PLCAutoMes;
-import org.springframework.boot.ApplicationArguments;
-import org.springframework.boot.ApplicationRunner;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-
-@Component
-@Order(1)
-
-public class AppRunnerConfig implements ApplicationRunner {
-
-    @Override
-    public void run(ApplicationArguments args) throws Exception {
-        // TODO Auto-generated method stub
-        //
-        System.out.println("鍚姩瀹屾垚");
-
-        //new Plcdownglass().start();
-
-//       new PLCAutoMes().start();
-//
-// new Plchome().start();
-
-    }
-}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java
index 40a5d0b..5543ab5 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java
@@ -2,7 +2,9 @@
 
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.springframework.data.annotation.Id;
 import org.springframework.stereotype.Component;
+
 
 import java.io.Serializable;
 
@@ -24,6 +26,7 @@
     /**
      * 涓嬬墖鐜荤拑淇℃伅琛╥d
      */
+
     private Long id;
 
     /**
@@ -51,8 +54,15 @@
      */
     private Double thickness;
 
-
+    /**
+     * 鑶滅郴
+     */
     private String Filmsid;
 
+    /**
+     * 鐜荤拑id
+     */
+    private String glassId;
+
 
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java
index 4521c5a..f6d883e 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassTaskService.java
@@ -26,7 +26,7 @@
      *
      * @return
      */
-    void updateTaskStateToZero(long id);
+    void updateTaskStateToZero(String id);
 
     /**
      * 鍒犻櫎浠诲姟
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
index 66783be..3cd3349 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
@@ -14,6 +14,7 @@
 import com.mes.downworkstation.service.DownWorkstationService;
 import com.mes.downworkstation.service.DownWorkstationTaskService;
 import com.mes.tools.WebSocketServer;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -37,6 +38,9 @@
 
     @Override
     public void insertDownGlassInfo(DownGlassInfo downGlassInfo) {
+
+
+
         baseMapper.insert(downGlassInfo);
     }
 
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java
index 8feea50..2d163d1 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java
@@ -33,7 +33,7 @@
     }
 
     @Override
-    public void updateTaskStateToZero(long id) {
+    public void updateTaskStateToZero(String id) {
         UpdateWrapper<DownGlassTask> updateWrapper = new UpdateWrapper<>();
         updateWrapper.set("task_stauts", 0).eq("id", id);
         baseMapper.update(new DownGlassTask(), updateWrapper);
@@ -42,7 +42,7 @@
     @Override
     public void deleteTask(String id) {
         LambdaQueryWrapper<DownGlassTask> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(DownGlassTask::getFlowCardId, id);
+        queryWrapper.eq(DownGlassTask::getGlassId, id);
 
         baseMapper.delete(queryWrapper);
     }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java
index f89f3ee..5737bd6 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/controller/DownStorageCageDetailsController.java
@@ -1,5 +1,6 @@
 package com.mes.downstorage.controller;
 
+import com.mes.downstorage.entity.DownStorageCage;
 import com.mes.downstorage.entity.DownStorageCageDetails;
 import com.mes.downstorage.service.DownStorageCageDetailsService;
 import com.mes.downstorage.service.DownStorageCageService;
@@ -33,32 +34,35 @@
     @ApiOperation("鏌ヨ缂撳瓨鐞嗙墖绗煎唴璇︽儏")
     @GetMapping("/selectStorageCage")
     @ResponseBody
-    public Result selectEdgStorageCage () {
-        List<Map> list=downStorageCageDetailsService.getCacheInfo();
+    public Result selectDownStorageCage () {
+        List<Map<String, Object>> list=downStorageCageService.selectDownStorageCages();
         return Result.build(200,"鎴愬姛",list);
     }
 
 
+//
+//    @ApiOperation("娣诲姞缂撳瓨鐞嗙墖绗间俊鎭�   鍔熻兘锛氱鍐呯粦瀹氱幓鐠�  鍙傛暟(DownStorageCageDetails downStorageCageDetails)")
+//    @PostMapping("/insertEdgStorageCage")
+//    @ResponseBody
+//    public Result insertEdgStorageCage(@RequestBody DownStorageCageDetails downStorageCageDetails) {
+//        boolean isSucess=downStorageCageService.updatedownStorageCageDetails(downStorageCageDetails);
+//        return Result.build(200,"娣诲姞鎴愬姛",1);
+//    }
 
-    @ApiOperation("娣诲姞缂撳瓨鐞嗙墖绗间俊鎭�   鍔熻兘锛氱鍐呯粦瀹氱幓鐠�  鍙傛暟(DownStorageCageDetails downStorageCageDetails)")
-    @PostMapping("/insertEdgStorageCage")
-    @ResponseBody
-    public Result insertEdgStorageCage(@RequestBody DownStorageCageDetails downStorageCageDetails) {
-        boolean isSucess=downStorageCageDetailsService.updatedownStorageCageDetails(downStorageCageDetails);
-        return Result.build(200,"娣诲姞鎴愬姛",1);
-    }
+
+
     @ApiOperation("淇敼缂撳瓨鐞嗙墖绗间俊鎭�   鍔熻兘锛氬绗煎唴鏍呮牸杩涜銆愬惎鐢�/绂佺敤銆�/ 銆愭洿鎹€�戠鍐呮爡鏍肩幓鐠冧俊鎭�")
-    @PostMapping("/updateEdgStorageCage")
+    @PostMapping("/updateDownStorageCage")
     @ResponseBody
-    public Result updateEdgStorageCage(@RequestBody DownStorageCageDetails downStorageCageDetails) {
-        boolean isSucess=downStorageCageDetailsService.updatedownStorageCageDetails(downStorageCageDetails);
+    public Result updateDownStorageCage(@RequestBody DownStorageCage downStorageCage) {
+        boolean isSucess=downStorageCageService.updateDownStorageCage(downStorageCage);
         return Result.build(200,"鏇存崲鎴愬姛",1);
     }
     @ApiOperation("鍒犻櫎缂撳瓨鐞嗙墖绗间俊鎭�   鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑杩涜銆愭竻闄ゃ��")
-    @PostMapping("/deleteEdgStorageCage")
+    @PostMapping("/deleteDownStorageCage")
     @ResponseBody
-    public Result deleteEdgStorageCage(@RequestBody DownStorageCageDetails downStorageCageDetails) {
-        boolean isSucess=downStorageCageDetailsService.updatedownStorageCageDetails(downStorageCageDetails);
+    public Result deleteDownStorageCage(@RequestBody DownStorageCageDetails downStorageCageDetails,int downStorageCageId) {
+        boolean isSucess=downStorageCageService.updateDownStorageCageDetails(downStorageCageId,downStorageCageDetails);
         return Result.build(200,"鍒犻櫎鎴愬姛",1);
     }
 
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
index 78b15e4..1327452 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
@@ -1,7 +1,6 @@
 package com.mes.downstorage.service;
 
 import com.mes.downstorage.entity.DownStorageCageDetails;
-import com.mes.glassinfo.entity.GlassInfo;
 
 import java.util.List;
 import java.util.Map;
@@ -18,19 +17,19 @@
      */
     boolean updatedownStorageCageDetails(DownStorageCageDetails details);
 
-    List<DownStorageCageDetails> getCacheLeisure();
+   // List<DownStorageCageDetails> getCacheLeisure();
 
     /**
      * @param start
      * @param end
      * @return 鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�
      */
-    List<DownStorageCageDetails> getCacheOut(int start, int end);
+  //  List<DownStorageCageDetails> getCacheOut(int start, int end);
 
     /**
      * @return 鏌ヨ绗煎瓙鍐呬俊鎭�
      */
-    List<Map> getCacheInfo();
+    List<Map<String, Object>> getCacheInfo();
 
 
     /**
@@ -38,7 +37,7 @@
      * @param width
      * @return 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿  鎵惧埌绌烘牸
      */
-    List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width);
+   // List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width);
 
     /**
      * @param start
@@ -50,6 +49,6 @@
     /**
      * @return 鏌ヨ绌烘牸瀛�
      */
-    List<DownStorageCageDetails> selectCacheEmpty2();
+   // List<DownStorageCageDetails> selectCacheEmpty2();
 
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java
index 81a88a8..7aea275 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageService.java
@@ -37,6 +37,30 @@
      * @return 鍑虹墖
      */
     boolean processOut();
+
+
+    /**
+     * @return 鎵惧埌绌烘牸瀛�
+     */
     List<DownStorageCageDetails> selectCacheEmpty() ;
 
+    /**
+     * @param downStorageCage
+     * @return 淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愬惎鐢�/绂佺敤銆�
+     */
+    boolean updateDownStorageCage(DownStorageCage downStorageCage);
+
+    /**
+     /**
+     *淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愭坊鍔�/鍒犻櫎/鏇存崲銆�
+     */
+    boolean updateDownStorageCageDetails(int downStorageCageId,DownStorageCageDetails downStorageCageDetails);
+
+    /**
+     * @return 鏌ヨ绗煎瓙淇℃伅
+     */
+    List<Map<String, Object>> selectDownStorageCages();
+
 }
+
+
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
index b5c01ee..c10e337 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
@@ -1,6 +1,5 @@
 package com.mes.downstorage.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.github.yulichang.query.MPJQueryWrapper;
 
 
@@ -13,22 +12,21 @@
 
 import com.mes.downstorage.mapper.DownStorageCageMapper;
 import com.mes.downstorage.service.DownStorageCageDetailsService;
-import com.mes.glassinfo.entity.GlassInfo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.Resource;
 import java.util.List;
 import java.util.Map;
 @Slf4j
 @Service
 public class DownStorageCageDetailsServiceImpl extends ServiceImpl<DownStorageCageDetailsMapper, DownStorageCageDetails> implements DownStorageCageDetailsService {
 
-    @Autowired
+    @Autowired(required=false)
     private DownStorageCageMapper downStorageCageMapper;
     @Autowired
     private DownStorageCageDetailsMapper downStorageCageDetailsMapper;
+
     @Override
     public void addDownStorageCageDetails(DownStorageCageDetails details) {
         this.save(details);
@@ -74,80 +72,91 @@
 
 
 
-    @Override
-    public List<DownStorageCageDetails> getCacheOut(int start, int end) {
-        log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�");
-        return  downStorageCageMapper.selectJoinList(
-                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
-                        .select("escd.*")
-                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
-                        .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id")
-                        .leftJoin("glass_info gi on dw.flow_card_id = gi.flowcard_id  and gi.flowcard_id=escd.flow_card_id ")
-                        .isNotNull("escd.slot")
-                        .between("dw.workstation_id", start, end)
-                        .orderByDesc("escd.width")
-                        .orderByDesc("escd.height")
-        );
-    }
+
+
+//    @Override
+//    public List<DownStorageCageDetails> getCacheOut(int start, int end) {
+//        log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�");
+//        return  downStorageCageMapper.selectJoinList(
+//                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
+//                        .select("escd.*")
+//                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
+//                        .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id")
+//                        .leftJoin("glass_info gi on dw.flow_card_id = gi.flowcard_id  and gi.flowcard_id=escd.flow_card_id ")
+//                        .isNotNull("escd.slot")
+//                        .between("dw.workstation_id", start, end)
+//                        .orderByDesc("escd.width")
+//                        .orderByDesc("escd.height")
+//        );
+//    }
+
+
+//    @Override
+//    public List<DownStorageCageDetails> selectCacheEmpty2(){
+//        return  downStorageCageMapper.selectJoinList(
+//                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
+//                        .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height")
+//                        .leftJoin("down_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot")
+//                        .isNull("escd.slot")
+//        );
+//    }
 
 
     @Override
-    public List<DownStorageCageDetails> selectCacheEmpty2(){
-        return  downStorageCageMapper.selectJoinList(
-                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
-                        .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height")
-                        .leftJoin("down_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot")
-                        .isNull("escd.slot")
+    public List<Map<String, Object>> getCacheInfo() {
+        log.info("鏌ヨ绗煎瓙鍐呬俊鎭�");
+        return downStorageCageDetailsMapper.selectJoinMaps(JoinWrappers.lambda(DownStorageCageDetails.class) // 浣跨敤 JoinWrappers.lambda 鍒涘缓鑱斿悎鏌ヨ
+                .selectAll(DownStorageCageDetails.class) // 閫夋嫨鎵�鏈夊瓧娈�
+                .eq(DownStorageCage::getSlot, DownStorageCageDetails::getSlot) // 璁剧疆鍏宠仈鏉′欢
+                .orderByAsc(DownStorageCage::getSlot) // 鎸� slot 瀛楁鍗囧簭鎺掑簭
         );
     }
 
+//
+//    @Override
+//    public List<Map> getCacheInfo() {
+//        log.info(" 鏌ヨ绗煎瓙鍐呬俊鎭�");
+//        return downStorageCageMapper.selectJoinList(
+//                Map.class, new MPJQueryWrapper<DownStorageCage>()
+//                        .select("escd.*")
+//                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
+//                        .orderByAsc("t.slot")
+//        );
+//
+//    }
 
-    @Override
-    public List<Map> getCacheInfo() {
-        log.info(" 鏌ヨ绗煎瓙鍐呬俊鎭�");
-        return downStorageCageMapper.selectJoinList(
-                Map.class, new MPJQueryWrapper<DownStorageCage>()
-                        .select("escd.*")
-                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
-                        .orderByAsc("t.slot")
-        );
-
-    }
+//    @Override
+//    public List<DownStorageCageDetails> getCacheLeisure() {
+//        log.info(" 鏌ヨ绗煎瓙鍐呯┖闂�");
+//        List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList(
+//                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
+//                        .select("escd.*")
+//                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
+//                        .isNull("escd.slot")
+//
+//                        .orderByAsc("escd.slot")
+//        );
+//        return list;
+//    }
 
 
-
-    @Override
-    public List<DownStorageCageDetails> getCacheLeisure() {
-        log.info(" 鏌ヨ绗煎瓙鍐呯┖闂�");
-        List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList(
-                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
-                        .select("escd.*")
-                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
-                        .isNull("escd.slot")
-
-                        .orderByAsc("escd.slot")
-        );
-        return list;
-    }
-
-
-    @Override
-    public List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width) {
-        log.info("  鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿  鎵惧埌绌烘牸");
-
-        return downStorageCageMapper.selectJoinList(
-                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
-                        .select("escd.*")
-                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
-                        .isNull("escd.slot")
-                        .apply("t.remain_width - " + width + " > 0")
-                        .orderByAsc("escd.sequence")
-        );
-
-
-
-
-    }
+//    @Override
+//    public List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width) {
+//        log.info("  鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿  鎵惧埌绌烘牸");
+//
+//        return downStorageCageMapper.selectJoinList(
+//                DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>()
+//                        .select("escd.*")
+//                        .leftJoin("down_storage_cage_details escd on t.slot = escd.slot")
+//                        .isNull("escd.slot")
+//                        .apply("t.remain_width - " + width + " > 0")
+//                        .orderByAsc("escd.sequence")
+//        );
+//
+//
+//
+//
+//    }
 
 
 
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java
index d1a6673..d139f5f 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java
@@ -1,6 +1,7 @@
 package com.mes.downstorage.service.impl;
 
 import com.github.yulichang.toolkit.JoinWrappers;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import com.mes.common.PLCAutoMes;
 import com.mes.common.S7control;
 import com.mes.device.PlcParameterObject;
@@ -9,11 +10,13 @@
 import com.mes.downstorage.entity.DownStorageCage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.mes.downstorage.entity.DownStorageCageDetails;
+import com.mes.downstorage.mapper.DownStorageCageDetailsMapper;
 import com.mes.downstorage.mapper.DownStorageCageMapper;
 import com.mes.downstorage.service.DownStorageCageDetailsService;
 import com.mes.downstorage.service.DownStorageCageService;
 import com.mes.glassinfo.entity.GlassInfo;
 import com.mes.glassinfo.service.GlassInfoService;
+import com.mes.pp.entity.OptimizeDetail;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -33,7 +36,7 @@
 @Slf4j
 @Service
 public class DownStorageCageServiceImpl extends ServiceImpl<DownStorageCageMapper, DownStorageCage> implements DownStorageCageService {
-    @Autowired
+    @Autowired(required=false)
     private DownStorageCageMapper downStorageCageMapper;
 
     @Autowired
@@ -43,6 +46,9 @@
     private DownGlassTaskService downGlassTaskService;
     @Autowired
     private DownStorageCageDetailsService downStorageCageDetailsService;
+    @Autowired
+    private DownStorageCageDetailsMapper downStorageCageDetailsMapper;
+
 
 
 
@@ -101,10 +107,6 @@
             //鍚屾壘鍒板悓娴佺▼鍗¢檮杩戠┖鏍�
             List<DownStorageCageDetails> list = selectCacheEmpty();
 
-
-
-            //            list<Map> list=selectCacheEmpty();
-//            list<Map> = downStorageCageService.selectCacheEmpty();
             if (list.size() > 0) {
                 //瀛樺湪绌烘牸
                 //1.鐢熸垚浠诲姟锛�  璧峰浣嶇疆0   缁撴潫浣嶇疆this.slot  浠诲姟绫诲瀷 1   锛堣繘鐗囦换鍔★級
@@ -142,13 +144,11 @@
         // 鏌ヨ浠诲姟
 
 
-        PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
+       // PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
 
         List<DownStorageCageDetails> list = downStorageCageDetailsService.CacheOut(1, 5);
         List<DownStorageCageDetails> list2 = downStorageCageDetailsService.CacheOut(6, 10);
         List<DownStorageCageDetails> list3 = downStorageCageDetailsService.CacheOut(1, 10);
-        //鑷姩缁戝畾鏋跺瓙
-
 
 
 
@@ -183,8 +183,8 @@
             DownGlassTask downGlassTask =createDownGlassTask(item3,"0",endcell,"2");
             downGlassTaskService.insertCacheTask(downGlassTask);
 
-            S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell);
-            S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
+            //S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell);
+            //S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
             return true;
 
         }
@@ -197,8 +197,8 @@
 
             DownGlassTask downGlassTask =createDownGlassTask(item,"0","06","2");
             downGlassTaskService.insertCacheTask(downGlassTask);
-            S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "1");
-            S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
+           // S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "1");
+           // S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
             return true;
 
             // 鎸夌収澶у皬绗﹀悎鍚庣鍑虹墖
@@ -210,8 +210,8 @@
             DownGlassTask downGlassTask =createDownGlassTask(item2,"0","11","2");
             downGlassTaskService.insertCacheTask(downGlassTask);
 
-            S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "2");
-            S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
+           // S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "2");
+           // S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
             return true;
 
 
@@ -223,7 +223,7 @@
         return false;
     }
 
-
+        //鎵惧埌绌烘牸瀛�
     @Override
     public List<DownStorageCageDetails> selectCacheEmpty() {
         return baseMapper.selectJoinList(DownStorageCageDetails.class,
@@ -237,4 +237,64 @@
         );
     }
 
+
+    @Override
+    public List<Map<String, Object>> selectDownStorageCages() {
+        return baseMapper.selectJoinMaps(JoinWrappers.lambda(DownStorageCage.class)
+                .selectAll(DownStorageCage.class)
+                .selectAs(DownStorageCageDetails::getId, "esdId")
+                .select(DownStorageCageDetails::getGlassId, DownStorageCageDetails::getWidth, DownStorageCageDetails::getHeight, DownStorageCageDetails::getId)
+                .leftJoin(DownStorageCageDetails.class, on -> on
+                        .eq(DownStorageCageDetails::getDeviceId, DownStorageCage::getDeviceId)
+                        .eq(DownStorageCageDetails::getSlot, DownStorageCage::getSlot))
+        );
+
+    }
+
+    /**
+     * 淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愬惎鐢�/绂佺敤銆�
+     * @param downStorageCage
+     * @return
+     */
+    @Override
+    public boolean updateDownStorageCage(DownStorageCage downStorageCage){
+        DownStorageCage downItem=baseMapper.selectById(downStorageCage.getId());
+        downItem.setEnableState(downStorageCage.getEnableState());
+        baseMapper.updateById(downItem);
+        return true;
+    }
+
+    /**
+     *淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愭坊鍔�/鍒犻櫎/鏇存崲銆�
+     * @param downStorageCageId
+     * @param downStorageCageDetails
+     * @return
+     */
+    @Override
+    public boolean updateDownStorageCageDetails(int downStorageCageId,DownStorageCageDetails downStorageCageDetails){
+        DownStorageCage downItem=baseMapper.selectById(downStorageCageId);
+        log.info("姝e父"+downItem);
+        if(downStorageCageDetails !=null){
+            DownStorageCageDetails edgDItem=downStorageCageDetailsMapper.selectById(downStorageCageDetails.getId());
+            //娣诲姞
+            if(edgDItem!=null){
+                //鍙紶鏍煎瓙  锛氱Щ闄ょ幓鐠�
+                DownStorageCageDetails newresult=downStorageCageDetailsMapper.selectById(downStorageCageDetails.getId());
+                newresult.setSlot(downItem.getSlot());
+                downStorageCageDetailsMapper.updateById(newresult);
+            }
+        }
+
+        if (downItem!=null){
+            //绉婚櫎
+            DownStorageCageDetails result=downStorageCageDetailsMapper.selectOne(new MPJLambdaWrapper<DownStorageCageDetails>().eq(DownStorageCageDetails::getSlot,downStorageCageId));
+            if (result!=null){
+                result.setSlot(0);
+                downStorageCageDetailsMapper.updateById(result);
+            }
+
+        }
+        return true;
+    }
+
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java
index e9f6e7a..d242127 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstation.java
@@ -54,9 +54,15 @@
     private Integer workState;
 
 
+    /**
+     * 鎬绘暟閲�
+     */
     @TableField("total_quantity")
     private Integer totalquantity;
 
+    /**
+     * 钀芥灦鏁伴噺
+     */
     @TableField("racks_number")
     private Integer Racksnumber;
 
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java
index 7ac060a..29e8dfc 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/entity/DownWorkstationTask.java
@@ -56,7 +56,7 @@
      */
     private Integer state;
     /**
-     * 鐜荤拑
+     * 鐜荤拑ID
      */
     private String glassId;
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/mapper/DownWorkstationTaskMapper.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/mapper/DownWorkstationTaskMapper.java
index 3cdda74..b9b2df0 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/mapper/DownWorkstationTaskMapper.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/mapper/DownWorkstationTaskMapper.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.mes.downworkstation.entity.DownWorkstation;
 import com.mes.downworkstation.entity.DownWorkstationTask;
+import org.mapstruct.Mapper;
 
 import java.util.List;
 
@@ -15,7 +16,9 @@
  * @author zhoush
  * @since 2024-04-07
  */
+
 @DS("salve_hangzhoumes")
+@Mapper
 public interface DownWorkstationTaskMapper extends BaseMapper<DownWorkstationTask> {
 
     List<DownWorkstationTask> selectList();
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java
index a40bc9b..efb02ba 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/DownWorkstationTaskService.java
@@ -21,12 +21,14 @@
     void insertdownWorkstationtask(DownGlassInfo downGlassInfo);
 
     /**
-     * @param Id 鏇存柊浠诲姟鐘舵��
+     * @param downWorkstationTask 鏇存柊浠诲姟鐘舵��
      */
-    void updateTaskStateToZero(long Id);
+    void updateTaskStateToZero(DownWorkstationTask downWorkstationTask);
 
     /**
      * @return 鑾峰彇浠诲姟鐘舵�佷负1鐨勪俊鎭�
      */
     List<DownWorkstationTask> getTaskState();
+
+    void deleteTask(DownWorkstationTask downWorkstationTask);
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
index 5800c38..668caf6 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
@@ -32,7 +32,7 @@
 
     @Autowired
     private DownWorkstationMapper downWorkstationMapper;
-    @Autowired
+    @Autowired(required=false)
     private DownWorkstationTaskMapper downWorkstationTaskMapper;
     @Autowired
     private DownGlassInfoService downGlassInfoService;
@@ -52,13 +52,13 @@
 //鑾峰彇鎬绘暟閲�
     @Override
     public int getTotalQuantity(int workstationId) {
-        QueryWrapper<DownWorkstation> queryWrapper = new QueryWrapper<>();
-        queryWrapper.select("total_quantity")
-                .eq("workstation_id", workstationId);
+        DownWorkstation result = baseMapper.selectOne(new QueryWrapper<DownWorkstation>().lambda()
+                .select(DownWorkstation::getTotalquantity)
+                .eq(DownWorkstation::getWorkstationId, workstationId));
 
-        DownWorkstation result = baseMapper.selectOne(queryWrapper);
         return result != null ? result.getTotalquantity() : 0;
     }
+
 
     //宸ヤ綅鏄剧ず
     @Override
@@ -68,8 +68,8 @@
                 .leftJoin("down_glass_info b on t.flow_card_id = b.flow_card_id")
                 .groupBy("t.workstation_id", "t.flow_card_id");
 
-//        List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper);
-        List<DownWorkstionAndDownGlassinfo> workstationList = null;
+    List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper);
+       // List<DownWorkstionAndDownGlassinfo> workstationList = null;
         List<Map<String, Object>> result = new ArrayList<>();
         for (DownWorkstionAndDownGlassinfo downWorkstionAndDownGlassinfo : workstationList) {
             Map<String, Object> rack = new HashMap<>();
@@ -182,13 +182,14 @@
             for (DownGlassTask downGlassInfo : taskdownGlassInf) {
                 // 鍒涘缓鏂扮殑 DownGlassInfo 瀵硅薄骞惰缃浉鍏冲睘鎬�
                 DownGlassInfo newdownGlassInfo = new DownGlassInfo();
-
+//                newdownGlassInfo.setId(downGlassInfo.getId());
                 newdownGlassInfo.setFlowCardId(downGlassInfo.getFlowCardId());
                 Integer maxSequence = downGlassInfoService.getMaxSequenceByFlowCardId(downGlassInfo.getFlowCardId());
                 // 鍒濆鍖栭『搴忓瓧娈靛��
                 int sequence = maxSequence != null ? maxSequence + 1 : 1;
 //                newdownGlassInfo.setId(downGlassInfo.getId());
                 newdownGlassInfo.setWidth(downGlassInfo.getWidth());
+                newdownGlassInfo.setGlassId(downGlassInfo.getGlassId());
                 newdownGlassInfo.setHeight(downGlassInfo.getHeight());
                 newdownGlassInfo.setThickness(downGlassInfo.getThickness());
                 newdownGlassInfo.setFilmsid(downGlassInfo.getFilmsid());
@@ -198,12 +199,11 @@
                 // 鎻掑叆鏁版嵁鍒颁笅鐗囩幓鐠冧俊鎭〃
                 downGlassInfoService.insertDownGlassInfo(newdownGlassInfo);
                 //鎻掑叆鏁版嵁鍒版満姊版墜浠诲姟琛�
-
                 downWorkstationTaskService.insertdownWorkstationtask(newdownGlassInfo);
                 //鏇存柊涓嬬墖浠诲姟琛ㄧ姸鎬佷负0
-                downGlassTaskService.updateTaskStateToZero(downGlassInfo.getId());
+                downGlassTaskService.updateTaskStateToZero(downGlassInfo.getGlassId());
                 //鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
-                downGlassTaskService.deleteTask(downGlassInfo.getFlowCardId());
+                downGlassTaskService.deleteTask(downGlassInfo.getGlassId());
 
                 sequence++; // 閫掑椤哄簭瀛楁鍊�
 
@@ -222,9 +222,9 @@
                     DownWorkstation downWorkstation1 = selectByFlowCardId(downWorkstation.getFlowCardId());
                     updateracksnumber(downWorkstation.getFlowCardId(), downWorkstation1.getRacksnumber() + 1);
                     //鏇存柊鏈烘浠诲姟琛ㄤ腑鐘舵�佷负0
-                    downWorkstationTaskService.updateTaskStateToZero(downWorkstation.getId());
+                    downWorkstationTaskService.updateTaskStateToZero(downWorkstation);
                     //鍒犻櫎鏈烘浠诲姟琛�
-                    downWorkstationTaskService.removeById(downWorkstation.getId());
+                    downWorkstationTaskService.deleteTask(downWorkstation);
 
 
                 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java
index 01cf539..c54fa2b 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationTaskServiceImpl.java
@@ -1,6 +1,8 @@
 package com.mes.downworkstation.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.mes.downglassinfo.entity.DownGlassInfo;
@@ -33,7 +35,7 @@
         Long newId = (maxId == null) ? 1 : maxId + 1;
 
 
-        BeanUtils.copyProperties(entity,downGlassInfo);
+        BeanUtils.copyProperties(downGlassInfo,entity);
         entity.setId(newId); // 璁剧疆鎵嬪姩閫掑鐨� id
         entity.setState(1);
         baseMapper.insert(entity);
@@ -62,12 +64,24 @@
         queryWrapper.eq("state", 1);
         return baseMapper.selectList(queryWrapper);
     }
-    @Override
-    public void updateTaskStateToZero(long id) {
-        UpdateWrapper<DownWorkstationTask> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.set("state", 0).eq("id", id);
 
-        baseMapper.update(new DownWorkstationTask(), updateWrapper);
+    @Override
+    public void updateTaskStateToZero(DownWorkstationTask downWorkstationTask) {
+        LambdaUpdateWrapper<DownWorkstationTask> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
+
+        lambdaUpdateWrapper.set(DownWorkstationTask::getState, 0)
+                .eq(DownWorkstationTask::getGlassId, downWorkstationTask.getGlassId());
+
+        baseMapper.update(new DownWorkstationTask(), lambdaUpdateWrapper);
+    }
+
+
+    @Override
+    public void deleteTask(DownWorkstationTask downWorkstationTask) {
+        LambdaQueryWrapper<DownWorkstationTask> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(DownWorkstationTask::getGlassId, downWorkstationTask.getGlassId());
+
+        baseMapper.delete(queryWrapper);
     }
 
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/GlassInfoService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/GlassInfoService.java
index 7d16a94..2f827dc 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/GlassInfoService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/GlassInfoService.java
@@ -16,10 +16,22 @@
  */
 public interface GlassInfoService extends IService<GlassInfo> {
 
+    /**
+     * @param flowCardId
+     * @return 鏍规嵁娴佺▼鍗″彿鏌ヨ鐜荤拑淇℃伅
+     */
     int getGlassInfoCountByFlowCardId(String flowCardId);
 
+    /**
+     * @return
+     * 鏌ヨ鎵�鏈変笉鍚屾祦绋嬪崱鍙�
+     */
     List<Map<String, Object>> getFlowCardId();
 
+    /**
+     * @param id
+     * @return 鏍规嵁鐜荤拑id鏌ヨ鐜荤拑淇℃伅
+     */
     GlassInfo selectGlassId(String id);
 //    List<GlassInfo> getmaxglass(GlassInfo glassInfo);
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java
index a60db72..58bb4b0 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/glassinfo/service/impl/GlassInfoServiceImpl.java
@@ -24,34 +24,34 @@
 
     private GlassInfoMapper glassInfoMapper;
 
-    @Autowired
+    @Autowired(required=false)
     public GlassInfoServiceImpl(GlassInfoMapper glassInfoMapper) {
         this.glassInfoMapper = glassInfoMapper;
     }
 
     @Override
     public int getGlassInfoCountByFlowCardId(String flowCardId) {
-        QueryWrapper<GlassInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("flow_card_id", flowCardId);
-
-        return baseMapper.selectCount(queryWrapper);
+        return baseMapper.selectCount(new QueryWrapper<GlassInfo>().lambda()
+                .eq(GlassInfo::getFlowCardId, flowCardId));
     }
+
 
     @Override
     public List<Map<String, Object>> getFlowCardId() {
-        return baseMapper.selectMaps(new QueryWrapper<GlassInfo>().select("DISTINCT flow_card_id"));
+        return baseMapper.selectMaps(new QueryWrapper<GlassInfo>().lambda().select(GlassInfo::getFlowCardId).groupBy(GlassInfo::getFlowCardId));
     }
+
+
 
 
 
     @Override
     public GlassInfo selectGlassId(String id) {
-        QueryWrapper<GlassInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("glass_id", id);
-
-        return baseMapper.selectOne(queryWrapper);
+        return baseMapper.selectOne(new QueryWrapper<GlassInfo>().lambda()
+                .eq(GlassInfo::getGlassId, id));
     }
 
 
 
+
 }
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/tools/ExcelToJsonConverter.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/tools/ExcelToJsonConverter.java
index 8fbb58a..d5cc9c8 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/tools/ExcelToJsonConverter.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/tools/ExcelToJsonConverter.java
@@ -18,13 +18,13 @@
 public class ExcelToJsonConverter {
 
     public static void main(String[] args) {
-        String excelFilePath = "src/main/resources/JsonFile/alarm.xlsx";
+        String excelFilePath = "src/main/resources/JsonFile/PlcdownGlass.xlsx";
         String sheetName = "Sheet1";
         int addressColumnIndex = 0;
         int nameColumnIndex = 1;
 
         //int unitColumnIndex = 2;
-        String outputFilePath = "src/main/resources/JsonFile/PlcAlarm.json";
+        String outputFilePath = "src/main/resources/JsonFile/PlcdownGlass.json";
 
         try (Workbook workbook = new XSSFWorkbook(new FileInputStream(excelFilePath))) {
             Sheet sheet = workbook.getSheet(sheetName);
@@ -75,8 +75,8 @@
             LinkedHashMap<String, Object> resultObject = new LinkedHashMap<>();
             resultObject.put("plcAddressBegin", "DB100.0");
             resultObject.put("plcAddressLenght", String.valueOf(plcAddressLength));
-            // resultObject.put("dataType", "word");
-            resultObject.put("dataType", "bit");
+            resultObject.put("dataType", "word");
+           // resultObject.put("dataType", "bit");
             resultObject.put("parameteInfor", jsonList);
 
             Gson gson = new Gson();
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcAlarm.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcAlarm.json
deleted file mode 100644
index acfdad0..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcAlarm.json
+++ /dev/null
@@ -1,371 +0,0 @@
-{
-  "plcAddressBegin": "DB104.0.0",
-  "plcAddressLenght": "91",
-  "dataType": "bit",
-  "parameteInfor": [
-    {
-      "codeId": "D01VFDerror",
-      "addressIndex": 0
-    },
-    {
-      "codeId": "D02VFDerror",
-      "addressIndex": 1
-    },
-    {
-      "codeId": "D03VFDerror",
-      "addressIndex": 2
-    },
-    {
-      "codeId": "D04VFDerror",
-      "addressIndex": 3
-    },
-    {
-      "codeId": "D05VFDerror",
-      "addressIndex": 4
-    },
-    {
-      "codeId": "D06VFDerror",
-      "addressIndex": 5
-    },
-    {
-      "codeId": "B01VFDerror",
-      "addressIndex": 6
-    },
-    {
-      "codeId": "B02VFDerror",
-      "addressIndex": 7
-    },
-    {
-      "codeId": "A01VFDerror",
-      "addressIndex": 8
-    },
-    {
-      "codeId": "A02VFDerror",
-      "addressIndex": 9
-    },
-    {
-      "codeId": "A01servoturnerror",
-      "addressIndex": 10
-    },
-    {
-      "codeId": "A02servoturnerror",
-      "addressIndex": 11
-    },
-    {
-      "codeId": "A01servotravelerror",
-      "addressIndex": 12
-    },
-    {
-      "codeId": "A02servotravelerror",
-      "addressIndex": 13
-    },
-    {
-      "codeId": "B01servotravelerror",
-      "addressIndex": 14
-    },
-    {
-      "codeId": "B02servotravelerror",
-      "addressIndex": 15
-    },
-    {
-      "codeId": "D01DECerror",
-      "addressIndex": 16
-    },
-    {
-      "codeId": "D01poserror",
-      "addressIndex": 17
-    },
-    {
-      "codeId": "D02DECerror",
-      "addressIndex": 18
-    },
-    {
-      "codeId": "D02poserror",
-      "addressIndex": 19
-    },
-    {
-      "codeId": "D03DECerror",
-      "addressIndex": 20
-    },
-    {
-      "codeId": "D03poserror",
-      "addressIndex": 21
-    },
-    {
-      "codeId": "D04DECerror",
-      "addressIndex": 22
-    },
-    {
-      "codeId": "D04poserror",
-      "addressIndex": 23
-    },
-    {
-      "codeId": "D05DECerror",
-      "addressIndex": 24
-    },
-    {
-      "codeId": "D05poserror",
-      "addressIndex": 25
-    },
-    {
-      "codeId": "D06DECerror",
-      "addressIndex": 26
-    },
-    {
-      "codeId": "D06poserror",
-      "addressIndex": 27
-    },
-    {
-      "codeId": "A01DECerror",
-      "addressIndex": 28
-    },
-    {
-      "codeId": "A01poserror",
-      "addressIndex": 29
-    },
-    {
-      "codeId": "A02DECerror",
-      "addressIndex": 30
-    },
-    {
-      "codeId": "A02poserror",
-      "addressIndex": 31
-    },
-    {
-      "codeId": "B01INDECerror",
-      "addressIndex": 32
-    },
-    {
-      "codeId": "B01INposerror",
-      "addressIndex": 33
-    },
-    {
-      "codeId": "B01OUTDECerror",
-      "addressIndex": 34
-    },
-    {
-      "codeId": "B01OUTposerror",
-      "addressIndex": 35
-    },
-    {
-      "codeId": "B02INDECerror",
-      "addressIndex": 36
-    },
-    {
-      "codeId": "B02INposerror",
-      "addressIndex": 37
-    },
-    {
-      "codeId": "B02OUTDECerror",
-      "addressIndex": 38
-    },
-    {
-      "codeId": "B02OUTposerror",
-      "addressIndex": 39
-    },
-    {
-      "codeId": "D01Scanglassexceedinglimit",
-      "addressIndex": 40
-    },
-    {
-      "codeId": "emergencystopalarm",
-      "addressIndex": 41
-    },
-    {
-      "codeId": "Moreglassthanknown",
-      "addressIndex": 42
-    },
-    {
-      "codeId": "lessglassthanknown",
-      "addressIndex": 43
-    },
-    {
-      "codeId": "D01conveyortimeoutalarm",
-      "addressIndex": 44
-    },
-    {
-      "codeId": "D02conveyortimeoutalarm",
-      "addressIndex": 45
-    },
-    {
-      "codeId": "D03conveyortimeoutalarm",
-      "addressIndex": 46
-    },
-    {
-      "codeId": "D04conveyortimeoutalarm",
-      "addressIndex": 47
-    },
-    {
-      "codeId": "D05conveyortimeoutalarm",
-      "addressIndex": 48
-    },
-    {
-      "codeId": "D06conveyortimeoutalarm",
-      "addressIndex": 49
-    },
-    {
-      "codeId": "A01conveyortimeoutalarm",
-      "addressIndex": 50
-    },
-    {
-      "codeId": "A02conveyortimeoutalarm",
-      "addressIndex": 51
-    },
-    {
-      "codeId": "B01conveyortimeoutalarm",
-      "addressIndex": 52
-    },
-    {
-      "codeId": "B02conveyortimeoutalarm",
-      "addressIndex": 53
-    },
-    {
-      "codeId": "A01conveyorLeftsafetyalarm",
-      "addressIndex": 54
-    },
-    {
-      "codeId": "A01conveyorrightsafetyalarm",
-      "addressIndex": 55
-    },
-    {
-      "codeId": "A02conveyorLeftsafetyalarm",
-      "addressIndex": 56
-    },
-    {
-      "codeId": "A02conveyorrightsafetyalarm",
-      "addressIndex": 57
-    },
-    {
-      "codeId": "1#buffersafetyalarm",
-      "addressIndex": 58
-    },
-    {
-      "codeId": "2#buffersafetyalarm",
-      "addressIndex": 59
-    },
-    {
-      "codeId": "3#buffersafetyalarm",
-      "addressIndex": 60
-    },
-    {
-      "codeId": "4#buffersafetyalarm",
-      "addressIndex": 61
-    },
-    {
-      "codeId": "A01.SRrightinposerror",
-      "addressIndex": 62
-    },
-    {
-      "codeId": "A02.SRleftinposerror",
-      "addressIndex": 63
-    },
-    {
-      "codeId": "B01.SRleftinposerror",
-      "addressIndex": 64
-    },
-    {
-      "codeId": "B01.SRleftdecerror",
-      "addressIndex": 65
-    },
-    {
-      "codeId": "B01.SRrightdecerror",
-      "addressIndex": 66
-    },
-    {
-      "codeId": "B01.SRrightinposerror",
-      "addressIndex": 67
-    },
-    {
-      "codeId": "B02.SRleftinposerror",
-      "addressIndex": 68
-    },
-    {
-      "codeId": "B02.SRleftdecerror",
-      "addressIndex": 69
-    },
-    {
-      "codeId": "B02.SRrightdecerror",
-      "addressIndex": 70
-    },
-    {
-      "codeId": "B02.SRrightinposerror",
-      "addressIndex": 71
-    },
-    {
-      "codeId": "A01servoturnhomed",
-      "addressIndex": 72
-    },
-    {
-      "codeId": "A02servoturnhomed",
-      "addressIndex": 73
-    },
-    {
-      "codeId": "A01servotravelhomed",
-      "addressIndex": 74
-    },
-    {
-      "codeId": "A02servotravelhomed",
-      "addressIndex": 75
-    },
-    {
-      "codeId": "B01servotravelhomed",
-      "addressIndex": 76
-    },
-    {
-      "codeId": "B02servotravelhomed",
-      "addressIndex": 77
-    },
-    {
-      "codeId": "resetDelay",
-      "addressIndex": 78
-    },
-    {
-      "codeId": "A01travelNegativelimit",
-      "addressIndex": 79
-    },
-    {
-      "codeId": "A01travelPositivelimit",
-      "addressIndex": 80
-    },
-    {
-      "codeId": "A01turnuplimit",
-      "addressIndex": 81
-    },
-    {
-      "codeId": "A01turndownlimit",
-      "addressIndex": 82
-    },
-    {
-      "codeId": "A02travelNegativelimit",
-      "addressIndex": 83
-    },
-    {
-      "codeId": "A02travelPositivelimit",
-      "addressIndex": 84
-    },
-    {
-      "codeId": "A02turnuplimit",
-      "addressIndex": 85
-    },
-    {
-      "codeId": "A02turndownlimit",
-      "addressIndex": 86
-    },
-    {
-      "codeId": "B01travelNegativelimit",
-      "addressIndex": 87
-    },
-    {
-      "codeId": "B01travelPositivelimit",
-      "addressIndex": 88
-    },
-    {
-      "codeId": "B02travelNegativelimit",
-      "addressIndex": 89
-    },
-    {
-      "codeId": "B02travelPositivelimit",
-      "addressIndex": 90
-    }
-  ]
-}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcMes.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcMes.json
deleted file mode 100644
index ab5d4cd..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcMes.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
-   "plcAddressBegin":"DB105.0",
-   "plcAddressLenght":"12",
-   "dataType":"word",
-   "parameteInfor":[
-      {
-         "codeId": "OutActivate",
-         "addressIndex":"0",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-          "codeId": "Addgoal",
-          "addressIndex":"2",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"m/min"      
-       },
-       {
-          "codeId": "AddLength",
-          "addressIndex":"4",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"m/min"       
-       },
-       {
-          "codeId": "AddWidth",
-          "addressIndex":"6",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "AddCount",
-          "addressIndex":"8",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "OutStart",
-          "addressIndex":"10",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       }
-
-   ]
-}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcParameter.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcParameter.json
deleted file mode 100644
index afbe090..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcParameter.json
+++ /dev/null
@@ -1,610 +0,0 @@
-{
-   "plcAddressBegin":"DB100.0",
-   "plcAddressLenght":"198",
-   "dataType":"word",
-   "parameteInfor":[
-      {
-         "codeId": "conveyorVelocity(Max)",
-         "addressIndex":"0",
-         "addressLenght":"2",
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-          "codeId": "conveyorVelocity(AutoFAST)",
-          "addressIndex":"2",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"m/min"      
-       },
-       {
-          "codeId": "conveyorVelocity(AutoSLOW)",
-          "addressIndex":"4",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"m/min"       
-       },
-       {
-          "codeId": "conveyorVelocity(Manual)",
-          "addressIndex":"6",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "A01A02TURNJOGVelocity",
-          "addressIndex":"8",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "A01A02TRAVELJOGVelocity",
-          "addressIndex":"10",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "B01B02TRAVELJOGVelocity",
-          "addressIndex":"12",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "A01A02TURNPOSVelocityAUTO",
-          "addressIndex":"14",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "A01TURNPOSVelocitymanual",
-          "addressIndex":"16",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-         "codeId": "A01A02TRAVELPOSVelocityAUTO",
-         "addressIndex":"18",
-         "addressLenght":"2",
-         "ratio":"1",
-         "unit":"mm/S"
-      },
-     {
-       "codeId": "A01TRAVELPOSVelocitymanual",
-       "addressIndex":"20",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm/S"
-     },
-     {
-       "codeId": "B01B02TRAVELPOSVelocityAUTO",
-       "addressIndex":"22",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm/S"
-     },
-     {
-       "codeId": "B01TRAVELPOSVelocitymanual",
-       "addressIndex":"24",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm/S"
-     },
-     {
-       "codeId": "A01A02conveyorVelocity(Max)",
-       "addressIndex":"26",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "A01A02conveyorVelocity(AutoFAST)",
-       "addressIndex":"28",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "A01A02conveyorVelocity(AutoSLOW)",
-       "addressIndex":"30",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "B01B02conveyorVelocity(Manual)",
-       "addressIndex":"32",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "B01B02conveyorVelocity(Max)",
-       "addressIndex":"34",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "B01B02conveyorVelocity(AutoFAST)",
-       "addressIndex":"36",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "B01B02conveyorVelocity(AutoSLOW)",
-       "addressIndex":"38",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "B01B02conveyorVelocity(Manual)",
-       "addressIndex":"40",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"m/min"
-     },
-     {
-       "codeId": "gridspacing",
-       "addressIndex":"42",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A01Spliceaddresssetting",
-       "addressIndex":"44",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A02Spliceaddresssetting",
-       "addressIndex":"46",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A011#gridaddress",
-       "addressIndex":"48",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0122#gridaddress",
-       "addressIndex":"50",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0143#gridaddress",
-       "addressIndex":"52",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0164#gridaddress",
-       "addressIndex":"54",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0185#gridaddress",
-       "addressIndex":"56",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A01106#gridaddress",
-       "addressIndex":"58",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A01127#gridaddress",
-       "addressIndex":"60",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A01148#gridaddress",
-       "addressIndex":"62",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A01169#gridaddress",
-       "addressIndex":"64",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A01190#gridaddress",
-       "addressIndex":"66",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A021#gridaddress",
-       "addressIndex":"68",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0222#gridaddress",
-       "addressIndex":"70",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0243#gridaddress",
-       "addressIndex":"72",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0264#gridaddress",
-       "addressIndex":"74",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A0285#gridaddress",
-       "addressIndex":"76",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A02106#gridaddress",
-       "addressIndex":"78",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A02127#gridaddress",
-       "addressIndex":"80",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A02148#gridaddress",
-       "addressIndex":"82",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A02169#gridaddress",
-       "addressIndex":"84",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A02190#gridaddress",
-       "addressIndex":"86",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B011#gridaddress",
-       "addressIndex":"88",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B0122#gridaddress",
-       "addressIndex":"90",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B0143#gridaddress",
-       "addressIndex":"92",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B0164#gridaddress",
-       "addressIndex":"94",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B0185#gridaddress",
-       "addressIndex":"96",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B02106#gridaddress",
-       "addressIndex":"98",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B02127#gridaddress",
-       "addressIndex":"100",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B02148#gridaddress",
-       "addressIndex":"102",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B02169#gridaddress",
-       "addressIndex":"104",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "B02190#gridaddress",
-       "addressIndex":"106",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"mm"
-     },
-     {
-       "codeId": "A01Targetgrid(Manual)",
-       "addressIndex":"108",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": " A02Targetgrid(Manual)",
-       "addressIndex":"110",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "B01Targetgrid(Manual)",
-       "addressIndex":"112",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "B02Targetgrid(Manual)",
-       "addressIndex":"114",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "A01turnTargetAngle(Manual)",
-       "addressIndex":"116",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A02turnTargetAngle(Manual)",
-       "addressIndex":"118",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A01turnAngle1",
-       "addressIndex":"120",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A01turnAngle2",
-       "addressIndex":"122",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A01turnAngle3",
-       "addressIndex":"124",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A01turnAngle4",
-       "addressIndex":"126",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A02turnAngle1",
-       "addressIndex":"128",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A02turnAngle2",
-       "addressIndex":"130",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A02turnAngle3",
-       "addressIndex":"132",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "A02turnAngle4",
-       "addressIndex":"134",
-       "addressLenght":"2",
-       "ratio":"1",
-       "unit":"掳"
-     },
-     {
-       "codeId": "Minimumglasslength",
-       "addressIndex":"136",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Minimumglassheight",
-       "addressIndex":"138",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Maximumglasslength",
-       "addressIndex":"140",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Maximumglassheight",
-       "addressIndex":"142",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "A01cellsGlassNum",
-       "addressIndex":"144",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "A02cellsGlassNum",
-       "addressIndex":"146",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "A01ID",
-       "addressIndex":"148",
-       "addressLenght":"14",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "A02ID",
-       "addressIndex":"162",
-       "addressLenght":"14",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "A02TRAVELPOSVelocitymanual",
-       "addressIndex":"176",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "B02TRAVELPOSVelocitymanual",
-       "addressIndex":"178",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Startingpositionofthefeedca",
-       "addressIndex":"180",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Targetpositionofthefeedcar",
-       "addressIndex":"182",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Lengthofincomingglass",
-       "addressIndex":"184",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Widthofincomingglass",
-       "addressIndex":"186",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     },
-     {
-       "codeId": "Startingpositionoftheexitcar",
-       "addressIndex":"188",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     }, {
-       "codeId": "Exitcartargetposition",
-       "addressIndex":"190",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     }
-     , {
-       "codeId": "A02TURNPOSVelocitymanual",
-       "addressIndex":"192",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     }
-     , {
-       "codeId": "A01delayTime",
-       "addressIndex":"194",
-       "addressLenght":"2",
-       "ratio":"1"
-
-     }
-
-
-   ]
-}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcRead.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcRead.json
deleted file mode 100644
index f3ebb33..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcRead.json
+++ /dev/null
@@ -1,195 +0,0 @@
-{
-   "plcAddressBegin": "DB106.0",
-   "plcAddressLenght": "66",
-   "dataType": "word",
-   "parameteInfor": [{
-         "codeId": "A01Position",
-         "addressIndex": "0",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A01FlipPosition",
-         "addressIndex": "2",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A01QuestStartPosition",
-         "addressIndex": "4",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A01EndPosition",
-         "addressIndex": "6",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "FeedCarStatus",
-         "addressIndex": "8",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A02QuestOver",
-         "addressIndex": "10",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A02Position",
-         "addressIndex": "12",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A02FlipPosition",
-         "addressIndex": "14",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A02QuestStartPosition",
-         "addressIndex": "16",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A02EndPosition",
-         "addressIndex": "18",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "ExitCarStatus",
-         "addressIndex": "20",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "A02QuestOver",
-         "addressIndex": "22",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "FeedRequest",
-         "addressIndex": "24",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "FeedID",
-         "addressIndex": "26",
-         "addressLenght":"14", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B01Position",
-         "addressIndex": "40",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B01QuestPosition",
-         "addressIndex": "42",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B01CurrentTaskMode",
-         "addressIndex": "44",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B01CarStatus",
-         "addressIndex": "46",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B01CarTaskStatus",
-         "addressIndex": "48",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B02Position",
-         "addressIndex": "50",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B02CarCurrentTask",
-         "addressIndex": "52",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B02CurrentTaskMode",
-         "addressIndex": "54",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B02CarStatus",
-         "addressIndex": "56",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B02CarSaskStatus",
-         "addressIndex": "58",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B01CompleteTheReport",
-         "addressIndex": "60",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "B02CompleteTheReport",
-         "addressIndex": "62",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-         "codeId": "OutRequest",
-         "addressIndex": "64",
-         "addressLenght":"2", 
-         "ratio":"1",
-         "unit":"m/min"    
-      }
-   ]
-}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcSign.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcSign.json
deleted file mode 100644
index 8f9295a..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcSign.json
+++ /dev/null
@@ -1,460 +0,0 @@
-{
-  "plcAddressBegin": "DB102.0.0",
-  "plcAddressLenght": "112",
-  "dataType": "bit",
-  "parameteInfor": [
-    {
-      "codeId": "D01.SRdec",
-      "addressIndex": 0
-    },
-    {
-      "codeId": "D01.SRinpos",
-      "addressIndex": 1
-    },
-    {
-      "codeId": "D02.SRdec",
-      "addressIndex": 2
-    },
-    {
-      "codeId": "D02.SRinpos",
-      "addressIndex": 3
-    },
-    {
-      "codeId": "D03.SRinto",
-      "addressIndex": 4
-    },
-    {
-      "codeId": "D03.SRdec",
-      "addressIndex": 5
-    },
-    {
-      "codeId": "D03.SRinpos",
-      "addressIndex": 6
-    },
-    {
-      "codeId": "D04.SRdec",
-      "addressIndex": 7
-    },
-    {
-      "codeId": "D04.SRinpos",
-      "addressIndex": 8
-    },
-    {
-      "codeId": "D05.SRdec",
-      "addressIndex": 9
-    },
-    {
-      "codeId": "D05.SRinpos",
-      "addressIndex": 10
-    },
-    {
-      "codeId": "D06.SRdec",
-      "addressIndex": 11
-    },
-    {
-      "codeId": "D06.SRinpos",
-      "addressIndex": 12
-    },
-    {
-      "codeId": "B01.SRindec",
-      "addressIndex": 13
-    },
-    {
-      "codeId": "B01.SRininpos",
-      "addressIndex": 14
-    },
-    {
-      "codeId": "B01.SRoutdec",
-      "addressIndex": 15
-    },
-    {
-      "codeId": "B01.SRoutinpos",
-      "addressIndex": 16
-    },
-    {
-      "codeId": "B01.SRturnon",
-      "addressIndex": 17
-    },
-    {
-      "codeId": "B01.SRturnoff",
-      "addressIndex": 18
-    },
-    {
-      "codeId": "B01.SRup",
-      "addressIndex": 19
-    },
-    {
-      "codeId": "B01.SRdown",
-      "addressIndex": 20
-    },
-    {
-      "codeId": "B02.SRoutdec",
-      "addressIndex": 21
-    },
-    {
-      "codeId": "B02.SRoutinpos",
-      "addressIndex": 22
-    },
-    {
-      "codeId": "B02.SRindec",
-      "addressIndex": 23
-    },
-    {
-      "codeId": "B02.SRininpos",
-      "addressIndex": 24
-    },
-    {
-      "codeId": "B02.SRturnon",
-      "addressIndex": 25
-    },
-    {
-      "codeId": "B02.SRturnoff",
-      "addressIndex": 26
-    },
-    {
-      "codeId": "B02.SRup",
-      "addressIndex": 27
-    },
-    {
-      "codeId": "B02.SRdown",
-      "addressIndex": 28
-    },
-    {
-      "codeId": "B01.SRinsafety",
-      "addressIndex": 29
-    },
-    {
-      "codeId": "B01.SRoutsafety",
-      "addressIndex": 30
-    },
-    {
-      "codeId": "B02.SRinsafety",
-      "addressIndex": 31
-    },
-    {
-      "codeId": "SB.start(+)",
-      "addressIndex": 32
-    },
-    {
-      "codeId": "SB.stop(-)",
-      "addressIndex": 33
-    },
-    {
-      "codeId": "SB.reset",
-      "addressIndex": 34
-    },
-    {
-      "codeId": "SB.auto/manul",
-      "addressIndex": 35
-    },
-    {
-      "codeId": "D01.SB.confirm",
-      "addressIndex": 36
-    },
-    {
-      "codeId": "SB.emg",
-      "addressIndex": 37
-    },
-    {
-      "codeId": "D01.SB.start",
-      "addressIndex": 38
-    },
-    {
-      "codeId": "D06.SB.start",
-      "addressIndex": 39
-    },
-    {
-      "codeId": "B02.SRoutsafety",
-      "addressIndex": 40
-    },
-    {
-      "codeId": "SafetyDoor.requset",
-      "addressIndex": 41
-    },
-    {
-      "codeId": "SafetyDoor.confirm",
-      "addressIndex": 42
-    },
-    {
-      "codeId": "SafetyDoor.reset",
-      "addressIndex": 43
-    },
-    {
-      "codeId": "Sspce",
-      "addressIndex": 44
-    },
-    {
-      "codeId": "Sspce",
-      "addressIndex": 45
-    },
-    {
-      "codeId": "Sspce",
-      "addressIndex": 46
-    },
-    {
-      "codeId": "Sspce",
-      "addressIndex": 47
-    },
-    {
-      "codeId": "A01.SRleftdec",
-      "addressIndex": 48
-    },
-    {
-      "codeId": "A01.SRleftinpos",
-      "addressIndex": 49
-    },
-    {
-      "codeId": "A01.SRleftsafety",
-      "addressIndex": 50
-    },
-    {
-      "codeId": "A01.SRrightdec",
-      "addressIndex": 51
-    },
-    {
-      "codeId": "A01.SRrightinpos",
-      "addressIndex": 52
-    },
-    {
-      "codeId": "A01.SRrightsafety",
-      "addressIndex": 53
-    },
-    {
-      "codeId": "A01.SRturnhome",
-      "addressIndex": 54
-    },
-    {
-      "codeId": "A01.SRturnup",
-      "addressIndex": 55
-    },
-    {
-      "codeId": "A01.SRturndown",
-      "addressIndex": 56
-    },
-    {
-      "codeId": "A01.SRtravelhome",
-      "addressIndex": 57
-    },
-    {
-      "codeId": "A01.SRtravelleftdec",
-      "addressIndex": 58
-    },
-    {
-      "codeId": "A01.SRtravelleftlimit",
-      "addressIndex": 59
-    },
-    {
-      "codeId": "A01.SRtravelrightdec",
-      "addressIndex": 60
-    },
-    {
-      "codeId": "A01.SRtravelrightlimit",
-      "addressIndex": 61
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 62
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 63
-    },
-    {
-      "codeId": "A02.SRleftdec",
-      "addressIndex": 64
-    },
-    {
-      "codeId": "A02.SRleftinpos",
-      "addressIndex": 65
-    },
-    {
-      "codeId": "A02.SRleftsafety",
-      "addressIndex": 66
-    },
-    {
-      "codeId": "A02.SRrightdec",
-      "addressIndex": 67
-    },
-    {
-      "codeId": "A02.SRrightinpos",
-      "addressIndex": 68
-    },
-    {
-      "codeId": "A02.SRrightsafety",
-      "addressIndex": 69
-    },
-    {
-      "codeId": "A02.SRturnhome",
-      "addressIndex": 70
-    },
-    {
-      "codeId": "A02.SRturnup",
-      "addressIndex": 71
-    },
-    {
-      "codeId": "A02.SRturndown",
-      "addressIndex": 72
-    },
-    {
-      "codeId": "A02.SRtravelhome",
-      "addressIndex": 73
-    },
-    {
-      "codeId": "A02.SRtravelleftdec",
-      "addressIndex": 74
-    },
-    {
-      "codeId": "A02.SRtravelleftlimit",
-      "addressIndex": 75
-    },
-    {
-      "codeId": "A02.SRtravelrightdec",
-      "addressIndex": 76
-    },
-    {
-      "codeId": "A02.SRtravelrightlimit",
-      "addressIndex": 77
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 78
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 79
-    },
-    {
-      "codeId": "B01.SRorigin",
-      "addressIndex": 80
-    },
-    {
-      "codeId": "B01.SRleftlimit",
-      "addressIndex": 81
-    },
-    {
-      "codeId": "B01.SRrightlimit",
-      "addressIndex": 82
-    },
-    {
-      "codeId": "B02.SRorigin",
-      "addressIndex": 83
-    },
-    {
-      "codeId": "B02.SRleftlimit",
-      "addressIndex": 84
-    },
-    {
-      "codeId": "B02.SRrightlimit",
-      "addressIndex": 85
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 86
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 87
-    },
-    {
-      "codeId": "LED.red",
-      "addressIndex": 88
-    },
-    {
-      "codeId": "LED.green",
-      "addressIndex": 89
-    },
-    {
-      "codeId": "LED.yellow",
-      "addressIndex": 90
-    },
-    {
-      "codeId": "D01.LED.green",
-      "addressIndex": 91
-    },
-    {
-      "codeId": "D06.LED.green",
-      "addressIndex": 92
-    },
-    {
-      "codeId": "B01.YV.turn",
-      "addressIndex": 93
-    },
-    {
-      "codeId": "B01.YV.updown",
-      "addressIndex": 94
-    },
-    {
-      "codeId": "B01.YV.gassing",
-      "addressIndex": 95
-    },
-    {
-      "codeId": "B02.YV.turn",
-      "addressIndex": 96
-    },
-    {
-      "codeId": "B02.YV.updown",
-      "addressIndex": 97
-    },
-    {
-      "codeId": "B02.YV.gassing",
-      "addressIndex": 98
-    },
-    {
-      "codeId": "SafetyDoor.Led",
-      "addressIndex": 99
-    },
-    {
-      "codeId": "SafetyDoor.open",
-      "addressIndex": 100
-    },
-    {
-      "codeId": "D01SB.confirm",
-      "addressIndex": 101
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 102
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 103
-    },
-    {
-      "codeId": "A01oilPump",
-      "addressIndex": 104
-    },
-    {
-      "codeId": "A01motorCtr",
-      "addressIndex": 105
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 106
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 107
-    },
-    {
-      "codeId": "A02oilPump",
-      "addressIndex": 108
-    },
-    {
-      "codeId": "A02motorCtr",
-      "addressIndex": 109
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 110
-    },
-    {
-      "codeId": "space",
-      "addressIndex": 111
-    }
-    ,
-    {
-      "codeId": "space",
-      "addressIndex": 111
-    }
-  ]
-}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcState.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcState.json
deleted file mode 100644
index 595107e..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcState.json
+++ /dev/null
@@ -1,285 +0,0 @@
-{
-  "plcAddressBegin": "DB103.0",
-  "plcAddressLenght": "258",
-  "dataType": "word",
-  "parameteInfor": [
-    {
-      "codeId": "D01.State",
-      "addressIndex": "0",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "D02.State",
-      "addressIndex": "2",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B01.State",
-      "addressIndex": "4",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B02.State",
-      "addressIndex": "6",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A01.State",
-      "addressIndex": "8",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A02.State",
-      "addressIndex": "10",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "D03.State",
-      "addressIndex": "12",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "D04.State",
-      "addressIndex": "14",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "D05.State",
-      "addressIndex": "16",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "D06.State",
-      "addressIndex": "18",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A01tavelActualPosition",
-      "addressIndex": "20",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A01turnActualangle",
-      "addressIndex": "22",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A02tavelActualPosition",
-      "addressIndex": "24",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A02turnActualangle",
-      "addressIndex": "26",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B01tavelActualPosition",
-      "addressIndex": "28",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B02tavelActualPosition",
-      "addressIndex": "30",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A01CurrentGrid",
-      "addressIndex": "32",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A02CurrentGrid",
-      "addressIndex": "34",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B01CurrentGrid",
-      "addressIndex": "36",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B01TargetGrid",
-      "addressIndex": "38",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B02CurrentGrid",
-      "addressIndex": "40",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B02TargetGrid",
-      "addressIndex": "42",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "D01ID",
-      "addressIndex": "44",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "D02ID",
-      "addressIndex": "58",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "D03ID",
-      "addressIndex": "72",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "D04ID",
-      "addressIndex": "86",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "D05ID",
-      "addressIndex": "100",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "D06ID",
-      "addressIndex": "114",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "A01ID1",
-      "addressIndex": "128",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "A01ID2",
-      "addressIndex": "142",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "A02ID1",
-      "addressIndex": "156",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "A02ID2",
-      "addressIndex": "170",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "B01ID1",
-      "addressIndex": "184",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "B01ID2",
-      "addressIndex": "198",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "B02ID1",
-      "addressIndex": "212",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "B02ID2",
-      "addressIndex": "226",
-      "addressLenght": "14",
-      "unit": ""
-    },
-    {
-      "codeId": "A01conveyorFaultcodes",
-      "addressIndex": "240",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A01turnservoFaultcodes",
-      "addressIndex": "242",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A01travelservoFaultcodes",
-      "addressIndex": "244",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A02conveyorFaultcodes",
-      "addressIndex": "246",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A02turnservoFaultcodes",
-      "addressIndex": "248",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "A02travelservoFaultcodes",
-      "addressIndex": "250",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B01travelservoFaultcodes",
-      "addressIndex": "252",
-      "addressLenght": "2",
-      "unit": ""
-    },
-    {
-      "codeId": "B02travelservoFaultcodes",
-      "addressIndex": "254",
-      "addressLenght": "2",
-      "unit": ""
-    }
-    ,
-    {
-      "codeId": "Scanningguns",
-      "addressIndex": "256",
-      "addressLenght": "2",
-      "unit": ""
-    }
-    ,
-    {
-      "codeId": "Frameid",
-      "addressIndex": "270",
-      "addressLenght": "2",
-      "unit": ""
-    }
-  ]
-}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcTest.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcTest.json
deleted file mode 100644
index 95a2010..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcTest.json
+++ /dev/null
@@ -1,378 +0,0 @@
-{
-  "plcAddressBegin": "DB101.0.0",
-  "plcAddressLenght": "93",
-  "dataType": "bit",
-  "parameteInfor": [
-    {
-      "codeId": "D01VFDconveyor",
-      "addressIndex": 0
-    },
-    {
-      "codeId": "D02VFDconveyor",
-      "addressIndex": 1
-    },
-    {
-      "codeId": "D03VFDconveyor",
-      "addressIndex": 2
-    },
-    {
-      "codeId": "D04VFDconveyor",
-      "addressIndex": 3
-    },
-    {
-      "codeId": "D05VFDconveyor",
-      "addressIndex": 4
-    },
-    {
-      "codeId": "D06VFDconveyor",
-      "addressIndex": 5
-    },
-    {
-      "codeId": "A01VFDconveyor",
-      "addressIndex": 6
-    },
-    {
-      "codeId": "A02VFDconveyor",
-      "addressIndex": 7
-    },
-    {
-      "codeId": "B01VFDconveyor",
-      "addressIndex": 8
-    },
-    {
-      "codeId": "B02VFDconveyor",
-      "addressIndex": 9
-    },
-    {
-      "codeId": "A01SERVETURN",
-      "addressIndex": 10
-    },
-    {
-      "codeId": "A02SERVETURN",
-      "addressIndex": 11
-    },
-    {
-      "codeId": "A01SERVETRAVEL",
-      "addressIndex": 12
-    },
-    {
-      "codeId": "A02SERVETRAVEL",
-      "addressIndex": 13
-    },
-    {
-      "codeId": "B01SERVETRAVEL",
-      "addressIndex": 14
-    },
-    {
-      "codeId": "B02SERVETRAVEL",
-      "addressIndex": 15
-    },
-    {
-      "codeId": "A01SERVETURNPOS",
-      "addressIndex": 16
-    },
-    {
-      "codeId": "A02SERVETURNPOS",
-      "addressIndex": 17
-    },
-    {
-      "codeId": "A01SERVETRAVELPOS",
-      "addressIndex": 18
-    },
-    {
-      "codeId": "A02SERVETRAVELPOS",
-      "addressIndex": 19
-    },
-    {
-      "codeId": "B01SERVETRAVELPOS",
-      "addressIndex": 20
-    },
-    {
-      "codeId": "B02SERVETRAVELPOS",
-      "addressIndex": 21
-    },
-    {
-      "codeId": "B01YVTURN",
-      "addressIndex": 22
-    },
-    {
-      "codeId": "B01YVUPDOWN",
-      "addressIndex": 23
-    },
-    {
-      "codeId": "B02YVTURN",
-      "addressIndex": 24
-    },
-    {
-      "codeId": "B02YVUPDOWN",
-      "addressIndex": 25
-    },
-    {
-      "codeId": "B01YVGassing",
-      "addressIndex": 26
-    },
-    {
-      "codeId": "B02YVGassing",
-      "addressIndex": 27
-    },
-    {
-      "codeId": "A01VFDconveyorreverse",
-      "addressIndex": 28
-    },
-    {
-      "codeId": "A02VFDconveyorreverse",
-      "addressIndex": 29
-    },
-    {
-      "codeId": "A01SERVETURNreset",
-      "addressIndex": 30
-    },
-    {
-      "codeId": "A01SERVETURNhome",
-      "addressIndex": 31
-    },
-    {
-      "codeId": "A01SERVETRAVELreset",
-      "addressIndex": 32
-    },
-    {
-      "codeId": "A02SERVETURNreset",
-      "addressIndex": 33
-    },
-    {
-      "codeId": "A02SERVETURNhome",
-      "addressIndex": 34
-    },
-    {
-      "codeId": "A02SERVETRAVELreset",
-      "addressIndex": 35
-    },
-    {
-      "codeId": "B01SERVETRAVELreset",
-      "addressIndex": 36
-    },
-    {
-      "codeId": "B01SERVETRAVELhome",
-      "addressIndex": 37
-    },
-    {
-      "codeId": "B02SERVETRAVELreset",
-      "addressIndex": 38
-    },
-    {
-      "codeId": "B02SERVETRAVELhome",
-      "addressIndex": 39
-    },
-    {
-      "codeId": "Manualstoragestartup",
-      "addressIndex": 40
-    },
-    {
-      "codeId": "Manualoutputstartup",
-      "addressIndex": 41
-    },
-    {
-      "codeId": "A01oilpump",
-      "addressIndex": 42
-    },
-    {
-      "codeId": "A02oilpump",
-      "addressIndex": 43
-    },
-    {
-      "codeId": "A01get1#gridaddress",
-      "addressIndex": 44
-    },
-    {
-      "codeId": "A01get22#gridaddress",
-      "addressIndex": 45
-    },
-    {
-      "codeId": "A01get43#gridaddress",
-      "addressIndex": 46
-    },
-    {
-      "codeId": "A01get64#gridaddress",
-      "addressIndex": 47
-    },
-    {
-      "codeId": "A01get85#gridaddress",
-      "addressIndex": 48
-    },
-    {
-      "codeId": "A01get106#gridaddress",
-      "addressIndex": 49
-    },
-    {
-      "codeId": "A01get127#gridaddress",
-      "addressIndex": 50
-    },
-    {
-      "codeId": "A01get148#gridaddress",
-      "addressIndex": 51
-    },
-    {
-      "codeId": "A01get169#gridaddress",
-      "addressIndex": 52
-    },
-    {
-      "codeId": "A02get190#gridaddress",
-      "addressIndex": 53
-    },
-    {
-      "codeId": "A02get1#gridaddress",
-      "addressIndex": 54
-    },
-    {
-      "codeId": "A02get22#gridaddress",
-      "addressIndex": 55
-    },
-    {
-      "codeId": "A02get43#gridaddress",
-      "addressIndex": 56
-    },
-    {
-      "codeId": "A02get64#gridaddress",
-      "addressIndex": 57
-    },
-    {
-      "codeId": "A02get85#gridaddress",
-      "addressIndex": 58
-    },
-    {
-      "codeId": "A02get106#gridaddress",
-      "addressIndex": 59
-    },
-    {
-      "codeId": "A02get127#gridaddress",
-      "addressIndex": 60
-    },
-    {
-      "codeId": "A02get148#gridaddress",
-      "addressIndex": 61
-    },
-    {
-      "codeId": "A02get169#gridaddress",
-      "addressIndex": 62
-    },
-    {
-      "codeId": "A02get190#gridaddress",
-      "addressIndex": 63
-    },
-    {
-      "codeId": "B01get1#gridaddress",
-      "addressIndex": 64
-    },
-    {
-      "codeId": "B01get22#gridaddress",
-      "addressIndex": 65
-    },
-    {
-      "codeId": "B01get43#gridaddress",
-      "addressIndex": 66
-    },
-    {
-      "codeId": "B01get64#gridaddress",
-      "addressIndex": 67
-    },
-    {
-      "codeId": "B01get85#gridaddress",
-      "addressIndex": 68
-    },
-    {
-      "codeId": "B02get106#gridaddress",
-      "addressIndex": 69
-    },
-    {
-      "codeId": "B02get127#gridaddress",
-      "addressIndex": 70
-    },
-    {
-      "codeId": "B02get148#gridaddress",
-      "addressIndex": 71
-    },
-    {
-      "codeId": "B02get169#gridaddress",
-      "addressIndex": 72
-    },
-    {
-      "codeId": "B02get190#gridaddress",
-      "addressIndex": 73
-    },
-    {
-      "codeId": "D01IDClean",
-      "addressIndex": 74
-    },
-    {
-      "codeId": "D02IDClean",
-      "addressIndex": 75
-    },
-    {
-      "codeId": "D03IDClean",
-      "addressIndex": 76
-    },
-    {
-      "codeId": "D04IDClean",
-      "addressIndex": 77
-    },
-    {
-      "codeId": "D05IDClean",
-      "addressIndex": 78
-    },
-    {
-      "codeId": "D06IDClean",
-      "addressIndex": 79
-    },
-    {
-      "codeId": "A01IDClean",
-      "addressIndex": 80
-    },
-    {
-      "codeId": "A02IDClean",
-      "addressIndex": 81
-    },
-    {
-      "codeId": "B01IDClean",
-      "addressIndex": 82
-    },
-    {
-      "codeId": "B02IDClean",
-      "addressIndex": 83
-    },
-    {
-      "codeId": "abort/resumeTasks",
-      "addressIndex": 84
-    },
-    {
-      "codeId": "A01SERVETRAVELhome",
-      "addressIndex": 85
-    },
-    {
-      "codeId": "A02SERVETRAVELhome",
-      "addressIndex": 86
-    },
-    {
-      "codeId": "A01A02travelHoming",
-      "addressIndex": 87
-    },
-    {
-      "codeId": "A01halfAutoSelect",
-      "addressIndex": 88
-    },
-    {
-      "codeId": "A02halfAutoSelect",
-      "addressIndex": 89
-    },
-    {
-      "codeId": "A02abortTasks",
-      "addressIndex": 90
-    },
-    {
-      "codeId": "emgHMI",
-      "addressIndex": 91
-    },
-    {
-      "codeId": "Scanningmethod",
-      "addressIndex": 92
-  ]
-}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
new file mode 100644
index 0000000..d44cf10
--- /dev/null
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
@@ -0,0 +1,362 @@
+{
+  "plcAddressBegin": "DB100.0",
+  "plcAddressLenght": "142",
+  "dataType": "word",
+  "parameteInfor": [
+    {
+      "codeId": "RequestWord",
+      "addressIndex": "0",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G04ID",
+      "addressIndex": "2",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "4",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "6",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "8",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "10",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "12",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "14",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "16",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "18",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "MESSendingWord",
+      "addressIndex": "20",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "InputGrid",
+      "addressIndex": "22",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "OutputGrid",
+      "addressIndex": "24",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鍑虹墖ID",
+      "addressIndex": "26",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鍓嶇鍚庣涓嬬墖",
+      "addressIndex": "28",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "30",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "32",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "34",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "36",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "38",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "40",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "42",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "44",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "46",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "48",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "50",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "52",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "54",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "MES浠诲姟鐘舵��",
+      "addressIndex": "56",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "58",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鎶ヨ鐘舵��",
+      "addressIndex": "60",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鎶ヨ瀛�1",
+      "addressIndex": "62",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鎶ヨ瀛�2",
+      "addressIndex": "64",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鎶ヨ瀛�3",
+      "addressIndex": "66",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鎶ヨ瀛�4",
+      "addressIndex": "68",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "鍐呭",
+      "addressIndex": "70",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "璁惧鐘舵�佸瓧",
+      "addressIndex": "72",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "74",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "76",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "杈撳叆杈撳嚭1",
+      "addressIndex": "78",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "杈撳叆杈撳嚭2",
+      "addressIndex": "80",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "杈撳叆杈撳嚭3",
+      "addressIndex": "82",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "杈撳叆杈撳嚭4",
+      "addressIndex": "84",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "杈撳叆杈撳嚭5",
+      "addressIndex": "86",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "杈撳叆杈撳嚭6",
+      "addressIndex": "88",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "杈撳叆杈撳嚭7",
+      "addressIndex": "90",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "92",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "94",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "96",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "98",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "spare",
+      "addressIndex": "100",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G04鍔ㄤ綔鐘舵��",
+      "addressIndex": "102",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G05鍔ㄤ綔鐘舵��",
+      "addressIndex": "104",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G06鍔ㄤ綔鐘舵��",
+      "addressIndex": "106",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G07鍔ㄤ綔鐘舵��",
+      "addressIndex": "108",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G08鍔ㄤ綔鐘舵��",
+      "addressIndex": "110",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G09鍔ㄤ綔鐘舵��",
+      "addressIndex": "112",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G10鍔ㄤ綔鐘舵��",
+      "addressIndex": "114",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G11鍔ㄤ綔鐘舵��",
+      "addressIndex": "116",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G12鍔ㄤ綔鐘舵��",
+      "addressIndex": "118",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G13鍔ㄤ綔鐘舵��",
+      "addressIndex": "120",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G04ID",
+      "addressIndex": "122",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G05ID",
+      "addressIndex": "124",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G06ID",
+      "addressIndex": "126",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G07ID",
+      "addressIndex": "128",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G08ID",
+      "addressIndex": "130",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G09ID",
+      "addressIndex": "132",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G10ID",
+      "addressIndex": "134",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G11ID",
+      "addressIndex": "136",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G12ID",
+      "addressIndex": "138",
+      "addressLenght": "2"
+    },
+    {
+      "codeId": "G13ID",
+      "addressIndex": "140",
+      "addressLenght": "2"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/Plcframe.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/Plcframe.json
deleted file mode 100644
index c270227..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/Plcframe.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-   "plcAddressBegin":"DB17.0",
-   "plcAddressLenght":"40",
-   "dataType":"word",
-   "parameteInfor":[
-      {
-         "codeId": "E01id",  
-         "addressIndex":"0",
-         "addressLenght":"14", 
-         "ratio":"1",
-         "unit":"m/min"    
-      },
-      {
-          "codeId": "E01Quest",
-          "addressIndex":"16",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"m/min"      
-       },
-       {
-          "codeId": "E01Reply",
-          "addressIndex":"18",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"m/min"       
-       },
-       {
-          "codeId": "J01Quest",
-          "addressIndex":"20",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "J01id",
-          "addressIndex":"22",
-          "addressLenght":"14",
-          "ratio":"1",
-          "unit":"mm/S"
-       },
-       {
-          "codeId": "J01TurnGo",
-          "addressIndex":"38",
-          "addressLenght":"2",
-          "ratio":"1",
-          "unit":"mm/S"
-       }
-
-
-   ]
-}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/alarm.xlsx b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/alarm.xlsx
deleted file mode 100644
index 50b26dc..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/alarm.xlsx
+++ /dev/null
Binary files differ
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/sign.xlsx b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/sign.xlsx
deleted file mode 100644
index 3922301..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/sign.xlsx
+++ /dev/null
Binary files differ
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/test.xlsx b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/test.xlsx
deleted file mode 100644
index 9862cf5..0000000
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/test.xlsx
+++ /dev/null
Binary files differ
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
index a783463..b46da5e 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/test/java/mes/UnloadGlassModuleApplicationTest.java
@@ -10,6 +10,7 @@
 
 import com.mes.downworkstation.service.DownWorkstationService;
 import com.mes.downworkstation.service.impl.DownWorkstationServiceImpl;
+import com.mes.glassinfo.service.impl.GlassInfoServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -43,6 +44,10 @@
     DownStorageCageDetailsService downStorageCageDetailsService;
     @Autowired
     DownWorkstationServiceImpl downWorkstationServiceImpl;
+    @Autowired
+    GlassInfoServiceImpl glassInfoServiceImpl;
+    @Autowired
+    DownWorkstationService downWorkstationService;
 
     @Test
     public void testFindPath() {
@@ -51,21 +56,22 @@
 
     @Test
     public void testCacheGlass() {
-        List<Map> map = downStorageCageDetailsServiceImpl.getCacheInfo();
-        log.info("绗煎唴淇℃伅锛歿}", Arrays.asList(map));
+        //List<Map<String, Object>> map = downStorageCageServiceImpl.selectDownStorageCages();
+      //  log.info("绗煎唴淇℃伅锛歿}", Arrays.asList(map));
+        downStorageCageServiceImpl.updateDownStorageCageDetails(1,null);
     }
 
     @Test
     public void testselectCacheEmpty() {
-        List<DownStorageCageDetails> map = downStorageCageDetailsServiceImpl.getCacheLeisure();
-        log.info("绗煎唴绌烘牸锛歿}", Arrays.asList(map));
+       // List<DownStorageCageDetails> map = downStorageCageDetailsServiceImpl.getCacheLeisure();
+       // log.info("绗煎唴绌烘牸锛歿}", Arrays.asList(map));
     }
 
 
     @Test
     public void testgetCacheOut() {
-        List<DownStorageCageDetails> map = downStorageCageDetailsServiceImpl.getCacheOut(1, 5);
-        log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗囷細{}", Arrays.asList(map));
+       // List<DownStorageCageDetails> map = downStorageCageDetailsServiceImpl.getCacheOut(1, 5);
+      //  log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗囷細{}", Arrays.asList(map));
     }
 
 
@@ -79,7 +85,7 @@
     @Test
     public void testplc() {
         log.info("娴嬭瘯");
-        downWorkstationServiceImpl.insertdownglassinfo();
+        glassInfoServiceImpl.getGlassInfoCountByFlowCardId("NG24030702A01");
 
     }
 
@@ -88,7 +94,7 @@
     @Test
     public void testin2() {
         log.info("娴嬭瘯杩涚墖");
-        downStorageCageDetailsServiceImpl.getIsExistIntoCacheByflowcardid("NG2023005",500);
+        //downStorageCageDetailsServiceImpl.getIsExistIntoCacheByflowcardid("NG2023005",500);
 
     }
 
@@ -96,7 +102,7 @@
     @Test
     public void selectCacheEmpty() {
         log.info("娴嬭瘯杩涚墖");
-        downStorageCageDetailsServiceImpl.getCacheLeisure();
+        //downStorageCageDetailsServiceImpl.getCacheLeisure();
 
     }
 
@@ -111,7 +117,7 @@
     @Test
     public void getTotalGlassDimensionsByWorkstation() {
         log.info("宸ヤ綅鏄剧ず");
-        downWorkstationServiceImpl.getTotalGlassDimensionsByWorkstation();
+        downWorkstationService.getTotalGlassDimensionsByWorkstation();
 
     }
 
@@ -127,7 +133,7 @@
     public void updateTaskStateToZero() {
         log.info("鏇存柊鐘舵��0");
 
-        downGlassTaskServiceImpl.updateTaskStateToZero(3);
+        downGlassTaskServiceImpl.updateTaskStateToZero("3");
     }
 
 

--
Gitblit v1.8.0