From 7da6f394864ba0412c1ac58ba7752862de7d3f3d Mon Sep 17 00:00:00 2001
From: z8018 <1282578289@qq.com>
Date: 星期二, 06 五月 2025 10:41:48 +0800
Subject: [PATCH] 1

---
 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm |    0 
 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json                               |  345 +++++++++-------
 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal      |    0 
 项目代码/WCS/WIDESEAWCS_Client/src/views/taskinfo/task.vue                                                 |  119 +++--
 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json                        |  290 ++++++++------
 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal |    0 
 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm      |    0 
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskStatusEnum.cs                                         |   20 +
 项目代码/WCS/WIDESEAWCS_Client/src/views/taskinfo/task_hty.vue                                             |  102 ++--
 /dev/null                                                                                              |  126 ------
 项目代码/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js                                              |   30 
 项目代码/WCS/WIDESEAWCS_Client/src/router/viewGird.js                                                      |    4 
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs            |   24 +
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Gantry/GantryJob.cs                                        |   89 ++++
 14 files changed, 609 insertions(+), 540 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/dist.zip" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/dist.zip"
deleted file mode 100644
index 28be1b9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/dist.zip"
+++ /dev/null
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js"
index 310b615..c328097 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js"
@@ -27,21 +27,21 @@
             if (recoveryButton) recoveryButton.hidden = true;
 
             //鎵╁睍椤甸潰鍒濆鍖栨搷浣�
