From d426473660914f321ba593cf7f2203d4bb2d3d7c Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期二, 23 四月 2024 23:19:39 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes

---
 CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue                            |    4 
 CanadaMes-ui/src/views/home/index.vue                                               |  150 ++++++++++++++++--------
 CanadaMes-ui/package.json                                                           |    2 
 CanadaMes-ui/src/configuration/Positioning1.json                                    |    2 
 springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java    |   42 +++---
 CanadaMes-ui/package-lock.json                                                      |  136 +++++++++++++---------
 springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java         |    4 
 springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java |    4 
 8 files changed, 203 insertions(+), 141 deletions(-)

diff --git a/CanadaMes-ui/package-lock.json b/CanadaMes-ui/package-lock.json
index 124ad55..ce7559e 100644
--- a/CanadaMes-ui/package-lock.json
+++ b/CanadaMes-ui/package-lock.json
@@ -11,7 +11,6 @@
         "axios": "^0.19.2",
         "core-js": "^3.6.5",
         "element-ui": "^2.13.2",
-        "http-proxy-middleware": "^2.0.6",
         "js-cookie": "^3.0.1",
         "less": "^3.12.2",
         "less-loader": "^6.2.0",
@@ -28,6 +27,7 @@
         "babel-eslint": "^10.1.0",
         "eslint": "^6.7.2",
         "eslint-plugin-vue": "^6.2.2",
+        "http-proxy-middleware": "^3.0.0",
         "vue-template-compiler": "^2.6.11"
       }
     },
@@ -1475,7 +1475,7 @@
       "version": "1.19.0",
       "resolved": "https://registry.npm.taobao.org/@types/body-parser/download/@types/body-parser-1.19.0.tgz?cache=0&sync_timestamp=1613378063000&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fbody-parser%2Fdownload%2F%40types%2Fbody-parser-1.19.0.tgz",
       "integrity": "sha1-BoWzxH6zAG/+0RfN1VFkth+AU48=",
