From 8e69e4edb047e384aa7b74e82fa7b33f2eb5a4e5 Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期二, 12 九月 2023 08:40:42 +0800
Subject: [PATCH] 跨域 修改

---
 CanadaMes-ui/src/utils/request.js                                                      |    3 
 CanadaMes-ui/vue.config.js                                                             |    1 
 CanadaMes-ui/src/router/index.js                                                       |    3 
 CanadaMes-ui/.env                                                                      |    2 
 springboot-vue3/springboot-vue3.iml                                                    |    4 
 CanadaMes-ui/src/layout/index.vue                                                      |    3 
 /dev/null                                                                              |   13 
 CanadaMes-ui/package.json                                                              |    1 
 springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter.java       |    5 
 springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java       |    6 
 springboot-vue3/.idea/misc.xml                                                         |    3 
 springboot-vue3/pom.xml                                                                |    9 
 springboot-vue3/src/main/resources/application.properties                              |    9 
 springboot-vue3/.idea/artifacts/springboot_vue3_war_exploded.xml                       |  150 +++++++
 springboot-vue3/src/main/resources/sql/canadames.sql                                   |  537 +++++++++++++++++++++++++++-
 CanadaMes-ui/package-lock.json                                                         |  320 ++++++++++++----
 springboot-vue3/.idea/artifacts/springboot_vue3_war.xml                                |   14 
 springboot-vue3/src/main/java/com/example/springboot/AuthorityApplication.java         |    2 
 springboot-vue3/src/main/java/com/example/springboot/component/Plcaction.java          |    6 
 springboot-vue3/src/main/java/com/example/springboot/controller/DefaultController.java |    7 
 20 files changed, 957 insertions(+), 141 deletions(-)

diff --git a/CanadaMes-ui/.env b/CanadaMes-ui/.env
index 6bc3d03..a5fd3e6 100644
--- a/CanadaMes-ui/.env
+++ b/CanadaMes-ui/.env
@@ -1 +1 @@
-VUE_APP_BASE_API=/api
+VUE_APP_BASE_API=/api
\ No newline at end of file
diff --git a/CanadaMes-ui/package-lock.json b/CanadaMes-ui/package-lock.json
index 8a2960a..4409180 100644
--- a/CanadaMes-ui/package-lock.json
+++ b/CanadaMes-ui/package-lock.json
@@ -11,6 +11,7 @@
         "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",
@@ -1474,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=",
-      "dev": true,
+      "devOptional": true,
       "dependencies": {
         "@types/connect": "*",
         "@types/node": "*"
@@ -1484,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=",
-      "dev": true,
+      "devOptional": true,
       "dependencies": {
         "@types/node": "*"
       }
@@ -1500,26 +1501,27 @@
       }
     },
     "node_modules/@types/express": {
-      "version": "4.17.11",
-      "resolved": "https://registry.npm.taobao.org/@types/express/download/@types/express-4.17.11.tgz?cache=0&sync_timestamp=1613378493388&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fexpress%2Fdownload%2F%40types%2Fexpress-4.17.11.tgz",
-      "integrity": "sha1-3r48qm+OX82pa0e9VOL0DE7llUU=",
-      "dev": true,
+      "version": "4.17.17",
+      "resolved": "https://registry.npmmirror.com/@types/express/-/express-4.17.17.tgz",
+      "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==",
+      "devOptional": true,
       "dependencies": {
         "@types/body-parser": "*",
-        "@types/express-serve-static-core": "^4.17.18",
+        "@types/express-serve-static-core": "^4.17.33",
         "@types/qs": "*",
         "@types/serve-static": "*"
       }
     },
     "node_modules/@types/express-serve-static-core": {
-      "version": "4.17.18",
-      "resolved": "https://registry.npm.taobao.org/@types/express-serve-static-core/download/@types/express-serve-static-core-4.17.18.tgz",
-      "integrity": "sha1-g3HiYPQODhygwRapr82UJvoJTEA=",
-      "dev": true,
+      "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,
       "dependencies": {
         "@types/node": "*",
         "@types/qs": "*",
-        "@types/range-parser": "*"
+        "@types/range-parser": "*",
+        "@types/send": "*"
       }
     },
     "node_modules/@types/glob": {
@@ -1533,10 +1535,9 @@
       }
     },
     "node_modules/@types/http-proxy": {
-      "version": "1.17.5",
-      "resolved": "https://registry.npm.taobao.org/@types/http-proxy/download/@types/http-proxy-1.17.5.tgz",
-      "integrity": "sha1-wgPF5uncaCDSekDrHlEccKIgQj0=",
-      "dev": true,
+      "version": "1.17.11",
+      "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.11.tgz",
+      "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==",
       "dependencies": {
         "@types/node": "*"
       }
@@ -1561,7 +1562,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=",
-      "dev": true
+      "devOptional": true
     },
     "node_modules/@types/minimatch": {
       "version": "3.0.3",
@@ -1578,8 +1579,7 @@
     "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=",
-      "dev": true
+      "integrity": "sha1-cihr0z0TeqDRUtR+x8F2JWPTQFU="
     },
     "node_modules/@types/normalize-package-data": {
       "version": "2.4.0",
@@ -1597,19 +1597,29 @@
       "version": "6.9.5",
       "resolved": "https://registry.npm.taobao.org/@types/qs/download/@types/qs-6.9.5.tgz",
       "integrity": "sha1-Q0cRvdSete5p2QwdZ8NUqajssYs=",
-      "dev": true
+      "devOptional": 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=",
-      "dev": true
+      "devOptional": 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,
+      "dependencies": {
+        "@types/mime": "^1",
+        "@types/node": "*"
+      }
     },
     "node_modules/@types/serve-static": {
       "version": "1.13.9",
       "resolved": "https://registry.npm.taobao.org/@types/serve-static/download/@types/serve-static-1.13.9.tgz",
       "integrity": "sha1-qs8oqFoF7imhH7fD6tk1rFbzPk4=",
-      "dev": true,
+      "devOptional": true,
       "dependencies": {
         "@types/mime": "^1",
         "@types/node": "*"
@@ -6032,8 +6042,7 @@
     "node_modules/eventemitter3": {
       "version": "4.0.7",
       "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.7.tgz",
-      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8=",
-      "dev": true
+      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8="
     },
     "node_modules/events": {
       "version": "3.2.0",
@@ -6583,7 +6592,6 @@
       "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"
       },
@@ -7272,7 +7280,6 @@
       "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",
@@ -7283,18 +7290,87 @@
       }
     },
     "node_modules/http-proxy-middleware": {
-      "version": "0.19.1",
-      "resolved": "https://registry.npm.taobao.org/http-proxy-middleware/download/http-proxy-middleware-0.19.1.tgz",
-      "integrity": "sha1-GDx9xKoUeRUDBkmMIQza+WCApDo=",
-      "dev": true,
+      "version": "2.0.6",
+      "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz",
+      "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==",
       "dependencies": {
-        "http-proxy": "^1.17.0",
-        "is-glob": "^4.0.0",
-        "lodash": "^4.17.11",
-        "micromatch": "^3.1.10"
+        "@types/http-proxy": "^1.17.8",
+        "http-proxy": "^1.18.1",
+        "is-glob": "^4.0.1",
+        "is-plain-obj": "^3.0.0",
+        "micromatch": "^4.0.2"
       },
       "engines": {
-        "node": ">=4.0.0"
+        "node": ">=12.0.0"
+      },
+      "peerDependencies": {
+        "@types/express": "^4.17.13"
+      },
+      "peerDependenciesMeta": {
+        "@types/express": {
+          "optional": true
+        }
+      }
+    },
+    "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==",
+      "dependencies": {
+        "fill-range": "^7.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/http-proxy-middleware/node_modules/fill-range": {
+      "version": "7.0.1",
+      "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
+      "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+      "dependencies": {
+        "to-regex-range": "^5.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/http-proxy-middleware/node_modules/is-number": {
+      "version": "7.0.0",
+      "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz",
+      "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+      "engines": {
+        "node": ">=0.12.0"
+      }
+    },
+    "node_modules/http-proxy-middleware/node_modules/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==",
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/http-proxy-middleware/node_modules/micromatch": {
+      "version": "4.0.5",
+      "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz",
+      "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+      "dependencies": {
+        "braces": "^3.0.2",
+        "picomatch": "^2.3.1"
+      },
+      "engines": {
+        "node": ">=8.6"
+      }
+    },
+    "node_modules/http-proxy-middleware/node_modules/to-regex-range": {
+      "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==",
+      "dependencies": {
+        "is-number": "^7.0.0"
+      },
+      "engines": {
+        "node": ">=8.0"
       }
     },
     "node_modules/http-signature": {
@@ -7913,7 +7989,6 @@
       "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"
       }
