自动化立体仓库 - WMS系统
pang.jiabao
2024-11-10 b42da56f5b8fa7a2c7b78485142ed96ac4ea3571
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -8,6 +8,7 @@
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.mapper.BasDevpMapper;
import com.zy.asrs.mapper.ManLocDetlMapper;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.MatUtils;
@@ -24,6 +25,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.*;
/**
@@ -73,13 +75,25 @@
    @Autowired
    private ManLocDetlMapper manLocDetlMapper;
    @Resource
    private BasDevpMapper basDevpMapper;
    @Override
    public R inLocCallAgv(String sta, String inSta) {
        // 判断入库站点有无出库任务过滤盘点捡料
        int count = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", inSta).ne("wrk_sts",15).notIn("io_type",103,107));
        if (count > 0) {
            return R.parse(inSta + "站点存在出库任务");
        BasDevp basDevp = basDevpMapper.selectById(inSta);
        // 0.出库模式,1.agv入库中,2.生成入库任务
        if (basDevp.getDevMk().equals("0")) { // 是出库
             // 判断是否有出库任务
            int count = wrkMastService.selectCount(new EntityWrapper<WrkMast>()
                    .eq("sta_no", inSta).lt("wrk_sts",14).in("io_type",101,103,107,110));
            if (count == 0) {
                // 没有出库任务,更改为入库模式
                basDevp.setDevMk("1");
                basDevpMapper.updateById(basDevp);
            } else {
                return R.parse(inSta + "站点存在出库任务");
            }
        }
        // 先绑定