自动化立体仓库 - WMS系统
zyh
2 天以前 3eee2147f220634b620b7ed84c97fbd8257205d5
src/main/java/com/zy/asrs/task/AGVTaskReportScheduler.java
@@ -3,10 +3,10 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.Task;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.entity.*;
import com.zy.asrs.service.OrderPakoutService;
import com.zy.asrs.service.TaskService;
import com.zy.asrs.service.WrkDetlService;
import com.zy.asrs.service.WrkMastService;
import com.zy.asrs.service.impl.BasDevpServiceImpl;
import com.zy.asrs.task.core.ReturnT;
@@ -34,7 +34,11 @@
    @Autowired
    private WrkMastService wrkMastService;
    @Autowired
    private WrkDetlService wrkDetlService;
    @Autowired
    private BasDevpServiceImpl basDevpService;
    @Autowired
    private OrderPakoutService orderPakoutService;
    /**
     * 满板和空板出库任务,出到输送线后创建AGV搬运任务
@@ -61,19 +65,41 @@
            Task task1 = taskService.selectOne(new EntityWrapper<Task>()
                    .in("source_sta_no", wrkMast.getSourceStaNo(), wrkMast.getMemo())
                    .in("sta_no", wrkMast.getSourceStaNo(), wrkMast.getMemo()));
            if (Cools.isEmpty(task1)) {
            if (Cools.isEmpty(task1)) {
                //生成AGV搬运出库任务
                // 保存工作档
                Task task = new Task();
                Date date = new Date();
                String TaskNo = wrkMast.getWrkNo() + "aa" + date.getTime();
                String taskType = "AGV";
                List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
                if (wrkMast.getIoType()!=110){
                    if (wrkDetls != null && !Cools.isEmpty(wrkDetls.get(0).getOrderNo())){
                        TaskNo = wrkDetls.get(0).getOrderNo();
                        taskType = "KB-AGV";
                    }
                }else{
                    if (wrkDetls != null && !Cools.isEmpty(wrkDetls.get(0).getOrderNo())){
                        OrderPakout orderPakout = orderPakoutService.selectByNo(wrkDetls.get(0).getOrderNo());
                        if (orderPakout.getDocType()==11){
                            taskType = "PP-AGV";
                        }else if (orderPakout.getDocType()==12){
                            taskType = "ZP-AGV";
                        }
                    }
                }
                task.setWrkNo(wrkMast.getWrkNo())
                        .setTaskNo(TaskNo)
                        .setIoTime(date)
                        .setWrkSts(301L) // 工作状态:301.任务下发
                        .setIoType(ioType) // 入出库状态: 3.站到站  4.站到区域
                        .setTaskType("agv")
                        .setTaskType(taskType)
                        .setIoPri(10D)
                        .setFullPlt("Y") // 满板:Y
                        .setPicking("N") // 拣料