@@ -7931,7 +8006,6 @@
       "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"
       },
@@ -9895,10 +9969,9 @@
       "dev": true
     },
     "node_modules/picomatch": {
-      "version": "2.2.2",
-      "resolved": "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.2.tgz",
-      "integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=",
-      "optional": true,
+      "version": "2.3.1",
+      "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz",
+      "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
       "engines": {
         "node": ">=8.6"
       }
@@ -11159,8 +11232,7 @@
     "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=",
-      "dev": true
+      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
     },
     "node_modules/resize-observer-polyfill": {
       "version": "1.5.1",
@@ -13754,6 +13826,21 @@
         "node": ">=0.10.0"
       }
     },
+    "node_modules/webpack-dev-server/node_modules/http-proxy-middleware": {
+      "version": "0.19.1",
+      "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz",
+      "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==",
+      "dev": true,
+      "dependencies": {
+        "http-proxy": "^1.17.0",
+        "is-glob": "^4.0.0",
+        "lodash": "^4.17.11",
+        "micromatch": "^3.1.10"
+      },
+      "engines": {
+        "node": ">=4.0.0"
+      }
+    },
     "node_modules/webpack-dev-server/node_modules/is-absolute-url": {
       "version": "3.0.3",
       "resolved": "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-3.0.3.tgz",
@@ -15501,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=",
-      "dev": true,
+      "devOptional": true,
       "requires": {
         "@types/connect": "*",
         "@types/node": "*"
@@ -15511,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=",
-      "dev": true,
+      "devOptional": true,
       "requires": {
         "@types/node": "*"
       }
@@ -15527,26 +15614,27 @@
       }
     },
     "@types/express": {
-      "version": "4.17.11",
-      "resolved": "https://registry.npm.taobao.org/@types/express/download/@types/express-4.17.11.tgz?cache=0&sync_timestamp=1613378493388&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fexpress%2Fdownload%2F%40types%2Fexpress-4.17.11.tgz",
-      "integrity": "sha1-3r48qm+OX82pa0e9VOL0DE7llUU=",
-      "dev": true,
+      "version": "4.17.17",
+      "resolved": "https://registry.npmmirror.com/@types/express/-/express-4.17.17.tgz",
+      "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==",
+      "devOptional": true,
       "requires": {
         "@types/body-parser": "*",
-        "@types/express-serve-static-core": "^4.17.18",
+        "@types/express-serve-static-core": "^4.17.33",
         "@types/qs": "*",
         "@types/serve-static": "*"
       }
     },
     "@types/express-serve-static-core": {
-      "version": "4.17.18",
-      "resolved": "https://registry.npm.taobao.org/@types/express-serve-static-core/download/@types/express-serve-static-core-4.17.18.tgz",
-      "integrity": "sha1-g3HiYPQODhygwRapr82UJvoJTEA=",
-      "dev": true,
+      "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,
       "requires": {
         "@types/node": "*",
         "@types/qs": "*",
-        "@types/range-parser": "*"
+        "@types/range-parser": "*",
+        "@types/send": "*"
       }
     },
     "@types/glob": {
@@ -15560,10 +15648,9 @@
       }
     },
     "@types/http-proxy": {
-      "version": "1.17.5",
-      "resolved": "https://registry.npm.taobao.org/@types/http-proxy/download/@types/http-proxy-1.17.5.tgz",
-      "integrity": "sha1-wgPF5uncaCDSekDrHlEccKIgQj0=",
-      "dev": true,
+      "version": "1.17.11",
+      "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.11.tgz",
+      "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==",
       "requires": {
         "@types/node": "*"
       }
@@ -15588,7 +15675,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=",
-      "dev": true
+      "devOptional": true
     },
     "@types/minimatch": {
       "version": "3.0.3",
@@ -15605,8 +15692,7 @@
     "@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=",
-      "dev": true
+      "integrity": "sha1-cihr0z0TeqDRUtR+x8F2JWPTQFU="
     },
     "@types/normalize-package-data": {
       "version": "2.4.0",
@@ -15624,19 +15710,29 @@
       "version": "6.9.5",
       "resolved": "https://registry.npm.taobao.org/@types/qs/download/@types/qs-6.9.5.tgz",
       "integrity": "sha1-Q0cRvdSete5p2QwdZ8NUqajssYs=",
-      "dev": true
+      "devOptional": 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=",
-      "dev": true
+      "devOptional": 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,
+      "requires": {
+        "@types/mime": "^1",
+        "@types/node": "*"
+      }
     },
     "@types/serve-static": {
       "version": "1.13.9",
       "resolved": "https://registry.npm.taobao.org/@types/serve-static/download/@types/serve-static-1.13.9.tgz",
       "integrity": "sha1-qs8oqFoF7imhH7fD6tk1rFbzPk4=",
-      "dev": true,
+      "devOptional": true,
       "requires": {
         "@types/mime": "^1",
         "@types/node": "*"
@@ -19319,8 +19415,7 @@
     "eventemitter3": {
       "version": "4.0.7",
       "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.7.tgz",
-      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8=",
-      "dev": true
+      "integrity": "sha1-Lem2j2Uo1WRO9cWVJqG0oHMGFp8="
     },
     "events": {
       "version": "3.2.0",
@@ -19788,8 +19883,7 @@
     "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=",
-      "dev": true
+      "integrity": "sha1-3XPI7/wScoulz0JZ12DqX7g+MUc="
     },
     "for-in": {
       "version": "1.0.2",
@@ -20353,7 +20447,6 @@
       "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",
@@ -20361,15 +20454,60 @@
       }
     },
     "http-proxy-middleware": {
-      "version": "0.19.1",
-      "resolved": "https://registry.npm.taobao.org/http-proxy-middleware/download/http-proxy-middleware-0.19.1.tgz",
-      "integrity": "sha1-GDx9xKoUeRUDBkmMIQza+WCApDo=",
-      "dev": true,
+      "version": "2.0.6",
+      "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz",
+      "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==",
       "requires": {
-        "http-proxy": "^1.17.0",
-        "is-glob": "^4.0.0",
-        "lodash": "^4.17.11",
-        "micromatch": "^3.1.10"
+        "@types/http-proxy": "^1.17.8",
+        "http-proxy": "^1.18.1",
+        "is-glob": "^4.0.1",
+        "is-plain-obj": "^3.0.0",
+        "micromatch": "^4.0.2"
+      },
+      "dependencies": {
+        "braces": {
+          "version": "3.0.2",
+          "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz",
+          "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+          "requires": {
+            "fill-range": "^7.0.1"
+          }
+        },
+        "fill-range": {
+          "version": "7.0.1",
+          "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
+          "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+          "requires": {
+            "to-regex-range": "^5.0.1"
+          }
+        },
+        "is-number": {
+          "version": "7.0.0",
+          "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz",
+          "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
+        },
+        "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=="
+        },
+        "micromatch": {
+          "version": "4.0.5",
+          "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz",
+          "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+          "requires": {
+            "braces": "^3.0.2",
+            "picomatch": "^2.3.1"
+          }
+        },
+        "to-regex-range": {
+          "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==",
+          "requires": {
+            "is-number": "^7.0.0"
+          }
+        }
       }
     },
     "http-signature": {
@@ -20851,8 +20989,7 @@
     "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=",
-      "devOptional": true
+      "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
     },
     "is-fullwidth-code-point": {
       "version": "3.0.0",
@@ -20864,7 +21001,6 @@
       "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"
       }
@@ -22471,10 +22607,9 @@
       "dev": true
     },
     "picomatch": {
-      "version": "2.2.2",
-      "resolved": "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.2.tgz",
-      "integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=",
-      "optional": true
+      "version": "2.3.1",
+      "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz",
+      "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
     },
     "pify": {
       "version": "4.0.1",
@@ -23553,8 +23688,7 @@
     "requires-port": {
       "version": "1.0.0",
       "resolved": "https://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz",
-      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
-      "dev": true
+      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
     },
     "resize-observer-polyfill": {
       "version": "1.5.1",
@@ -25717,6 +25851,18 @@
             }
           }
         },
