diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java
index 14b96a9..7bf5851 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java
@@ -224,11 +224,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
                 switch (type) {
                     case "1":
                         // 送料
-                        String vehicle_code = param.getString("vehicle_code");
-                        if (StrUtil.isBlank(vehicle_code) || "0".equals(vehicle_code)) {
-                            throw new BadRequestException("载具号不能为空!");
+                        String vehicle_code = TaskUtils.formatVehicleCode(param.getString("vehicle_code"));
+                        if ("0000".equals(vehicle_code)) {
+                            throw new BadRequestException("载具编码不能为空!");
                         }
-                        method_param.put("vehicle_code", TaskUtils.formatVehicleCode(vehicle_code));
+                        method_param.put("vehicle_code", vehicle_code);
 
                         switch (region) {
                             case HL:
@@ -240,6 +240,18 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
                                 yzSendMaterialTask.createTask(method_param);
                                 break;
                             case SZ:
+                                WQLObject vd_table = WQLObject.getWQLObject("st_ivt_vehicle_detail");
+                                JSONObject vd = vd_table
+                                        .query("is_delete = '0' AND vehicle_type = '2' AND vehicle_code = '" + vehicle_code + "'")
+                                        .uniqueResult(0);
+                                if (ObjectUtil.isEmpty(vd)) {
+                                    throw new BadRequestException("未找到 [" + vehicle_code + "] 的组盘信息!");
+                                }
+                                vd.put("is_fire", "1");
+                                vd.put("is_in_kiln", "0");
+                                vd_table.update(vd);
+                                method_param.put("vd", vd);
+
                                 szSendMaterialTask.createTask(method_param);
                                 break;
                             default:
@@ -409,12 +421,14 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
         vd.put("create_name", ACSSystem.nick_name);
         vd.put("create_time", DateUtil.now());
         vd.put("is_delete", TrueOrFalse.FALSE.value());
+
         vd.put("is_fire", TrueOrFalse.FALSE.value());
-        if (device_code.startsWith("FJ")) {
+        String region_code = point.getString("region_code");
+        if (Region.FJ.value().equals(region_code)) {
             vd.put("is_fire", TrueOrFalse.TRUE.value());
         }
         vd.put("is_in_kiln", TrueOrFalse.trueOrFalse(is_full) ? TrueOrFalse.TRUE.value() : TrueOrFalse.FALSE.value());
-        if (device_code.startsWith("FJ")) {
+        if (Region.FJ.value().equals(region_code)) {
             vd.put("is_in_kiln", TrueOrFalse.FALSE.value());
         }
 
@@ -430,8 +444,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
         param.put("point", point);
         param.put("workorder", work_order);
         param.put("vd", vd);
+        param.put("vehicle_code", vehicle_code);
         param.put("type", "1");
-        param.put("request_param", jsonObject);
+        param.put("request_param", jsonObject.toJSONString());
         this.apply(param);
     }
 
@@ -691,7 +706,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
 
         JSONObject result = new JSONObject();
         result.put("status", HttpStatus.OK.value());
-        result.put("message", "反馈成功");
+        result.put("message", "反馈成功!");
         return result;
     }
 
@@ -703,6 +718,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
         }
         String vehicle_code = whereJson.getString("vehicle_code");
         vehicle_code = TaskUtils.formatVehicleCode(vehicle_code);
+        if ("0000".equals(vehicle_code)) {
+            throw new BadRequestException("载具编码不能为空!");
+        }
         JSONObject point = WQLObject
                 .getWQLObject("sch_base_point")
                 .query("is_used = '1' AND point_code = '" + point_code + "'")
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/PointServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/PointServiceImpl.java
index 5f47843..f14b47e 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/PointServiceImpl.java
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/PointServiceImpl.java
@@ -153,12 +153,10 @@ public class PointServiceImpl implements PointService {
         dto.setUpdate_optname(nickName);
         String pointStatus = dto.getPoint_status();
 
-        if (ObjectUtil.isNotEmpty(pointStatus) && pointStatus.equals("1")) { // 空位
+        if (ObjectUtil.isNotEmpty(pointStatus) && pointStatus.equals("0")) { // 空位
             dto.setVehicle_type("");
             dto.setVehicle_code("");
 //            PointUpdateUtil.clearPoint(dto.getPoint_code());
-        } else if (pointStatus.equals("2")) { // 空载具
-        } else if (pointStatus.equals("3")) { // 有料
         }
         JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto));
         pointTab.update(json);
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql
index ea27da3..60c9d04 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/call/material/wql/CALL_MATERIAL_TASK.wql
@@ -37,7 +37,7 @@
 	#			3、业务主过程			 	     #
 	##########################################
 
-	IF flag = "1"
+	IF 输入.flag = "1"
 	    QUERY
             SELECT
             	point.*,
@@ -78,7 +78,7 @@
 	    ENDQUERY
 	ENDIF
 
-	IF flag = "3"
+	IF 输入.flag = "3"
         QUERY
             SELECT
                 point.*
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java
index 94f2fa6..e440d65 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/FJSendEmptyTask.java
@@ -3,24 +3,25 @@ package org.nl.wms.sch.task.send.empty;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import lombok.RequiredArgsConstructor;
 import org.nl.modules.common.exception.BadRequestException;
 import org.nl.modules.wql.WQL;
 import org.nl.modules.wql.core.bean.WQLObject;
-import org.nl.wms.basedata.eum.TrueOrFalse;
 import org.nl.wms.basedata.eum.VehicleType;
 import org.nl.wms.sch.manage.*;
-import org.nl.wms.sch.task.send.material.HLSendMaterialTask;
-import org.nl.wms.sch.task.send.material.YZSendMaterialTask;
 import org.nl.wms.sch.task.util.TaskUtils;
+import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 
 /**
  * @author zhangjiangwei
  * @date 2023/04/14 21:29
  */
+@RequiredArgsConstructor
+@Component
 public class FJSendEmptyTask  extends AbstractAcsTask {
 
-
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public void updateTaskStatus(JSONObject task, String status) {
         if (TaskStatus.EXECUTING.value().equals(status)) {
@@ -34,32 +35,23 @@ public class FJSendEmptyTask  extends AbstractAcsTask {
         }
     }
 
+    @Transactional(rollbackFor = Exception.class)
     @Override
-    @Transactional
     public String createTask(JSONObject form) {
         JSONObject point = form.getJSONObject("point");
-
-        TaskUtils.isLocked(point);
-        JSONObject work_order = TaskUtils.hasWorkOrder(point);
-
         String vehicle_code = form.getString("vehicle_code");
-        if ("0000".equals(vehicle_code)) {
-            throw new BadRequestException("载具编码不能为空!");
-        }
-
-        // todo 组盘
 
         JSONObject task = TaskUtils.buildTask(
-                "混料机送料入库",
-                TaskType.SEND_MATERIAL.value(),
+                "分拣区送空",
+                TaskType.SEND_EMPTY.value(),
                 TaskStatus.SURE_START.value(),
                 point.getString("point_code"),
                 null,
-                work_order.getString("material_id"),
-                VehicleType.CUP.value(),
+                null,
+                VehicleType.STEEL_TRAY.value(),
                 vehicle_code,
-                TrueOrFalse.trueOrFalse(work_order.getString("is_urgent")) ? "99" : "1",
-                HLSendMaterialTask.class.getName(),
+                "1",
+                FJSendEmptyTask.class.getName(),
                 form.getString("create_mode"),
                 form.getString("request_param"),
                 form.getString("create_id"),
@@ -67,6 +59,10 @@ public class FJSendEmptyTask  extends AbstractAcsTask {
         );
         WQLObject.getWQLObject("sch_base_task").insert(task);
 
+        point.put("lock_type", LockType.TASK_LOCKED.value());
+        point.put("task_code", task.getString("task_code"));
+        WQLObject.getWQLObject("sch_base_point").update(point);
+
         return task.getString("task_id");
     }
 
@@ -75,7 +71,7 @@ public class FJSendEmptyTask  extends AbstractAcsTask {
     public void findNextPoint() {
         WQLObject task_table = WQLObject.getWQLObject("sch_base_task");
         JSONArray tasks = task_table
-                .query("is_delete = '0' AND task_status = '" + TaskStatus.SURE_START.value() + "' AND handle_class = '" + YZSendMaterialTask.class.getName() + "'", "priority DESC, create_time ASC")
+                .query("is_delete = '0' AND task_status = '" + TaskStatus.SURE_START.value() + "' AND handle_class = '" + FJSendEmptyTask.class.getName() + "'", "priority DESC, create_time ASC")
                 .getResultJSONArray(0);
         WQLObject point_table = WQLObject.getWQLObject("sch_base_point");
 
@@ -83,7 +79,7 @@ public class FJSendEmptyTask  extends AbstractAcsTask {
             JSONObject task = tasks.getJSONObject(i);
 
             JSONObject point = WQL
-                    .getWO("SEND_MATERIAL_TASK")
+                    .getWO("SEND_EMPTY_TASK")
                     .addParam("flag", "1")
                     .process()
                     .uniqueResult(0);
@@ -186,8 +182,6 @@ public class FJSendEmptyTask  extends AbstractAcsTask {
             JSONObject point2 = new JSONObject();
             point2.put("lock_type", LockType.UNLOCKED.value());
             point2.put("task_code", "");
-            point2.put("vehicle_type", task.getString("vehicle_type"));
-            point2.put("vehicle_code", task.getString("vehicle_code"));
             point2.put("point_status", PointStatus.NOT_EMPTY.value());
             if (operation_type == OperationType.AUTO) {
                 TaskUtils.addACSUpdateColum(point2);
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql
index fe07fe8..60de1da 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/empty/wql/SEND_EMPTY_TASK.wql
@@ -37,34 +37,8 @@
 	#			3、业务主过程			 	     #
 	##########################################
 
-	IF flag = "1"
-	    QUERY
-            SELECT
-            	point.*,
-            	vd.material_id,
-            	workorder.is_urgent
-            FROM
-            	sch_base_point point
-            	JOIN st_ivt_vehicle_detail vd ON point.vehicle_type = vd.vehicle_type
-            	AND point.vehicle_code = vd.vehicle_code
-            	AND vd.is_delete = '0'
-            	LEFT JOIN pdm_bd_workorder workorder ON vd.workorder_id = workorder.workorder_id
-            WHERE
-            	point.is_used = '1'
-            	AND point.lock_type = '1'
-            	AND point.region_code = 'CPHJ'
-            	AND point.point_status = '1'
-            	AND point.vehicle_type = '2'
-            	AND vd.is_fire = '0'
-            	AND vd.is_in_kiln = '1'
-            ORDER BY
-            	workorder.is_urgent DESC, vd.create_time ASC
-            ENDSELECT
-	    ENDQUERY
-	ENDIF
-
-	IF 输入.flag = "2"
-	    QUERY
+    IF 输入.flag = "1"
+        QUERY
             SELECT
             	*
             FROM
@@ -72,8 +46,8 @@
             WHERE
             	is_used = '1'
             	AND lock_type = '1'
-            	AND region_code = 'SZ'
+            	AND region_code = 'GTK'
             	AND point_type = '1'
             ENDSELECT
-	    ENDQUERY
-	ENDIF
+        ENDQUERY
+    ENDIF
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java
index 62b9135..508de79 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/SZSendMaterialTask.java
@@ -39,17 +39,7 @@ public class SZSendMaterialTask extends AbstractAcsTask {
     @Override
     public String createTask(JSONObject form) {
         JSONObject point = form.getJSONObject("point");
-        String vehicle_code = form.getString("vehicle_code");
-        WQLObject vd_table = WQLObject.getWQLObject("st_ivt_vehicle_detail");
-        JSONObject vd = vd_table
-                .query("is_delete = '0' AND vehicle_type = '2' AND vehicle_code = '" + vehicle_code + "'")
-                .uniqueResult(0);
-        if (ObjectUtil.isEmpty(vd)) {
-            throw new BadRequestException("未找到 [" + vehicle_code + "] 的组盘信息!");
-        }
-        vd.put("is_fire", "1");
-        vd.put("is_in_kiln", "0");
-        vd_table.update(vd);
+        JSONObject vd = form.getJSONObject("vd");
 
         JSONObject task = TaskUtils.buildTask(
                 "烧制区送料",
@@ -59,7 +49,7 @@ public class SZSendMaterialTask extends AbstractAcsTask {
                 null,
                 vd.getString("material_id"),
                 VehicleType.STEEL_TRAY.value(),
-                vehicle_code,
+                vd.getString("vehicle_code"),
                 "1",
                 SZSendMaterialTask.class.getName(),
                 form.getString("create_mode"),
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java
index 4c8410d..e4eb972 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/send/material/YZSendMaterialTask.java
@@ -75,26 +75,29 @@ public class YZSendMaterialTask extends AbstractAcsTask {
         JSONArray tasks = task_table
                 .query("is_delete = '0' AND task_status = '" + TaskStatus.SURE_START.value() + "' AND handle_class = '" + YZSendMaterialTask.class.getName() + "'", "priority DESC, create_time ASC")
                 .getResultJSONArray(0);
-        WQLObject point_table = WQLObject.getWQLObject("sch_base_point");
-
-        for (int i = 0; i < tasks.size(); i++) {
-            JSONObject task = tasks.getJSONObject(i);
-
-            JSONObject point = WQL
-                    .getWO("SEND_MATERIAL_TASK")
-                    .addParam("flag", "1")
-                    .process()
-                    .uniqueResult(0);
-
-            if (ObjectUtil.isNotEmpty(point)) {
-                task.put("task_status", TaskStatus.START_AND_END.value());
-                task.put("point_code2", point.getString("point_code"));
-                task.put("remark", "");
-                task_table.update(task);
-
-                point.put("lock_type", LockType.TASK_LOCKED.value());
-                point.put("task_code", task.getString("task_code"));
-                point_table.update(point);
+
+        if (ObjectUtil.isNotEmpty(tasks)) {
+            WQLObject point_table = WQLObject.getWQLObject("sch_base_point");
+
+            for (int i = 0; i < tasks.size(); i++) {
+                JSONObject task = tasks.getJSONObject(i);
+
+                JSONObject point = WQL
+                        .getWO("SEND_MATERIAL_TASK")
+                        .addParam("flag", "1")
+                        .process()
+                        .uniqueResult(0);
+
+                if (ObjectUtil.isNotEmpty(point)) {
+                    task.put("task_status", TaskStatus.START_AND_END.value());
+                    task.put("point_code2", point.getString("point_code"));
+                    task.put("remark", "");
+                    task_table.update(task);
+
+                    point.put("lock_type", LockType.TASK_LOCKED.value());
+                    point.put("task_code", task.getString("task_code"));
+                    point_table.update(point);
+                }
             }
         }
     }
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java
index 5d9dd27..fdf4aaf 100644
--- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java
+++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/task/util/TaskUtils.java
@@ -87,7 +87,7 @@ public class TaskUtils {
         if (StrUtil.isBlank(vehicle_code)) {
             vehicle_code =  "0000";
         } else {
-            if (vehicle_code.length() > 4 || vehicle_code.matches("^\\d+$")) {
+            if (vehicle_code.length() > 4 || !vehicle_code.matches("^\\d+$")) {
                 throw new BadRequestException("载具编码错误!");
             }
         }
diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/wms.xls b/lms/nladmin-system/src/main/java/org/nl/wms/wms.xls
index 9de783a..0142a6e 100644
Binary files a/lms/nladmin-system/src/main/java/org/nl/wms/wms.xls and b/lms/nladmin-system/src/main/java/org/nl/wms/wms.xls differ