xiazhengtongxue
2026-03-17 4f3b0a6727ecfa555892ebea64bd76e5a07cd6fb
feat: 新增WMS异常上报自动恢复异常按钮
已修改8个文件
1466 ■■■■ 文件已修改
项目代码/WCSClient/config/buttons.js 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WCSClient/package-lock.json 295 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WCSClient/src/extension/taskinfo/task.js 94 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.backup.json 476 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WCSServices/.vs/WIDESEAWCS_Server/v18/DocumentLayout.json 480 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs 99 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ÏîÄ¿´úÂë/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: '',
ÏîÄ¿´úÂë/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",
ÏîÄ¿´úÂë/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("确定要执行WMS异常恢复吗?", "提示", {
            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:发送JSON数据(需要后端支持[FromBody])
              // this.http.post("api/Task/RecTaskCompleted", { taskNum }, "任务完成中")
              // æˆ–方法2:URL参数方式
              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("操作成功");
ÏîÄ¿´úÂë/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",
ÏîÄ¿´úÂë/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",
ÏîÄ¿´úÂë/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs
@@ -185,5 +185,6 @@
        /// <returns>操作结果</returns>
        WebResponseContent ManualTaskCancellation(int taskNum);
        void AgvSearchStatus1(Dt_ErrorInfo e2);
        WebResponseContent WmsRecovery();
    }
}
ÏîÄ¿´úÂë/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();
        }
    }
}
ÏîÄ¿´úÂë/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料箱到达拣选位上报
        /// </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}货位状态不正确");
@@ -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($"未找到WMS故障上报,请检查接口配置");
                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);
            }
        }
    }
}