+        "http-proxy-middleware": {
+          "version": "0.19.1",
+          "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz",
+          "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==",
+          "dev": true,
+          "requires": {
+            "http-proxy": "^1.17.0",
+            "is-glob": "^4.0.0",
+            "lodash": "^4.17.11",
+            "micromatch": "^3.1.10"
+          }
+        },
         "is-absolute-url": {
           "version": "3.0.3",
           "resolved": "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-3.0.3.tgz",
diff --git a/CanadaMes-ui/package.json b/CanadaMes-ui/package.json
index 895a0f4..f49cf5a 100644
--- a/CanadaMes-ui/package.json
+++ b/CanadaMes-ui/package.json
@@ -11,6 +11,7 @@
     "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",
diff --git a/CanadaMes-ui/src/layout/index.vue b/CanadaMes-ui/src/layout/index.vue
index 4e5d820..ee09077 100644
--- a/CanadaMes-ui/src/layout/index.vue
+++ b/CanadaMes-ui/src/layout/index.vue
@@ -212,7 +212,8 @@
         '鏉冮檺鍒楄〃': 'PermissionList',
         '瑙掕壊绠$悊': 'RoleManagement',
         '瑙掕壊鍒楄〃': 'RoleList',
-        '鐢垫皵绠$悊': 'Electrical management'
+        '鐢垫皵绠$悊': 'Electrical management',
+        '涓婚〉': 'Home'
         // 鏍规嵁瀹為檯闇�姹傜户缁坊鍔犲鐓у叧绯�
       };
 
diff --git a/CanadaMes-ui/src/router/index.js b/CanadaMes-ui/src/router/index.js
index 7cc714b..a4d9ebf 100644
--- a/CanadaMes-ui/src/router/index.js
+++ b/CanadaMes-ui/src/router/index.js
@@ -97,7 +97,10 @@
   }
 ];
 
+
+
 const router = new VueRouter({
+  // base: '/canadames/',  
   routes
 });
 
diff --git a/CanadaMes-ui/src/utils/request.js b/CanadaMes-ui/src/utils/request.js
index c5b5a25..d115559 100644
--- a/CanadaMes-ui/src/utils/request.js
+++ b/CanadaMes-ui/src/utils/request.js
@@ -3,7 +3,8 @@
 
 const service = axios.create({
     baseURL: process.env.VUE_APP_BASE_API,
-    timeout: 5000
+    timeout: 5000,
+    withCredentials: true // 娣诲姞姝よ閰嶇疆
 })
 
 service.interceptors.response.use(
diff --git a/CanadaMes-ui/vue.config.js b/CanadaMes-ui/vue.config.js
index b6c17bb..0e16427 100644
--- a/CanadaMes-ui/vue.config.js
+++ b/CanadaMes-ui/vue.config.js
@@ -13,6 +13,7 @@
                 pathRewrite: {
                     '^/api': ''
                 }
+                
             }
         }
     },
diff --git a/springboot-vue3/.idea/artifacts/springboot_vue3_war.xml b/springboot-vue3/.idea/artifacts/springboot_vue3_war.xml
new file mode 100644
index 0000000..d419cc3
--- /dev/null
+++ b/springboot-vue3/.idea/artifacts/springboot_vue3_war.xml
@@ -0,0 +1,14 @@
+<component name="ArtifactManager">
+  <artifact type="war" name="springboot-vue3:war">
+    <output-path>$PROJECT_DIR$/target</output-path>
+    <properties id="maven-jee-properties">
+      <options>
+        <module>springboot-vue3</module>
+        <packaging>war</packaging>
+      </options>
+    </properties>
+    <root id="archive" name="springboot-vue3-0.0.1-SNAPSHOT.war">
+      <element id="artifact" artifact-name="springboot-vue3:war exploded" />
+    </root>
+  </artifact>
+</component>
\ No newline at end of file
diff --git a/springboot-vue3/.idea/artifacts/springboot_vue3_war_exploded.xml b/springboot-vue3/.idea/artifacts/springboot_vue3_war_exploded.xml
new file mode 100644
index 0000000..96b4d65
--- /dev/null
+++ b/springboot-vue3/.idea/artifacts/springboot_vue3_war_exploded.xml
@@ -0,0 +1,150 @@
+<component name="ArtifactManager">
+  <artifact type="exploded-war" name="springboot-vue3:war exploded">
+    <output-path>$PROJECT_DIR$/target/springboot-vue3-0.0.1-SNAPSHOT</output-path>
+    <properties id="maven-jee-properties">
+      <options>
+        <exploded>true</exploded>
+        <module>springboot-vue3</module>
+        <packaging>war</packaging>
+      </options>
+    </properties>
+    <root id="root">
+      <element id="directory" name="WEB-INF">
+        <element id="directory" name="classes">
+          <element id="module-output" name="springboot-vue3" />
+        </element>
+        <element id="directory" name="lib">
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter-web:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: ch.qos.logback:logback-classic:1.2.3" />
+          <element id="library" level="project" name="Maven: ch.qos.logback:logback-core:1.2.3" />
+          <element id="library" level="project" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.13.3" />
+          <element id="library" level="project" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" />
+          <element id="library" level="project" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" />
+          <element id="library" level="project" name="Maven: org.yaml:snakeyaml:1.26" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter-json:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.11.1" />
+          <element id="library" level="project" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.11.1" />
+          <element id="library" level="project" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.11.1" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.37" />
+          <element id="library" level="project" name="Maven: org.glassfish:jakarta.el:3.0.3" />
+          <element id="library" level="project" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.37" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-web:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-beans:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-webmvc:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-aop:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-context:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-expression:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: mysql:mysql-connector-java:8.0.21" />
+          <element id="library" level="project" name="Maven: net.bytebuddy:byte-buddy:1.10.13" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-core:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-jcl:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: cn.hutool:hutool-all:5.5.4" />
+          <element id="library" level="project" name="Maven: org.hibernate.validator:hibernate-validator:6.1.5.Final" />
+          <element id="library" level="project" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" />
+          <element id="library" level="project" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" />
+          <element id="library" level="project" name="Maven: com.fasterxml:classmate:1.5.1" />
+          <element id="library" level="project" name="Maven: io.jsonwebtoken:jjwt-api:0.10.7" />
+          <element id="library" level="project" name="Maven: io.jsonwebtoken:jjwt-impl:0.10.7" />
+          <element id="library" level="project" name="Maven: io.jsonwebtoken:jjwt-jackson:0.10.7" />
+          <element id="library" level="project" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.1" />
+          <element id="library" level="project" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.1" />
+          <element id="library" level="project" name="Maven: com.fasterxml.jackson.core:jackson-core:2.11.1" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-spring-boot-starter:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-spring:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-core:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-lang:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-cache:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-crypto-hash:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-crypto-core:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-crypto-cipher:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-config-core:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-config-ogdl:1.8.0" />
+          <element id="library" level="project" name="Maven: commons-beanutils:commons-beanutils:1.9.4" />
+          <element id="library" level="project" name="Maven: commons-collections:commons-collections:3.2.2" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-event:1.8.0" />
+          <element id="library" level="project" name="Maven: org.apache.shiro:shiro-web:1.8.0" />
+          <element id="library" level="project" name="Maven: org.owasp.encoder:encoder:1.2.2" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: com.baomidou:mybatis-plus-boot-starter:3.2.0" />
+          <element id="library" level="project" name="Maven: com.baomidou:mybatis-plus:3.2.0" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: com.zaxxer:HikariCP:3.4.5" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-jdbc:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-tx:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: com.baomidou:mybatis-plus-core:3.2.0" />
+          <element id="library" level="project" name="Maven: com.baomidou:mybatis-plus-annotation:3.2.0" />
+          <element id="library" level="project" name="Maven: com.github.jsqlparser:jsqlparser:2.1" />
+          <element id="library" level="project" name="Maven: org.mybatis:mybatis:3.5.2" />
+          <element id="library" level="project" name="Maven: com.baomidou:mybatis-plus-generator:3.2.0" />
+          <element id="library" level="project" name="Maven: com.baomidou:mybatis-plus-extension:3.2.0" />
+          <element id="library" level="project" name="Maven: org.mybatis:mybatis-spring:2.0.2" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter-freemarker:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: org.freemarker:freemarker:2.3.30" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-context-support:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: io.springfox:springfox-swagger2:2.9.2" />
+          <element id="library" level="project" name="Maven: io.swagger:swagger-annotations:1.5.20" />
+          <element id="library" level="project" name="Maven: io.swagger:swagger-models:1.5.20" />
+          <element id="library" level="project" name="Maven: io.springfox:springfox-spi:2.9.2" />
+          <element id="library" level="project" name="Maven: io.springfox:springfox-core:2.9.2" />
+          <element id="library" level="project" name="Maven: io.springfox:springfox-schema:2.9.2" />
+          <element id="library" level="project" name="Maven: io.springfox:springfox-swagger-common:2.9.2" />
+          <element id="library" level="project" name="Maven: io.springfox:springfox-spring-web:2.9.2" />
+          <element id="library" level="project" name="Maven: com.google.guava:guava:20.0" />
+          <element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.7.30" />
+          <element id="library" level="project" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" />
+          <element id="library" level="project" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" />
+          <element id="library" level="project" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" />
+          <element id="library" level="project" name="Maven: com.deepoove:poi-tl:1.12.1" />
+          <element id="library" level="project" name="Maven: org.apache.commons:commons-lang3:3.10" />
+          <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml:5.2.2" />
+          <element id="library" level="project" name="Maven: org.apache.poi:poi:5.2.2" />
+          <element id="library" level="project" name="Maven: commons-codec:commons-codec:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.commons:commons-math3:3.6.1" />
+          <element id="library" level="project" name="Maven: com.zaxxer:SparseBitSet:1.2" />
+          <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml-lite:5.2.2" />
+          <element id="library" level="project" name="Maven: org.apache.xmlbeans:xmlbeans:5.0.3" />
+          <element id="library" level="project" name="Maven: org.apache.commons:commons-compress:1.21" />
+          <element id="library" level="project" name="Maven: commons-io:commons-io:2.11.0" />
+          <element id="library" level="project" name="Maven: com.github.virtuald:curvesapi:1.07" />
+          <element id="library" level="project" name="Maven: org.apache.logging.log4j:log4j-api:2.13.3" />
+          <element id="library" level="project" name="Maven: org.apache.commons:commons-collections4:4.4" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-transcoder:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-anim:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-css:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-ext:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-parser:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-svg-dom:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-awt-util:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:xmlgraphics-commons:2.6" />
+          <element id="library" level="project" name="Maven: commons-logging:commons-logging:1.0.4" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-bridge:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-script:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-dom:1.14" />
+          <element id="library" level="project" name="Maven: xml-apis:xml-apis:1.4.01" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-gvt:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-shared-resources:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-svggen:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-util:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-constants:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-i18n:1.14" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-xml:1.14" />
+          <element id="library" level="project" name="Maven: xml-apis:xml-apis-ext:1.3.04" />
+          <element id="library" level="project" name="Maven: org.apache.xmlgraphics:batik-codec:1.14" />
+          <element id="library" level="project" name="Maven: org.springframework.boot:spring-boot-starter-websocket:2.3.2.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-messaging:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: org.springframework:spring-websocket:5.2.8.RELEASE" />
+          <element id="library" level="project" name="Maven: com.github.xingshuangs:iot-communication:1.4.2" />
+        </element>
+      </element>
+      <element id="directory" name="META-INF">
+        <element id="file-copy" path="$PROJECT_DIR$/target/springboot-vue3-0.0.1-SNAPSHOT/META-INF/MANIFEST.MF" />
+      </element>
+      <element id="javaee-facet-resources" facet="springboot-vue3/web/Web" />
+    </root>
+  </artifact>
+</component>
\ No newline at end of file
diff --git a/springboot-vue3/.idea/misc.xml b/springboot-vue3/.idea/misc.xml
index 3d3371a..774ef25 100644
--- a/springboot-vue3/.idea/misc.xml
+++ b/springboot-vue3/.idea/misc.xml
@@ -1,5 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
+  <component name="FrameworkDetectionExcludesConfiguration">
+    <file type="web" url="file://$PROJECT_DIR$" />
+  </component>
   <component name="MavenProjectsManager">
     <option name="originalFiles">
       <list>
