From 4f3b0a6727ecfa555892ebea64bd76e5a07cd6fb Mon Sep 17 00:00:00 2001
From: xiazhengtongxue <133085197+xiazhengtongxue@users.noreply.github.com>
Date: 星期二, 17 三月 2026 10:01:38 +0800
Subject: [PATCH] feat: 新增WMS异常上报自动恢复异常按钮

---
 项目代码/WCSClient/package-lock.json                                      |  295 +++++------
 项目代码/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.backup.json |  476 +++++++++----------
 项目代码/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs            |   99 ++-
 项目代码/WCSClient/src/extension/taskinfo/task.js                         |   94 ++-
 项目代码/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs          |    1 
 项目代码/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs |   10 
 项目代码/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.json        |  480 +++++++++----------
 项目代码/WCSClient/config/buttons.js                                      |   11 
 8 files changed, 744 insertions(+), 722 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/config/buttons.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/config/buttons.js"
index e3d984d..96c5bf0 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/config/buttons.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/config/buttons.js"
@@ -35,7 +35,7 @@
 },
 {
     name: "寮傚父浠诲姟澶勭悊",
-    icon: 'el-icon-plus',
+    icon: '',
     value: 'ExceptionTask',
     class: '',
     //  plain:true,
@@ -83,6 +83,15 @@
     }
 },
 {
+    name: "涓婃姤WMS寮傚父鎭㈠",
+    icon: '',
+    class: '',
+    value: 'WmsRecovery',
+    type: 'danger',
+    onClick: function () {
+    }
+},
+{
     name: "鏌ョ湅瀹屾暣璺敱",
     icon: '',
     class: '',
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/package-lock.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/package-lock.json"
index 6e7d22a..a2b7c51 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/package-lock.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/package-lock.json"
@@ -1269,21 +1269,6 @@
           "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==",
           "dev": true
         },
-        "color-convert": {
-          "version": "2.0.1",
-          "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
-          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-          "dev": true,
-          "requires": {
-            "color-name": "~1.1.4"
-          }
-        },
-        "color-name": {
-          "version": "1.1.4",
-          "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
-          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-          "dev": true
-        },
         "emoji-regex": {
           "version": "9.2.2",
           "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz",
@@ -1301,40 +1286,6 @@
             "strip-ansi": "^7.0.1"
           }
         },
-        "string-width-cjs": {
-          "version": "npm:string-width@4.2.3",
-          "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
-          "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
-          "dev": true,
-          "requires": {
-            "emoji-regex": "^8.0.0",
-            "is-fullwidth-code-point": "^3.0.0",
-            "strip-ansi": "^6.0.1"
-          },
-          "dependencies": {
-            "ansi-regex": {
-              "version": "5.0.1",
-              "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
-              "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-              "dev": true
-            },
-            "emoji-regex": {
-              "version": "8.0.0",
-              "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
-              "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
-              "dev": true
-            },
-            "strip-ansi": {
-              "version": "6.0.1",
-              "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
-              "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-              "dev": true,
-              "requires": {
-                "ansi-regex": "^5.0.1"
-              }
-            }
-          }
-        },
         "strip-ansi": {
           "version": "7.1.2",
           "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.1.2.tgz",
@@ -1342,23 +1293,6 @@
           "dev": true,
           "requires": {
             "ansi-regex": "^6.0.1"
-          }
-        },
-        "strip-ansi-cjs": {
-          "version": "npm:strip-ansi@6.0.1",
-          "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
-          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-          "dev": true,
-          "requires": {
-            "ansi-regex": "^5.0.1"
-          },
-          "dependencies": {
-            "ansi-regex": {
-              "version": "5.0.1",
-              "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
-              "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-              "dev": true
-            }
           }
         },
         "wrap-ansi": {
@@ -1370,60 +1304,6 @@
             "ansi-styles": "^6.1.0",
             "string-width": "^5.0.1",
             "strip-ansi": "^7.0.1"
-          }
-        },
-        "wrap-ansi-cjs": {
-          "version": "npm:wrap-ansi@7.0.0",
-          "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
-          "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
-          "dev": true,
-          "requires": {
-            "ansi-styles": "^4.0.0",
-            "string-width": "^4.1.0",
-            "strip-ansi": "^6.0.0"
-          },
-          "dependencies": {
-            "ansi-regex": {
-              "version": "5.0.1",
-              "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
-              "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
-              "dev": true
-            },
-            "ansi-styles": {
-              "version": "4.3.0",
-              "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
-              "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-              "dev": true,
-              "requires": {
-                "color-convert": "^2.0.1"
-              }
-            },
-            "emoji-regex": {
-              "version": "8.0.0",
-              "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
-              "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
-              "dev": true
-            },
-            "string-width": {
-              "version": "4.2.3",
-              "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
-              "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
-              "dev": true,
-              "requires": {
-                "emoji-regex": "^8.0.0",
-                "is-fullwidth-code-point": "^3.0.0",
-                "strip-ansi": "^6.0.1"
-              }
-            },
-            "strip-ansi": {
-              "version": "6.0.1",
-              "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
-              "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
-              "dev": true,
-              "requires": {
-                "ansi-regex": "^5.0.1"
-              }
-            }
           }
         }
       }
@@ -1546,6 +1426,11 @@
       "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
       "dev": true,
       "optional": true
+    },
+    "@popperjs/core": {
+      "version": "npm:@sxzz/popperjs-es@2.11.8",
+      "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.8.tgz",
+      "integrity": "sha512-wOwESXvvED3S8xBmcPWHs2dUuzrE4XiZeFu7e1hROIJkm02a49N120pmOXxY33sBb6hArItm5W5tcg1cBtV+HQ=="
     },
     "@soda/friendly-errors-webpack-plugin": {
       "version": "1.8.1",
@@ -2193,16 +2078,6 @@
             "color-convert": "^2.0.1"
           }
         },
-        "chalk": {
-          "version": "4.1.2",
-          "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
-          "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
-          "dev": true,
-          "requires": {
-            "ansi-styles": "^4.1.0",
-            "supports-color": "^7.1.0"
-          }
-        },
         "cliui": {
           "version": "6.0.0",
           "resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz",
@@ -2229,12 +2104,6 @@
           "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
           "dev": true
         },
-        "has-flag": {
-          "version": "4.0.0",
-          "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
-          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-          "dev": true
-        },
         "ssri": {
           "version": "8.0.1",
           "resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz",
@@ -2242,26 +2111,6 @@
           "dev": true,
           "requires": {
             "minipass": "^3.1.1"
-          }
-        },
-        "supports-color": {
-          "version": "7.2.0",
-          "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
-          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-          "dev": true,
-          "requires": {
-            "has-flag": "^4.0.0"
-          }
-        },
-        "vue-loader-v16": {
-          "version": "npm:vue-loader@16.8.3",
-          "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz",
-          "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
-          "dev": true,
-          "requires": {
-            "chalk": "^4.1.0",
-            "hash-sum": "^2.0.0",
-            "loader-utils": "^2.0.0"
           }
         },
         "wrap-ansi": {
@@ -5890,13 +5739,6 @@
         "lodash-unified": "^1.0.3",
         "memoize-one": "^6.0.0",
         "normalize-wheel-es": "^1.2.0"
-      },
-      "dependencies": {
-        "@popperjs/core": {
-          "version": "npm:@sxzz/popperjs-es@2.11.8",
-          "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.8.tgz",
-          "integrity": "sha512-wOwESXvvED3S8xBmcPWHs2dUuzrE4XiZeFu7e1hROIJkm02a49N120pmOXxY33sBb6hArItm5W5tcg1cBtV+HQ=="
-        }
       }
     },
     "elliptic": {
@@ -13499,6 +13341,17 @@
         "strip-ansi": "^6.0.1"
       }
     },
