自动化立体仓库 - WMS系统
skyouc
1 天以前 5d826a90e007b36e8108c2b9a5bda14010d17d35
释放已锁定库位信息
6个文件已修改
81 ■■■■ 已修改文件
src/main/java/com/zy/api/controller/WcsApiController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/controller/params/WorkTaskParams.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/service/WcsApiService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/controller/WcsApiController.java
@@ -61,4 +61,22 @@
        }
        return wcsApiService.backLocs(params);
    }
    /**
     * 下发任务至WCS
     * @author Ryan
     * @date 2026/1/10 13:57
     * @param params
     * @return com.core.common.R
     */
    @ManagerAuth
    @ApiOperation("下发任务至WCS")
    @PostMapping("/pub/wrks")
    public R pubWrkToWcs(@RequestBody WorkTaskParams params) {
        if (Objects.isNull(params)) {
            return R.error("参数不能为空!!");
        }
        return wcsApiService.pubWrkToWcs(params);
    }
}
src/main/java/com/zy/api/controller/params/WorkTaskParams.java
@@ -16,12 +16,21 @@
    private static final long serialVersionUID = 1L;
    @ApiModelProperty("协议任务编号(对应出库任务号)")
    private String wrkCode;
    private String taskNo;
    @ApiModelProperty("工作档任务号")
    private String wrkNo;
    @ApiModelProperty("是否完成")
    private Integer isComplete;
    @ApiModelProperty("库位编码")
    private String locNo;
    @ApiModelProperty("条码")
    private String barcode;
    @ApiModelProperty("优先级")
    private String taskPri;
    @ApiModelProperty("出库站点")
    private String staNo;
}
src/main/java/com/zy/api/service/WcsApiService.java
@@ -23,4 +23,13 @@
     * @return com.core.common.R
     */
    R backLocs(WorkTaskParams params);
    /**
     * 下发任务至WCS
     * @author Ryan
     * @date 2026/1/10 13:57
     * @param params
     * @return com.core.common.R
     */
    R pubWrkToWcs(WorkTaskParams params);
}
src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java
@@ -90,6 +90,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("参数不能为空!!");
@@ -106,7 +107,18 @@
        }
        Set<String> locs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
        List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().in("loc_no", locs).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("库位释放失败,请检查后再操作!!");
           }
        });
        return R.ok();
    }
}
src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java
@@ -76,15 +76,15 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R backLocs(WorkTaskParams params) {
        if (Objects.isNull(params.getWrkCode())) {
        if (Objects.isNull(params.getTaskNo())) {
            throw new CoolException("工作号不能为空!!");
        }
        String wrkCode = params.getWrkCode();
        String wrkCode = params.getTaskNo();
       if (wrkCode.contains("-1")) {
           throw new CoolException("配对任务编码错误,请检查后重新上传!!");
       }
        WrkMast mast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_code", params.getWrkCode()));
        WrkMast mast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_code", params.getTaskNo()));
       if (Objects.isNull(mast)) {
           throw new CoolException("任务不存在!!");
@@ -100,6 +100,21 @@
       return R.ok("接收成功,执行回库中...");
    }
    /**
     * 下发任务至WCS
     * @author Ryan
     * @date 2026/1/10 13:58
     * @param params
     * @return com.core.common.R
     */
    @Override
    public R pubWrkToWcs(WorkTaskParams params) {
        return null;
    }
    /**
     * 上报锁定库位信息
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -1513,8 +1513,8 @@
        wrkMast.setWrkSts(2L); // 工作状态:生成入库ID
        wrkMast.setIoType(1); // 入出库状态:1.入库
        wrkMast.setCrnNo(locMasts.getCrnNo());
        wrkMast.setSourceStaNo(outMast.getSourceStaNo());
        wrkMast.setStaNo(staNo + "");
        wrkMast.setSourceStaNo(outMast.getStaNo());
//        wrkMast.setStaNo(staNo + "");
        wrkMast.setLocNo(locMasts.getLocNo());
        wrkMast.setIoPri(13D); // 优先级
        wrkMast.setBarcode(outMast.getBarcode()); // 托盘码