diff --git a/springboot-vue3/pom.xml b/springboot-vue3/pom.xml
index 37d5977..881fe13 100644
--- a/springboot-vue3/pom.xml
+++ b/springboot-vue3/pom.xml
@@ -9,12 +9,13 @@
         <version>2.3.2.RELEASE</version>
         <relativePath/>
     </parent>
+<!--    <packaging>war</packaging>-->
 
-    <groupId>com.canadames</groupId>
-    <artifactId>canadames</artifactId>
+    <groupId>com.springboot-vue3</groupId>
+    <artifactId>springboot-vue3</artifactId>
     <version>0.0.1-SNAPSHOT</version>
-    <name>canadames</name>
-    <description>canadames System</description>
+    <name>springboot-vue3</name>
+    <description>springboot-vue3 System</description>
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
diff --git a/springboot-vue3/springboot-vue3.iml b/springboot-vue3/springboot-vue3.iml
index 79a8091..84a010a 100644
--- a/springboot-vue3/springboot-vue3.iml
+++ b/springboot-vue3/springboot-vue3.iml
@@ -3,7 +3,9 @@
   <component name="FacetManager">
     <facet type="web" name="Web">
       <configuration>
-        <webroots />
+        <webroots>
+          <root url="file://$MODULE_DIR$/src/main/webapp" relative="/" />
+        </webroots>
         <sourceRoots>
           <root url="file://$MODULE_DIR$/src/main/java" />
           <root url="file://$MODULE_DIR$/src/main/resources" />
diff --git a/springboot-vue3/src/main/java/com/example/springboot/AuthorityApplication.java b/springboot-vue3/src/main/java/com/example/springboot/AuthorityApplication.java
index b28c2d4..d221421 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/AuthorityApplication.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/AuthorityApplication.java
@@ -5,8 +5,10 @@
 import org.springframework.context.ConfigurableApplicationContext;
 
 import com.example.springboot.component.WebSocketServer;
+import org.springframework.context.annotation.Import;
 
 @SpringBootApplication