+    "string-width-cjs": {
+      "version": "npm:string-width@4.2.3",
+      "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
+      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+      "dev": true,
+      "requires": {
+        "emoji-regex": "^8.0.0",
+        "is-fullwidth-code-point": "^3.0.0",
+        "strip-ansi": "^6.0.1"
+      }
+    },
     "string.prototype.trim": {
       "version": "1.2.10",
       "resolved": "https://registry.npmmirror.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz",
@@ -13547,6 +13400,23 @@
     },
     "strip-ansi": {
       "version": "6.0.1",
+      "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
+      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+      "dev": true,
+      "requires": {
+        "ansi-regex": "^5.0.1"
+      },
+      "dependencies": {
+        "ansi-regex": {
+          "version": "5.0.1",
+          "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
+          "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+          "dev": true
+        }
+      }
+    },
+    "strip-ansi-cjs": {
+      "version": "npm:strip-ansi@6.0.1",
       "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
       "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
       "dev": true,
@@ -14695,6 +14565,68 @@
         }
       }
     },
+    "vue-loader-v16": {
+      "version": "npm:vue-loader@16.8.3",
+      "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz",
+      "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
+      "dev": true,
+      "requires": {
+        "chalk": "^4.1.0",
+        "hash-sum": "^2.0.0",
+        "loader-utils": "^2.0.0"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "4.1.2",
+          "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
+          "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        }
+      }
+    },
     "vue-router": {
       "version": "4.6.4",
       "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.6.4.tgz",
@@ -15569,6 +15501,43 @@
         }
       }
     },
+    "wrap-ansi-cjs": {
+      "version": "npm:wrap-ansi@7.0.0",
+      "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+      "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+      "dev": true,
+      "requires": {
+        "ansi-styles": "^4.0.0",
+        "string-width": "^4.1.0",
+        "strip-ansi": "^6.0.0"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true
+        }
+      }
+    },
     "wrappy": {
       "version": "1.0.2",
       "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/src/extension/taskinfo/task.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/src/extension/taskinfo/task.js"
index c578edf..5601e5f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/src/extension/taskinfo/task.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSClient/src/extension/taskinfo/task.js"
@@ -36,37 +36,40 @@
           });
         };
       }