-            this.columns.push({
-                field: '鎿嶄綔',
-                title: '鎿嶄綔',
-                width: 70,
-                fixed: 'right',
-                align: 'center',
-                formatter: (row) => {
-                    return (
-                        '<i style="cursor: pointer;color: #2d8cf0;"class="el-icon-view">鏌ョ湅</i>'
-                    );
-                },
-                click: (row) => {
-                    this.$refs.gridBody.open(row);
-                }
-            });
+            // this.columns.push({
+            //     field: '鎿嶄綔',
+            //     title: '鎿嶄綔',
+            //     width: 70,
+            //     fixed: 'right',
+            //     align: 'center',
+            //     formatter: (row) => {
+            //         return (
+            //             '<i style="cursor: pointer;color: #2d8cf0;"class="el-icon-view">鏌ョ湅</i>'
+            //         );
+            //     },
+            //     click: (row) => {
+            //         this.$refs.gridBody.open(row);
+            //     }
+            // });
         },
         onInited() {
             //妗嗘灦鍒濆鍖栭厤缃悗
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/router/viewGird.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/router/viewGird.js"
index ea26b31..ec64cc9 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/router/viewGird.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/router/viewGird.js"
@@ -69,10 +69,6 @@
     name: 'Orderrows',
     component: () => import('@/views/system/Orderrows.vue')
   }, {
-    path: '/bigscreen',
-    name: 'bigscreen',
-    component: () => import('@/views/bigscreen.vue')
-  }, {
     path: '/containerInfo',
     name: 'containerInfo',
     component: () => import('@/views/basicinfo/containerInfo.vue')
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/bigscreen.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/bigscreen.vue"
deleted file mode 100644
index eee4a79..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/bigscreen.vue"
+++ /dev/null
@@ -1,373 +0,0 @@
-<template>
-  <div ref="container" class="scene-container">
-    <!-- 鍙傛暟杈撳叆闈㈡澘 -->
-    <div class="control-panel">
-      <div class="input-group">
-        <input
-          v-model.number="cubeParams.width"
-          placeholder="瀹藉害"
-          type="number"
-          step="0.1"
-          min="0.1"
-        />
-        <input
-          v-model.number="cubeParams.height"
-          placeholder="楂樺害"
-          type="number"
-          step="0.1"
-          min="0.1"
-        />
-        <input
-          v-model.number="cubeParams.depth"
-          placeholder="娣卞害"
-          type="number"
-          step="0.1"
-          min="0.1"
-        />
-      </div>
-      <div class="input-group">
-        <input v-model.number="cubeParams.x" placeholder="X鍧愭爣" type="number" step="0.1" />
-        <input v-model.number="cubeParams.y" placeholder="Y鍧愭爣" type="number" step="0.1" />
-        <input v-model.number="cubeParams.z" placeholder="Z鍧愭爣" type="number" step="0.1" />
-      </div>
-      <button @click="createCube">娣诲姞绔嬫柟浣�</button>
-    </div>
-  </div>
-</template>
-
-<script>
-import { onMounted, onBeforeUnmount, ref } from "vue";
-import * as THREE from "three";
-import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.js";
-import { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer.js";
-import { RenderPass } from "three/examples/jsm/postprocessing/RenderPass.js";
-
-export default {
-  setup() {
-    const container = ref(null);
-    let animationFrameId = null;
-    let scene = null;
-    let camera = null;
-    let renderer = null;
-    let controls = null;
-    let composer = null;
-    let client = ref(null); // 瀹㈡埛绔璞�
-
-    // 绔嬫柟浣撳弬鏁板搷搴斿紡瀵硅薄
-    const cubeParams = ref({
-      width: 2800,
-      height: 20,
-      depth: 700,
-      x: 0,
-      y: 0,
-      z: 0
-    });
-
-    // 鍒涘缓绔嬫柟浣撴柟娉�
-    const createCube = () => {
-      // 娣诲姞杈圭晫鎻愮ず
-      const warningDistance = 5000;
-      if (
-        Math.abs(cubeParams.value.x) > warningDistance ||
-        Math.abs(cubeParams.value.y) > warningDistance ||
-        Math.abs(cubeParams.value.z) > warningDistance
-      ) {
-        console.warn("鐗╀綋浣嶇疆瓒呭嚭鎺ㄨ崘鍙鑼冨洿锛屽缓璁皟鏁寸浉鏈哄弬鏁�");
-      }
-
-      // 鍒涘缓鍑犱綍浣�
-      const geometry = new THREE.BoxGeometry(
-        cubeParams.value.width,
-        cubeParams.value.height,
-        cubeParams.value.depth
-      );
-
-      // 鍒涘缓鏉愯川锛堢鎶�鎰熸潗璐級
-      // color: 0x00ffff,
-      //   specular: 0xffffff,
-      //   shininess: 100,
-      //   emissive: 0x004d61,
-      //   wireframe: false
-      const material = new THREE.MeshPhongMaterial({
-        color: 0x8b4513, // 鍩虹鑹诧細闉嶆鑹�
-        specular: 0x332211, // 楂樺厜鑹诧細娣辨
-        shininess: 30, // 鏉愯川鍏夋辰搴�
-        roughness: 0.6 // 琛ㄩ潰绮楃硻搴�
-      });
-
-      // 鍒涘缓缃戞牸瀵硅薄
-      const cube = new THREE.Mesh(geometry, material);
-      cube.position.set(
-        cubeParams.value.x,
-        cubeParams.value.y,
-        cubeParams.value.z
-      );
-
-      // 娣诲姞鍙戝厜杈规
-      const edges = new THREE.EdgesGeometry(geometry);
-      const edgeMaterial = new THREE.LineBasicMaterial({
-        color: 0xffffff,
-        linewidth: 2
-      });
-      const line = new THREE.LineSegments(edges, edgeMaterial);
-      cube.add(line);
-
-      scene.add(cube);
-      //fitCameraToObject(); // 娣诲姞绔嬫柟浣撳悗鑷姩璋冩暣瑙嗚
-    };
-
-    const createCube2 = (x, y, z, length, width, height) => {
-      debugger;
-      // 娣诲姞杈圭晫鎻愮ず
-      const warningDistance = 5000;
-      if (
-        Math.abs(x) > warningDistance ||
-        Math.abs(y) > warningDistance ||
-        Math.abs(z) > warningDistance
-      ) {
-        console.warn("鐗╀綋浣嶇疆瓒呭嚭鎺ㄨ崘鍙鑼冨洿锛屽缓璁皟鏁寸浉鏈哄弬鏁�");
-      }
-
-      // 鍒涘缓鍑犱綍浣�
-      const geometry = new THREE.BoxGeometry(length, height, width);
-
-      // 鍒涘缓鏉愯川锛堢鎶�鎰熸潗璐級
-      // color: 0x00ffff,
-      //   specular: 0xffffff,
-      //   shininess: 100,
-      //   emissive: 0x004d61,
-      //   wireframe: false
-      const material = new THREE.MeshPhongMaterial({
-        color: 0x8b4513, // 鍩虹鑹诧細闉嶆鑹�
-        specular: 0x332211, // 楂樺厜鑹诧細娣辨
-        shininess: 30, // 鏉愯川鍏夋辰搴�
-        roughness: 0.6 // 琛ㄩ潰绮楃硻搴�
-      });
-
-      // 鍒涘缓缃戞牸瀵硅薄
-      const cube = new THREE.Mesh(geometry, material);
-      cube.position.set(x, z, y);
-
-      // 娣诲姞鍙戝厜杈规
-      const edges = new THREE.EdgesGeometry(geometry);
-      const edgeMaterial = new THREE.LineBasicMaterial({
-        color: 0xffffff,
-        linewidth: 2
-      });
-      const line = new THREE.LineSegments(edges, edgeMaterial);
-      cube.add(line);
-
-      scene.add(cube);
-      //fitCameraToObject(); // 娣诲姞绔嬫柟浣撳悗鑷姩璋冩暣瑙嗚
-    };
-
-    // 浼樺寲瑙嗚閫傞厤绠楁硶
-    const fitCameraToObject = () => {
-      const box = new THREE.Box3().setFromObject(scene);
-      const size = box.getSize(new THREE.Vector3());
-      const diagonal = Math.sqrt(size.x ** 2 + size.y ** 2 + size.z ** 2);
-
-      // 鍔ㄦ�佽绠楄瀵熻窛绂伙紙璋冩暣涓哄瑙掔嚎闀垮害鐨�1.2鍊嶏級
-      const distance = diagonal * 1.2;
-
-      // 淇濇寔45搴︿刊瑙嗚搴�
-      camera.position.set(
-        box.max.x + distance * 0.7,
-        box.max.y + distance * 0.7,
-        box.max.z + distance * 0.7
-      );
-
-      // 闄愬埗鏈�灏忚瀵熻窛绂�
-      if (diagonal < 100) distance = 10; // 灏忕墿浣撶壒鍐�
-
-      controls.target.copy(box.getCenter());
-      controls.update();
-    };
-
-    const initScene = () => {
-      scene = new THREE.Scene();
-      camera = new THREE.PerspectiveCamera(
-        55,
-        container.value.clientWidth / container.value.clientHeight,
-        1,
-        50000
-      );
-
-      // 璁剧疆鐩告満鍒濆浣嶇疆
-      camera.position.set(2000, 2000, 2000); // 鍒濆瑙傚療鐐规姮楂�
-      camera.lookAt(0, 0, 0);
-
-      renderer = new THREE.WebGLRenderer({
-        antialias: true,
-        preserveDrawingBuffer: true,
-        alpha: true
-      });
-
-      renderer.setSize(
-        container.value.clientWidth,
-        container.value.clientHeight
-      );
-      renderer.setPixelRatio(window.devicePixelRatio);
-      container.value.appendChild(renderer.domElement);
-
-      composer = new EffectComposer(renderer);
-      composer.addPass(new RenderPass(scene, camera));
-
-      // 鍏夋簮閰嶇疆
-      const ambientLight = new THREE.AmbientLight(0xffffff, 0.6);
-      const directionalLight = new THREE.DirectionalLight(0xffeeee, 1.2);
-      directionalLight.position.set(2, 5, 3).normalize();
-      scene.add(ambientLight, directionalLight);
-
-      controls = new OrbitControls(camera, renderer.domElement);
-      controls.enableDamping = true;
-      controls.dampingFactor = 0.05;
-      controls.minDistance = 100;
-      controls.maxDistance = 50000; // 澧炲ぇ鏈�澶х缉鏀捐窛绂�
-
-      // 娣诲姞鍧愭爣杞磋緟鍔╁櫒
-      const axesHelper = new THREE.AxesHelper(10000); // 澧炲ぇ鍒�10000鍗曚綅
-      axesHelper.material.linewidth = 3; // 鍔犵矖绾挎潯
-      scene.add(axesHelper);
-    };
-
-    const animate = () => {
-      requestAnimationFrame(animate);
-      controls.update();
-      composer.render();
-    };
-
-    const handleResize = () => {
-      camera.aspect =
-        container.value.clientWidth / container.value.clientHeight;
-      camera.updateProjectionMatrix();
-      renderer.setSize(
-        container.value.clientWidth,
-        container.value.clientHeight
-      );
-    };
-
-    const cleanResources = () => {
-      scene.traverse(obj => {
-        if (obj.geometry) obj.geometry.dispose();
-        if (obj.material) {
-          Object.values(obj.material).forEach(prop => {
-            prop?.dispose?.();
-          });
-        }
-      });
-      renderer.dispose();
-      const gl = renderer.domElement.getContext("webgl");
-      gl?.getExtension("WEBGL_lose_context")?.loseContext();
-    };
-
-    const createSocket = url => {
-      // 鍒涘缓WebSocket杩炴帴
-      //"ws://127.0.0.1:9295/admin"
-      client = new WebSocket(url);
-
-      client.onopen = function() {
-        client.onmessage = handleMessage;
-        console.log("WebSocket 杩炴帴鎴愬姛");
-      };
-
-      client.onclose = function() {
-        console.log("WebSocket 杩炴帴鍏抽棴");
-        setTimeout(createSocket, 10000);
-      };
-
-      client.onerror = function() {};
-    };
-
-    const handleMessage = event => {
-      const data = JSON.parse(event.data);
-      createCube2(
-        data.x,
-        data.y,
-        data.z,
-        data.length,
-        data.width,
-        data.height
-      );
-    };
-
-    onMounted(() => {
-      createSocket(window.webConfig.webSocketUrl);
-      // 鍒涘缓WebSocket杩炴帴
-      initScene();
-      animate();
-      window.addEventListener("resize", handleResize);
-      window.addEventListener("keydown", e => {
-        if (e.key === "f") fitCameraToObject(); // F閿浣嶈瑙�
-        if (e.key === "m") camera.position.set(2000, 2000, 2000); // M閿繑鍥為粯璁よ瑙�
-      });
-    });
-
-    onBeforeUnmount(() => {
-      window.removeEventListener("resize", handleResize);
-      cancelAnimationFrame(animationFrameId);
-      cleanResources();
-      container.value?.removeChild(renderer.domElement);
-    });
-
-    return { container, cubeParams, createCube };
-  }
-};
-</script>
-
-<style scoped>
-.scene-container {
-  width: 100vw;
-  height: 100vh;
-  position: fixed;
-  background: linear-gradient(45deg, #02001d, #1a1b38, #004d61);
-}
-
-.control-panel {
-  position: fixed;
-  bottom: 20px;
-  right: 20px;
-  background: rgba(0, 0, 0, 0.7);
-  padding: 15px;
-  border-radius: 8px;
-  z-index: 1000;
-  backdrop-filter: blur(5px);
-}
-
-.input-group {
-  margin: 10px 0;
-  display: flex;
-  gap: 8px;
-  flex-wrap: wrap;
-}
-
-input {
-  width: 80px;
-  padding: 6px;
-  background: #1a1b38;
-  border: 1px solid #00ffff;
-  color: white;
-  border-radius: 4px;
-}
-
-button {
-  width: 100%;
-  padding: 8px;
-  background: #004d61;
-  color: white;
-  border: none;
-  border-radius: 4px;
-  cursor: pointer;
-  transition: background 0.3s;
-}
-
-button:hover {
-  background: #00ffff;
-  color: #02001d;
-}
-
-canvas {
-  display: block;
-  mix-blend-mode: screen;
-}
-</style>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/bigscreen2.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/bigscreen2.vue"
deleted file mode 100644
index 5eae59e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/bigscreen2.vue"
+++ /dev/null
@@ -1,126 +0,0 @@
-<template>
-  <div ref="container" class="scene-container"></div>
-</template>
-  
-  <script>
-import { onMounted, onBeforeUnmount, ref } from "vue";
-import * as THREE from "three";
-import { OrbitControls } from "three/addons/controls/OrbitControls.js";
-import { EffectComposer, RenderPass, UnrealBloomPass } from "postprocessing";
-
-export default {
-  setup() {
-    const container = ref(null);
-    let scene = null;
-    let camera = null;
-    let renderer = null;
-    let controls = null;
-    let composer = null;
-    let animationFrameId = null;
-
-    // 绉戞妧鎰熻儗鏅厤缃�
-    const bgConfig = {
-      gradient: {
-        colors: ["#001219", "#005f73", "#0a9396"],
-        angle: 45
-      },
-      bloom: {
-        strength: 1.6,
-        radius: 0.8,
-        threshold: 0.6
-      }
-    };
-
-    const initScene = () => {
-      // 鍒濆鍖栨牳蹇冪粍浠�
-      scene = new THREE.Scene();
-      camera = new THREE.PerspectiveCamera(
-        75,
-        container.value.clientWidth / container.value.clientHeight,
-        0.1,
-        1000
-      );
-
-      // 閰嶇疆甯﹂�忔槑閫氶亾鐨勬覆鏌撳櫒
-      renderer = new THREE.WebGLRenderer({
-        antialias: true,
-        alpha: true
-      });
-      renderer.setSize(
-        container.value.clientWidth,
-        container.value.clientHeight
-      );
-      renderer.setPixelRatio(window.devicePixelRatio);
-      container.value.appendChild(renderer.domElement);
-
-      // 鍒濆鍖栧悗鏈熺壒鏁�
-      composer = new EffectComposer(renderer);
-      composer.addPass(new RenderPass(scene, camera));
-      composer.addPass(
-        new UnrealBloomPass(
-          new THREE.Vector2(window.innerWidth, window.innerHeight),
-          bgConfig.bloom.strength,
-          bgConfig.bloom.radius,
-          bgConfig.bloom.threshold
-        )
-      );
-
-      // 娣诲姞绉戞妧鎰熷厜鏁�
-      const ambientLight = new THREE.AmbientLight(0xffffff, 0.3);
-      const directionalLight = new THREE.DirectionalLight(0xffffff, 1);
-      directionalLight.position.set(10, 15, 10);
-      scene.add(ambientLight, directionalLight);
-
-      // 鐢熸垚璐ф灦缁撴瀯
-      scene.add(generateRack());
-
-      // 鐩告満涓庢帶鍒跺櫒璁剧疆
-      camera.position.set(8, 12, 15);
-      controls = new OrbitControls(camera, renderer.domElement);
-      controls.enableDamping = true;
-      controls.dampingFactor = 0.05;
-    };
-
-    const generateRack = () => {
-      // 璐ф灦鐢熸垚閫昏緫淇濇寔涓嶅彉...
-    };
-
-    const animate = () => {
-      animationFrameId = requestAnimationFrame(animate);
-      controls.update();
-      composer.render();
-    };
-
-    onMounted(() => {
-      initScene();
-      animate();
-      window.addEventListener("resize", handleResize);
-    });
-
-    onBeforeUnmount(() => {
-      // 璧勬簮娓呯悊閫昏緫淇濇寔涓嶅彉...
-    });
-
-    return { container };
-  }
-};
-</script>
-  
-  <style scoped>
-.scene-container {
-  width: 100vw;
-  height: 100vh;
-  position: fixed;
-  background: linear-gradient(
-    v-bind("bgConfig.gradient.angle") + "deg",
-    v-bind("bgConfig.gradient.colors[0]"),
-    v-bind("bgConfig.gradient.colors[1]"),
-    v-bind("bgConfig.gradient.colors[2]")
-  );
-}
-
-canvas {
-  mix-blend-mode: screen;
-}
-</style>
-  
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task.vue"
index fb15e01..221e850 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task.vue"
@@ -10,8 +10,7 @@
     :searchFormOptions="searchFormOptions"
     :table="table"
     :extend="extend"
-  >
-  </view-grid>
+  ></view-grid>
 </template>
   <script>
 import extend from "@/extension/taskinfo/task.js";
@@ -24,7 +23,7 @@
       cnName: "浠诲姟淇℃伅",
       name: "task",
       url: "/Task/",
-      sortName: "CreateDate",
+      sortName: "CreateDate"
     });
     const editFormFields = ref({});
     const editFormOptions = ref([]);
@@ -37,7 +36,7 @@
       currentAddress: "",
       nextAddress: "",
       creater: "",
-      createDate: "",
+      createDate: ""
     });
     const searchFormOptions = ref([
       [
@@ -48,27 +47,27 @@
           field: "taskType",
           type: "selectList",
           dataKey: "taskType",
-          data: [],
+          data: [{ key: 0, value: "榫欓棬鏋朵换鍔�" }]
         },
         {
           title: "浠诲姟鐘舵��",
           field: "taskState",
           type: "selectList",
           dataKey: "taskState",
-          data: [],
-        },
+          data: []
+        }
       ],
       [
         { title: "璧峰鍦板潃", field: "sourceAddress", type: "like" },
         { title: "鐩爣鍦板潃", field: "targetAddress", type: "like" },
         { title: "褰撳墠浣嶇疆", field: "currentAddress", type: "like" },
-        { title: "涓嬩竴浣嶇疆", field: "nextAddress", type: "like" },
+        { title: "涓嬩竴浣嶇疆", field: "nextAddress", type: "like" }
       ],
       [
         { title: "宸烽亾鍙�", field: "roadway", type: "like" },
         { title: "鍒涘缓浜�", field: "creater", type: "like" },
-        { title: "鍒涘缓鏃堕棿", field: "createDate", type: "datetime" },
-      ],
+        { title: "鍒涘缓鏃堕棿", field: "createDate", type: "datetime" }
+      ]
     ]);
     const columns = ref([
       {
@@ -79,72 +78,79 @@
         hidden: true,
         readonly: true,
         require: true,
-        align: "left",
+        align: "left"
       },
       {
         field: "taskNum",
         title: "浠诲姟鍙�",
         type: "int",
         width: 90,
+        align: "left"
+      },
+      {
+        field: "palletCode",
+        title: "浜у搧鏉$爜",
+        type: "string",
+        width: 200,
         align: "left",
       },
       // {
-      //   field: "palletCode",
-      //   title: "鎵樼洏缂栧彿",
+      //   field: "roadway",
+      //   title: "鍖哄煙",
       //   type: "string",
-      //   width: 200,
-      //   align: "left",
+      //   width: 90,
+      //   align: "left"
       // },
-      {
-        field: "roadway",
-        title: "鍖哄煙",
-        type: "string",
-        width: 90,
-        align: "left",
-      },
-      {
-        field: "taskType",
-        title: "浠诲姟绫诲瀷",
-        type: "int",
-        width: 90,
-        align: "left",
-        bind: { key: "agvStationEnum", data: [] },
-      },
+      // {
+      //   field: "taskType",
+      //   title: "浠诲姟绫诲瀷",
+      //   type: "int",
+      //   width: 90,
+      //   align: "left",
+      //   bind: { key: "taskType", data: [] }
+      // },
       {
         field: "taskState",
         title: "浠诲姟鐘舵��",
         type: "int",
         width: 150,
         align: "left",
-        bind: { key: "taskState", data: [] },
+        bind: { key: "taskState", data: [] }
       },
       {
         field: "sourceAddress",
         title: "璧峰鍦板潃",
         type: "int",
         width: 120,
-        align: "left",
+        align: "left"
       },
       {
         field: "targetAddress",
         title: "鐩爣鍦板潃",
         type: "string",
         width: 120,
-        align: "left",
+        align: "left"
       },
       {
         field: "currentAddress",
-        title: "褰撳墠浣嶇疆",
+        title: "鍙栬揣鍧愭爣",
         type: "string",
-        width: 120,
-        align: "left",
+        width: 180,
+        align: "left"
       },
       {
         field: "nextAddress",
-        title: "涓嬩竴浣嶇疆",
+        title: "鏀捐揣鍧愭爣",
+        type: "string",
+        width: 180,
+        align: "left"
+      },
+      {
+        field: "itemInfo",
+        title: "闀�*瀹�*楂�",
         type: "string",
         width: 120,
-        align: "left",
+        align: "left"
       },
       {
         field: "exceptionMessage",
@@ -152,21 +158,20 @@
         type: "string",
         width: 90,
         align: "left",
-        hidden: true,
       },
-      {
-        field: "grade",
-        title: "浼樺厛绾�",
-        type: "int",
-        width: 80,
-        align: "left",
-      },
+      // {
+      //   field: "grade",
+      //   title: "浼樺厛绾�",
+      //   type: "int",
+      //   width: 80,
+      //   align: "left"
+      // },
       {
         field: "dispatchertime",
         title: "浠诲姟涓嬪彂鏃堕棿",
         type: "datetime",
         width: 150,
-        align: "left",
+        align: "left"
       },
       {
         field: "wMSId",
@@ -174,35 +179,35 @@
         type: "int",
         width: 120,
         align: "left",
-        hidden: true,
+        hidden: true
       },
       {
         field: "creater",
         title: "鍒涘缓浜�",
         type: "string",
         width: 90,
-        align: "left",
+        align: "left"
       },
       {
         field: "createDate",
         title: "鍒涘缓鏃堕棿",
         type: "datetime",
         width: 150,
-        align: "left",
+        align: "left"
       },
       {
         field: "modifier",
         title: "淇敼浜�",
         type: "string",
         width: 100,
-        align: "left",
+        align: "left"
       },
       {
         field: "modifyDate",
         title: "淇敼鏃堕棿",
         type: "datetime",
         width: 160,
-        align: "left",
+        align: "left"
       },
       {
         field: "remark",
@@ -210,15 +215,15 @@
         type: "string",
         width: 100,
         align: "left",
-        hidden: true,
-      },
+        hidden: true
+      }
     ]);
     const detail = ref({
       cnName: "",
       table: "",
       columns: [],
       sortName: "",
-      key: "",
+      key: ""
     });
     return {
       table,
@@ -228,9 +233,9 @@
       searchFormFields,
       searchFormOptions,
       columns,
-      detail,
+      detail
     };
