自动化立体仓库 - WMS系统
#
qlsxk
2025-09-27 7da091c2fc72258c81546f16585bf4830936aadb
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -21,6 +21,7 @@
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.concurrent.TimeUnit;
/**
 * Created by vincent on 2022/4/8
@@ -309,38 +310,39 @@
     * 出库---目的地搬离
     */
    @RequestMapping("/leave/task")
    public HashMap<String, Object> leaveTask(@RequestBody HashMap<String, Object> map) {
        String taskNo = map.get("TaskNo") + "";
    public R leaveTask(@RequestBody HashMap<String, Object> map) {
        String taskNo = String.valueOf(map.get("taskNo"));
        String status = String.valueOf(map.get("status"));
        HashMap<String, Object> map1 = new HashMap<>();
        if (Cools.isEmpty(taskNo)) {
            map1.put("ReturnStatus", "1");
            map1.put("ErrorMessage", "任务号为空");
            return R.error("任务号为空");
        } else {
            WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", Integer.valueOf(taskNo)));
            if (wrkMast == null) {
                map1.put("ReturnStatus", "1");
                map1.put("ErrorMessage", "没有找到该任务号:" + taskNo);
                return map1;
                return R.error("没有找到该任务号:" + taskNo);
            }
            if (wrkMast.getIoType() != 101) {
                map1.put("ReturnStatus", "0");
                map1.put("ErrorMessage", "");
                return map1;
            } else {
                wrkMast.setWrkSts(14L);//出库到站点上
                wrkMast.setModiTime(new Date());
                if (wrkMastService.updateById(wrkMast)) {
                    map1.put("ReturnStatus", "0");
                    map1.put("ErrorMessage", "");
                } else {
                    map1.put("ReturnStatus", "1");
                    map1.put("ErrorMessage", "更新任务状态失败" + wrkMast);
            if (status.equals("complete")) {
                // 入库 + 库位转移
                if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) {
                    wrkMast.setWrkSts(4L);
                    // 出库
                } else if (wrkMast.getWrkSts() > 10) {
                    wrkMast.setWrkSts(14L);
                }
                Date now = new Date();
                wrkMast.setWrkSts(14L);//出库到站点上
                wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true));
                wrkMast.setCrnEndTime(now);
                wrkMast.setModiTime(now);
                wrkMastService.updateById(wrkMast);
                return R.ok();
            } else if (status.equals("cancel")) {
                workService.cancelWrkMast(taskNo, 9527L);
                return R.ok();
            }
        }
        return map1;
        return R.error();
    }
}