-      let TaskCancelBtn = this.buttons.find(
-        (x) => x.value == "TaskCancel"
-      );
-      if (TaskCancelBtn) {
-        TaskCancelBtn.onClick = function () {
-          let rows = this.$refs.table.getSelected();
-          if (rows.length == 0) return this.$error("璇烽�夋嫨鏁版嵁!");
-          if (rows.length > 1) {
-            return this.$error("涓�娆″彧鑳芥搷浣滀竴鏉℃暟鎹�!");
-          }
-            this.$confirm("纭畾璐х鍙栨秷鍚楋紵", "鎻愮ず", {
+      // 娣诲姞WMS寮傚父鎭㈠鎸夐挳鍔熻兘
+      let WmsRecoveryBtn = this.buttons.find((x) => x.value == "WmsRecovery");
+      if (WmsRecoveryBtn) {
+        WmsRecoveryBtn.onClick = () => {
+          this.$confirm("纭畾瑕佹墽琛學MS寮傚父鎭㈠鍚楋紵", "鎻愮ず", {
             confirmButtonText: "纭畾",
             cancelButtonText: "鍙栨秷",
             type: "warning",
-          }).then(() => {
-            const taskNum = rows[0].taskNum;
-            this.http
-              .post(
-                `api/Task/ManualTaskCancellation?taskNum=${taskNum}`,
-                null,
-                "浠诲姟鍙栨秷涓�"
-              )
-              .then((x) => {
-                if (!x.status) return this.$message.error(x.message);
-                this.$message.success("鎿嶄綔鎴愬姛");
-              })
           })
-        }
+            .then(() => {
+              // 鐩存帴璋冪敤鎭㈠鎺ュ彛锛屼笉闇�瑕佸弬鏁�
+              this.http
+                .post(
+                  `api/Task/WmsRecovery`, // WMS寮傚父鎭㈠鎺ュ彛
+                  null, // 涓嶉渶瑕佽姹備綋
+                  "WMS寮傚父鎭㈠涓�",
+                )
+                .then((x) => {
+                  if (!x.status) return this.$message.error(x.message);
+                  this.$message.success("WMS寮傚父鎭㈠鎴愬姛");
+                })
+                .catch((error) => {
+                  this.$message.error("鎿嶄綔澶辫触锛�" + error.message);
+                });
+            })
+            .catch(() => {
+              this.$message.info("宸插彇娑堟仮澶嶆搷浣�");
+            });
+        };
       }
       // 娣诲姞浠诲姟鎭㈠鎸夐挳鍔熻兘
-      let TaskRecoveryBtn = this.buttons.find((x) => x.value == "ExceptionTask");
+      let TaskRecoveryBtn = this.buttons.find(
+        (x) => x.value == "ExceptionTask",
+      );
       if (TaskRecoveryBtn) {
         TaskRecoveryBtn.onClick = function () {
           let rows = this.$refs.table.getSelected();
@@ -98,8 +101,35 @@
             });
         };
       }
+      let TaskCancelBtn = this.buttons.find((x) => x.value == "TaskCancel");
+      if (TaskCancelBtn) {
+        TaskCancelBtn.onClick = function () {
+          let rows = this.$refs.table.getSelected();
+          if (rows.length == 0) return this.$error("璇烽�夋嫨鏁版嵁!");
+          if (rows.length > 1) {
+            return this.$error("涓�娆″彧鑳芥搷浣滀竴鏉℃暟鎹�!");
+          }
+          this.$confirm("纭畾璐х鍙栨秷鍚楋紵", "鎻愮ず", {
+            confirmButtonText: "纭畾",
+            cancelButtonText: "鍙栨秷",
+            type: "warning",
+          }).then(() => {
+            const taskNum = rows[0].taskNum;
+            this.http
+              .post(
+                `api/Task/ManualTaskCancellation?taskNum=${taskNum}`,
+                null,
+                "浠诲姟鍙栨秷涓�",
+              )
+              .then((x) => {
+                if (!x.status) return this.$message.error(x.message);
+                this.$message.success("鎿嶄綔鎴愬姛");
+              });
+          });
+        };
+      }
       let TaskCompletedBtn = this.buttons.find(
-        (x) => x.value == "TaskCompleted"
+        (x) => x.value == "TaskCompleted",
       );
 
       if (TaskCompletedBtn) {
@@ -118,13 +148,23 @@
           })
             .then(() => {
               const taskNum = rows[0].taskNum;
+
+              // 鏂规硶1锛氬彂閫丣SON鏁版嵁锛堥渶瑕佸悗绔敮鎸乕FromBody]锛�
+              // this.http.post("api/Task/RecTaskCompleted", { taskNum }, "浠诲姟瀹屾垚涓�")
+
+              // 鎴栨柟娉�2锛歎RL鍙傛暟鏂瑰紡
               this.http
                 .post(
                   `api/Task/RecTaskCompleted?taskNum=${taskNum}`,
                   null,
-                  "浠诲姟瀹屾垚涓�"
+                  "浠诲姟瀹屾垚涓�",
                 )
 
+                // 鎴栨柟娉�3锛氳〃鍗曟暟鎹柟寮�
+                // let formData = new FormData();
+                // formData.append('taskNum', taskNum);
+                // this.http.post("api/Task/RecTaskCompleted", formData, "浠诲姟瀹屾垚涓�")
+
                 .then((x) => {
                   if (!x.status) return this.$message.error(x.message);
                   this.$message.success("鎿嶄綔鎴愬姛");
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.backup.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.backup.json"
index cf82eee..b6f204f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.backup.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.backup.json"
@@ -3,56 +3,8 @@
   "WorkspaceRootPath": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\",
   "Documents": [
     {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|solutionrelative:wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
       "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{9E4BFF47-52BF-4FD8-9CC7-3763BF19D9E0}|WIDESEAWCS_ISystemServices\\WIDESEAWCS_ISystemServices.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_isystemservices\\isys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{9E4BFF47-52BF-4FD8-9CC7-3763BF19D9E0}|WIDESEAWCS_ISystemServices\\WIDESEAWCS_ISystemServices.csproj|solutionrelative:wideseawcs_isystemservices\\isys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|solutionrelative:wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -63,12 +15,56 @@
       "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\invokeagvservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
       "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
+      "AbsoluteMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|solutionrelative:wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
       "AbsoluteMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|solutionrelative:wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|solutionrelative:wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{C2D3D138-9109-481B-8BEB-A27597890B2C}|WIDESEAWCS_DTO\\WIDESEAWCS_DTO.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_dto\\agv\\agvupdatedto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -207,162 +203,19 @@
             {
               "$type": "Document",
               "DocumentIndex": 1,
-              "Title": "Sys_LogService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "RelativeToolTip": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "ViewState": "AgIAALYAAAAAAAAAAAAvwNYAAAAUAAAAAAAAAA==",
+              "Title": "TaskController.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "ViewState": "AgIAAMIAAAAAAAAAAAAAANgAAAAmAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-03T12:17:08.144Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 7,
-              "Title": "ISys_LogService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "RelativeToolTip": "WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAcAAAA3AAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T03:12:26.097Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 10,
-              "Title": "Sys_LogController.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "ViewState": "AgIAAAQAAAAAAAAAAAAAAA8AAAApAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T03:10:12.097Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 4,
-              "Title": "WebSocketSetup.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T01:16:24.435Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 3,
-              "Title": "TaskService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ViewState": "AgIAAMcEAAAAAAAAAAAAANwEAAAAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-01-28T05:57:11.009Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 0,
-              "Title": "AGVErrorJob.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "ViewState": "AgIAABoAAAAAAAAAAAAAACsAAAAvAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-01T04:08:40.07Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 2,
-              "Title": "AGVExtend.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "ViewState": "AgIAAHMAAAAAAAAAAAAQwHgAAABfAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-03T03:31:51.002Z",
+              "WhenOpened": "2026-01-28T03:49:18.524Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
               "DocumentIndex": 5,
-              "Title": "Program.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Program.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Program.cs",
-              "ViewState": "AgIAAHMAAAAAAAAAAADgv4EAAAAcAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-02T01:52:35.013Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 6,
-              "Title": "appsettings.json",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAACAAAAAXAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
-              "WhenOpened": "2026-02-02T01:52:23.347Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 9,
-              "Title": "ISys_LogRepository.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "RelativeToolTip": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "ViewState": "AgIAAA4AAAAAAAAAAAAAAAoAAAA9AAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-13T03:21:22.781Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 8,
-              "Title": "Sys_Log.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "ViewState": "AgIAAAsAAAAAAAAAAAAuwAsAAAAYAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-13T03:22:05.839Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 14,
-              "Title": "InvokeAGVService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "ViewState": "AgIAANUAAAAAAAAAAAAAAOQAAAAiAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-01T04:08:50.503Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 15,
               "Title": "AGVController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs",
@@ -375,7 +228,157 @@
             },
             {
               "$type": "Document",
+              "DocumentIndex": 4,
+              "Title": "WebSocketSetup.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "ViewState": "AgIAABYAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-11T01:16:24.435Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 3,
+              "Title": "AGVErrorJob.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "ViewState": "AgIAAB0AAAAAAAAAAAAAACsAAAAxAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-01T04:08:40.07Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 2,
+              "Title": "InvokeAGVService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "ViewState": "AgIAAMgAAAAAAAAAAAAQwOAAAAAQAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-01T04:08:50.503Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 0,
+              "Title": "TaskService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ViewState": "AgIAAOgEAAAAAAAAAADgvwUFAAANAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-01-28T05:57:11.009Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 6,
+              "Title": "Sys_LogService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "RelativeToolTip": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "ViewState": "AgIAAM0AAAAAAAAAAAD4v8cAAAAUAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-03T12:17:08.144Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 7,
+              "Title": "ITaskService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "ViewState": "AgIAAB4AAAAAAAAAAAAAALIAAAAbAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-12T06:27:17.22Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
               "DocumentIndex": 11,
+              "Title": "Program.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Program.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Program.cs",
+              "ViewState": "AgIAAHMAAAAAAAAAAADgv4EAAAAcAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-02T01:52:35.013Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 9,
+              "Title": "appsettings.json",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
+              "ViewState": "AgIAABsAAAAAAAAAAAAAACAAAAAXAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+              "WhenOpened": "2026-02-02T01:52:23.347Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 10,
+              "Title": "AGVExtend.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "ViewState": "AgIAAHMAAAAAAAAAAAAQwHgAAABfAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-03T03:31:51.002Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 8,
+              "Title": "Sys_LogController.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAATAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-11T03:10:12.097Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 13,
+              "Title": "ISys_LogRepository.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "RelativeToolTip": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "ViewState": "AgIAAA4AAAAAAAAAAAAAAAoAAAA9AAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-13T03:21:22.781Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 12,
+              "Title": "Sys_Log.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "ViewState": "AgIAAAsAAAAAAAAAAAAuwAsAAAAYAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-13T03:22:05.839Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 14,
               "Title": "AutofacPropertityModuleReg.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Filter\\AutofacPropertityModuleReg.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Filter\\AutofacPropertityModuleReg.cs",
@@ -383,12 +386,11 @@
               "RelativeToolTip": "WIDESEAWCS_Server\\Filter\\AutofacPropertityModuleReg.cs",
               "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-13T03:04:34.011Z",
-              "EditorCaption": ""
+              "WhenOpened": "2026-03-13T03:04:34.011Z"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 12,
+              "DocumentIndex": 15,
               "Title": "CustomProfile.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Filter\\CustomProfile.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Filter\\CustomProfile.cs",
@@ -396,37 +398,11 @@
               "RelativeToolTip": "WIDESEAWCS_Server\\Filter\\CustomProfile.cs",
               "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T01:16:27.4Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 13,
-              "Title": "TaskController.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "ViewState": "AgIAAFYAAAAAAAAAAAAcwGYAAABAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-01-28T03:49:18.524Z",
-              "EditorCaption": ""
+              "WhenOpened": "2026-03-11T01:16:27.4Z"
             },
             {
               "$type": "Document",
               "DocumentIndex": 16,
-              "Title": "ITaskService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "ViewState": "AgIAAKAAAAAAAAAAAAAhwLIAAAAbAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-12T06:27:17.22Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 17,
               "Title": "AgvUpdateDTO.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_DTO\\Agv\\AgvUpdateDTO.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_DTO\\Agv\\AgvUpdateDTO.cs",
@@ -438,7 +414,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 18,
+              "DocumentIndex": 17,
               "Title": "index.html",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\index.html",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\index.html",
@@ -450,7 +426,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 20,
+              "DocumentIndex": 19,
               "Title": "TaskService_Operate.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService_Operate.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService_Operate.cs",
@@ -462,7 +438,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 19,
+              "DocumentIndex": 18,
               "Title": "AGVJob.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVJob.cs",
@@ -474,7 +450,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 21,
+              "DocumentIndex": 20,
               "Title": "CustomAuthorizeFilter.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Filter\\CustomAuthorizeFilter.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Filter\\CustomAuthorizeFilter.cs",
@@ -486,7 +462,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 22,
+              "DocumentIndex": 21,
               "Title": "Task_HtyService.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\Task_HtyService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\Task_HtyService.cs",
@@ -498,7 +474,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 23,
+              "DocumentIndex": 22,
               "Title": "TaskExecuteDetailService.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskExecuteDetailService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskExecuteDetailService.cs",
@@ -510,7 +486,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 25,
+              "DocumentIndex": 24,
               "Title": "PTLAPIController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\PTLAPIController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\PTLAPIController.cs",
@@ -522,7 +498,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 26,
+              "DocumentIndex": 25,
               "Title": "ConveyorLineJob2.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineJob2.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineJob2.cs",
@@ -534,7 +510,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 27,
+              "DocumentIndex": 26,
               "Title": "ConveyorLineJob1.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\\u4E00\u671F\u7EBF\u4F53\\ConveyorLineJob1.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u4E00\u671F\u7EBF\u4F53\\ConveyorLineJob1.cs",
@@ -546,7 +522,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 24,
+              "DocumentIndex": 23,
               "Title": "WebAPIController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\WebAPIController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\WebAPIController.cs",
@@ -558,7 +534,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 32,
+              "DocumentIndex": 31,
               "Title": "TaskTypeEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
@@ -570,7 +546,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 31,
+              "DocumentIndex": 30,
               "Title": "TaskTypeGroup.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeGroup.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeGroup.cs",
@@ -582,7 +558,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 28,
+              "DocumentIndex": 27,
               "Title": "jquery-3.3.1.min.js",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\wwwroot\\js\\jquery-3.3.1.min.js",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\wwwroot\\js\\jquery-3.3.1.min.js",
@@ -594,7 +570,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 33,
+              "DocumentIndex": 32,
               "Title": "SequenceEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\SequenceEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\SequenceEnum.cs",
@@ -606,7 +582,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 30,
+              "DocumentIndex": 29,
               "Title": "TaskEnumHelper.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskEnumHelper.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskEnumHelper.cs",
@@ -618,7 +594,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 29,
+              "DocumentIndex": 28,
               "Title": "TaskStatusEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
@@ -630,7 +606,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 34,
+              "DocumentIndex": 33,
               "Title": "W_MDDBName.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\DBNames\\W_MDDBName.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\DBNames\\W_MDDBName.cs",
@@ -642,7 +618,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 37,
+              "DocumentIndex": 36,
               "Title": "TaskExecuteDetailController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskExecuteDetailController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskExecuteDetailController.cs",
@@ -654,7 +630,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 35,
+              "DocumentIndex": 34,
               "Title": "ConveyorLineDBName.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineDBName.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineDBName.cs",
@@ -666,7 +642,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 36,
+              "DocumentIndex": 35,
               "Title": "Task_HtyController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\Task_HtyController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\Task_HtyController.cs",
@@ -678,7 +654,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 38,
+              "DocumentIndex": 37,
               "Title": "StationTypeEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\StationTypeEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\StationTypeEnum.cs",
@@ -690,7 +666,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 39,
+              "DocumentIndex": 38,
               "Title": "LocationStatusEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\LocationStatusEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\LocationStatusEnum.cs",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.json"
index aeb52cf..acba1c7 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.json"
@@ -3,56 +3,8 @@
   "WorkspaceRootPath": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\",
   "Documents": [
     {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|solutionrelative:wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
       "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{9E4BFF47-52BF-4FD8-9CC7-3763BF19D9E0}|WIDESEAWCS_ISystemServices\\WIDESEAWCS_ISystemServices.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_isystemservices\\isys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{9E4BFF47-52BF-4FD8-9CC7-3763BF19D9E0}|WIDESEAWCS_ISystemServices\\WIDESEAWCS_ISystemServices.csproj|solutionrelative:wideseawcs_isystemservices\\isys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|solutionrelative:wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -63,12 +15,56 @@
       "RelativeMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|solutionrelative:wideseawcs_taskinfoservice\\invokeagvservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agverrorjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\hostedservice\\websocketsetup.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
       "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\agv\\agvcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
+      "AbsoluteMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|solutionrelative:wideseawcs_systemservices\\sys_logservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
       "AbsoluteMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{7279A2AE-8D1F-4E66-A73A-01AF7927A336}|WIDESEAWCS_ITaskInfoService\\WIDESEAWCS_ITaskInfoService.csproj|solutionrelative:wideseawcs_itaskinfoservice\\itaskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\controllers\\system\\sys_logcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\appsettings.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\agv\\agvextend.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{9D2AC22C-9A86-41AE-AA02-553554A7B1D7}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\system\\sys_log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{B778DFFD-A5BA-4CAF-805E-2630CF080CDC}|WIDESEAWCS_ISystemRepository\\WIDESEAWCS_ISystemRepository.csproj|solutionrelative:wideseawcs_isystemrepository\\isys_logrepository.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\autofacpropertitymodulereg.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|solutionrelative:wideseawcs_server\\filter\\customprofile.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{C2D3D138-9109-481B-8BEB-A27597890B2C}|WIDESEAWCS_DTO\\WIDESEAWCS_DTO.csproj|f:\\desktop\\haerbingctu28\\\u9879\u76EE\u4EE3\u7801\\wcsservices\\wideseawcs_dto\\agv\\agvupdatedto.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -170,7 +166,7 @@
       "DocumentGroups": [
         {
           "DockedWidth": 200,
-          "SelectedChildIndex": 14,
+          "SelectedChildIndex": 13,
           "Children": [
             {
               "$type": "Bookmark",
@@ -206,163 +202,20 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 7,
-              "Title": "ISys_LogService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "RelativeToolTip": "WIDESEAWCS_ISystemServices\\ISys_LogService.cs",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAcAAAA3AAAAAAAAAA==",
+              "DocumentIndex": 1,
+              "Title": "TaskController.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
+              "ViewState": "AgIAAMIAAAAAAAAAAAAAANgAAAAmAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T03:12:26.097Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 10,
-              "Title": "Sys_LogController.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
-              "ViewState": "AgIAAAQAAAAAAAAAAAAAAA8AAAApAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T03:10:12.097Z",
+              "WhenOpened": "2026-01-28T03:49:18.524Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
               "DocumentIndex": 5,
-              "Title": "WebSocketSetup.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T01:16:24.435Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 4,
-              "Title": "TaskService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ViewState": "AgIAAMcEAAAAAAAAAAAAANwEAAAAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-01-28T05:57:11.009Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 1,
-              "Title": "AGVErrorJob.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
-              "ViewState": "AgIAABoAAAAAAAAAAAAAACsAAAAvAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-01T04:08:40.07Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 3,
-              "Title": "AGVExtend.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
-              "ViewState": "AgIAAHMAAAAAAAAAAAAQwHgAAABfAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-03T03:31:51.002Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 0,
-              "Title": "appsettings.json",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
-              "ViewState": "AgIAABsAAAAAAAAAAAAAACAAAAAXAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
-              "WhenOpened": "2026-02-02T01:52:23.347Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 2,
-              "Title": "Sys_LogService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "RelativeToolTip": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
-              "ViewState": "AgIAALYAAAAAAAAAAAAvwNYAAAAUAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-03T12:17:08.144Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 6,
-              "Title": "Program.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Program.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Program.cs",
-              "ViewState": "AgIAAHMAAAAAAAAAAADgv4EAAAAcAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-02T01:52:35.013Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 9,
-              "Title": "ISys_LogRepository.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "RelativeToolTip": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
-              "ViewState": "AgIAAA4AAAAAAAAAAAAAAAoAAAA9AAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-13T03:21:22.781Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 8,
-              "Title": "Sys_Log.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
-              "ViewState": "AgIAAAsAAAAAAAAAAAAuwAsAAAAYAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-13T03:22:05.839Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 14,
-              "Title": "InvokeAGVService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
-              "ViewState": "AgIAANUAAAAAAAAAAAAAAOQAAAAiAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-02-01T04:08:50.503Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 15,
               "Title": "AGVController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\AGV\\AGVController.cs",
@@ -375,7 +228,157 @@
             },
             {
               "$type": "Document",
+              "DocumentIndex": 4,
+              "Title": "WebSocketSetup.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\HostedService\\WebSocketSetup.cs",
+              "ViewState": "AgIAABYAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-11T01:16:24.435Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 3,
+              "Title": "AGVErrorJob.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVErrorJob.cs",
+              "ViewState": "AgIAAB0AAAAAAAAAAAAAACsAAAAvAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-01T04:08:40.07Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 2,
+              "Title": "InvokeAGVService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\InvokeAGVService.cs",
+              "ViewState": "AgIAAMgAAAAAAAAAAAAQwOAAAAAQAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-01T04:08:50.503Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 0,
+              "Title": "TaskService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ViewState": "AgIAANUEAAAAAAAAAAAewOQEAAAQAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-01-28T05:57:11.009Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 6,
+              "Title": "Sys_LogService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "RelativeToolTip": "WIDESEAWCS_SystemServices\\Sys_LogService.cs",
+              "ViewState": "AgIAAM0AAAAAAAAAAAD4v8cAAAAUAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-03T12:17:08.144Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 7,
+              "Title": "ITaskService.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
+              "ViewState": "AgIAAB4AAAAAAAAAAAAAALIAAAAbAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-12T06:27:17.22Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
               "DocumentIndex": 11,
+              "Title": "Program.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Program.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Program.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Program.cs",
+              "ViewState": "AgIAAHMAAAAAAAAAAADgv4EAAAAcAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-02T01:52:35.013Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 9,
+              "Title": "appsettings.json",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
+              "ViewState": "AgIAABsAAAAAAAAAAAAAACAAAAAXAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+              "WhenOpened": "2026-02-02T01:52:23.347Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 10,
+              "Title": "AGVExtend.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\AGV\\AGVExtend.cs",
+              "ViewState": "AgIAAHMAAAAAAAAAAAAQwHgAAABfAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-02-03T03:31:51.002Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 8,
+              "Title": "Sys_LogController.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_LogController.cs",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAATAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-11T03:10:12.097Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 13,
+              "Title": "ISys_LogRepository.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "RelativeToolTip": "WIDESEAWCS_ISystemRepository\\ISys_LogRepository.cs",
+              "ViewState": "AgIAAA4AAAAAAAAAAAAAAAoAAAA9AAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-13T03:21:22.781Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 12,
+              "Title": "Sys_Log.cs",
+              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
+              "ViewState": "AgIAAAsAAAAAAAAAAAAuwAsAAAAYAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2026-03-13T03:22:05.839Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 14,
               "Title": "AutofacPropertityModuleReg.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Filter\\AutofacPropertityModuleReg.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Filter\\AutofacPropertityModuleReg.cs",
@@ -383,12 +386,11 @@
               "RelativeToolTip": "WIDESEAWCS_Server\\Filter\\AutofacPropertityModuleReg.cs",
               "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-13T03:04:34.011Z",
-              "EditorCaption": ""
+              "WhenOpened": "2026-03-13T03:04:34.011Z"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 12,
+              "DocumentIndex": 15,
               "Title": "CustomProfile.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Filter\\CustomProfile.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Filter\\CustomProfile.cs",
@@ -396,37 +398,11 @@
               "RelativeToolTip": "WIDESEAWCS_Server\\Filter\\CustomProfile.cs",
               "ViewState": "AgIAAAAAAAAAAAAAAADwvwAAAAAAAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-11T01:16:27.4Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 13,
-              "Title": "TaskController.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
-              "ViewState": "AgIAAFYAAAAAAAAAAAAcwGYAAABAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-01-28T03:49:18.524Z",
-              "EditorCaption": ""
+              "WhenOpened": "2026-03-11T01:16:27.4Z"
             },
             {
               "$type": "Document",
               "DocumentIndex": 16,
-              "Title": "ITaskService.cs",
-              "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "ToolTip": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "RelativeToolTip": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
-              "ViewState": "AgIAAKAAAAAAAAAAAAAhwLIAAAAbAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2026-03-12T06:27:17.22Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 17,
               "Title": "AgvUpdateDTO.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_DTO\\Agv\\AgvUpdateDTO.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_DTO\\Agv\\AgvUpdateDTO.cs",
@@ -438,7 +414,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 18,
+              "DocumentIndex": 17,
               "Title": "index.html",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\index.html",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\index.html",
@@ -450,7 +426,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 20,
+              "DocumentIndex": 19,
               "Title": "TaskService_Operate.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskService_Operate.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService_Operate.cs",
@@ -462,7 +438,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 19,
+              "DocumentIndex": 18,
               "Title": "AGVJob.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\AGV\\AGVJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\AGV\\AGVJob.cs",
@@ -474,7 +450,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 21,
+              "DocumentIndex": 20,
               "Title": "CustomAuthorizeFilter.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Filter\\CustomAuthorizeFilter.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Filter\\CustomAuthorizeFilter.cs",
@@ -486,7 +462,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 22,
+              "DocumentIndex": 21,
               "Title": "Task_HtyService.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\Task_HtyService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\Task_HtyService.cs",
@@ -498,7 +474,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 23,
+              "DocumentIndex": 22,
               "Title": "TaskExecuteDetailService.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_TaskInfoService\\TaskExecuteDetailService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskExecuteDetailService.cs",
@@ -510,7 +486,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 25,
+              "DocumentIndex": 24,
               "Title": "PTLAPIController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\PTLAPIController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\PTLAPIController.cs",
@@ -522,7 +498,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 26,
+              "DocumentIndex": 25,
               "Title": "ConveyorLineJob2.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineJob2.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineJob2.cs",
@@ -534,7 +510,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 27,
+              "DocumentIndex": 26,
               "Title": "ConveyorLineJob1.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\\u4E00\u671F\u7EBF\u4F53\\ConveyorLineJob1.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u4E00\u671F\u7EBF\u4F53\\ConveyorLineJob1.cs",
@@ -546,7 +522,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 24,
+              "DocumentIndex": 23,
               "Title": "WebAPIController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\WebAPIController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\WebAPIController.cs",
@@ -558,7 +534,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 32,
+              "DocumentIndex": 31,
               "Title": "TaskTypeEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeEnum.cs",
@@ -570,7 +546,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 31,
+              "DocumentIndex": 30,
               "Title": "TaskTypeGroup.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskTypeGroup.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskTypeGroup.cs",
@@ -582,7 +558,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 28,
+              "DocumentIndex": 27,
               "Title": "jquery-3.3.1.min.js",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\wwwroot\\js\\jquery-3.3.1.min.js",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\wwwroot\\js\\jquery-3.3.1.min.js",
@@ -594,7 +570,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 33,
+              "DocumentIndex": 32,
               "Title": "SequenceEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\SequenceEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\SequenceEnum.cs",
@@ -606,7 +582,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 30,
+              "DocumentIndex": 29,
               "Title": "TaskEnumHelper.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskEnumHelper.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskEnumHelper.cs",
@@ -618,7 +594,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 29,
+              "DocumentIndex": 28,
               "Title": "TaskStatusEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
@@ -630,7 +606,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 34,
+              "DocumentIndex": 33,
               "Title": "W_MDDBName.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\DBNames\\W_MDDBName.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\DBNames\\W_MDDBName.cs",
@@ -642,7 +618,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 37,
+              "DocumentIndex": 36,
               "Title": "TaskExecuteDetailController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\TaskExecuteDetailController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskExecuteDetailController.cs",
@@ -654,7 +630,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 35,
+              "DocumentIndex": 34,
               "Title": "ConveyorLineDBName.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineDBName.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\\u4E8C\u671F\u7EBF\u4F53\\ConveyorLineDBName.cs",
@@ -666,7 +642,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 36,
+              "DocumentIndex": 35,
               "Title": "Task_HtyController.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Server\\Controllers\\Task\\Task_HtyController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\Task_HtyController.cs",
@@ -678,7 +654,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 38,
+              "DocumentIndex": 37,
               "Title": "StationTypeEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\StationTypeEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\StationTypeEnum.cs",
@@ -690,7 +666,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 39,
+              "DocumentIndex": 38,
               "Title": "LocationStatusEnum.cs",
               "DocumentMoniker": "F:\\Desktop\\HaErBingCTU28\\\u9879\u76EE\u4EE3\u7801\\WCSServices\\WIDESEAWCS_Common\\LocationStatusEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\LocationStatusEnum.cs",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs"
index 3e4809a..2f6b23e 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs"
@@ -185,5 +185,6 @@
         /// <returns>鎿嶄綔缁撴灉</returns>
         WebResponseContent ManualTaskCancellation(int taskNum);
         void AgvSearchStatus1(Dt_ErrorInfo e2);
+        WebResponseContent WmsRecovery();
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs"
index 628fd01..f6bcbfc 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs"
@@ -206,5 +206,15 @@
         {
             return Service.ResetAllExceptionTask(taskNum);
         }
+
+        /// <summary>
+        /// WMS寮傚父鎭㈠
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("WmsRecovery"), AllowAnonymous]
+        public WebResponseContent WmsRecovery()
+        {
+            return Service.WmsRecovery();
+        }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 6887160..deda58a 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -91,7 +91,7 @@
 
         public List<int> TaskRelocationTypes => typeof(TaskTypeEnum).GetEnumIndexList().Where(x => x >= 900 && x < 1000).ToList();
 
-        public TaskService(ITaskRepository BaseDal, IMapper mapper, ICacheService cacheService, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository, IApiInfoRepository apiInfoRepository,ILocationInfoRepository locationInfoRepository,IUnitOfWorkManage unitOfWorkManage, ILocationInfoService locationInfoService,ILocationStatusChangeRecordService locationStatusChangeRecordService,IErrorInfoRepository errorInfoRepository) : base(BaseDal)
+        public TaskService(ITaskRepository BaseDal, IMapper mapper, ICacheService cacheService, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IStationMangerRepository stationMangerRepository, IRouterRepository routerRepository, IApiInfoRepository apiInfoRepository, ILocationInfoRepository locationInfoRepository, IUnitOfWorkManage unitOfWorkManage, ILocationInfoService locationInfoService, ILocationStatusChangeRecordService locationStatusChangeRecordService, IErrorInfoRepository errorInfoRepository) : base(BaseDal)
         {
             _mapper = mapper;
             _cacheService = cacheService;
@@ -104,7 +104,7 @@
             _locationInfoRepository = locationInfoRepository;
             _unitOfWorkManage = unitOfWorkManage;
             _locationInfoService = locationInfoService;
-            _locationStatusChangeRecordService=locationStatusChangeRecordService;
+            _locationStatusChangeRecordService = locationStatusChangeRecordService;
             _errorInfoRepository = errorInfoRepository;
         }
         static object lock_taskReceive = new object();
@@ -123,18 +123,18 @@
                 {
                     WriteLog.Write_Log("鍏ュ簱浠诲姟涓嬪彂", "WMS鍏ュ簱浠诲姟鎺ユ敹鍙傛暟", "鎺ユ敹鍙傛暟", $"鍙傛暟锛歿taskDTO.ToJson()}");
                     List<Dt_Task> tasks = new List<Dt_Task>();
-                    List<Dt_Task> taskOlds = BaseDal.QueryData(x=> taskDTO.Tasks.Select(x => x.TaskDescribe.ContainerCode).Contains(x.PalletCode));
-                    List<Dt_LocationInfo> locationInfos = _locationInfoRepository.GetCanOut(taskDTO.Tasks.Select(x=>x.TaskDescribe.ContainerCode).ToList());
+                    List<Dt_Task> taskOlds = BaseDal.QueryData(x => taskDTO.Tasks.Select(x => x.TaskDescribe.ContainerCode).Contains(x.PalletCode));
+                    List<Dt_LocationInfo> locationInfos = _locationInfoRepository.GetCanOut(taskDTO.Tasks.Select(x => x.TaskDescribe.ContainerCode).ToList());
                     List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData();
                     ////涓嬪彂浠诲姟缁�
                     //string taskGroup= taskDTO.TaskGroupCode.IsNullOrEmpty() ? Guid.NewGuid().ToString().Replace("-","") : taskDTO.TaskGroupCode;
-                    foreach (var item in taskDTO.Tasks.OrderBy(x=>x.TaskDescribe.ToStationCode))
+                    foreach (var item in taskDTO.Tasks.OrderBy(x => x.TaskDescribe.ToStationCode))
                     {
                         if (item.TaskDescribe.ToStationCode.IsNullOrEmpty()) throw new Exception($"浠诲姟{item.TaskCode}鍑哄簱鐩爣鎿嶄綔鍙颁笉鑳戒负绌�");
                         //鑾峰彇鎿嶄綔鍙�
                         Dt_StationManger? stationManger = stationMangers.FirstOrDefault(x => x.PickStationCode == item.TaskDescribe.ToStationCode);
                         if (stationManger == null) throw new Exception($"浠诲姟{item.TaskCode}鍑哄簱鐩爣鎿嶄綔鍙皗item.TaskDescribe.ToStationCode}涓嶅瓨鍦�");
-                        Dt_Task? taskOld = taskOlds.FirstOrDefault(x=>x.PalletCode==item.TaskDescribe.ContainerCode);
+                        Dt_Task? taskOld = taskOlds.FirstOrDefault(x => x.PalletCode == item.TaskDescribe.ContainerCode);
                         if (taskOld != null)
                         {
                             errorMsg += $"鏂欑{taskOld.PalletCode}" + (taskOld.TaskType == TaskTypeEnum.Inbound.ObjToInt() ? "鍏ュ簱浠诲姟宸插瓨鍦�;" : "鍑哄簱浠诲姟宸插瓨鍦�;");
@@ -147,7 +147,7 @@
                             errorMsg += $"鏂欑{item.TaskDescribe.ContainerCode}涓嶅瓨鍦�;";
                             content.FailData.Add(new BinCodeObj() { Bincode = item.TaskDescribe.ContainerCode });
                             continue;
-                        };
+                        }
                         Dt_LocationInfo? noOutLocation = locationInfos.FirstOrDefault(x => (x.LocationStatus != LocationStatusEnum.InStock.ObjToInt() || x.EnableStatus != EnableStatusEnum.Normal.ObjToInt()) && x.PalletCode == item.TaskDescribe.ContainerCode);
                         if (noOutLocation != null)
                         {
@@ -171,7 +171,7 @@
 
                     locationInfos.ForEach(x =>
                     {
-                        x.LocationStatus=LocationStatusEnum.Lock.ObjToInt();
+                        x.LocationStatus = LocationStatusEnum.Lock.ObjToInt();
                     });
                     //娣诲姞浠诲姟鏇存柊璐т綅鏁版嵁
                     _unitOfWorkManage.BeginTran();
@@ -179,11 +179,11 @@
                     _locationInfoRepository.UpdateData(locationInfos);
                     _unitOfWorkManage.CommitTran();
                     _taskExecuteDetailService.AddTaskExecuteDetail(tasks.Select(x => x.TaskNum).ToList(), "鎺ユ敹WMS浠诲姟");
-                    if (tasks.Count>0)
+                    if (tasks.Count > 0)
                     {
                         _locationStatusChangeRecordService.AddLocationStatusChangeRecord(locationInfos, LocationStatusEnum.InStock, LocationStatusEnum.Lock, LocationChangeType.OutboundAssignLocation, tasks);
                     }
-                    content.OK(errorMsg.IsNullOrEmpty()? "鎴愬姛": errorMsg);
+                    content.OK(errorMsg.IsNullOrEmpty() ? "鎴愬姛" : errorMsg);
                 }
             }
             catch (Exception ex)
@@ -192,7 +192,7 @@
             }
             return content;
         }
-        
+
         /// <summary>
         /// 瀹瑰櫒鍏ュ簱鍒涘缓浠诲姟
         /// </summary>
@@ -206,7 +206,7 @@
                 Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.PalletCode == containerFlowDTO.ContainerCode);
                 if (locationInfo != null) throw new Exception($"搴撲綅鏂欑鍙穥containerFlowDTO.ContainerCode}宸插瓨鍦�");
                 Dt_Task taskOld = BaseDal.QueryFirst(x => x.PalletCode == containerFlowDTO.ContainerCode);
-                if (taskOld !=null && taskOld.PalletCode == containerFlowDTO.ContainerCode && taskOld.TaskType == TaskTypeEnum.Inbound.ObjToInt() && taskOld.TaskState == TaskStatusEnum.CL_Executing.ObjToInt() && taskOld.DeviceCode == deviceCode)
+                if (taskOld != null && taskOld.PalletCode == containerFlowDTO.ContainerCode && taskOld.TaskType == TaskTypeEnum.Inbound.ObjToInt() && taskOld.TaskState == TaskStatusEnum.CL_Executing.ObjToInt() && taskOld.DeviceCode == deviceCode)
                 {
                     Thread.Sleep(500);
                     return content.OK();
@@ -243,7 +243,7 @@
                 task.Roadway = noInLocation.RoadwayNo;
                 task.DeviceCode = stationManger.StationDeviceCode;
                 task.TaskState = TaskStatusEnum.CL_Executing.ObjToInt();
-                
+
                 //娣诲姞浠诲姟
                 int taskId = BaseDal.AddData(task);
                 if (type > 0)
@@ -466,14 +466,14 @@
         /// 鐢宠鍏ュ簱
         /// </summary>
         /// <returns></returns>
-        public WebResponseContent RequestInTask(string stationCode,string barCode)
+        public WebResponseContent RequestInTask(string stationCode, string barCode)
         {
             WebResponseContent content = new WebResponseContent();
             try
             {
                 lock (lock_requestInTask)
                 {
-                    Dt_Task task = BaseDal.QueryFirst(x => x.PalletCode == barCode && x.TaskType==TaskTypeEnum.Inbound.ObjToInt() && x.NextAddress == stationCode && x.TaskState == TaskStatusEnum.CL_Executing.ObjToInt());
+                    Dt_Task task = BaseDal.QueryFirst(x => x.PalletCode == barCode && x.TaskType == TaskTypeEnum.Inbound.ObjToInt() && x.NextAddress == stationCode && x.TaskState == TaskStatusEnum.CL_Executing.ObjToInt());
                     if (task == null) throw new Exception($"{barCode}鏂欑鏈壘鍒颁换鍔�!");
                     Dt_LocationInfo? locationInfo = _locationInfoService.AssignLocation();
                     if (locationInfo == null) throw new Exception($"鍙敤璐т綅涓嶈冻!");
@@ -639,7 +639,7 @@
             return content;
         }
 
-        
+
         /// <summary>
         /// 鎺ュ彈WMS鎵嬪姩瀹屾垚浠诲姟
         /// </summary>
@@ -669,7 +669,7 @@
         /// <returns></returns>
         public WebResponseContent AgvTaskFlow(string code)
         {
-            WebResponseContent content=new WebResponseContent();
+            WebResponseContent content = new WebResponseContent();
             try
             {
                 WriteLog.Write_Log("AGV浠诲姟鏀捐", "AGV浠诲姟鏀捐鎺ュ彛", "鏂欑鍙�", $"鏂欑锛歿code}");
@@ -697,7 +697,7 @@
         /// WMS鏂欑鍒拌揪鎷i�変綅涓婃姤
         /// </summary>
         /// <returns></returns>
-        public WebResponseContent WMSPickUp(string stationCode,string pickCode)
+        public WebResponseContent WMSPickUp(string stationCode, string pickCode)
         {
             WebResponseContent content = new WebResponseContent();
             try
@@ -737,7 +737,7 @@
                 Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                 if (task != null && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)//鍑哄簱浠诲姟瀹屾垚閫昏緫
                 {
-                    Dt_LocationInfo locationInfo = _locationInfoRepository.QueryFirst(x=>x.PalletCode==task.PalletCode);
+                    Dt_LocationInfo locationInfo = _locationInfoRepository.QueryFirst(x => x.PalletCode == task.PalletCode);
                     if (locationInfo.LocationStatus != LocationStatusEnum.Lock.ObjToInt())
                     {
                         return content.Error($"{locationInfo.LocationCode}璐т綅鐘舵�佷笉姝g‘");
@@ -772,9 +772,9 @@
                     string response = HttpHelper.Post(url, request);
                     WriteLog.Write_Log("WMS鍑哄簱浠诲姟瀹屾垚鍥炰紶", "浠诲姟瀹屾垚鎺ュ彛", "浠诲姟淇℃伅", $"璇锋眰锛歿request}锛屽洖浼狅細{response}");
                     WMSResponseContent wMSResponse = JsonConvert.DeserializeObject<WMSResponseContent>(response) ?? throw new Exception($"{taskNum},鏈帴鏀跺埌WMS鍑哄簱涓婃姤杩斿洖鍊�");
-                    if (wMSResponse.Code != "0") content.Message=$"鍑哄簱浠诲姟{task.TaskNum}WMS鍑哄簱涓婃姤閿欒,淇℃伅:{wMSResponse.Msg}";
+                    if (wMSResponse.Code != "0") content.Message = $"鍑哄簱浠诲姟{task.TaskNum}WMS鍑哄簱涓婃姤閿欒,淇℃伅:{wMSResponse.Msg}";
                 }
-                else if(task != null && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)//鍏ュ簱浠诲姟瀹屾垚閫昏緫
+                else if (task != null && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)//鍏ュ簱浠诲姟瀹屾垚閫昏緫
                 {
                     string? url = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.WMSInOutBoundBack.ToString())?.ApiAddress;
                     if (string.IsNullOrEmpty(url))
@@ -834,14 +834,14 @@
                 WriteLog.Write_Log("浠诲姟鍙栨秷鎺ユ敹", "浜哄伐鎵嬪姩鍙栨秷鎸囧畾浠诲姟", "浠诲姟鍙�", $"浠诲姟锛歿taskNum}");
                 // 1. 鑾峰彇浠诲姟淇℃伅
                 Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
-                if (task == null)return content.Error($"浠诲姟{taskNum}涓嶅瓨鍦�");
+                if (task == null) return content.Error($"浠诲姟{taskNum}涓嶅瓨鍦�");
 
                 TaskTypeGroup group = task.TaskType.GetTaskTypeGroup();
                 if (group == TaskTypeGroup.InboundGroup)// 鍏ュ簱浠诲姟鍙栨秷
                 {
                     // 鑾峰彇鐩爣璐т綅
                     Dt_LocationInfo locationInfo = _locationInfoRepository.QueryFirst(x => x.LocationCode == task.TargetAddress);
-                    if (locationInfo == null)return content.Error($"鐩爣璐т綅{task.TargetAddress}涓嶅瓨鍦�");
+                    if (locationInfo == null) return content.Error($"鐩爣璐т綅{task.TargetAddress}涓嶅瓨鍦�");
                     // 楠岃瘉璐т綅鐘舵��
                     if (locationInfo.LocationStatus != LocationStatusEnum.Lock.ObjToInt())
                         return content.Error($"{task.TargetAddress}璐т綅鐘舵�佸紓甯革紝鏃犳硶鍙栨秷");
@@ -1067,12 +1067,12 @@
                 {
                     AgvTaskCancelDTO agvTaskCancel = new AgvTaskCancelDTO()
                     {
-                        RequestId= DateTime.Now.ToString("yyMMddHHmmssfff"),
-                        MissionCode=item.GroupId,
-                        ContainerCode=item.PalletCode,
-                        Position="",
-                        CancelMode= "CTU_REDIRECT_START",
-                        Reason=""
+                        RequestId = DateTime.Now.ToString("yyMMddHHmmssfff"),
+                        MissionCode = item.GroupId,
+                        ContainerCode = item.PalletCode,
+                        Position = "",
+                        CancelMode = "CTU_REDIRECT_START",
+                        Reason = ""
                     };
                     AgvCancelTask(agvTaskCancel);
                 }
@@ -1243,5 +1243,46 @@
             return content;
         }
 
+        public WebResponseContent WmsRecovery()
+        {
+            WebResponseContent content = new WebResponseContent();
+            try
+            {
+                // 鍒犻櫎绗竴涓紓甯�
+                // 鎸夊垱寤烘椂闂村崌搴忚幏鍙栫涓�鏉¤褰�
+                var orderBy = new Dictionary<string, OrderByType>
+                {
+                    { "CreateDate", OrderByType.Asc }
+                };
+                Dt_ErrorInfo errorInfo = _errorInfoRepository.QueryFirst(x => true, orderBy);
+                if (errorInfo == null)
+                {
+                    return content.Error("褰撳墠娌℃湁寮傚父浠诲姟");
+                }
+                // 鑾峰彇绗竴涓紓甯革紙鎸夊垱寤烘椂闂存帓搴忥級
+                _unitOfWorkManage.BeginTran();
+                _errorInfoRepository.DeleteData(errorInfo);
+                _unitOfWorkManage.CommitTran();
+                // 涓婃姤鎭㈠
+                string? apiErrorBack = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.WMSErrorBack.ToString())?.ApiAddress;
+                if (string.IsNullOrEmpty(apiErrorBack)) throw new Exception($"鏈壘鍒癢MS鏁呴殰涓婃姤,璇锋鏌ユ帴鍙i厤缃�");
+                TaskError taskError = new TaskError()
+                {
+                    MsgID = errorInfo.Id,
+                    StationCode = errorInfo.StationCode,
+                    MsgCode = 0,
+                    Msg = "鎭㈠"
+                };
+                string reqErrorBack = JsonConvert.SerializeObject(taskError, settings);
+                HttpHelper.Post(apiErrorBack, reqErrorBack);
+                return content.OK();
+            }
+            catch (Exception ex)
+            {
+                _unitOfWorkManage.RollbackTran();
+                return content.Error(ex.Message);
+                throw new Exception(ex.Message);
+            }
+        }
     }
 }

--
Gitblit v1.9.3