-  },
+  }
 });
 </script>
   
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task_hty.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task_hty.vue"
index 97bd9fc..19f8eea 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task_hty.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Client/src/views/taskinfo/task_hty.vue"
@@ -21,7 +21,7 @@
     const table = ref({
       key: "taskId",
       footer: "Foots",
-      cnName: "浠诲姟淇℃伅",
+      cnName: "浠诲姟淇℃伅鍘嗗彶",
       name: "task_hty",
       url: "/Task_hty/",
       sortName: "CreateDate",
@@ -48,7 +48,7 @@
           field: "taskType",
           type: "selectList",
           dataKey: "taskType",
-          data: [],
+          data: [{ key: 0, value: "榫欓棬鏋朵换鍔�" }]
         },
         {
           title: "浠诲姟鐘舵��",
@@ -79,78 +79,79 @@
         hidden: true,
         readonly: true,
         require: true,
-        align: "left",
-        sort:true,
+        align: "left"
       },
       {
         field: "taskNum",
         title: "浠诲姟鍙�",
         type: "int",
         width: 90,
-        align: "left",
-        sort:true,
+        align: "left"
       },
       {
         field: "palletCode",
-        title: "鎵樼洏缂栧彿",
+        title: "浜у搧鏉$爜",
         type: "string",
         width: 200,
         align: "left",
-        sort:true,
       },
-      {
-        field: "roadway",
-        title: "宸烽亾鍙�",
-        type: "string",
-        width: 90,
-        align: "left",
-        sort:true,
-      },
-      {
-        field: "taskType",
-        title: "浠诲姟绫诲瀷",
-        type: "int",
-        width: 90,
-        align: "left",
-        bind: { key: "taskType", data: [] },
-        sort:true,
-      },
+      // {
+      //   field: "roadway",
+      //   title: "鍖哄煙",
+      //   type: "string",
+      //   width: 90,
+      //   align: "left"
+      // },
+      // {
+      //   field: "taskType",
+      //   title: "浠诲姟绫诲瀷",
+      //   type: "int",
+      //   width: 90,
+      //   align: "left",
+      //   bind: { key: "taskType", data: [] }
+      // },
       {
         field: "taskState",
         title: "浠诲姟鐘舵��",
         type: "int",
         width: 150,
         align: "left",
-        bind: { key: "taskState", data: [] },
-        sort:true,
+        bind: { key: "taskState", data: [] }
       },
       {
         field: "sourceAddress",
         title: "璧峰鍦板潃",
         type: "int",
         width: 120,
-        align: "left",
+        align: "left"
       },
       {
         field: "targetAddress",
         title: "鐩爣鍦板潃",
         type: "string",
         width: 120,
-        align: "left",
+        align: "left"
       },
       {
         field: "currentAddress",
-        title: "褰撳墠浣嶇疆",
+        title: "鍙栬揣鍧愭爣",
         type: "string",
-        width: 120,
-        align: "left",
+        width: 180,
+        align: "left"
       },
       {
         field: "nextAddress",
-        title: "涓嬩竴浣嶇疆",
+        title: "鏀捐揣鍧愭爣",
+        type: "string",
+        width: 180,
+        align: "left"
+      },
+      {
+        field: "itemInfo",
+        title: "闀�*瀹�*楂�",
         type: "string",
         width: 120,
-        align: "left",
+        align: "left"
       },
       {
         field: "exceptionMessage",
@@ -158,21 +159,20 @@
         type: "string",
         width: 90,
         align: "left",
-        hidden: true,
       },
-      {
-        field: "grade",
-        title: "浼樺厛绾�",
-        type: "int",
-        width: 80,
-        align: "left",
-      },
+      // {
+      //   field: "grade",
+      //   title: "浼樺厛绾�",
+      //   type: "int",
+      //   width: 80,
+      //   align: "left"
+      // },
       {
         field: "dispatchertime",
         title: "浠诲姟涓嬪彂鏃堕棿",
         type: "datetime",
         width: 150,
-        align: "left",
+        align: "left"
       },
       {
         field: "wMSId",
@@ -180,37 +180,35 @@
         type: "int",
         width: 120,
         align: "left",
-        hidden: true,
+        hidden: true
       },
       {
         field: "creater",
         title: "鍒涘缓浜�",
         type: "string",
         width: 90,
-        align: "left",
+        align: "left"
       },
       {
         field: "createDate",
         title: "鍒涘缓鏃堕棿",
         type: "datetime",
         width: 150,
-        align: "left",
-        sort:true,
+        align: "left"
       },
       {
         field: "modifier",
         title: "淇敼浜�",
         type: "string",
         width: 100,
-        align: "left",
+        align: "left"
       },
       {
         field: "modifyDate",
         title: "淇敼鏃堕棿",
         type: "datetime",
         width: 160,
-        align: "left",
-        sort:true,
+        align: "left"
       },
       {
         field: "remark",
@@ -218,8 +216,8 @@
         type: "string",
         width: 100,
         align: "left",
-        hidden: true,
-      },
+        hidden: true
+      }
     ]);
     const detail = ref({
       cnName: "",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm"
new file mode 100644
index 0000000..a087e6b
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-shm"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal"
new file mode 100644
index 0000000..48a51ed
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/CodeChunks.db-wal"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm"
new file mode 100644
index 0000000..0338a76
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-shm"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal"
new file mode 100644
index 0000000..c11eb62
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/CopilotIndices/17.13.441.19478/SemanticSymbols.db-wal"
Binary files differ
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json"
index ca934c6..eb7aed4 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.backup.json"
@@ -3,6 +3,26 @@
   "WorkspaceRootPath": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\",
   "Documents": [
     {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_model\\models\\taskinfo\\dt_task.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\taskinfo\\dt_task.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\system\\sys_dictionarycontroller.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_dictionarycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_common\\taskstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\taskstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
       "AbsoluteMoniker": "D:0:0:{FFAB2C76-1C9E-4006-95C8-A0B2AA53139D}|WIDESEAWCS_BasicInfoService\\WIDESEAWCS_BasicInfoService.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_basicinfoservice\\placeblockservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{FFAB2C76-1C9E-4006-95C8-A0B2AA53139D}|WIDESEAWCS_BasicInfoService\\WIDESEAWCS_BasicInfoService.csproj|solutionrelative:wideseawcs_basicinfoservice\\placeblockservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
@@ -71,10 +91,6 @@
       "RelativeMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|solutionrelative:wideseawcs_systemservices\\sys_dictionaryservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\system\\sys_dictionarycontroller.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_dictionarycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
       "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_common\\containerstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\containerstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
@@ -91,10 +107,6 @@
       "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\commonconveyorlightjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
       "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantrypositionjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantrypositionjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
@@ -109,10 +121,6 @@
     {
       "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryjob2.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryjob2.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{FFAB2C76-1C9E-4006-95C8-A0B2AA53139D}|WIDESEAWCS_BasicInfoService\\WIDESEAWCS_BasicInfoService.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_basicinfoservice\\orderrowsservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -210,61 +218,50 @@
       "DocumentGroups": [
         {
           "DockedWidth": 200,
-          "SelectedChildIndex": 2,
+          "SelectedChildIndex": 7,
           "Children": [
             {
               "$type": "Document",
+              "DocumentIndex": 2,
+              "Title": "Dt_Task.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "ViewState": "AgIAAGwAAAAAAAAAAAAIwHYAAAAeAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-05-06T02:23:33.162Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
               "DocumentIndex": 4,
-              "Title": "ContainerService.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "ViewState": "AgIAAG4AAAAAAAAAAAAEwEcAAAAtAAAAAAAAAA==",
+              "Title": "TaskStatusEnum.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "RelativeToolTip": "WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAOAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-23T02:19:27.384Z"
+              "WhenOpened": "2025-05-06T02:15:47.988Z",
+              "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 3,
-              "Title": "TaskService.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ViewState": "AgIAAGYBAAAAAAAAAAAAADQBAAAoAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-23T01:11:57.33Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 0,
+              "DocumentIndex": 5,
               "Title": "PlaceBlockService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
               "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
               "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
-              "ViewState": "AgIAAKoBAAAAAAAAAAAiwMIBAAAMAAAAAAAAAA==",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAAMIBAAAMAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-04-22T01:06:49.643Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 1,
-              "Title": "appsettings.json",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAABwAAAAfAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
-              "WhenOpened": "2025-04-22T00:54:12.593Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 5,
+              "DocumentIndex": 10,
               "Title": "PlaceBlockService2.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
@@ -276,7 +273,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 6,
+              "DocumentIndex": 11,
               "Title": "IContainerService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_IBasicInfoService\\IContainerService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_IBasicInfoService\\IContainerService.cs",
@@ -288,7 +285,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 2,
+              "DocumentIndex": 7,
               "Title": "CommonConveyorLineOutJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineOutJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineOutJob.cs",
@@ -296,12 +293,86 @@
               "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineOutJob.cs",
               "ViewState": "AgIAAAAAAAAAAAAAAAAAAJYAAAA2AAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-22T00:54:30.02Z",
+              "WhenOpened": "2025-04-22T00:54:30.02Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 1,
+              "Title": "GantryFJob.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "ViewState": "AgIAAPYAAAAAAAAAAAAYwB4AAAAZAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-27T03:13:59.526Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 11,
+              "DocumentIndex": 0,
+              "Title": "GantryJob.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "ViewState": "AgIAADcBAAAAAAAAAAAkwDwBAABsAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-22T02:11:15.214Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 6,
+              "Title": "appsettings.json",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAABwAAAAfAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+              "WhenOpened": "2025-04-22T00:54:12.593Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 8,
+              "Title": "TaskService.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ViewState": "AgIAAGYBAAAAAAAAAAAAADQBAAAoAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-23T01:11:57.33Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 3,
+              "Title": "Sys_DictionaryController.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "ViewState": "AgIAALAAAAAAAAAAAAAiwOIAAAAeAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-27T12:37:35.583Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 9,
+              "Title": "ContainerService.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "ViewState": "AgIAAG4AAAAAAAAAAAAEwEcAAAAtAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-23T02:19:27.384Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 16,
               "Title": "OrderDetailsService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\OrderDetailsService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\OrderDetailsService.cs",
@@ -313,7 +384,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 7,
+              "DocumentIndex": 12,
               "Title": "Dt_ContainerItem_Hty.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem_Hty.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem_Hty.cs",
@@ -325,7 +396,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 8,
+              "DocumentIndex": 13,
               "Title": "Dt_OrderContainer_Hty.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer_Hty.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer_Hty.cs",
@@ -337,7 +408,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 9,
+              "DocumentIndex": 14,
               "Title": "Dt_Positions.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Positions.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Positions.cs",
@@ -349,7 +420,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 12,
+              "DocumentIndex": 17,
               "Title": "Dt_OrderContainer.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer.cs",
@@ -361,7 +432,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 10,
+              "DocumentIndex": 15,
               "Title": "Dt_ContainerItem.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem.cs",
@@ -373,7 +444,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 23,
+              "DocumentIndex": 26,
               "Title": "GantryPositionJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\GantryPositionJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\GantryPositionJob.cs",
@@ -385,7 +456,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 20,
+              "DocumentIndex": 24,
               "Title": "Dt_Container.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Container.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Container.cs",
@@ -397,7 +468,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 16,
+              "DocumentIndex": 21,
               "Title": "Sys_DictionaryService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SystemServices\\Sys_DictionaryService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_SystemServices\\Sys_DictionaryService.cs",
@@ -409,7 +480,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 13,
+              "DocumentIndex": 18,
               "Title": "Dt_Task_Hty.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task_Hty.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task_Hty.cs",
@@ -421,19 +492,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 17,
-              "Title": "Sys_DictionaryController.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "ViewState": "AgIAAEUAAAAAAAAAAAAiwGkAAAAJAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-27T12:37:35.583Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 14,
+              "DocumentIndex": 19,
               "Title": "ContainerController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\BasicInfo\\ContainerController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\BasicInfo\\ContainerController.cs",
@@ -445,7 +504,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 15,
+              "DocumentIndex": 20,
               "Title": "Sys_Log.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
@@ -457,7 +516,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 19,
+              "DocumentIndex": 23,
               "Title": "ContainerTypeEnum.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\ContainerTypeEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\ContainerTypeEnum.cs",
@@ -469,7 +528,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 18,
+              "DocumentIndex": 22,
               "Title": "ContainerStatusEnum.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\ContainerStatusEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\ContainerStatusEnum.cs",
@@ -481,7 +540,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 21,
+              "DocumentIndex": 25,
               "Title": "CommonConveyorLightJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\CommonConveyorLightJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\CommonConveyorLightJob.cs",
@@ -493,20 +552,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 22,
-              "Title": "GantryJob.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "ViewState": "AgIAADgAAAAAAAAAAAAkwFgAAACtAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-22T02:11:15.214Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 24,
+              "DocumentIndex": 27,
               "Title": "LightStatusStorage.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\LightStatusStorage.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\LightStatusStorage.cs",
@@ -518,7 +564,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 25,
+              "DocumentIndex": 28,
               "Title": "ContainerPlacer.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerPlacer.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\ContainerPlacer.cs",
@@ -530,7 +576,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 26,
+              "DocumentIndex": 29,
               "Title": "GantryJob2.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob2.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryJob2.cs",
@@ -542,19 +588,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 27,
-              "Title": "GantryFJob.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAAB4AAAAZAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-27T03:13:59.526Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 28,
+              "DocumentIndex": 30,
               "Title": "OrderrowsService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\OrderrowsService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\OrderrowsService.cs",
@@ -566,7 +600,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 30,
+              "DocumentIndex": 32,
               "Title": "OrderDetails.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
@@ -578,7 +612,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 29,
+              "DocumentIndex": 31,
               "Title": "ProductInfo.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_DTO\\BasicInfo\\ProductInfo.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_DTO\\BasicInfo\\ProductInfo.cs",
@@ -590,7 +624,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 31,
+              "DocumentIndex": 33,
               "Title": "TaskController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
@@ -602,7 +636,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 34,
+              "DocumentIndex": 36,
               "Title": "Program.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Program.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Program.cs",
@@ -614,7 +648,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 32,
+              "DocumentIndex": 34,
               "Title": "swg-login.html",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\wwwroot\\swg-login.html",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\wwwroot\\swg-login.html",
@@ -626,7 +660,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 42,
+              "DocumentIndex": 44,
               "Title": "GantryCommand.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryCommand.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryCommand.cs",
@@ -638,7 +672,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 37,
+              "DocumentIndex": 39,
               "Title": "DeviceProtocolController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolController.cs",
@@ -650,7 +684,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 41,
+              "DocumentIndex": 43,
               "Title": "DeviceInfoController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceInfoController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceInfoController.cs",
@@ -662,7 +696,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 40,
+              "DocumentIndex": 42,
               "Title": "DeviceProtocolDetailController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolDetailController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolDetailController.cs",
@@ -674,7 +708,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 35,
+              "DocumentIndex": 37,
               "Title": "Sys_UserController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_UserController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_UserController.cs",
@@ -686,7 +720,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 33,
+              "DocumentIndex": 35,
               "Title": "swaggerdoc.css",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\wwwroot\\css\\swaggerdoc.css",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\wwwroot\\css\\swaggerdoc.css",
@@ -698,7 +732,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 36,
+              "DocumentIndex": 38,
               "Title": "index.html",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\index.html",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\index.html",
@@ -710,7 +744,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 39,
+              "DocumentIndex": 41,
               "Title": "DispatchInfoController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DispatchInfoController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DispatchInfoController.cs",
@@ -722,7 +756,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 38,
+              "DocumentIndex": 40,
               "Title": "SchedulerController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\SchedulerController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\SchedulerController.cs",
@@ -734,7 +768,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 44,
+              "DocumentIndex": 46,
               "Title": "ITask_HtyRepository.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoRepository\\ITask_HtyRepository.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoRepository\\ITask_HtyRepository.cs",
@@ -746,7 +780,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 43,
+              "DocumentIndex": 45,
               "Title": "Dt_TaskExecuteDetail.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_TaskExecuteDetail.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_TaskExecuteDetail.cs",
@@ -758,7 +792,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 46,
+              "DocumentIndex": 48,
               "Title": "IOrderDetailsService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_IBasicInfoService\\IOrderDetailsService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_IBasicInfoService\\IOrderDetailsService.cs",
@@ -770,7 +804,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 45,
+              "DocumentIndex": 47,
               "Title": "CommonConveyorLineJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
@@ -782,7 +816,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 47,
+              "DocumentIndex": 49,
               "Title": "ExceptionHelper.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\ExceptionHelper.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\ExceptionHelper.cs",
@@ -794,7 +828,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 48,
+              "DocumentIndex": 50,
               "Title": "ITaskService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
@@ -806,7 +840,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 49,
+              "DocumentIndex": 51,
               "Title": "CommonConveyorLineStationJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineStationJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineStationJob.cs",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json"
index 37aca2e..1a896da 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json"
@@ -3,6 +3,30 @@
   "WorkspaceRootPath": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\",
   "Documents": [
     {
+      "AbsoluteMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_model\\models\\basicinfo\\orderdetails.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\basicinfo\\orderdetails.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_model\\models\\taskinfo\\dt_task.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\taskinfo\\dt_task.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\system\\sys_dictionarycontroller.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_dictionarycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
+      "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_common\\taskstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\taskstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+    },
+    {
       "AbsoluteMoniker": "D:0:0:{FFAB2C76-1C9E-4006-95C8-A0B2AA53139D}|WIDESEAWCS_BasicInfoService\\WIDESEAWCS_BasicInfoService.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_basicinfoservice\\placeblockservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{FFAB2C76-1C9E-4006-95C8-A0B2AA53139D}|WIDESEAWCS_BasicInfoService\\WIDESEAWCS_BasicInfoService.csproj|solutionrelative:wideseawcs_basicinfoservice\\placeblockservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
@@ -71,10 +95,6 @@
       "RelativeMoniker": "D:0:0:{A14242DD-DA06-4DC3-8598-1761AA7C76D1}|WIDESEAWCS_SystemServices\\WIDESEAWCS_SystemServices.csproj|solutionrelative:wideseawcs_systemservices\\sys_dictionaryservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\system\\sys_dictionarycontroller.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_dictionarycontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
       "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_common\\containerstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\containerstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
@@ -89,10 +109,6 @@
     {
       "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\commonconveyorlightjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\commonconveyorlightjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantrypositionjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -111,20 +127,12 @@
       "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryjob2.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gantry\\gantryfjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
       "AbsoluteMoniker": "D:0:0:{FFAB2C76-1C9E-4006-95C8-A0B2AA53139D}|WIDESEAWCS_BasicInfoService\\WIDESEAWCS_BasicInfoService.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_basicinfoservice\\orderrowsservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{FFAB2C76-1C9E-4006-95C8-A0B2AA53139D}|WIDESEAWCS_BasicInfoService\\WIDESEAWCS_BasicInfoService.csproj|solutionrelative:wideseawcs_basicinfoservice\\orderrowsservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{C2D3D138-9109-481B-8BEB-A27597890B2C}|WIDESEAWCS_DTO\\WIDESEAWCS_DTO.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_dto\\basicinfo\\productinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{C2D3D138-9109-481B-8BEB-A27597890B2C}|WIDESEAWCS_DTO\\WIDESEAWCS_DTO.csproj|solutionrelative:wideseawcs_dto\\basicinfo\\productinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_model\\models\\basicinfo\\orderdetails.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{7F200FE8-CAF6-4131-BD25-8D438FE0ABAC}|WIDESEAWCS_Model\\WIDESEAWCS_Model.csproj|solutionrelative:wideseawcs_model\\models\\basicinfo\\orderdetails.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{487FA45B-EA1A-4ACA-BB5B-0F6708F462C0}|WIDESEAWCS_Server\\WIDESEAWCS_Server.csproj|e:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\zhejianghantong\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_server\\controllers\\task\\taskcontroller.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -210,73 +218,50 @@
       "DocumentGroups": [
         {
           "DockedWidth": 200,
-          "SelectedChildIndex": 2,
+          "SelectedChildIndex": 7,
           "Children": [
             {
               "$type": "Document",
-              "DocumentIndex": 4,
-              "Title": "ContainerService.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
-              "ViewState": "AgIAAG4AAAAAAAAAAAAEwEcAAAAtAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-23T02:19:27.384Z"
-            },
-            {
-              "$type": "Document",
               "DocumentIndex": 3,
-              "Title": "TaskService.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ViewState": "AgIAAGYBAAAAAAAAAAAAADQBAAAoAAAAAAAAAA==",
+              "Title": "Dt_Task.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task.cs",
+              "ViewState": "AgIAAGwAAAAAAAAAAAAIwHYAAAAeAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-23T01:11:57.33Z"
+              "WhenOpened": "2025-05-06T02:23:33.162Z",
+              "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 0,
+              "DocumentIndex": 5,
+              "Title": "TaskStatusEnum.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "RelativeToolTip": "WIDESEAWCS_Common\\TaskStatusEnum.cs",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAOAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-05-06T02:15:47.988Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 6,
               "Title": "PlaceBlockService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
               "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
               "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\PlaceBlockService.cs",
-              "ViewState": "AgIAAKoBAAAAAAAAAAAiwMIBAAAMAAAAAAAAAA==",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAAMIBAAAMAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-04-22T01:06:49.643Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 1,
-              "Title": "appsettings.json",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
-              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAABwAAAAfAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
-              "WhenOpened": "2025-04-22T00:54:12.593Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 5,
-              "Title": "PlaceBlockService2.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
-              "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-28T06:49:40.512Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 6,
+              "DocumentIndex": 12,
               "Title": "IContainerService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_IBasicInfoService\\IContainerService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_IBasicInfoService\\IContainerService.cs",
@@ -288,7 +273,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 2,
+              "DocumentIndex": 8,
               "Title": "CommonConveyorLineOutJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineOutJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineOutJob.cs",
@@ -296,12 +281,111 @@
               "RelativeToolTip": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineOutJob.cs",
               "ViewState": "AgIAAAAAAAAAAAAAAAAAAJYAAAA2AAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-22T00:54:30.02Z",
+              "WhenOpened": "2025-04-22T00:54:30.02Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 2,
+              "Title": "GantryFJob.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
+              "ViewState": "AgIAAPYAAAAAAAAAAAAYwB4AAAAZAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-27T03:13:59.526Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 1,
+              "Title": "GantryJob.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
+              "ViewState": "AgIAABYBAAAAAAAAAAAkwDwBAABsAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-22T02:11:15.214Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 0,
+              "Title": "OrderDetails.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
+              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
+              "ViewState": "AgIAAAMAAAAAAAAAAAAAACEAAAAvAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-25T07:59:41.377Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
               "DocumentIndex": 11,
+              "Title": "PlaceBlockService2.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
+              "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\PlaceBlockService2.cs",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-28T06:49:40.512Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 7,
+              "Title": "appsettings.json",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\appsettings.json",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\appsettings.json",
+              "RelativeToolTip": "WIDESEAWCS_Server\\appsettings.json",
+              "ViewState": "AgIAAAAAAAAAAAAAAAAAABwAAAAfAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
+              "WhenOpened": "2025-04-22T00:54:12.593Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 9,
+              "Title": "TaskService.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
+              "ViewState": "AgIAAGYBAAAAAAAAAAAAADQBAAAoAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-23T01:11:57.33Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 4,
+              "Title": "Sys_DictionaryController.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
+              "ViewState": "AgIAALAAAAAAAAAAAAAiwOIAAAAeAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-27T12:37:35.583Z",
+              "EditorCaption": ""
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 10,
+              "Title": "ContainerService.cs",
+              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "RelativeToolTip": "WIDESEAWCS_BasicInfoService\\ContainerService.cs",
+              "ViewState": "AgIAAG4AAAAAAAAAAAAEwEcAAAAtAAAAAAAAAA==",
+              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+              "WhenOpened": "2025-04-23T02:19:27.384Z"
+            },
+            {
+              "$type": "Document",
+              "DocumentIndex": 17,
               "Title": "OrderDetailsService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\OrderDetailsService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\OrderDetailsService.cs",
@@ -313,7 +397,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 7,
+              "DocumentIndex": 13,
               "Title": "Dt_ContainerItem_Hty.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem_Hty.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem_Hty.cs",
@@ -325,7 +409,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 8,
+              "DocumentIndex": 14,
               "Title": "Dt_OrderContainer_Hty.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer_Hty.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer_Hty.cs",
@@ -337,7 +421,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 9,
+              "DocumentIndex": 15,
               "Title": "Dt_Positions.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Positions.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Positions.cs",
@@ -349,7 +433,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 12,
+              "DocumentIndex": 18,
               "Title": "Dt_OrderContainer.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_OrderContainer.cs",
@@ -361,7 +445,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 10,
+              "DocumentIndex": 16,
               "Title": "Dt_ContainerItem.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_ContainerItem.cs",
@@ -373,7 +457,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 23,
+              "DocumentIndex": 27,
               "Title": "GantryPositionJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\GantryPositionJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\GantryPositionJob.cs",
@@ -385,7 +469,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 20,
+              "DocumentIndex": 25,
               "Title": "Dt_Container.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Container.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\Dt_Container.cs",
@@ -397,7 +481,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 16,
+              "DocumentIndex": 22,
               "Title": "Sys_DictionaryService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_SystemServices\\Sys_DictionaryService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_SystemServices\\Sys_DictionaryService.cs",
@@ -409,7 +493,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 13,
+              "DocumentIndex": 19,
               "Title": "Dt_Task_Hty.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task_Hty.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_Task_Hty.cs",
@@ -421,20 +505,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 17,
-              "Title": "Sys_DictionaryController.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_DictionaryController.cs",
-              "ViewState": "AgIAAEUAAAAAAAAAAAAiwGkAAAAJAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-27T12:37:35.583Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 14,
+              "DocumentIndex": 20,
               "Title": "ContainerController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\BasicInfo\\ContainerController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\BasicInfo\\ContainerController.cs",
@@ -446,7 +517,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 15,
+              "DocumentIndex": 21,
               "Title": "Sys_Log.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\System\\Sys_Log.cs",
@@ -458,7 +529,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 19,
+              "DocumentIndex": 24,
               "Title": "ContainerTypeEnum.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\ContainerTypeEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\ContainerTypeEnum.cs",
@@ -470,7 +541,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 18,
+              "DocumentIndex": 23,
               "Title": "ContainerStatusEnum.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\ContainerStatusEnum.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\ContainerStatusEnum.cs",
@@ -482,7 +553,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 21,
+              "DocumentIndex": 26,
               "Title": "CommonConveyorLightJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\CommonConveyorLightJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\CommonConveyorLightJob.cs",
@@ -494,20 +565,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 22,
-              "Title": "GantryJob.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryJob.cs",
-              "ViewState": "AgIAADgAAAAAAAAAAAAkwFgAAACtAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-22T02:11:15.214Z",
-              "EditorCaption": ""
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 24,
+              "DocumentIndex": 28,
               "Title": "LightStatusStorage.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\LightStatusStorage.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\LightStatusStorage.cs",
@@ -519,7 +577,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 25,
+              "DocumentIndex": 29,
               "Title": "ContainerPlacer.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\ContainerPlacer.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\ContainerPlacer.cs",
@@ -531,7 +589,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 26,
+              "DocumentIndex": 30,
               "Title": "GantryJob2.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryJob2.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryJob2.cs",
@@ -543,19 +601,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 27,
-              "Title": "GantryFJob.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "RelativeToolTip": "WIDESEAWCS_Tasks\\Gantry\\GantryFJob.cs",
-              "ViewState": "AgIAAAAAAAAAAAAAAAAAAB4AAAAZAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-27T03:13:59.526Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 28,
+              "DocumentIndex": 31,
               "Title": "OrderrowsService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_BasicInfoService\\OrderrowsService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_BasicInfoService\\OrderrowsService.cs",
@@ -567,19 +613,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 30,
-              "Title": "OrderDetails.cs",
-              "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
-              "ToolTip": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
-              "RelativeToolTip": "WIDESEAWCS_Model\\Models\\BasicInfo\\OrderDetails.cs",
-              "ViewState": "AgIAABgAAAAAAAAAAAAYwDMAAAAtAAAAAAAAAA==",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-25T07:59:41.377Z"
-            },
-            {
-              "$type": "Document",
-              "DocumentIndex": 29,
+              "DocumentIndex": 32,
               "Title": "ProductInfo.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_DTO\\BasicInfo\\ProductInfo.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_DTO\\BasicInfo\\ProductInfo.cs",
@@ -591,7 +625,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 31,
+              "DocumentIndex": 33,
               "Title": "TaskController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\Task\\TaskController.cs",
@@ -603,7 +637,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 34,
+              "DocumentIndex": 36,
               "Title": "Program.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Program.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Program.cs",
@@ -615,7 +649,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 32,
+              "DocumentIndex": 34,
               "Title": "swg-login.html",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\wwwroot\\swg-login.html",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\wwwroot\\swg-login.html",
@@ -627,7 +661,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 42,
+              "DocumentIndex": 44,
               "Title": "GantryCommand.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\Gantry\\GantryCommand.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\Gantry\\GantryCommand.cs",
@@ -639,7 +673,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 37,
+              "DocumentIndex": 39,
               "Title": "DeviceProtocolController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolController.cs",
@@ -651,7 +685,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 41,
+              "DocumentIndex": 43,
               "Title": "DeviceInfoController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceInfoController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceInfoController.cs",
@@ -663,7 +697,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 40,
+              "DocumentIndex": 42,
               "Title": "DeviceProtocolDetailController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolDetailController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DeviceProtocolDetailController.cs",
@@ -675,7 +709,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 35,
+              "DocumentIndex": 37,
               "Title": "Sys_UserController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\System\\Sys_UserController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\System\\Sys_UserController.cs",
@@ -683,12 +717,11 @@
               "RelativeToolTip": "WIDESEAWCS_Server\\Controllers\\System\\Sys_UserController.cs",
               "ViewState": "AgIAACEAAAAAAAAAAADwv5YAAAAAAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-04-25T04:49:04.571Z",
-              "EditorCaption": ""
+              "WhenOpened": "2025-04-25T04:49:04.571Z"
             },
             {
               "$type": "Document",
-              "DocumentIndex": 33,
+              "DocumentIndex": 35,
               "Title": "swaggerdoc.css",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\wwwroot\\css\\swaggerdoc.css",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\wwwroot\\css\\swaggerdoc.css",
@@ -700,7 +733,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 36,
+              "DocumentIndex": 38,
               "Title": "index.html",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\index.html",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\index.html",
@@ -712,7 +745,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 39,
+              "DocumentIndex": 41,
               "Title": "DispatchInfoController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\DispatchInfoController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\DispatchInfoController.cs",
@@ -724,7 +757,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 38,
+              "DocumentIndex": 40,
               "Title": "SchedulerController.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Server\\Controllers\\QuartzJob\\SchedulerController.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Server\\Controllers\\QuartzJob\\SchedulerController.cs",
@@ -736,7 +769,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 44,
+              "DocumentIndex": 46,
               "Title": "ITask_HtyRepository.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoRepository\\ITask_HtyRepository.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoRepository\\ITask_HtyRepository.cs",
@@ -748,7 +781,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 43,
+              "DocumentIndex": 45,
               "Title": "Dt_TaskExecuteDetail.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_TaskExecuteDetail.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Model\\Models\\TaskInfo\\Dt_TaskExecuteDetail.cs",
@@ -760,7 +793,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 46,
+              "DocumentIndex": 48,
               "Title": "IOrderDetailsService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_IBasicInfoService\\IOrderDetailsService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_IBasicInfoService\\IOrderDetailsService.cs",
@@ -772,7 +805,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 45,
+              "DocumentIndex": 47,
               "Title": "CommonConveyorLineJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineJob.cs",
@@ -784,7 +817,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 47,
+              "DocumentIndex": 49,
               "Title": "ExceptionHelper.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\ExceptionHelper.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Common\\ExceptionHelper.cs",
@@ -796,7 +829,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 48,
+              "DocumentIndex": 50,
               "Title": "ITaskService.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_ITaskInfoService\\ITaskService.cs",
@@ -808,7 +841,7 @@
             },
             {
               "$type": "Document",
-              "DocumentIndex": 49,
+              "DocumentIndex": 51,
               "Title": "CommonConveyorLineStationJob.cs",
               "DocumentMoniker": "E:\\0.\u9879\u76EE\u96C6\\\u53CB\u529B\u5E2E\\ZheJiangHanTong\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineStationJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ConveyorLineJob\\CommonConveyorLineStationJob.cs",
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskStatusEnum.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskStatusEnum.cs"
index 055d1b9..0c8cb17 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskStatusEnum.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskStatusEnum.cs"
@@ -1,5 +1,6 @@
 锘縰sing System;
 using System.Collections.Generic;
+using System.ComponentModel;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
@@ -8,9 +9,28 @@
 {
     public enum TaskStatusEnum
     {
+        /// <summary>
+        /// 鏂板缓
+        /// </summary>
+        [Description("鏂板缓")]
         Gantry_Wait = 0,
+
+        /// <summary>
+        /// 寰呭彂閫�
+        /// </summary>
+        [Description("寰呭彂閫�")]
         Gantry_New = 1,
+
+        /// <summary>
+        /// 宸插彂閫�
+        /// </summary>
+        [Description("宸插彂閫�")]
         Gantry_Executing = 2,
+
+        /// <summary>
+        /// 宸插畬鎴�
+        /// </summary>
+        [Description("宸插畬鎴�")]
         Gantry_Completed = 3,
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs"
index cdb20b7..a7df80f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_DictionaryController.cs"
@@ -22,6 +22,7 @@
 using WIDESEAWCS_Core.Caches;
 using WIDESEAWCS_QuartzJob.DeviceEnum;
 using OfficeOpenXml.FormulaParsing.Excel.Functions.Information;
+using WIDESEAWCS_Common;
 
 namespace WIDESEAWCS_WCSServer.Controllers.System
 {
@@ -201,6 +202,29 @@
                             result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data };
                         }
                         break;
+                    case "taskState":
+                        {
+                            Type type = typeof(TaskStatusEnum);
+                            List<int> enums = Enum.GetValues(typeof(TaskStatusEnum)).Cast<int>().ToList();
+                            int index = 0;
+                            List<object> data = new List<object>();
+                            foreach (var item in enums)
+                            {
+                                FieldInfo? fieldInfo = typeof(TaskStatusEnum).GetField(((TaskStatusEnum)item).ToString());
+                                DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>();
+                                if (description != null)
+                                {
+                                    data.Add(new { key = item.ToString(), value = description.Description });
+                                }
+                                else
+                                {
+                                    data.Add(new { key = item.ToString(), value = item.ToString() });
+                                }
+                                index++;
+                            }
+                            result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data };
+                        }
+                        break;
                 }
                 return result;
             }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Gantry/GantryJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Gantry/GantryJob.cs"
index 7dfb4a9..51104ea 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Gantry/GantryJob.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Gantry/GantryJob.cs"
@@ -62,6 +62,11 @@
                             if (takePositions.Length != 5)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "鍙栬揣浣嶇疆閿欒");
+                                if (task.ExceptionMessage?.Contains("鍙栬揣浣嶇疆閿欒") ?? true)
+                                {
+                                    task.ExceptionMessage = "鍙栬揣浣嶇疆閿欒";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
@@ -69,6 +74,11 @@
                             if (putPositions.Length != 5)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "鏀捐揣浣嶇疆閿欒");
+                                if (task.ExceptionMessage?.Contains("鏀捐揣浣嶇疆閿欒") ?? true)
+                                {
+                                    task.ExceptionMessage = "鏀捐揣浣嶇疆閿欒";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
@@ -76,17 +86,32 @@
                             if (containerItem == null)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "鏉挎潗灏哄鑾峰彇閿欒");
+                                if (task.ExceptionMessage?.Contains("鏉挎潗灏哄鑾峰彇閿欒") ?? true)
+                                {
+                                    task.ExceptionMessage = "鏉挎潗灏哄鑾峰彇閿欒";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (!LightStatusStorage.StationStautsDic.TryGetValue(putPositions[0],out bool stationStatus))
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", $"宸ヤ綅銆恵putPositions[0]}銆戞湁鏃犲灚鏉挎暟鎹敊璇�,{LightStatusStorage.StationStautsDic.Serialize()}");
+                                if (task.ExceptionMessage?.Contains($"宸ヤ綅銆恵putPositions[0]}銆戞湁鏃犲灚鏉挎暟鎹敊璇�") ?? true)
+                                {
+                                    task.ExceptionMessage = $"宸ヤ綅銆恵putPositions[0]}銆戞湁鏃犲灚鏉挎暟鎹敊璇�";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
                             if (!stationStatus)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", $"宸ヤ綅銆恵putPositions[0]}銆戞棤鍨澘,{LightStatusStorage.StationStautsDic.Serialize()}");
+                                if (task.ExceptionMessage?.Contains($"宸ヤ綅銆恵putPositions[0]}銆戞棤鍨澘") ?? true)
+                                {
+                                    task.ExceptionMessage = $"宸ヤ綅銆恵putPositions[0]}銆戞棤鍨澘";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
                             
@@ -96,7 +121,12 @@
 
                             if (OPositions.HPositions[takePositions[0]].PositionZ == 0)
                             {
-                                WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "鍙栬揣Z鍧愭爣璇诲彇涓�0");
+                                WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "璇诲彇鍙栬揣Z鍧愭爣璇诲彇涓�0");
+                                if (task.ExceptionMessage?.Contains($"璇诲彇鍙栬揣Z鍧愭爣璇诲彇涓�0") ?? true)
+                                {
+                                    task.ExceptionMessage = $"璇诲彇鍙栬揣Z鍧愭爣璇诲彇涓�0";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
@@ -108,7 +138,12 @@
 
                             if (OPositions.HPositions[takePositions[0]].PositionZ == 0)
                             {
-                                WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "鏀捐揣Z鍧愭爣璇诲彇涓�0");
+                                WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "璇诲彇鏀捐揣Z鍧愭爣璇诲彇涓�0");
+                                if (task.ExceptionMessage?.Contains($"璇诲彇鏀捐揣Z鍧愭爣璇诲彇涓�0") ?? true)
+                                {
+                                    task.ExceptionMessage = $"璇诲彇鏀捐揣Z鍧愭爣璇诲彇涓�0";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
                             int putPoR = 0;
@@ -140,6 +175,11 @@
                                     else
                                     {
                                         WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "R鍧愭爣閿欒");
+                                        if (task.ExceptionMessage?.Contains($"R鍧愭爣閿欒") ?? true)
+                                        {
+                                            task.ExceptionMessage = $"R鍧愭爣閿欒";
+                                            _taskRepository.UpdateData(task);
+                                        }
                                         return Task.CompletedTask;
                                     }
                                 }
@@ -164,6 +204,11 @@
                             if(devicePro == null)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}", "璁惧鍗忚鍙傛暟閿欒锛屾湭鎵惧埌鏈�澶ф渶灏忓潗鏍囧湴鍧�");
+                                if (task.ExceptionMessage?.Contains($"璁惧鍗忚鍙傛暟閿欒锛屾湭鎵惧埌鏈�澶ф渶灏忓潗鏍囧湴鍧�") ?? true)
+                                {
+                                    task.ExceptionMessage = $"璁惧鍗忚鍙傛暟閿欒锛屾湭鎵惧埌鏈�澶ф渶灏忓潗鏍囧湴鍧�";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
                             int[] data = otherDevice.Communicator.Read<int>(devicePro.DeviceProAddress, (ushort)(devicePros.Count));
@@ -190,48 +235,88 @@
                             if (takePoX < minX || takePoX > maxX)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"X鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoX},鏈�澶у�硷細{maxX},鏈�灏忓�硷細{minX}");
+                                if (task.ExceptionMessage?.Contains($"X鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoX},鏈�澶у�硷細{maxX},鏈�灏忓�硷細{minX}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"X鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoX},鏈�澶у�硷細{maxX},鏈�灏忓�硷細{minX}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (putPoX < minX || putPoX > maxX)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"X鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoX},鏈�澶у�硷細{maxX},鏈�灏忓�硷細{minX}");
+                                if (task.ExceptionMessage?.Contains($"X鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoX},鏈�澶у�硷細{maxX},鏈�灏忓�硷細{minX}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"X鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoX},鏈�澶у�硷細{maxX},鏈�灏忓�硷細{minX}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (takePoY < minY || takePoY > maxY)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"Y鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoY},鏈�澶у�硷細{maxY},鏈�灏忓�硷細{minY}");
+                                if (task.ExceptionMessage?.Contains($"Y鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoY},鏈�澶у�硷細{maxY},鏈�灏忓�硷細{minY}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"Y鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoY},鏈�澶у�硷細{maxY},鏈�灏忓�硷細{minY}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (putPoY < minY || putPoY > maxY)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"Y鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoY},鏈�澶у�硷細{maxY},鏈�灏忓�硷細{minY}");
+                                if (task.ExceptionMessage?.Contains($"Y鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoY},鏈�澶у�硷細{maxY},鏈�灏忓�硷細{minY}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"Y鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoY},鏈�澶у�硷細{maxY},鏈�灏忓�硷細{minY}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (takePoZ < minZ || takePoZ > maxZ)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"Z鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoZ},鏈�澶у�硷細{maxZ},鏈�灏忓�硷細{minZ}");
+                                if (task.ExceptionMessage?.Contains($"Z鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoZ},鏈�澶у�硷細{maxZ},鏈�灏忓�硷細{minZ}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"Z鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoZ},鏈�澶у�硷細{maxZ},鏈�灏忓�硷細{minZ}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (putPoZ < minZ || putPoZ > maxZ)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"Z鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoZ},鏈�澶у�硷細{maxZ},鏈�灏忓�硷細{minZ}");
+                                if (task.ExceptionMessage?.Contains($"Z鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoZ},鏈�澶у�硷細{maxZ},鏈�灏忓�硷細{minZ}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"Z鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoZ},鏈�澶у�硷細{maxZ},鏈�灏忓�硷細{minZ}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (takePoR < minR || takePoR > maxR)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"R鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoR},鏈�澶у�硷細{maxR},鏈�灏忓�硷細{minR}");
+                                if (task.ExceptionMessage?.Contains($"R鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoR},鏈�澶у�硷細{maxR},鏈�灏忓�硷細{minR}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"R鍙栬揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿takePoR},鏈�澶у�硷細{maxR},鏈�灏忓�硷細{minR}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
 
                             if (putPoR < minR || putPoR > maxR)
                             {
                                 WriteError($"{otherDevice.DeviceCode}-{otherDevice.DeviceName}-鍧愭爣", $"R鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoR},鏈�澶у�硷細{maxR},鏈�灏忓�硷細{minR}");
+                                if (task.ExceptionMessage?.Contains($"R鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoR},鏈�澶у�硷細{maxR},鏈�灏忓�硷細{minR}") ?? true)
+                                {
+                                    task.ExceptionMessage = $"R鏀捐揣鍧愭爣瓒呭嚭鑼冨洿,鍙栬揣鍧愭爣锛歿putPoR},鏈�澶у�硷細{maxR},鏈�灏忓�硷細{minR}";
+                                    _taskRepository.UpdateData(task);
+                                }
                                 return Task.CompletedTask;
                             }
                             #endregion

--
Gitblit v1.9.3