-      "devOptional": true,
+      "dev": true,
       "dependencies": {
         "@types/connect": "*",
         "@types/node": "*"
@@ -1485,7 +1485,7 @@
       "version": "3.4.34",
       "resolved": "https://registry.npm.taobao.org/@types/connect/download/@types/connect-3.4.34.tgz?cache=0&sync_timestamp=1613378229103&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fconnect%2Fdownload%2F%40types%2Fconnect-3.4.34.tgz",
       "integrity": "sha1-FwpAIjptZmAG2TyhKK8r6x2bGQE=",
-      "devOptional": true,
+      "dev": true,
       "dependencies": {
         "@types/node": "*"
       }
@@ -1504,7 +1504,7 @@
       "version": "4.17.17",
       "resolved": "https://registry.npmmirror.com/@types/express/-/express-4.17.17.tgz",
       "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==",
-      "devOptional": true,
+      "dev": true,
       "dependencies": {
         "@types/body-parser": "*",
         "@types/express-serve-static-core": "^4.17.33",
@@ -1516,7 +1516,7 @@
       "version": "4.17.36",
       "resolved": "https://registry.npmmirror.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.36.tgz",
       "integrity": "sha512-zbivROJ0ZqLAtMzgzIUC4oNqDG9iF0lSsAqpOD9kbs5xcIM3dTiyuHvBc7R8MtWBp3AAWGaovJa+wzWPjLYW7Q==",
-      "devOptional": true,
+      "dev": true,
       "dependencies": {
         "@types/node": "*",
         "@types/qs": "*",
@@ -1538,6 +1538,7 @@
       "version": "1.17.11",
       "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.11.tgz",
       "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==",
+      "dev": true,
       "dependencies": {
         "@types/node": "*"
       }
@@ -1562,7 +1563,7 @@
       "version": "1.3.2",
       "resolved": "https://registry.npm.taobao.org/@types/mime/download/@types/mime-1.3.2.tgz?cache=0&sync_timestamp=1613379303907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fmime%2Fdownload%2F%40types%2Fmime-1.3.2.tgz",
       "integrity": "sha1-k+Jb+e51/g/YC1lLxP6w6GIRG1o=",
-      "devOptional": true
+      "dev": true
     },
     "node_modules/@types/minimatch": {
       "version": "3.0.3",
@@ -1579,7 +1580,8 @@
     "node_modules/@types/node": {
       "version": "14.14.31",
       "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-14.14.31.tgz?cache=0&sync_timestamp=1613758409994&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.14.31.tgz",
-      "integrity": "sha1-cihr0z0TeqDRUtR+x8F2JWPTQFU="
+      "integrity": "sha1-cihr0z0TeqDRUtR+x8F2JWPTQFU=",
+      "dev": true
     },
     "node_modules/@types/normalize-package-data": {
       "version": "2.4.0",
@@ -1597,19 +1599,19 @@
       "version": "6.9.5",
       "resolved": "https://registry.npm.taobao.org/@types/qs/download/@types/qs-6.9.5.tgz",
       "integrity": "sha1-Q0cRvdSete5p2QwdZ8NUqajssYs=",
-      "devOptional": true
+      "dev": true
     },
     "node_modules/@types/range-parser": {
       "version": "1.2.3",
       "resolved": "https://registry.npm.taobao.org/@types/range-parser/download/@types/range-parser-1.2.3.tgz",
       "integrity": "sha1-fuMwunyq+5gJC+zoal7kQRWQTCw=",
-      "devOptional": true
+      "dev": true
     },
     "node_modules/@types/send": {
       "version": "0.17.1",
       "resolved": "https://registry.npmmirror.com/@types/send/-/send-0.17.1.tgz",
       "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==",
-      "devOptional": true,
+      "dev": true,
       "dependencies": {
         "@types/mime": "^1",
         "@types/node": "*"
@@ -1619,7 +1621,7 @@
       "version": "1.13.9",
       "resolved": "https://registry.npm.taobao.org/@types/serve-static/download/@types/serve-static-1.13.9.tgz",
       "integrity": "sha1-qs8oqFoF7imhH7fD6tk1rFbzPk4=",
-      "devOptional": true,
+      "dev": true,
       "dependencies": {
         "@types/mime": "^1",
         "@types/node": "*"
@@ -4948,9 +4950,9 @@
       "dev": true
     },
     "node_modules/debug": {
-      "version": "4.3.1",
-      "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.3.1.tgz?cache=0&sync_timestamp=1607566580543&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-4.3.1.tgz",
-      "integrity": "sha1-8NIpxQXgxtjEmsVT0bE9wYP2su4=",
+      "version": "4.3.4",
+      "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
+      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -6042,7 +6044,8 @@
     "node_modules/eventemitter3": {
       "version": "4.0.7",
       "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.7.tgz",
-      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8="
+      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8=",
+      "dev": true
     },
     "node_modules/events": {
       "version": "3.2.0",
@@ -6592,6 +6595,7 @@
       "version": "1.13.2",
       "resolved": "https://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.13.2.tgz",
       "integrity": "sha1-3XPI7/wScoulz0JZ12DqX7g+MUc=",
+      "dev": true,
       "engines": {
         "node": ">=4.0"
       },
@@ -7280,6 +7284,7 @@
       "version": "1.18.1",
       "resolved": "https://registry.npm.taobao.org/http-proxy/download/http-proxy-1.18.1.tgz",
       "integrity": "sha1-QBVB8FNIhLv5UmAzTnL4juOXZUk=",
+      "dev": true,
       "dependencies": {
         "eventemitter3": "^4.0.0",
         "follow-redirects": "^1.0.0",
@@ -7290,32 +7295,27 @@
       }
     },
     "node_modules/http-proxy-middleware": {
-      "version": "2.0.6",
-      "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz",
-      "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==",
+      "version": "3.0.0",
+      "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-3.0.0.tgz",
+      "integrity": "sha512-36AV1fIaI2cWRzHo+rbcxhe3M3jUDCNzc4D5zRl57sEWRAxdXYtw7FSQKYY6PDKssiAKjLYypbssHk+xs/kMXw==",
+      "dev": true,
       "dependencies": {
-        "@types/http-proxy": "^1.17.8",
+        "@types/http-proxy": "^1.17.10",
+        "debug": "^4.3.4",
         "http-proxy": "^1.18.1",
         "is-glob": "^4.0.1",
         "is-plain-obj": "^3.0.0",
-        "micromatch": "^4.0.2"
+        "micromatch": "^4.0.5"
       },
       "engines": {
-        "node": ">=12.0.0"
-      },
-      "peerDependencies": {
-        "@types/express": "^4.17.13"
-      },
-      "peerDependenciesMeta": {
-        "@types/express": {
-          "optional": true
-        }
+        "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
       }
     },
     "node_modules/http-proxy-middleware/node_modules/braces": {
       "version": "3.0.2",
       "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz",
       "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+      "dev": true,
       "dependencies": {
         "fill-range": "^7.0.1"
       },
@@ -7327,6 +7327,7 @@
       "version": "7.0.1",
       "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
       "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+      "dev": true,
       "dependencies": {
         "to-regex-range": "^5.0.1"
       },
@@ -7338,6 +7339,7 @@
       "version": "7.0.0",
       "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz",
       "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+      "dev": true,
       "engines": {
         "node": ">=0.12.0"
       }
@@ -7346,6 +7348,7 @@
       "version": "3.0.0",
       "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz",
       "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==",
+      "dev": true,
       "engines": {
         "node": ">=10"
       }
@@ -7354,6 +7357,7 @@
       "version": "4.0.5",
       "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz",
       "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+      "dev": true,
       "dependencies": {
         "braces": "^3.0.2",
         "picomatch": "^2.3.1"
@@ -7366,6 +7370,7 @@
       "version": "5.0.1",
       "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz",
       "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+      "dev": true,
       "dependencies": {
         "is-number": "^7.0.0"
       },
@@ -7989,6 +7994,7 @@
       "version": "2.1.1",
       "resolved": "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz",
       "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+      "devOptional": true,
       "engines": {
         "node": ">=0.10.0"
       }
@@ -8006,6 +8012,7 @@
       "version": "4.0.1",
       "resolved": "https://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz",
       "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=",
+      "devOptional": true,
       "dependencies": {
         "is-extglob": "^2.1.1"
       },
@@ -9971,6 +9978,7 @@
       "version": "2.3.1",
       "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz",
       "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+      "devOptional": true,
       "engines": {
         "node": ">=8.6"
       }
@@ -11231,7 +11239,8 @@
     "node_modules/requires-port": {
       "version": "1.0.0",
       "resolved": "https://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz",
-      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
+      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
+      "dev": true
     },
     "node_modules/resize-observer-polyfill": {
       "version": "1.5.1",
@@ -15579,7 +15588,7 @@
       "version": "1.19.0",
       "resolved": "https://registry.npm.taobao.org/@types/body-parser/download/@types/body-parser-1.19.0.tgz?cache=0&sync_timestamp=1613378063000&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fbody-parser%2Fdownload%2F%40types%2Fbody-parser-1.19.0.tgz",
       "integrity": "sha1-BoWzxH6zAG/+0RfN1VFkth+AU48=",
-      "devOptional": true,
+      "dev": true,
       "requires": {
         "@types/connect": "*",
         "@types/node": "*"
@@ -15589,7 +15598,7 @@
       "version": "3.4.34",
       "resolved": "https://registry.npm.taobao.org/@types/connect/download/@types/connect-3.4.34.tgz?cache=0&sync_timestamp=1613378229103&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fconnect%2Fdownload%2F%40types%2Fconnect-3.4.34.tgz",
       "integrity": "sha1-FwpAIjptZmAG2TyhKK8r6x2bGQE=",
-      "devOptional": true,
+      "dev": true,
       "requires": {
         "@types/node": "*"
       }
@@ -15608,7 +15617,7 @@
       "version": "4.17.17",
       "resolved": "https://registry.npmmirror.com/@types/express/-/express-4.17.17.tgz",
       "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==",
-      "devOptional": true,
+      "dev": true,
       "requires": {
         "@types/body-parser": "*",
         "@types/express-serve-static-core": "^4.17.33",
@@ -15620,7 +15629,7 @@
       "version": "4.17.36",
       "resolved": "https://registry.npmmirror.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.36.tgz",
       "integrity": "sha512-zbivROJ0ZqLAtMzgzIUC4oNqDG9iF0lSsAqpOD9kbs5xcIM3dTiyuHvBc7R8MtWBp3AAWGaovJa+wzWPjLYW7Q==",
-      "devOptional": true,
+      "dev": true,
       "requires": {
         "@types/node": "*",
         "@types/qs": "*",
@@ -15642,6 +15651,7 @@
       "version": "1.17.11",
       "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.11.tgz",
       "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==",
+      "dev": true,
       "requires": {
         "@types/node": "*"
       }
@@ -15666,7 +15676,7 @@
       "version": "1.3.2",
       "resolved": "https://registry.npm.taobao.org/@types/mime/download/@types/mime-1.3.2.tgz?cache=0&sync_timestamp=1613379303907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fmime%2Fdownload%2F%40types%2Fmime-1.3.2.tgz",
       "integrity": "sha1-k+Jb+e51/g/YC1lLxP6w6GIRG1o=",
-      "devOptional": true
+      "dev": true
     },
     "@types/minimatch": {
       "version": "3.0.3",
@@ -15683,7 +15693,8 @@
     "@types/node": {
       "version": "14.14.31",
       "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-14.14.31.tgz?cache=0&sync_timestamp=1613758409994&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.14.31.tgz",
-      "integrity": "sha1-cihr0z0TeqDRUtR+x8F2JWPTQFU="
+      "integrity": "sha1-cihr0z0TeqDRUtR+x8F2JWPTQFU=",
+      "dev": true
     },
     "@types/normalize-package-data": {
       "version": "2.4.0",
@@ -15701,19 +15712,19 @@
       "version": "6.9.5",
       "resolved": "https://registry.npm.taobao.org/@types/qs/download/@types/qs-6.9.5.tgz",
       "integrity": "sha1-Q0cRvdSete5p2QwdZ8NUqajssYs=",
-      "devOptional": true
+      "dev": true
     },
     "@types/range-parser": {
       "version": "1.2.3",
       "resolved": "https://registry.npm.taobao.org/@types/range-parser/download/@types/range-parser-1.2.3.tgz",
       "integrity": "sha1-fuMwunyq+5gJC+zoal7kQRWQTCw=",
-      "devOptional": true
+      "dev": true
     },
     "@types/send": {
       "version": "0.17.1",
       "resolved": "https://registry.npmmirror.com/@types/send/-/send-0.17.1.tgz",
       "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==",
-      "devOptional": true,
+      "dev": true,
       "requires": {
         "@types/mime": "^1",
         "@types/node": "*"
@@ -15723,7 +15734,7 @@
       "version": "1.13.9",
       "resolved": "https://registry.npm.taobao.org/@types/serve-static/download/@types/serve-static-1.13.9.tgz",
       "integrity": "sha1-qs8oqFoF7imhH7fD6tk1rFbzPk4=",
-      "devOptional": true,
+      "dev": true,
       "requires": {
         "@types/mime": "^1",
         "@types/node": "*"
@@ -18521,9 +18532,9 @@
       "dev": true
     },
     "debug": {
-      "version": "4.3.1",
-      "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.3.1.tgz?cache=0&sync_timestamp=1607566580543&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-4.3.1.tgz",
-      "integrity": "sha1-8NIpxQXgxtjEmsVT0bE9wYP2su4=",
+      "version": "4.3.4",
+      "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
+      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
       "dev": true,
       "requires": {
         "ms": "2.1.2"
@@ -19406,7 +19417,8 @@
     "eventemitter3": {
       "version": "4.0.7",
       "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.7.tgz",
-      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8="
+      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8=",
+      "dev": true
     },
     "events": {
       "version": "3.2.0",
@@ -19874,7 +19886,8 @@
     "follow-redirects": {
       "version": "1.13.2",
       "resolved": "https://registry.npm.taobao.org/follow-redirects/download/follow-redirects-1.13.2.tgz",
-      "integrity": "sha1-3XPI7/wScoulz0JZ12DqX7g+MUc="
+      "integrity": "sha1-3XPI7/wScoulz0JZ12DqX7g+MUc=",
+      "dev": true
     },
     "for-in": {
       "version": "1.0.2",
@@ -20438,6 +20451,7 @@
       "version": "1.18.1",
       "resolved": "https://registry.npm.taobao.org/http-proxy/download/http-proxy-1.18.1.tgz",
       "integrity": "sha1-QBVB8FNIhLv5UmAzTnL4juOXZUk=",
+      "dev": true,
       "requires": {
         "eventemitter3": "^4.0.0",
         "follow-redirects": "^1.0.0",
@@ -20445,21 +20459,24 @@
       }
     },
     "http-proxy-middleware": {
-      "version": "2.0.6",
-      "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz",
-      "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==",
+      "version": "3.0.0",
+      "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-3.0.0.tgz",
+      "integrity": "sha512-36AV1fIaI2cWRzHo+rbcxhe3M3jUDCNzc4D5zRl57sEWRAxdXYtw7FSQKYY6PDKssiAKjLYypbssHk+xs/kMXw==",
+      "dev": true,
       "requires": {
-        "@types/http-proxy": "^1.17.8",
+        "@types/http-proxy": "^1.17.10",
+        "debug": "^4.3.4",
         "http-proxy": "^1.18.1",
         "is-glob": "^4.0.1",
         "is-plain-obj": "^3.0.0",
-        "micromatch": "^4.0.2"
+        "micromatch": "^4.0.5"
       },
       "dependencies": {
         "braces": {
           "version": "3.0.2",
           "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz",
           "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+          "dev": true,
           "requires": {
             "fill-range": "^7.0.1"
           }
@@ -20468,6 +20485,7 @@
           "version": "7.0.1",
           "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
           "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+          "dev": true,
           "requires": {
             "to-regex-range": "^5.0.1"
           }
@@ -20475,17 +20493,20 @@
         "is-number": {
           "version": "7.0.0",
           "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz",
-          "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
+          "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+          "dev": true
         },
         "is-plain-obj": {
           "version": "3.0.0",
           "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz",
-          "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA=="
+          "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==",
+          "dev": true
         },
         "micromatch": {
           "version": "4.0.5",
           "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz",
           "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+          "dev": true,
           "requires": {
             "braces": "^3.0.2",
             "picomatch": "^2.3.1"
@@ -20495,6 +20516,7 @@
           "version": "5.0.1",
           "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz",
           "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+          "dev": true,
           "requires": {
             "is-number": "^7.0.0"
           }
@@ -20980,7 +21002,8 @@
     "is-extglob": {
       "version": "2.1.1",
       "resolved": "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz",
-      "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
+      "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+      "devOptional": true
     },
     "is-fullwidth-code-point": {
       "version": "3.0.0",
@@ -20992,6 +21015,7 @@
       "version": "4.0.1",
       "resolved": "https://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz",
       "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=",
+      "devOptional": true,
       "requires": {
         "is-extglob": "^2.1.1"
       }
@@ -22599,7 +22623,8 @@
     "picomatch": {
       "version": "2.3.1",
       "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz",
-      "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
+      "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+      "devOptional": true
     },
     "pify": {
       "version": "4.0.1",
@@ -23678,7 +23703,8 @@
     "requires-port": {
       "version": "1.0.0",
       "resolved": "https://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz",
-      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
+      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
+      "dev": true
     },
     "resize-observer-polyfill": {
       "version": "1.5.1",
diff --git a/CanadaMes-ui/package.json b/CanadaMes-ui/package.json
index 033f287..bdc3a7e 100644
--- a/CanadaMes-ui/package.json
+++ b/CanadaMes-ui/package.json
@@ -11,7 +11,6 @@
     "axios": "^0.19.2",
     "core-js": "^3.6.5",
     "element-ui": "^2.13.2",
-    "http-proxy-middleware": "^2.0.6",
     "js-cookie": "^3.0.1",
     "less": "^3.12.2",
     "less-loader": "^6.2.0",
@@ -28,6 +27,7 @@
     "babel-eslint": "^10.1.0",
     "eslint": "^6.7.2",
     "eslint-plugin-vue": "^6.2.2",
+    "http-proxy-middleware": "^3.0.0",
     "vue-template-compiler": "^2.6.11"
   },
   "eslintConfig": {
diff --git a/CanadaMes-ui/src/configuration/Positioning1.json b/CanadaMes-ui/src/configuration/Positioning1.json
index c25bda5..1313571 100644
--- a/CanadaMes-ui/src/configuration/Positioning1.json
+++ b/CanadaMes-ui/src/configuration/Positioning1.json
@@ -29,7 +29,7 @@
       "unit": "mm",
       "value":"0",
       "min":0,
-      "max":100
+      "max":1000
       
     }],
     
diff --git a/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue b/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
index 302a3d5..9004e62 100644
--- a/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
+++ b/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
@@ -67,11 +67,11 @@
           </div>
           <div class="button-row" style="display: flex; justify-content: space-between;">
             <div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
-              <el-button v-if="item.button && language === 'en-US'" :name="item.button.name" v-model="item.button.value"
+              <el-button v-if="item.button && language === 'en-US' && item.button.name !== 'NotZero'" :name="item.button.name" v-model="item.button.value"
                 :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'NotZero' && item.button.value === 0,'error-button3': item.button.name === 'Zero' && item.button.value ===1,'greenbutton': item.button.name !== 'NotZero' && item.button.name !== 'Fault' && item.button.value === 1 }"
                 @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
                   item.button.name }}</el-button>
-              <el-button v-if="item.button && language === 'zh-CN'" :name="item.button.name" v-model="item.button.value"
+              <el-button v-if="item.button && language === 'zh-CN' && item.button.name !== '鏈洖闆�'" :name="item.button.name" v-model="item.button.value"
                 :class="{ 'action-button': true, 'error-button': item.button.name === '鏁呴殰' && item.button.value === 1, 'error-button2': item.button.name === '鏈洖闆�' && item.button.value === 0,'error-button3': item.button.name === '宸插洖闆�' && item.button.value === 1,'greenbutton': item.button.name !== '鏈洖闆�' && item.button.name !== '鏁呴殰' && item.button.value === 1 }"
                 @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
                   item.button.name }}</el-button>
diff --git a/CanadaMes-ui/src/views/home/index.vue b/CanadaMes-ui/src/views/home/index.vue
index 2de9353..7f1f491 100644
--- a/CanadaMes-ui/src/views/home/index.vue
+++ b/CanadaMes-ui/src/views/home/index.vue
@@ -264,7 +264,8 @@
                 <el-button type="primary" @click="TaskStop(0)" :disabled="OutingQueue"
                     :class="StopTask == true ? 'hide' : ''">
                     {{ $t('Terminate Feeding') }}</el-button>
-                <el-button type="primary" @click="TaskStop(1)" :disabled="StopTask" :class="StopTask == true ? 'hide' : ''">
+                <el-button type="primary" @click="TaskStop(1)" :disabled="StopTask"
+                    :class="StopTask == true ? 'hide' : ''">
                     {{ $t('Terminate Outing') }}</el-button>
                 <el-button type="primary" @click="SoftEmergencyStop()" :disabled="SoftEmergencyStopState"
                     :class="SoftEmergencyStopState == true ? 'hide' : ''">
@@ -274,7 +275,8 @@
             </div>
             <div>
                 <el-table :data="this.tasklist1" border style="width: 100%">
-                    <el-table-column :min-width="180" prop="glassId" :label="$t('Outfeed glass barcode')"></el-table-column>
+                    <el-table-column :min-width="180" prop="glassId"
+                        :label="$t('Outfeed glass barcode')"></el-table-column>
                     <el-table-column :min-width="130" prop="cage" :label="$t('Cage No')"></el-table-column>
                     <el-table-column :min-width="130" prop="cell" :label="$t('Slot No')"></el-table-column>
                     <el-table-column :min-width="130" prop="orderId" :label="$t('Order No')"></el-table-column>
@@ -294,7 +296,8 @@
                     </el-table-column>
                 </el-table>
                 <el-table :data="this.tasklist2" border style="width: 100%">
-                    <el-table-column :min-width="180" prop="glassId" :label="$t('Infeed glass barcode')"></el-table-column>
+                    <el-table-column :min-width="180" prop="glassId"
+                        :label="$t('Infeed glass barcode')"></el-table-column>
                     <el-table-column :min-width="130" prop="cage" :label="$t('Cage No')"></el-table-column>
                     <el-table-column :min-width="130" prop="cell" :label="$t('Slot No')"></el-table-column>
                     <el-table-column :min-width="130" prop="orderId" :label="$t('Order No')"></el-table-column>
@@ -361,19 +364,28 @@
                 <div class="blocks-img2"></div>
                 <div class="blocks-img3"></div>
 
-                <div class="device" :style="'top: 25px;left: 1027px;background-color: ' + ShowDeviceList(0) + ';'">D01</div>
+                <div class="device" :style="'top: 25px;left: 1027px;background-color: ' + ShowDeviceList(0) + ';'">D01
+                </div>
                 <div class="device" :style="'top: 105px;left: 1027px;background-color: ' + ShowDeviceList(1) + ';'">D02
                 </div>
-                <div class="device" :style="'top: 102px;left: 605px;background-color: ' + ShowDeviceList(2) + ';'">B01</div>
-                <div class="device" :style="'top: 102px;left: 197px;background-color: ' + ShowDeviceList(3) + ';'">B02</div>
-                <div class="blocks-img" :style="'left:' + car2 + 'px;top:175px;background-color:' + ShowDeviceList(4) + ''">
+                <div class="device" :style="'top: 102px;left: 605px;background-color: ' + ShowDeviceList(2) + ';'">B01
+                </div>
+                <div class="device" :style="'top: 102px;left: 197px;background-color: ' + ShowDeviceList(3) + ';'">B02
+                </div>
+                <div class="blocks-img"
+                    :style="'left:' + car2 + 'px;top:175px;background-color:' + ShowDeviceList(4) + ''">
                     A01</div>
-                <div class="blocks-img" :style="'left:' + car1 + 'px;top:16px;background-color:' + ShowDeviceList(5) + ''">
+                <div class="blocks-img"
+                    :style="'left:' + car1 + 'px;top:16px;background-color:' + ShowDeviceList(5) + ''">
                     A02</div>
-                <div class="device" :style="'top: 108px;left: 150px;background-color: ' + ShowDeviceList(6) + ';'">D03</div>
-                <div class="device" :style="'top: 185px;left: 150px;background-color: ' + ShowDeviceList(7) + ';'">D04</div>
-                <div class="device" :style="'top: 262px;left: 150px;background-color: ' + ShowDeviceList(8) + ';'">D05</div>
-                <div class="device" :style="'top: 339px;left: 150px;background-color: ' + ShowDeviceList(9) + ';'">D06</div>
+                <div class="device" :style="'top: 108px;left: 150px;background-color: ' + ShowDeviceList(6) + ';'">D03
+                </div>
+                <div class="device" :style="'top: 185px;left: 150px;background-color: ' + ShowDeviceList(7) + ';'">D04
+                </div>
+                <div class="device" :style="'top: 262px;left: 150px;background-color: ' + ShowDeviceList(8) + ';'">D05
+                </div>
+                <div class="device" :style="'top: 339px;left: 150px;background-color: ' + ShowDeviceList(9) + ';'">D06
+                </div>
 
                 <div class="device" :style="'top: 395px;left: 90px;background-color: ;'">E01</div>
                 <div class="device" :style="'top: 395px;left: 243px;background-color: ;'">E02</div>
@@ -457,7 +469,8 @@
         <el-dialog :visible.sync="dialogFormVisible" :title="$t('Please confirm the glass information')">
             <el-form :model="form" label-width="100px" style="padding-right: 30px">
                 <el-form-item :label="$t('Barcode')">
-                    <el-input style="width:15%;" :placeholder="$t('Enter the glass barcode')" v-model="glassid"></el-input>
+                    <el-input style="width:15%;" :placeholder="$t('Enter the glass barcode')"
+                        v-model="glassid"></el-input>
                     <el-button type="primary" @click="showform(3)">{{ $t('Query') }}</el-button>
                 </el-form-item>
                 <el-form-item :label="$t('Barcode')">
@@ -493,7 +506,7 @@
                             $t('confirm') }}</el-button> -->
                     <el-button @click="FeedInglassid()" :style="{ display: confirm2 == true ? '' : 'none' }"
                         type="primary">{{
-                            $t('confirm') }}</el-button>
+                $t('confirm') }}</el-button>
                     <el-button @click="cancel()">{{ $t('cancel') }}</el-button>
                 </span>
             </template>
@@ -527,15 +540,15 @@
         <el-dialog :visible.sync="dialogFormVisible3" :title="$t('Cage Details')" top="5vh">
             <el-input style="width:15%;" :placeholder="$t('Enter the glass barcode')" v-model="cageglassid"></el-input>
             <el-button type="primary" @click="showcageinfo(1)">{{ $t('Query') }}</el-button>
-            <el-table :data="cageinfo.slice((currentPages - 1) * pagesizes, currentPages * pagesizes)" :height="700" border
-                style="width: 100%;overflow: auto;">
+            <el-table :data="cageinfo.slice((currentPages - 1) * pagesizes, currentPages * pagesizes)" :height="700"
+                border style="width: 100%;overflow: auto;">
                 <el-table-column :min-width="50" prop="cage" :label="$t('Cage No')"></el-table-column>
                 <el-table-column :min-width="50" prop="cell" :label="$t('Slot No')"></el-table-column>
                 <el-table-column :min-width="55" prop="tier" :label="$t('The Side')">
                     <template slot-scope='scope'>
                         {{
-                            scope.row.tier == 1 ? $t('Inside') : $t('Outside')
-                        }}
+                scope.row.tier == 1 ? $t('Inside') : $t('Outside')
+            }}
                     </template>
                 </el-table-column>
                 <el-table-column :min-width="145" prop="glassId" :label="$t('Barcode')"></el-table-column>
@@ -545,14 +558,16 @@
                 <el-table-column :min-width="80" prop="state" :label="$t('Glass State')">
                     <template slot-scope='scope'>
                         {{
-                            scope.row.state == 1 ? $t('Normal') : scope.row.state == 2 ? $t('Entering') : scope.row.state == 3 ?
-                                $t('Outing') : ""
-                        }}
+                scope.row.state == 1 ? $t('Normal') : scope.row.state == 2 ? $t('Entering') : scope.row.state ==
+                    3 ?
+                    $t('Outing') : ""
+            }}
                     </template>
                 </el-table-column>
                 <el-table-column :min-width="150" prop="lengthWidth" :label="$t('Dim')">
                     <template slot-scope='scope'>
-                        {{ scope.row.glassWidthMm }}{{ scope.row.glassWidthMm > 0 ? "*" : "" }}{{ scope.row.glassHeightMm }}
+                        {{ scope.row.glassWidthMm }}{{ scope.row.glassWidthMm > 0 ? "*" : "" }}{{
+                scope.row.glassHeightMm }}
                     </template>
                 </el-table-column>
 
@@ -601,10 +616,11 @@
                 <el-table-column prop="glasslength" :label="$t('Length')"></el-table-column>
                 <el-table-column prop="glassheight" :label="$t('Width')"></el-table-column>
             </el-table>
-            <el-pagination :style="'margin-top:-2px'" @size-change="handleSizeChange" @current-change="handleCurrentChange"
-                :pager-count="7" :current-page="currentPage" :page-sizes="[5, 10, 15, 20]" :page-size="pagesize"
-                layout="total, sizes, prev, pager, next, jumper" :total="GlassInfo.length > 0 ? GlassInfo.length : null"
-                background style="float: right; margin-top: 20px">
+            <el-pagination :style="'margin-top:-2px'" @size-change="handleSizeChange"
+                @current-change="handleCurrentChange" :pager-count="7" :current-page="currentPage"
+                :page-sizes="[5, 10, 15, 20]" :page-size="pagesize" layout="total, sizes, prev, pager, next, jumper"
+                :total="GlassInfo.length > 0 ? GlassInfo.length : null" background
+                style="float: right; margin-top: 20px">
             </el-pagination>
         </el-dialog>
         <el-dialog :visible.sync="dialogFormVisible5" :title="$t('Please confirm the glass information')">
@@ -616,19 +632,21 @@
                             {{ this.isConfirm == true ? $t('Not Allow') : $t('Allow') }}</el-button>
                     </el-form-item>
                     <el-form-item>
-                        {{ $t('Current State') }}:{{ this.Scanningmethod == false ? $t('Automatic') : $t('Hand Movement') }}
+                        {{ $t('Current State') }}:{{ this.Scanningmethod == false ? $t('Automatic') : $t('Hand
+                        Movement') }}
                         <el-button type="primary" @click="SwitchScanMethod()">{{ $t('Switch')
-                        }}</el-button>
+                            }}</el-button>
                     </el-form-item>
                     <el-form-item>
                         <el-input style="width:70%;" maxlength="13" :placeholder="$t('Enter the glass barcode')"
                             v-model="glassid1"></el-input>
                         <el-button type="primary" :disabled="!Scanningmethod" @click="WriteGlassID()">{{ $t('Add')
-                        }}</el-button>
+                            }}</el-button>
                     </el-form-item>
                     <el-form-item>
                         {{ $t('Barcode') }}:
-                        <el-input style="width:70%;" maxlength="14" :disabled="true" v-model="CurrrentGlassId"></el-input>
+                        <el-input style="width:70%;" maxlength="14" :disabled="true"
+                            v-model="CurrrentGlassId"></el-input>
                     </el-form-item>
                 </div>
                 <div style="display: flex;justify-content: space-around;">
@@ -740,8 +758,9 @@
             {{ this.isAllowQueue
                 == true ? $t('Start') : $t('Stop')
             }}
-            <el-button type="primary" @click="isAllowQueueState()" :disabled="!this.isAllowReordering">{{ this.isAllowQueue
-                == true ? $t('Stop') : $t('Start')
+            <el-button type="primary" @click="isAllowQueueState()" :disabled="!this.isAllowReordering">{{
+                this.isAllowQueue
+                    == true ? $t('Stop') : $t('Start')
             }}</el-button>
             <el-button type="primary" @click="showform7()">{{ $t('Add') }}</el-button>
             <label style="background-color:yellow;font-size: 23px;" for="">
@@ -761,9 +780,9 @@
                         <el-table-column :min-width="90" prop="state" :label="$t('Glass State')">
                             <template slot-scope='scope'>
                                 {{ scope.row.state == 0 ? $t('Waiting') : scope.row.state == 1 ? $t('Outing') :
-                                    scope.row.state
-                                        == 2
-                                        ? $t('Outed') : scope.row.state == 3 ? $t('Absent') : $t('Completed') }}
+                scope.row.state
+                    == 2
+                    ? $t('Outed') : scope.row.state == 3 ? $t('Absent') : $t('Completed') }}
                             </template>
                         </el-table-column>
                         <el-table-column prop="sequence" :label="$t('Sequence')"></el-table-column>
@@ -772,8 +791,8 @@
                                 <el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
                                     :disabled="!(!isAllowQueue && scope.row.state != 1 && scope.row.state != 2)"
                                     @click="CompleteQueue(scope.row.id, scope.row.barcode, scope.row.glassId)">{{
-                                        $t('Complete')
-                                    }}</el-button>
+                $t('Complete')
+            }}</el-button>
                             </template>
                         </el-table-column>
 
@@ -781,26 +800,27 @@
                             <template slot-scope='scope'>
                                 <el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
                                     :disabled="isAllowQueue" @click="deleteproductionqueueglass(scope.row.barcode)">{{
-                                        $t('Delete') }}</el-button>
+                $t('Delete') }}</el-button>
                             </template>
                         </el-table-column>
                     </el-table>
                 </div>
                 <div style="width:30%;" v-for="(item) in CurrentFrame" :key="item['barcode']">
                     <el-button style="margin-left: 42%;" type="primary" @click="FrameStateUpdate(item['barcode'])">{{
-                        $t('Next') }}</el-button>
+                $t('Next') }}</el-button>
                     <h1 style="font-size: 40px;text-align: center;">{{ $t('Current Frame') }}:{{ item['barcode'] }}</h1>
                     <h1 style="font-size: 30px;text-align: center;">
                         {{ item['flip'] == true ? $t('EXTERIQR OUT AND BYPASS TO THE LEFT')
-                            : $t('EXTERIQR OUT AND BYPASS TO THE RIGHT') }}
+                : $t('EXTERIQR OUT AND BYPASS TO THE RIGHT') }}
                     </h1>
-                    <h1 style="font-size: 30px;text-align: center;">{{ item['framewidthmm'] }}*{{ item['frameheightmm'] }}
+                    <h1 style="font-size: 30px;text-align: center;">{{ item['framewidthmm'] }}*{{ item['frameheightmm']
+                        }}
                     </h1>
 
                     <div class="frame" :style="'background-color: green;margin-top:30px;margin:0 auto;width: ' +
-                        FrameWidthHeight('before', item['framewidthmm'], item['frameheightmm'], item['position']) + 'px;height:' +
-                        FrameWidthHeight('after', item['framewidthmm'], item['frameheightmm'], item['position']) + 'px;'
-                        ">
+                FrameWidthHeight('before', item['framewidthmm'], item['frameheightmm'], item['position']) + 'px;height:' +
+                FrameWidthHeight('after', item['framewidthmm'], item['frameheightmm'], item['position']) + 'px;'
+                ">
                     </div>
                 </div>
             </div>
@@ -826,8 +846,9 @@
                 <el-table-column prop="storageCage.tier" :label="$t('The Side')">
                     <template slot-scope='scope'>
                         {{
-                            scope.row.storageCage == null ? "" : scope.row.storageCage.tier == 1 ? $t('Inside') : $t('Outside')
-                        }}
+                scope.row.storageCage == null ? "" : scope.row.storageCage.tier == 1 ? $t('Inside') :
+                    $t('Outside')
+            }}
                     </template>
                 </el-table-column>
 