+@Import({CorsConfig.class})
 public class AuthorityApplication {
 
   public static void main(String[] args) {
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter.java
index d416822..03f59f7 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter.java
@@ -18,8 +18,9 @@
             List<Short> paramlist = S7control.getinstance().ReadWord("DB100.DBW", 12);
             List<Short> state = S7control.getinstance().ReadWord("DB103.DBW0", 10);
             JSONObject jsonObject = new JSONObject();
-            jsonObject.append("params", new short[]{1111,121, 3232, 0, 1, 0, 1, 0, 1, 0, 1, 0});
-            jsonObject.append("state", new short[]{0, 1, 0, 0, 0, 0, 0,0, 0, 0});
+//            new short[]{1111,121, 3232, 0, 1, 0, 1, 0, 1, 0, 1, 0}
+            jsonObject.append("params",paramlist );
+            jsonObject.append("state", state);
             WebSocketServer sendwServer = WebSocketServer.sessionMap.get("Parameter");
             if (sendwServer != null) {
                 sendwServer.sendMessage(jsonObject.toString());
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/Plcaction.java b/springboot-vue3/src/main/java/com/example/springboot/component/Plcaction.java
index 5e4d59e..e05f235 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/Plcaction.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/Plcaction.java
@@ -21,9 +21,9 @@
 //      JSONObject jsonObject = new JSONObject();
 //      jsonObject.append("params", new short[]{1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0});
 
-//      List<Boolean> paramlist = S7control.getinstance().ReadBits("DB100.DBW", 12);
-      Boolean[] values = {false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true};
-      List<Boolean> paramlist = new ArrayList<>(Arrays.asList(values));
+    List<Boolean> paramlist = S7control.getinstance().ReadBits("DB100.DBW", 12);
+//      Boolean[] values = {false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true,false, true};
+//      List<Boolean> paramlist = new ArrayList<>(Arrays.asList(values));
       if (paramlist == null) {
 
       } else {
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 babc506..8ce1042 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
@@ -25,15 +25,15 @@
     //
     System.out.println("鍚姩瀹屾垚");
 
-    new PlcHold().start();
+//    new PlcHold().start();
     new Plcaction().start();
-    new PlcParameter().start();
+
 
     new Plchome().start();
 
     new PlcParameter().start();
 
-    new Plcalarm().start();
+  /*  new Plcalarm().start();*/
 
     new Plcsign().start();
 
diff --git a/springboot-vue3/src/main/java/com/example/springboot/controller/DefaultController.java b/springboot-vue3/src/main/java/com/example/springboot/controller/DefaultController.java
index 9208175..2e2a287 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/controller/DefaultController.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/controller/DefaultController.java
@@ -24,14 +24,12 @@
 import org.apache.shiro.crypto.hash.SimpleHash;
 import org.apache.shiro.util.ByteSource;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.HashMap;
 
 @RestController
+
 @Slf4j
 @Api(tags = "鐧诲綍鍜屾敞鍐�")
 public class DefaultController {
@@ -57,6 +55,7 @@
     }
 
     @ApiOperation(value = "鐧诲綍")
+    @CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
     @PostMapping("/login")
     public Result login(@RequestBody UserVo userVO) {
         ValidatorUtil.validateEntity(userVO);
diff --git a/springboot-vue3/src/main/resources/application.properties b/springboot-vue3/src/main/resources/application.properties
index a6a6607..0c946de 100644
--- a/springboot-vue3/src/main/resources/application.properties
+++ b/springboot-vue3/src/main/resources/application.properties
@@ -6,7 +6,7 @@
 #\u6570\u636E\u5E93\u9A71\u52A8
 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
 #\u6570\u636E\u5E93\u8FDE\u63A5\u5730\u5740
-spring.datasource.url=jdbc:mysql://10.153.19.150:3306/canadames?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+spring.datasource.url=jdbc:mysql://localhost:3306/canadames?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
 #\u6570\u636E\u5E93\u7528\u6237\u540D
 spring.datasource.username=root
 #\u6570\u636E\u5E93\u7528\u6237\u5BC6\u7801
@@ -21,4 +21,9 @@
 spring.main.allow-bean-definition-overriding=true
 #\u683C\u5F0F\u5316date\u65E5\u671F\u683C\u5F0F
 spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
-spring.jackson.time-zone=GMT+8
\ No newline at end of file
+spring.jackson.time-zone=GMT+8
+
+spring.mvc.cors.enabled=true
+spring.mvc.cors.allowed-origins=http://localhost:8080
+spring.mvc.cors.allowed-methods=GET,POST
+spring.mvc.cors.allowed-headers=*
\ No newline at end of file
diff --git a/springboot-vue3/src/main/resources/sql/canadames.sql b/springboot-vue3/src/main/resources/sql/canadames.sql
index 15a9308..8cff9bd 100644
--- a/springboot-vue3/src/main/resources/sql/canadames.sql
+++ b/springboot-vue3/src/main/resources/sql/canadames.sql
@@ -1,21 +1,37 @@
 /*
  Navicat MySQL Data Transfer
 
- Source Server         : 鏈湴
+ Source Server         : server-150
  Source Server Type    : MySQL
- Source Server Version : 80022
- Source Host           : localhost:3306
+ Source Server Version : 80019
+ Source Host           : 10.153.19.150:3306
  Source Schema         : canadames
 
  Target Server Type    : MySQL
- Target Server Version : 80022
+ Target Server Version : 80019
  File Encoding         : 65001
 
- Date: 05/09/2023 16:20:45
+ Date: 11/09/2023 08:31:21
 */
 
 SET NAMES utf8mb4;
 SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for alarmmg
+-- ----------------------------
+DROP TABLE IF EXISTS `alarmmg`;
+CREATE TABLE `alarmmg`  (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '涓婚敭',
+  `content` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鎶ヨ淇℃伅',
+  `timeon` datetime(0) NULL DEFAULT NULL COMMENT '寮�濮嬫椂闂�',
+  `endTime` datetime(0) NULL DEFAULT NULL COMMENT '缁撴潫鏃堕棿',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1337 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of alarmmg
+-- ----------------------------
 
 -- ----------------------------
 -- Table structure for category
@@ -32,7 +48,7 @@
   `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '鍒涘缓鏃堕棿',
   `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '鏇存柊鏃堕棿',
   PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '鍟嗗搧鍒嗙被' ROW_FORMAT = Dynamic;
+) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '鍟嗗搧鍒嗙被' ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of category
@@ -62,7 +78,7 @@
   `last_product_count_date` date NULL DEFAULT NULL,
   PRIMARY KEY (`id`) USING BTREE,
   UNIQUE INDEX `device_id_idx`(`device_id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 46 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
+) ENGINE = InnoDB AUTO_INCREMENT = 47 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of device
@@ -96,7 +112,7 @@
   `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '鍒涘缓鏃堕棿',
   `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '鏇存柊鏃堕棿',
   PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 61 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+) ENGINE = InnoDB AUTO_INCREMENT = 61 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of menu_list
@@ -106,12 +122,29 @@
 INSERT INTO `menu_list` VALUES (5, NULL, '鏉冮檺绠$悊', 'el-icon-collection-tag', 5, '', 1, '2021-11-28 14:30:27', '2021-11-28 15:06:04');
 INSERT INTO `menu_list` VALUES (6, NULL, '瑙掕壊绠$悊', 'el-icon-s-flag', 6, '', 1, '2021-11-28 14:30:27', '2021-11-28 15:06:04');
 INSERT INTO `menu_list` VALUES (7, 1, '鐢ㄦ埛鍒楄〃', '', 7, 'user', 1, '2021-11-28 14:30:27', '2021-11-28 15:06:04');
+INSERT INTO `menu_list` VALUES (8, 9, '涓婚〉', 'el-icon-menu', 8, 'home', 1, '2023-09-08 10:56:12', '2023-09-08 11:02:36');
+INSERT INTO `menu_list` VALUES (9, NULL, '涓婚〉', 'el-icon-menu', 0, 'home', 1, '2023-09-08 10:43:34', '2023-09-08 11:02:32');
 INSERT INTO `menu_list` VALUES (11, 5, '鏉冮檺鍒楄〃', '', 11, 'power', 1, '2021-11-28 14:30:28', '2021-11-28 15:06:04');
 INSERT INTO `menu_list` VALUES (12, 6, '瑙掕壊鍒楄〃', '', 12, 'role', 1, '2021-11-28 14:30:28', '2021-11-28 15:06:04');
-INSERT INTO `menu_list` VALUES (49, 2, '鎶ヨ淇℃伅', '', 49, 'Electrical/Action', 1, '2021-11-28 14:30:28', '2023-09-01 16:33:29');
+INSERT INTO `menu_list` VALUES (49, 2, '鎶ヨ淇℃伅', '', 49, 'Electrical/alarm', 1, '2021-11-28 14:30:28', '2023-09-08 11:14:08');
 INSERT INTO `menu_list` VALUES (51, 2, 'I/O鐘舵��', NULL, 51, 'Electrical/State', 1, '2023-08-25 13:29:13', '2023-09-01 16:34:03');
-INSERT INTO `menu_list` VALUES (52, 2, '寮�鍏虫帶鍒�', NULL, 52, 'Electrical/Sign', 1, '2023-08-25 13:29:18', '2023-09-01 16:33:48');
+INSERT INTO `menu_list` VALUES (52, 2, '寮�鍏虫帶鍒�', NULL, 52, 'Electrical/action', 1, '2023-08-25 13:29:18', '2023-09-08 13:40:59');
 INSERT INTO `menu_list` VALUES (53, 2, '鍙傛暟涓嬪彂', NULL, 53, 'Electrical/Parameter', 1, '2023-08-25 13:29:22', '2023-09-01 16:32:29');
+
+-- ----------------------------
+-- Table structure for order_out
+-- ----------------------------
+DROP TABLE IF EXISTS `order_out`;
+CREATE TABLE `order_out`  (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '搴忓彿',
+  `order_id` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '璁㈠崟鍙�',
+  `state` int NULL DEFAULT NULL COMMENT '鐘舵��(0锛氭寜姝よ鍗曞彿鍑虹墖锛�1缁撴潫鍑虹墖)',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of order_out
+-- ----------------------------
 
 -- ----------------------------
 -- Table structure for permission
@@ -125,7 +158,7 @@
   `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '鍒涘缓鏃堕棿',
   `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '鏇存柊鏃堕棿',
   PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '鏉冮檺' ROW_FORMAT = Dynamic;
+) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '鏉冮檺' ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of permission
@@ -167,13 +200,13 @@
   `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '鍒涘缓鏃堕棿',
   `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '鏇存柊鏃堕棿',
   PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '瑙掕壊' ROW_FORMAT = Dynamic;
+) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '瑙掕壊' ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of role
 -- ----------------------------
 INSERT INTO `role` VALUES (1, NULL, 'admin', '绯荤粺绠$悊鍛�', 1, '2021-01-10 22:49:17', '2021-03-29 15:19:15');
-INSERT INTO `role` VALUES (2, 1, 'user', '鏅�氱敤鎴�', 1, '2021-01-13 00:28:58', '2021-03-29 15:19:15');
+INSERT INTO `role` VALUES (2, 1, 'user2', '鏅�氱敤鎴�', 1, '2021-01-13 00:28:58', '2021-03-29 15:19:15');
 INSERT INTO `role` VALUES (5, 1, 'user3', '777', 1, '2023-08-24 10:02:58', '2023-08-28 14:28:22');
 
 -- ----------------------------
@@ -188,7 +221,7 @@
   `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '鍒涘缓鏃堕棿',
   `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '鏇存柊鏃堕棿',
   PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 54 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '瑙掕壊鍜岃彍鍗曞叧鑱旇〃' ROW_FORMAT = Dynamic;
+) ENGINE = InnoDB AUTO_INCREMENT = 56 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '瑙掕壊鍜岃彍鍗曞叧鑱旇〃' ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of role_menu_list
@@ -231,6 +264,8 @@
 INSERT INTO `role_menu_list` VALUES (51, 2, 49, 1, '2023-08-28 15:14:27', '2023-08-28 15:53:34');
 INSERT INTO `role_menu_list` VALUES (52, 2, 1, 1, '2023-08-30 16:28:57', '2023-08-30 16:28:57');
 INSERT INTO `role_menu_list` VALUES (53, 2, 7, 1, '2023-08-30 16:29:05', '2023-08-30 16:29:05');
+INSERT INTO `role_menu_list` VALUES (54, 1, 9, 1, '2023-09-08 10:55:54', '2023-09-08 11:02:55');
+INSERT INTO `role_menu_list` VALUES (55, 1, 8, 1, '2023-09-08 10:56:45', '2023-09-08 11:01:43');
 
 -- ----------------------------
 -- Table structure for role_permission
@@ -244,7 +279,7 @@
   `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '鍒涘缓鏃堕棿',
   `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '鏇存柊鏃堕棿',
   PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 76 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '瑙掕壊鏉冮檺' ROW_FORMAT = Dynamic;
+) ENGINE = InnoDB AUTO_INCREMENT = 76 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '瑙掕壊鏉冮檺' ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of role_permission
@@ -293,9 +328,452 @@
 INSERT INTO `role_permission` VALUES (69, 2, 26, 1, '2021-11-28 15:07:54', '2021-11-28 15:07:54');
 INSERT INTO `role_permission` VALUES (70, 2, 27, 1, '2021-11-28 15:07:54', '2021-11-28 15:07:54');
 INSERT INTO `role_permission` VALUES (71, 2, 28, 1, '2021-11-28 15:07:54', '2021-11-28 15:07:54');
-INSERT INTO `role_permission` VALUES (72, 2, 30, 1, '2023-08-24 08:55:34', '2023-08-24 08:55:34');
-INSERT INTO `role_permission` VALUES (73, 2, 29, 1, '2023-08-24 08:56:15', '2023-08-28 15:33:14');
+INSERT INTO `role_permission` VALUES (72, 2, 30, 0, '2023-08-24 08:55:34', '2023-08-24 08:55:34');
+INSERT INTO `role_permission` VALUES (73, 2, 29, 0, '2023-08-24 08:56:15', '2023-08-28 15:33:14');
 INSERT INTO `role_permission` VALUES (74, 2, 1, 1, '2023-08-30 16:29:46', '2023-08-30 16:29:46');
+
+-- ----------------------------
+-- Table structure for storage_cage
+-- ----------------------------
+DROP TABLE IF EXISTS `storage_cage`;
+CREATE TABLE `storage_cage`  (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '搴忓彿',
+  `glass_id` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鐜荤拑id',
+  `order_id` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '璁㈠崟id',
+  `cage` int NULL DEFAULT NULL COMMENT '绗煎瓙id',
+  `cell` int NULL DEFAULT NULL COMMENT '鏍煎瓙id',
+  `tier` int NULL DEFAULT NULL COMMENT '鏍煎瓙灞俰d',
+  `width` decimal(7, 2) NULL DEFAULT NULL COMMENT '鏍煎瓙瀹�',
+  `glasswidth` decimal(7, 2) NULL DEFAULT NULL COMMENT '鐜荤拑瀹�',
+  `glassheight` decimal(7, 2) NULL DEFAULT NULL COMMENT '鐜荤拑楂�',
+  `state` int NULL DEFAULT NULL COMMENT '鐘舵�侊紙0锛氭棤鐜荤拑锛�1锛氭湁鐜荤拑锛�2锛氳繘鐗囦腑锛�3锛氬嚭鐗囦腑锛�4锛氳皟搴︿腑锛�',
+  `coating` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '娑傚眰',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 421 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of storage_cage
+-- ----------------------------
+INSERT INTO `storage_cage` VALUES (1, 'A001', 'A001', 1, 1, 1, 1760.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (2, 'A001', 'A001', 1, 1, 2, 1760.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (3, '0', NULL, 1, 2, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (4, '0', NULL, 1, 2, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (5, '0', NULL, 1, 3, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (6, '0', NULL, 1, 3, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (7, '0', NULL, 1, 4, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (8, '0', NULL, 1, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (9, '0', NULL, 1, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (10, '0', NULL, 1, 5, 2, 1600.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (11, '0', NULL, 1, 6, 1, 1600.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (12, NULL, NULL, 1, 6, 2, 1600.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (13, '3', 'A001', 1, 7, 1, 1600.00, 3.00, 5.00, 3, 'low-e');
+INSERT INTO `storage_cage` VALUES (14, '0', NULL, 1, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (15, '0', NULL, 1, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (16, '0', NULL, 1, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (17, '0', NULL, 1, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (18, '0', NULL, 1, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (19, '0', NULL, 1, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (20, '0', NULL, 1, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (21, '0', NULL, 1, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (22, '0', NULL, 1, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (23, '0', NULL, 1, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (24, '0', NULL, 1, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (25, '0', NULL, 1, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (26, '0', NULL, 1, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (27, '0', NULL, 1, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (28, '0', NULL, 1, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (29, '0', NULL, 1, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (30, '0', NULL, 1, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (31, '0', NULL, 1, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (32, '0', NULL, 1, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (33, '0', NULL, 1, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (34, '0', NULL, 1, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (35, '0', NULL, 1, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (36, '0', NULL, 1, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (37, '0', NULL, 1, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (38, '0', NULL, 1, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (39, '0', NULL, 1, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (40, '0', NULL, 1, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (41, '0', NULL, 1, 21, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (42, '0', NULL, 1, 21, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (43, '0', NULL, 2, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (44, '0', NULL, 2, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (45, '0', NULL, 2, 2, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (46, '0', NULL, 2, 2, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (47, '0', NULL, 2, 3, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (48, '0', NULL, 2, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (49, '0', 'A001', 2, 4, 1, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (50, '0', 'A001', 2, 4, 2, 1550.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (51, '0', NULL, 2, 5, 1, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (52, '0', NULL, 2, 5, 2, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (53, '0', NULL, 2, 6, 1, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (54, '0', NULL, 2, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (55, '0', NULL, 2, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (56, '0', NULL, 2, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (57, '0', NULL, 2, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (58, '0', NULL, 2, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (59, '0', NULL, 2, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (60, '0', NULL, 2, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (61, '0', NULL, 2, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (62, '0', NULL, 2, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (63, '0', NULL, 2, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (64, '0', NULL, 2, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (65, '0', NULL, 2, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (66, '0', NULL, 2, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (67, '0', NULL, 2, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (68, '0', NULL, 2, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (69, '0', NULL, 2, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (70, '0', NULL, 2, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (71, '0', NULL, 2, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (72, '0', NULL, 2, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (73, '0', NULL, 2, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (74, '0', NULL, 2, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (75, '0', NULL, 2, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (76, '0', NULL, 2, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (77, '0', NULL, 2, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (78, '0', NULL, 2, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (79, '0', NULL, 2, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (80, '0', NULL, 2, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (81, '0', NULL, 2, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (82, '0', NULL, 2, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (83, '0', NULL, 2, 21, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (84, '0', NULL, 2, 21, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (85, '0', NULL, 3, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (86, '0', NULL, 3, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (87, '0', NULL, 3, 2, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (88, '0', 'A001', 3, 2, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (89, '0', 'A001', 3, 3, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (90, '0', 'A001', 3, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (91, '0', 'A001', 3, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (92, '0', 'A001', 3, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (93, '0', 'A001', 3, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (94, '0', 'A001', 3, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (95, '0', NULL, 3, 6, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (96, '0', NULL, 3, 6, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (97, '0', NULL, 3, 7, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (98, '0', NULL, 3, 7, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (99, '0', NULL, 3, 8, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (100, '0', NULL, 3, 8, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (101, '0', NULL, 3, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (102, '0', NULL, 3, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (103, '0', NULL, 3, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (104, '0', NULL, 3, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (105, '0', NULL, 3, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (106, '0', NULL, 3, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (107, '0', NULL, 3, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (108, '0', NULL, 3, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (109, '0', NULL, 3, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (110, '0', NULL, 3, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (111, '0', NULL, 3, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (112, '0', NULL, 3, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (113, '0', NULL, 3, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (114, '0', NULL, 3, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (115, '0', NULL, 3, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (116, '0', NULL, 3, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (117, '0', NULL, 3, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (118, '0', NULL, 3, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (119, '0', NULL, 3, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (120, '0', NULL, 3, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (121, '0', NULL, 3, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (122, '0', NULL, 3, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (123, '0', NULL, 3, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (124, '0', NULL, 3, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (125, '0', NULL, 3, 21, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (126, '0', NULL, 3, 21, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (127, '0', NULL, 4, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (128, '0', NULL, 4, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (129, '0', NULL, 4, 2, 1, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (130, '0', NULL, 4, 2, 2, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (131, '0', NULL, 4, 3, 1, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (132, '0', NULL, 4, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (133, '0', NULL, 4, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (134, '0', NULL, 4, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (135, '0', NULL, 4, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (136, '0', NULL, 4, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (137, '0', NULL, 4, 6, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (138, '0', NULL, 4, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (139, '0', NULL, 4, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (140, '0', NULL, 4, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (141, '0', 'A001', 4, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (142, '0', 'A001', 4, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (143, '0', 'A001', 4, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (144, '0', 'A001', 4, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (145, '0', 'A001', 4, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (146, '0', 'A001', 4, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (147, '0', NULL, 4, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (148, '0', NULL, 4, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (149, '0', NULL, 4, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (150, '0', NULL, 4, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (151, '0', NULL, 4, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (152, '0', NULL, 4, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (153, '0', NULL, 4, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (154, '0', NULL, 4, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (155, '0', NULL, 4, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (156, '0', NULL, 4, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (157, '0', NULL, 4, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (158, '0', NULL, 4, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (159, '0', NULL, 4, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (160, '0', NULL, 4, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (161, '0', NULL, 4, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (162, '0', NULL, 4, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (163, '0', NULL, 4, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (164, '0', NULL, 4, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (165, '0', NULL, 4, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (166, '0', NULL, 4, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (167, '0', NULL, 4, 21, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (168, '0', NULL, 4, 21, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (169, '0', NULL, 5, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (170, '0', NULL, 5, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (171, '0', NULL, 5, 2, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (172, '0', NULL, 5, 2, 2, 1550.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (173, '0', NULL, 5, 3, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (174, '0', NULL, 5, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (175, '0', NULL, 5, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (176, '0', NULL, 5, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (177, '0', NULL, 5, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (178, '0', NULL, 5, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (179, '0', NULL, 5, 6, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (180, '0', NULL, 5, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (181, '0', NULL, 5, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (182, '0', NULL, 5, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (183, '0', NULL, 5, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (184, '0', NULL, 5, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (185, '0', NULL, 5, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (186, '0', NULL, 5, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (187, '0', NULL, 5, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (188, '0', NULL, 5, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (189, '0', NULL, 5, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (190, '0', NULL, 5, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (191, '0', NULL, 5, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (192, '0', NULL, 5, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (193, '0', NULL, 5, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (194, '0', NULL, 5, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (195, '0', NULL, 5, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (196, '0', NULL, 5, 14, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (197, '0', NULL, 5, 15, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (198, '0', NULL, 5, 15, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (199, '0', NULL, 5, 16, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (200, '0', NULL, 5, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (201, '0', NULL, 5, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (202, '0', NULL, 5, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (203, '0', NULL, 5, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (204, '0', NULL, 5, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (205, '0', NULL, 5, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (206, '0', NULL, 5, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (207, '0', NULL, 5, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (208, '0', NULL, 5, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (209, '0', NULL, 5, 21, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (210, '0', NULL, 5, 21, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (211, '0', 'A001', 6, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (212, '0', 'A002', 6, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (213, '0', NULL, 6, 2, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (214, '0', NULL, 6, 2, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (215, '0', NULL, 6, 3, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (216, '0', NULL, 6, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (217, '0', NULL, 6, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (218, '0', NULL, 6, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (219, '0', NULL, 6, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (220, '0', NULL, 6, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (221, '0', NULL, 6, 6, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (222, '0', NULL, 6, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (223, '0', NULL, 6, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (224, '0', NULL, 6, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (225, '0', NULL, 6, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (226, '0', NULL, 6, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (227, '0', NULL, 6, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (228, '0', NULL, 6, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (229, '0', NULL, 6, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (230, '0', NULL, 6, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (231, '0', NULL, 6, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (232, '0', NULL, 6, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (233, '0', NULL, 6, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (234, '0', NULL, 6, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (235, '0', NULL, 6, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (236, '0', NULL, 6, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (237, '0', NULL, 6, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (238, '0', NULL, 6, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (239, '0', NULL, 6, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (240, '0', NULL, 6, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (241, '0', NULL, 6, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (242, '0', NULL, 6, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (243, '0', NULL, 6, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (244, '0', NULL, 6, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (245, '0', NULL, 6, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (246, '0', NULL, 6, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (247, '0', NULL, 6, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (248, '0', NULL, 6, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (249, '0', NULL, 6, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (250, '0', NULL, 6, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (251, '0', NULL, 6, 21, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (252, '0', NULL, 6, 21, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (253, '0', NULL, 7, 1, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (254, '0', NULL, 7, 1, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (255, '0', NULL, 7, 2, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (256, '0', NULL, 7, 2, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (257, '0', NULL, 7, 3, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (258, '0', NULL, 7, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (259, '0', NULL, 7, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (260, '0', NULL, 7, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (261, '0', NULL, 7, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (262, '0', NULL, 7, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (263, '0', NULL, 7, 6, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (264, '0', NULL, 7, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (265, '0', NULL, 7, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (266, '0', NULL, 7, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (267, '0', NULL, 7, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (268, '0', NULL, 7, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (269, '0', NULL, 7, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (270, '0', NULL, 7, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (271, '0', NULL, 7, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (272, '0', NULL, 7, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (273, '0', NULL, 7, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (274, '0', NULL, 7, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (275, '0', NULL, 7, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (276, '0', NULL, 7, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (277, '0', NULL, 7, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (278, '0', NULL, 7, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (279, '0', NULL, 7, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (280, '0', NULL, 7, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (281, '0', NULL, 7, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (282, '0', NULL, 7, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (283, '0', NULL, 7, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (284, '0', NULL, 7, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (285, '0', NULL, 7, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (286, '0', NULL, 7, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (287, '0', NULL, 7, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (288, '0', NULL, 7, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (289, '0', NULL, 7, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (290, '0', NULL, 7, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (291, '0', NULL, 7, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (292, '0', NULL, 7, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (293, '0', NULL, 7, 21, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (294, '0', NULL, 7, 21, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (295, '0', NULL, 8, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (296, '0', NULL, 8, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (297, '0', NULL, 8, 2, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (298, '0', NULL, 8, 2, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (299, '0', NULL, 8, 3, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (300, '0', NULL, 8, 3, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (301, '0', NULL, 8, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (302, '0', NULL, 8, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (303, '0', NULL, 8, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (304, '0', NULL, 8, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (305, '0', NULL, 8, 6, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (306, '0', NULL, 8, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (307, '0', NULL, 8, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (308, '0', NULL, 8, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (309, '0', NULL, 8, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (310, '0', NULL, 8, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (311, '0', NULL, 8, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (312, '0', NULL, 8, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (313, '0', NULL, 8, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (314, '0', NULL, 8, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (315, '0', NULL, 8, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (316, '0', NULL, 8, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (317, '0', NULL, 8, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (318, '0', NULL, 8, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (319, '0', NULL, 8, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (320, '0', NULL, 8, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (321, '0', NULL, 8, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (322, '0', NULL, 8, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (323, '0', NULL, 8, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (324, '0', NULL, 8, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (325, '0', NULL, 8, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (326, '0', NULL, 8, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (327, '0', NULL, 8, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (328, '0', NULL, 8, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (329, '0', NULL, 8, 18, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (330, '0', NULL, 8, 18, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (331, '0', NULL, 8, 19, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (332, '0', NULL, 8, 19, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (333, '0', NULL, 8, 20, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (334, '0', NULL, 8, 20, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (335, '0', NULL, 8, 21, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (336, '0', NULL, 8, 21, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (337, '0', NULL, 9, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (338, '0', NULL, 9, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (339, '0', NULL, 9, 2, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (340, '0', NULL, 9, 2, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (341, '0', NULL, 9, 3, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (342, '0', NULL, 9, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (343, '0', NULL, 9, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (344, '0', NULL, 9, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (345, '0', NULL, 9, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (346, '0', NULL, 9, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (347, '0', NULL, 9, 6, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (348, '0', NULL, 9, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (349, '0', NULL, 9, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (350, '0', NULL, 9, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (351, '0', NULL, 9, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (352, '0', NULL, 9, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (353, '0', NULL, 9, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (354, '0', NULL, 9, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (355, '0', NULL, 9, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (356, '0', NULL, 9, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (357, '0', NULL, 9, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (358, '0', NULL, 9, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (359, '0', NULL, 9, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (360, '0', NULL, 9, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (361, '0', NULL, 9, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (362, '0', NULL, 9, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (363, '0', NULL, 9, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (364, '0', NULL, 9, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (365, '0', NULL, 9, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (366, '0', NULL, 9, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (367, '0', NULL, 9, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (368, '0', NULL, 9, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (369, '0', NULL, 9, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (370, '0', NULL, 9, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (371, '0', NULL, 9, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (372, '0', NULL, 9, 18, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (373, '0', NULL, 9, 19, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (374, '0', NULL, 9, 19, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (375, '0', NULL, 9, 20, 1, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (376, '0', NULL, 9, 20, 2, 1788.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (377, '0', NULL, 9, 21, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (378, '0', NULL, 9, 21, 2, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (379, '0', NULL, 10, 1, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (380, '0', NULL, 10, 1, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (381, '0', NULL, 10, 2, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (382, '0', NULL, 10, 2, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (383, '0', NULL, 10, 3, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (384, '0', NULL, 10, 3, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (385, '0', NULL, 10, 4, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (386, '0', NULL, 10, 4, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (387, '0', NULL, 10, 5, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (388, '0', NULL, 10, 5, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (389, '0', NULL, 10, 6, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (390, '0', NULL, 10, 6, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (391, '0', NULL, 10, 7, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (392, '0', NULL, 10, 7, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (393, '0', NULL, 10, 8, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (394, '0', NULL, 10, 8, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (395, '0', NULL, 10, 9, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (396, '0', NULL, 10, 9, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (397, '0', NULL, 10, 10, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (398, '0', NULL, 10, 10, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (399, '0', NULL, 10, 11, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (400, '0', NULL, 10, 11, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (401, '0', NULL, 10, 12, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (402, '0', NULL, 10, 12, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (403, '0', NULL, 10, 13, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (404, '0', NULL, 10, 13, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (405, '0', NULL, 10, 14, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (406, '0', NULL, 10, 14, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (407, '0', NULL, 10, 15, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (408, '0', NULL, 10, 15, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (409, '0', NULL, 10, 16, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (410, '0', NULL, 10, 16, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (411, '0', NULL, 10, 17, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (412, '0', NULL, 10, 17, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (413, '0', NULL, 10, 18, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (414, '0', NULL, 10, 18, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (415, '0', NULL, 10, 19, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (416, '0', NULL, 10, 19, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (417, '0', NULL, 10, 20, 1, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (418, '0', NULL, 10, 20, 2, 1500.00, NULL, NULL, 1, NULL);
+INSERT INTO `storage_cage` VALUES (419, '0', NULL, 10, 21, 1, 1500.00, NULL, NULL, 0, NULL);
+INSERT INTO `storage_cage` VALUES (420, '0', NULL, 10, 21, 2, 1500.00, NULL, NULL, 0, NULL);
 
 -- ----------------------------
 -- Table structure for storage_rack
@@ -739,6 +1217,28 @@
 INSERT INTO `storage_rack` VALUES (491, 210, 1, NULL, NULL, NULL, 2, 10);
 
 -- ----------------------------
+-- Table structure for storage_task
+-- ----------------------------
+DROP TABLE IF EXISTS `storage_task`;
+CREATE TABLE `storage_task`  (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '搴忓彿',
+  `task_type` int NULL DEFAULT NULL COMMENT '浠诲姟绫诲瀷锛�0锛氳繘鐗囷紝1锛氬嚭鐗囷紝2锛氳皟搴︼級',
+  `task_state` int NULL DEFAULT NULL COMMENT '浠诲姟鐘舵�侊紙0锛氭湭瀹屾垚锛�1锛氬畬鎴愶級',
+  `shelf_rack` int NULL DEFAULT NULL COMMENT '寮�濮嬩綅缃�',
+  `load_rack` int NULL DEFAULT NULL COMMENT '缁撴潫浣嶇疆',
+  `start_time` datetime(0) NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '浠诲姟寮�濮嬫椂闂�',
+  `finsh_time` datetime(0) NULL DEFAULT NULL COMMENT '浠诲姟缁撴潫鏃堕棿',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of storage_task
+-- ----------------------------
+INSERT INTO `storage_task` VALUES (1, 0, 1, 6, 105, '2023-09-07 10:11:47', '2023-08-29 00:00:00');
+INSERT INTO `storage_task` VALUES (2, 1, 1, 7, 99, '2023-09-07 16:53:35', '2023-08-29 00:00:00');
+INSERT INTO `storage_task` VALUES (3, 2, 0, 26, 105, '2023-09-05 16:24:30', '2023-08-29 00:00:00');
+
+-- ----------------------------
 -- Table structure for user
 -- ----------------------------
 DROP TABLE IF EXISTS `user`;
@@ -757,7 +1257,7 @@
   `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '鍒涘缓鏃堕棿',
   `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '鏇存柊鏃堕棿',
   PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of user
@@ -765,7 +1265,6 @@
 INSERT INTO `user` VALUES (1, 0, '', 0, 1, 'admin', 'b2f0c414a5ffb6944c424bc18ae3a8a0', NULL, NULL, NULL, 1, '2023-08-25 08:58:58', '2023-09-05 16:12:28');
 INSERT INTO `user` VALUES (2, 1, '1-', 1, 2, 'user1', '601b99523f82de29f87771d5f95accdc', 'user1@qq.com', NULL, NULL, 1, '2021-11-28 14:31:39', '2021-11-28 15:09:36');
 INSERT INTO `user` VALUES (3, 1, '1-', 1, 2, 'user2', 'f403c87893db29eb71b21905b57bbd0d', 'user2@qq.com', NULL, NULL, 1, '2021-11-28 14:31:39', '2021-11-28 15:09:36');
-INSERT INTO `user` VALUES (8, 1, '1-', 1, 5, 'yyyyy', 'fca7e8e6b2fca165de912bd617c8df3c', '2265557248@qq.com', NULL, NULL, 1, '2023-08-23 20:08:44', '2023-08-23 20:08:44');
 INSERT INTO `user` VALUES (9, 1, '1-', 1, 1, 'yttttttttttt', 'b2f0c414a5ffb6944c424bc18ae3a8a0', '666@qq.com', NULL, NULL, 1, '2023-08-23 20:35:32', '2023-08-23 20:35:32');
 INSERT INTO `user` VALUES (10, 1, '1-', 1, 2, '767655555', '500637c0d48b442a3be6d4fce12e0910', NULL, NULL, NULL, 1, '2023-08-23 20:42:58', '2023-08-23 20:42:58');
 INSERT INTO `user` VALUES (11, 1, '1-', 1, 5, 'uiuyiuy', 'e046c4175152aa3001d2c71c5bc1aee5', '767676767tt@qq.com', NULL, NULL, 1, '2023-08-23 20:43:42', '2023-08-23 20:43:42');
diff --git a/springboot-vue3/src/test/java/com/example/springboot/AuthorityApplicationTests.java b/springboot-vue3/src/test/java/com/example/springboot/AuthorityApplicationTests.java
deleted file mode 100644
index 055634d..0000000
--- a/springboot-vue3/src/test/java/com/example/springboot/AuthorityApplicationTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.example.springboot;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class AuthorityApplicationTests {
-
-    @Test
-    void contextLoads() {
-    }
-
-}

--
Gitblit v1.8.0