自动化立体仓库 - WMS系统
skyouc
20 小时以前 fe315fb30fabf24940eaa3001774f9d43120748d
src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java
@@ -5,6 +5,7 @@
import com.core.exception.CoolException;
import com.zy.api.controller.params.ReceviceTaskParams;
import com.zy.api.service.HmesApiService;
import com.zy.api.service.WcsApiService;
import com.zy.asrs.entity.BasDevice;
import com.zy.asrs.entity.LocAroundBind;
import com.zy.asrs.entity.LocMast;
@@ -33,6 +34,9 @@
    @Autowired
    private LocMastService locMastService;
    @Autowired
    private WcsApiService wcsApiService;
    /**
     * 接收MES穿线任务
     * @author Ryan
@@ -56,7 +60,7 @@
        if (Objects.isNull(binds) || binds.isEmpty()) {
            throw new CoolException("机台未绑定工作站台!!");
        }
        Set<String> locs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
        Set<String> locs = binds.stream().map(LocAroundBind::getBlocNo).collect(Collectors.toSet());
        LocMast locMasts = locMastService.selectOne(new EntityWrapper<LocMast>()
                .in("loc_no", locs)
@@ -70,6 +74,7 @@
        //todo 锁库位需WCS锁定(相关库位,不可执行任务操作,不能只在WMS锁定)
        List<LocMast> locMs = locMastService.selectList(new EntityWrapper<LocMast>()
                .eq("frozen", 0).eq("deleted", 0)
                .in("loc_no", locs)
                .eq("loc_sts", LocStsType.LOC_STS_TYPE_O.type));
        locMs.forEach(loc -> {
@@ -90,6 +95,7 @@
     * @return com.core.common.R
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R releaseLock(ReceviceTaskParams params) {
        if (Objects.isNull(params) || Objects.isNull(params.getDeviceNo())) {
            return R.error("参数不能为空!!");
@@ -104,9 +110,24 @@
        if (Objects.isNull(binds) || binds.isEmpty()) {
            throw new CoolException("机台未绑定工作站台!!");
        }
        Set<String> locs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
        Set<String> locs = binds.stream().map(LocAroundBind::getBlocNo).collect(Collectors.toSet());
        List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().in("loc_no", locs)
                .eq("frozen", 0).eq("deleted", 0)
                .eq("loc_sts", LocStsType.LOC_STS_TYPE_X.type));
        if (Objects.isNull(locMasts) || locMasts.isEmpty()) {
            throw new CoolException("没有禁用库位,不需要释放!!");
        }
        return null;
        locMasts.forEach(loc -> {
           loc.setLocSts(LocStsType.LOC_STS_TYPE_O.type);
           if (!locMastService.updateById(loc)) {
               throw new CoolException("库位释放失败,请检查后再操作!!");
           }
        });
//        wcsApiService.reportLockLocs(locs, "lock");
        return R.ok("释放成功 !!");
    }
}