@@ -1017,7 +1038,7 @@
                         const specialChars = /[^\w\s]/g;
                         this.CurrrentGlassId = obj.CurrrentGlassId[0].replace(specialChars, "");
                     }
-                    
+
                     //鏌ヨ褰撳墠閾濇淇℃伅
                     this.CurrentFrame = obj.CurrentFrame;
 
@@ -1105,6 +1126,7 @@
                     //鏄惁闇�瑕佹墜鍔ㄧ‘璁や笂鐗�
                     this.isConfirm = obj.isConfirm[0];
 
+
                     //鎵爜浣嶇幓鐠冧俊鎭�
                     if (obj.form3 != null && obj.form3 != "" && obj.state[0] == 1) {
                         this.form3 = obj.form3[0];
@@ -1115,9 +1137,9 @@
 
                     if (obj.form3 != null && obj.form3 != "" && obj.state[0] == 0) {
                         this.loadglassheight1 = 70;
-                        if (this.form5.glassId != obj.form3[0].glassId&&this.ManuallyInfeedGlass==false) {
+                        if (this.form5.glassId != obj.form3[0].glassId && this.ManuallyInfeedGlass == false) {
                             this.showform3();
-                            
+
                         }
                         this.form5 = obj.form3[0];
                         this.glassid1 = "";
@@ -1508,7 +1530,13 @@
                     if (res.data.message == 200) {
                         this.$message.success(this.$t('Operation successful'));
                         this.dialogFormVisible = false;
-                        this.glassid="";
+                        this.glassid = "";
+                        this.form = {
+                            orderId: "",
+                            glassId: "",
+                            height: "",
+                            width: ""
+                        };
                     }
                     else if (res.data.message == 400) {
                         this.$message.error(this.$t('The glass size is not within the range'));
@@ -1525,11 +1553,27 @@
         },
         //鍚敤//鐞嗙墖绗肩鐢�
         UpdateDisabled(cage, cell, disabled) {
-            Disabled(cage, cell, disabled).then(res => {
-                if (res.data.message == 200) {
-                    this.$message.success(this.$t('Operation successful'));
+            this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
+                inputType: 'password',
+                inputPlaceholder: this.$t('Please enter the password'),
+                confirmButtonText: this.$t('Yes'),
+                cancelButtonText: this.$t('No'),
+                type: 'warning'
+            }).then(({ value }) => {
+                if (this.password == value) {
+                    Disabled(cage, cell, disabled).then(res => {
+                        if (res.data.message == 200) {
+                            this.$message.success(this.$t('Operation successful'));
+                        }
+                    });
                 }
+            }).catch(() => {
+                this.$message({
+                    type: 'info',
+                    message: this.$t('Operation canceled')
+                });
             });
+
         },
         //鍒犻櫎鍑虹墖闃熷垪鐜荤拑
         deleteproductionqueueglass(id) {
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
index f7eff5d..4b555fa 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
@@ -63,9 +63,6 @@
             JSONObject jsonObject = new JSONObject();
             try {
                 Thread.sleep(1000);
-
-                String s1=S7controlalbia.getinstance().readStrings("DB14.38");
-                String s2=S7controlalbia.getinstance().readStrings("DB14.40");
                 // 娉ㄥ叆mapper
                 homeMapper = WebSocketServer.applicationContext.getBean(HomeMapper.class);
                 spianMapper = WebSocketServer.applicationContext.getBean(SpianMapper.class);
@@ -274,7 +271,6 @@
                     boolean D01ResponseState = D01respnse.contains((short) 1);
                     // jsonObject.append("D01RequestState", D01RequestState);
                     // 鑷姩杩涚墖
-                    isConfirm = true;
                     if (isConfirm == true && form3.getglassId() != null && form3.getglassId() != "") {
                         if ((form3.getglassheight() < 380 || form3.getglasswidth() < 390
                                 || form3.getglassheight() > 1810
diff --git a/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java b/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
index 92f2554..4c99b4b 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
@@ -17,31 +17,27 @@
         //
         System.out.println("鍚姩瀹屾垚");
 
-          new PlcHold().start();
-        // new PLCAutoMes().start();
+         new PlcHoldNew().start();
+         new Plchome().start(); 
+         new PlcLayout().start();
+         new Plcalarm().start();
+         new Plcsign().start();
+         new Plcstate().start();
+         new PlcPositioning1().start();
+         new PlcParameter2().start();
+         new PLCAutomaticParameterSetting().start();
+         new PlcManualonePosition().start();
+         new PlcManualonePosition2().start();
+         new PlcServoManualone().start();
+         new PLCManualJog().start();
+         new Plclog().start();
 
-        // new Plchome().start();
-        //  new PlcLayout().start();
-        //  new Plcalarm().start();
 
-        //  new Plcsign().start();
-
-        //  new Plcstate().start();
-        //  new PlcPositioning1().start();
-
-        //  new PlcParameter2().start();
-        //  new PLCAutomaticParameterSetting().start();
-
-        //  new PlcManualonePosition().start();
-        //  new PlcManualonePosition2().start();
-        //  new PlcServoManualone().start();
-        //  new PLCManualJog().start();
-        //  new Plclog().start();
-
+         
         //  new PlcInteractionState().start();
-        //new PlcParameter1Review().start();
-        //new PLCAutomaticParameterSettingReview2().start();
-
-    // new PLCManualJogReview().start();
+        //  new PlcParameter1Review().start();
+        //  new PLCAutomaticParameterSettingReview2().start();
+        //  new PLCManualJogReview().start();
+        
     }
 }
\ No newline at end of file
diff --git a/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java b/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
index 7a28788..40b94de 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
@@ -181,7 +181,7 @@
       north_glass_buffer1 north_glass_buffer1 = jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(glassid, "", "");
       String flip = jdbcConnections.SelectFlipByFrameBarcode(north_glass_buffer1.getFrameBarcode());
 
-      if (flip != null) {
+      if (flip != null&&flip != "") {
         String position = jdbcConnections.SelectPositionByFrameBarcode(north_glass_buffer1.getFrameBarcode());
         if (position != null) {
           String framelength = jdbcConnections.SelectFrameLengthByFrameBarcode(north_glass_buffer1.getFrameBarcode());
@@ -363,7 +363,7 @@
     return Result.success(map);
   }
 
-  // 淇敼鍑虹墖闃熷垪鐘舵�佷笌鍑虹墖闃熷垪璋冨簭
+  // 淇槸鍚﹂渶瑕佺‘璁�
   @PostMapping("/isConfirmStates")
   public Result isConfirmStates(Boolean isConfirmStates) {
     Plchome.isConfirm = isConfirmStates;

--
Gitblit v1.8.0