瀏覽代碼

点击agv任务完成通知wcs

dfsfs 1 年之前
父節點
當前提交
17771255c3

+ 1 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warewms/ams/WcsTaskController.java

@@ -111,6 +111,7 @@ public class WcsTaskController extends BaseController {
             AjaxResult.error("任务回调失败");
         }
         wcsTaskService.callBackTaskComplete(wcsTask);
+
         return AjaxResult.success("任务回调完成");
     }
 

+ 22 - 0
warewms-ams/src/main/java/com/ruoyi/ams/task/service/impl/WcsTaskServiceImpl.java

@@ -2,6 +2,7 @@ package com.ruoyi.ams.task.service.impl;
 
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@@ -282,11 +283,31 @@ public class WcsTaskServiceImpl implements IWcsTaskService {
 
         this.eventCallBack("543", wcsTask);
 
+        //通知wcs任务完成
+        notifyWCSTaskCompletion(wcsTask);
+
         //修改任务状态
         wcsTask.setState(2L);
         wcsTaskMapper.updateWcsTask(wcsTask);
     }
 
+    /**
+     *
+     * @param wcsTask
+     * @return
+     */
+    public AjaxResult notifyWCSTaskCompletion(WcsTask wcsTask){
+
+        if(!StringUtils.isBlank(wcsTask.getExt1())
+                && !StringUtils.equals(wcsTask.getWhTypeFrom(), Constant.TaskType.AGV.getDesc())) {
+            return AjaxResult.success();
+        }
+
+        return wcsTask.getExt1().startsWith("SO") ?
+                wmsDocAsnSubService.callbackWcsAgvOutTask(wcsTask.getTaskNo())
+                : wmsDocAsnSubService.callbackWcsAgvInTask(wcsTask.getTaskNo());
+    }
+
     @Transactional
     @Override
     public AjaxResult cancelTask(WcsTask wcsTask) {
@@ -499,6 +520,7 @@ public class WcsTaskServiceImpl implements IWcsTaskService {
         }
         wcsTask.setState(state.longValue());
         wcsTask.setUpdateDate(new Date());
+
         wcsTaskService.updateWcsTask(wcsTask);
     }