#
Junjie
2025-02-14 ac4341ea6b66ae02427d39d35f41d42d78b2eb2e
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskWaveTimer.java
@@ -1,11 +1,14 @@
package com.zy.asrs.wms.asrs.timer;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy;
import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper;
import com.zy.asrs.framework.exception.CoolException;
import com.zy.asrs.wms.asrs.entity.*;
import com.zy.asrs.wms.asrs.entity.enums.CacheSiteStatusType;
import com.zy.asrs.wms.asrs.entity.enums.OrderSettleType;
import com.zy.asrs.wms.asrs.entity.enums.TaskStsType;
import com.zy.asrs.wms.asrs.service.*;
import com.zy.asrs.wms.system.entity.Dict;
import com.zy.asrs.wms.system.service.DictService;
@@ -56,7 +59,7 @@
                return;
            }
            List<Task> taskList = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskSts, 198));
            List<Task> taskList = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskSts, TaskStsType.WAVE_SEED.id));
            for (Task task : taskList) {
                Long hostId = task.getHostId();
@@ -101,20 +104,23 @@
                        orderUtils.updateWorkQty(orderDetl.getId(), workQty, true);
                        List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getSiteStatus, CacheSiteStatusType.O.id).eq(CacheSite::getHostId, hostId));
                        if (cacheSites.isEmpty()) {
                            throw new CoolException("缓存站空间不足,请稍后再试");
                        CacheSite cacheSite = cacheSiteService.getOne(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderId, orderDetl.getOrderId()).eq(CacheSite::getHostId, hostId));
                        if (cacheSite == null) {
                            throw new CoolException("缓存站空间不存在");
                        }
                        CacheSite cacheSite = cacheSites.get(0);
                        WaveSeed waveSeed = new WaveSeed();
                        waveSeed.setSiteId(cacheSite.getId());
                        waveSeed.setSiteNo(cacheSite.getSiteNo());
                        waveSeed.setOrderNo(orderDetl.getOrderNo());
                        waveSeed.setOrderId(orderDetl.getOrderId());
                        waveSeed.setOrderDetlId(orderDetl.getId());
                        waveSeed.setTaskDetlId(taskDetl.getId());
                        waveSeed.setAnfme(taskDetl.getAnfme());
                        waveSeed.setWorkQty(0D);
                        waveSeed.setMatnr(taskDetl.getMatnr());
                        waveSeed.setBatch(taskDetl.getBatch());
                        waveSeed.setFieldParams(JSON.toJSONString(taskDetl.getUniqueField()));
                        waveSeed.setHostId(hostId);
                        if (!waveSeedService.save(waveSeed)) {
                            throw new CoolException("波次播种创建失败");
@@ -132,7 +138,7 @@
                }
                task.setTaskSts(199L);
                task.setTaskSts(TaskStsType.COMPLETE_OUT.id);
                task.setUpdateTime(new Date());
                if (!taskService.updateById(task)) {
                    throw new CoolException("任务更新失败");