自动化立体仓库 - WMS系统
13
zhang
1 天以前 82de5a307466894bbb0258f8a63a26a7bb96d80d
src/main/java/com/zy/asrs/task/handler/BareBoardHandler.java
@@ -45,47 +45,47 @@
    @Autowired
    private BasCrnpService basCrnpService;
    public ReturnT<String> start(Integer ioType,Integer staNo,String locStsTarget) {
    public ReturnT<String> start(Integer ioType, Integer staNo, String locStsTarget) {
        try {
            if (wrkMastService.selectWrkMastBareBoardStaNo(ioType,staNo)!=0){
            if (wrkMastService.selectWrkMastBareBoardStaNo(ioType, staNo) != 0) {
                return null;
            }
            // 获取工作号
            int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
            ArrayList<Integer> crns =new ArrayList<>();
            ArrayList<Integer> crns = new ArrayList<>();
            List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().eq("crn_sts", 3).eq("out_enable", "Y").eq("wrk_no", 0));
            for (BasCrnp basCrnp : basCrnps){
            for (BasCrnp basCrnp : basCrnps) {
                crns.add(basCrnp.getCrnNo());
            }
            for (BasCrnp basCrnp : basCrnpService.selectList(new EntityWrapper<>())){
            for (BasCrnp basCrnp : basCrnpService.selectList(new EntityWrapper<>())) {
                crns.add(basCrnp.getCrnNo());
            }
            if (Cools.isEmpty(crns) || crns.size()==0){
            if (Cools.isEmpty(crns) || crns.size() == 0) {
                return null;
            }
            boolean sign = true;
            for (Integer crnNo : crns){
            for (Integer crnNo : crns) {
                sign = true;
                LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts",locStsTarget).eq("crn_no",crnNo));
                LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts", locStsTarget).eq("crn_no", crnNo));
                if (Cools.isEmpty(locMast)) {
//                    throw new CoolException("库中无空板!!!");
                    sign=false;
                    sign = false;
                }
                if (sign && !locMast.getLocSts().equals(locStsTarget)){
                if (sign && !locMast.getLocSts().equals(locStsTarget)) {
//                    throw new CoolException("所选库位存在状态不为D的库位,库位号:"+locMast.getLocNo()+" 、当前状态:"+locMast.getLocSts()+"-"+locMast.getLocSts$());
                    sign=false;
                    sign = false;
                }
                if (sign){
                if (sign) {
                    // 获取源站
                    Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
                            .eq("type_no", ioType)
                            .eq("stn_no", staNo)
                            .eq("crn_no", crnNo);
                    StaDesc staDesc = staDescService.selectOne(wrapper);
                    if (Cools.isEmpty(staDesc)){
                    if (Cools.isEmpty(staDesc)) {
                        sign = false;
                        continue;
                    }
@@ -94,7 +94,7 @@
//                    throw new CoolException("检索源站失败");
                        sign = false;
                    }
                    if (sign){
                    if (sign) {
                        Date now = new Date();
                        // 保存工作档
                        WrkMast wrkMast = new WrkMast();
@@ -107,10 +107,10 @@
                        wrkMast.setStaNo(staNo); // 目标站
                        wrkMast.setCrnNo(locMast.getCrnNo());
                        wrkMast.setSourceLocNo(locMast.getLocNo()); // 源库位
                        wrkMast.setFullPlt(ioType.equals(110)? "N" : "Y"); // 满板:Y
                        wrkMast.setFullPlt(ioType.equals(110) ? "N" : "Y"); // 满板:Y
                        wrkMast.setPicking("N"); // 拣料
                        wrkMast.setExitMk("N"); // 退出
                        wrkMast.setEmptyMk(ioType.equals(110)? "Y" : "N"); // 空板
                        wrkMast.setEmptyMk(ioType.equals(110) ? "Y" : "N"); // 空板
                        wrkMast.setLinkMis("N");
                        wrkMast.setAppeUser(9999L);
                        wrkMast.setAppeTime(now);
@@ -121,25 +121,25 @@
                            throw new CoolException("保存工作档失败");
                        }
                        // 更新库位状态 D.空板 -> R.出库预约
                        if (locMast.getLocSts().equals(locStsTarget)){
                        if (locMast.getLocSts().equals(locStsTarget)) {
                            locMast.setLocSts("R");
                            locMast.setModiUser(9999L);
                            locMast.setModiTime(now);
                            if (!locMastService.updateById(locMast)) {
                                throw new CoolException("更新库位状态失败");
                            }else {
                            } else {
                                return SUCCESS;
                            }
                        }
                    }
                }
            }
            if (!sign){
            if (!sign) {
                log.error("未查到可出库的空板!!!");
                return null;
            }
        }catch (Exception e){
            log.error("异常!!!"+e);
        } catch (Exception e) {
            log.error("异常!!!" + e);
            return null;
        }
        return SUCCESS;