skyouc
2025-06-22 ebe2da6e4eefd59b366ebab3a651b32763b580ed
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WorkServiceImpl.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.DateUtils;
import com.zy.asrs.framework.exception.CoolException;
import com.zy.asrs.wms.asrs.entity.*;
import com.zy.asrs.wms.asrs.entity.enums.*;
@@ -15,6 +16,8 @@
import com.zy.asrs.wms.utils.LocUtils;
import com.zy.asrs.wms.utils.OrderUtils;
import com.zy.asrs.wms.utils.Utils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -23,6 +26,8 @@
@Service("workService")
public class WorkServiceImpl implements WorkService {
    public static final Logger logger = LoggerFactory.getLogger(WorkServiceImpl.class);
    @Autowired
    private TaskService taskService;
@@ -77,9 +82,11 @@
    @Override
    public String generateTaskNo(Long taskType) {
        String format = DateUtils.format(new Date(), "MMddHHmm");
        Random random = new Random();
        int nextInt = random.nextInt(99999);
        return "R" + nextInt;
        logger.info("R" + format + nextInt);
        return "R" + format + nextInt;
    }
    @Override
@@ -441,13 +448,12 @@
        } else {
            //出库
            TaskDetl taskDetl = taskDetls.get(0); //TODO  出库流程待确认,ESS取货后,输送线流转到扫码处状态
            if (taskDetl.getWaveId() == null) {
            if (taskDetl.getWaveId() == null && task.getTaskType() != 103 && task.getTaskType() != 107) {
                task.setTaskSts(TaskStsType.COMPLETE_OUT.id);//199.出库完成
            } else {
                task.setTaskSts(TaskStsType.WAVE_SEED.id);//198.播种中
            }
        }
        task.setUpdateTime(new Date());
        if (!taskService.updateById(task)) {
            throw new CoolException("任务更新失败");
@@ -639,7 +645,7 @@
            throw new CoolException("任务不存在");
        }
        if (task.getTaskType() != 103) {
        if (task.getTaskType() != 103 && task.getTaskType() != 107) {
            throw new CoolException("任务类型不可拣料");
        }
@@ -654,7 +660,9 @@
        }
        //获取源库位高度
        LocTypeBind locTypeBind = locTypeBindService.getOne(new LambdaQueryWrapper<LocTypeBind>().eq(LocTypeBind::getLocId, originLoc.getId()).in(LocTypeBind::getTypeId, LocBindType.HEIGHT.list()));
        LocTypeBind locTypeBind = locTypeBindService.getOne(new LambdaQueryWrapper<LocTypeBind>()
                .eq(LocTypeBind::getLocId, originLoc.getId())
                .in(LocTypeBind::getTypeId, LocBindType.HEIGHT.list()));
        if (locTypeBind == null) {
            throw new CoolException("库位类型不存在");
        }