diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsService.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsService.java
index eb5e25c..93b0a22 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsService.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsService.java
@@ -19,6 +19,11 @@ public interface WcsService {
      */
     Result wcsTaskAssign(TaskHeader taskHeader);
 
+    /**
+     * 取消WCS任务
+     */
+    Result cancelWcsTask(TaskHeader taskHeader);
+
     WcsTask switchTaskTypeToWcs(WcsTask wcsTask);
 
     /**
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsServiceImpl.java
index 2b8f3ac..7b71b87 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsServiceImpl.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wcs/service/WcsServiceImpl.java
@@ -7,6 +7,7 @@ import java.util.stream.Collectors;
 import javax.annotation.Resource;
 
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.modules.wms.api.wcs.entity.MaterialInfoEntity;
 import org.jeecg.modules.wms.api.wcs.entity.TaskReentryEntity;
 import org.jeecg.modules.wms.api.wcs.entity.WarecellDomain;
@@ -42,7 +43,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import com.alibaba.fastjson.JSON;
-import org.jeecg.common.exception.JeecgBootException;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 
@@ -408,7 +408,32 @@ public class WcsServiceImpl implements WcsService {
             }
         }
         LogRecordContext.putVariable("taskHeader", taskHeader);// 操作日志收集
-        return Result.ok("下发成功");
+        return Result.ok("下发任务成功");
+    }
+
+    @Override
+    public Result cancelWcsTask(TaskHeader taskHeader) {
+        WcsTask wcsTask = new WcsTask();
+        wcsTask.setTaskNo(String.valueOf(taskHeader.getId()));
+        String value = parameterConfigurationService.getValueByCode(QuantityConstant.RULE_CONNECT_WCS);
+        if (StringUtils.isEmpty(value)) {
+            throw new JeecgBootException("下发任务时,没有找到连接WCS的数据配置");
+        }
+        int connectWCS = Integer.parseInt(value);
+        if (connectWCS == QuantityConstant.RULE_WCS_CONNECT) {
+            String url = addressService.getUrlByParam(QuantityConstant.ADDRESS_WCS_TASK_CANCEL);
+            String jsonParam = JSON.toJSONString(wcsTask);
+            System.out.println(jsonParam);
+            String body = OkHttpUtils.sendPostByJsonStr(url, jsonParam);
+            if (StringUtils.isEmpty(body)) {
+                throw new JeecgBootException("接口地址错误或返回为空");
+            }
+            Result result = JSON.parseObject(body, Result.class);
+            if (result.getCode() != QuantityConstant.HTTP_OK) {
+                return Result.error(result.getMessage());
+            }
+        }
+        return Result.ok("取消任务成功");
     }
 
     // wcs任务类型 入库 = 100 , 出库 = 300,分拣出库 = 400 ,移库 = 800,换站=1000
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
index 6a3325a..72b0b30 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
@@ -882,6 +882,12 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
         if (taskHeader.getStatus().equals(QuantityConstant.TASK_STATUS_COMPLETED)) {
             return Result.ok("任务(" + taskId + ")任务已经是完成的!");
         }
+        if (taskHeader.getStatus().intValue() > QuantityConstant.TASK_STATUS_BUILD) {
+            Result result = wcsService.cancelWcsTask(taskHeader);
+            if (!result.isSuccess()) {
+                return result;
+            }
+        }
         int taskType = taskHeader.getTaskType().intValue();
         int preTaskNo = taskId;
         String warehouseCode = taskHeader.getWarehouseCode();
@@ -1119,6 +1125,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
             inventoryHeader.setContainerCode(containerCode);
             inventoryHeader.setLocationCode(toLocationCode);
             inventoryHeader.setTotalWeight(taskHeader.getWeight());
+            inventoryHeader.setCreateBy(taskHeader.getCreateBy());
             inventoryHeader.setContainerStatus(QuantityConstant.STATUS_CONTAINER_SOME);
             inventoryHeader.setEnable(QuantityConstant.STATUS_ENABLE);
             if (!inventoryHeaderService.save(inventoryHeader)) {
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/utils/interceptor/HuahengBatisInterceptor.java b/huaheng-wms-core/src/main/java/org/jeecg/utils/interceptor/HuahengBatisInterceptor.java
index 1a8c9db..634402a 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/utils/interceptor/HuahengBatisInterceptor.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/utils/interceptor/HuahengBatisInterceptor.java
@@ -109,12 +109,12 @@ public class HuahengBatisInterceptor implements Interceptor {
                 try {
                     if ("updateBy".equals(field.getName())) {
                         // 获取登录用户信息
-                        if (sysUser != null) {
-                            // 登录账号
-                            field.setAccessible(true);
-                            field.set(parameter, HuahengJwtUtil.getCurrentOperator());
-                            field.setAccessible(false);
-                        }
+//                        if (sysUser != null) {
+                        // 登录账号
+                        field.setAccessible(true);
+                        field.set(parameter, HuahengJwtUtil.getCurrentOperator());
+                        field.setAccessible(false);
+//                        }
                     }
                     if ("updateTime".equals(field.getName())) {
                         field.setAccessible(true);