skyouc
2025-04-15 e80184f5d053bff9d0f7fdaade6c800bee84c7dd
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -7,6 +7,7 @@
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.entity.enums.TaskType;
import com.vincent.rsf.server.manager.controller.params.GenerateTaskParams;
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.enums.PakinIOStatus;
import com.vincent.rsf.server.manager.mapper.TaskMapper;
@@ -49,6 +50,8 @@
    private StockService stockService;
    @Autowired
    private StockItemService stockItemService;
    @Autowired
    private DeviceSiteService deviceSiteService;
@@ -62,12 +65,17 @@
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public synchronized R generateTasks(List<WaitPakin> waitPakin, Long loginUserId) {
        if (Objects.isNull(waitPakin) || waitPakin.isEmpty()) {
    public synchronized R generateTasks(GenerateTaskParams waitPakin, Long loginUserId) {
        if (Objects.isNull(waitPakin) || waitPakin.getWaitPakins().isEmpty()) {
            throw new CoolException("参数不能为空!!");
        }
        DeviceSite deviceSite = deviceSiteService.getById(waitPakin.getSiteId());
        if (Objects.isNull(deviceSite)) {
            throw new CoolException("站点不存在!!");
        }
        /**获取组拖*/
        List<Long> ids = waitPakin.stream().map(WaitPakin::getId).collect(Collectors.toList());
        List<Long> ids = waitPakin.getWaitPakins().stream().map(WaitPakin::getId).collect(Collectors.toList());
        List<WaitPakin> waitPakins = waitPakinService.list(new LambdaQueryWrapper<WaitPakin>()
                .in(WaitPakin::getId, ids)
                .eq(WaitPakin::getIoStatus, Short.parseShort(PakinIOStatus.PAKIN_IO_STATUS_DONE.val)));
@@ -86,10 +94,10 @@
                    .setTaskType(TaskType.TASK_TYPE_IN.type.shortValue())
                    .setTargLoc(LocManageUtil.getTargetLoc())
                    .setBarcode(pakin.getBarcode())
                    .setTargSite(deviceSite.getDeviceCode())
                    .setCreateBy(loginUserId)
                    .setUpdateBy(loginUserId)
                    .setTargSite(LocManageUtil.getTargetSite());
            if (!this.save(task)) {
                throw new CoolException("任务保存失败!!");
            }