From dfc9552392f9f973ab52e55d58a7ae2acdaeb1f3 Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期日, 09 三月 2025 14:19:43 +0800 Subject: [PATCH] 四期 --- src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java | 100 ++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 85 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java index fbf95e5..57823ab 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvLocDetlServiceImpl.java @@ -1,6 +1,5 @@ package com.zy.asrs.service.impl; -import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; @@ -8,7 +7,11 @@ import com.core.common.Cools; import com.core.common.SnowflakeIdWorker; import com.core.exception.CoolException; -import com.zy.asrs.entity.*; +import com.zy.asrs.constant.AsrsConstants; +import com.zy.asrs.entity.AgvLocDetl; +import com.zy.asrs.entity.AgvLocMast; +import com.zy.asrs.entity.AgvWrkDetl; +import com.zy.asrs.entity.OrderDetl; import com.zy.asrs.mapper.AgvLocDetlMapper; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; @@ -55,14 +58,18 @@ List<AgvWrkDetl> agvWrkDetls = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", taskCode)); long flowId = snowflakeIdWorker.nextId(); agvWrkDetls.stream().map(agvWrkDetl -> { - AgvLocDetl agvLocDetl = new AgvLocDetl(); - //log.info("agvWrkDetl: " + agvLocDetl.getBarcode()); - BeanUtils.copyProperties(agvWrkDetl, agvLocDetl); - agvLocDetl.setLocNo(locNo); - //log.info("zc娣诲姞搴撳瓨鏃ュ織:{}", JSON.toJSON(agvLocDetl)); - this.insert(agvLocDetl); - // 娴佹按 -- 鏂板璁㈠崟鏄庣粏 - OrderDetl orderDetl = orderDetlService.selectItem(agvWrkDetl.getOrderNo(), agvWrkDetl.getMatnr(), agvWrkDetl.getBatch(), agvWrkDetl.getThreeCode()); + AgvLocDetl agvLocDetl = this.selectOne(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo).eq("matnr", agvWrkDetl.getMatnr()).eq("three_code", agvWrkDetl.getThreeCode())); + if (agvLocDetl != null) { + this.updateAnfme(agvLocDetl.getAnfme() + agvWrkDetl.getAnfme(), agvLocDetl.getLocNo(), agvLocDetl.getMatnr(), agvLocDetl.getBatch(), agvLocDetl.getThreeCode(), agvLocDetl.getDeadTime()); + } else { + agvLocDetl = new AgvLocDetl(); + //log.info("agvWrkDetl: " + agvLocDetl.getBarcode()); + BeanUtils.copyProperties(agvWrkDetl, agvLocDetl); + agvLocDetl.setLocNo(locNo); + //log.info("zc娣诲姞搴撳瓨鏃ュ織:{}", JSON.toJSON(agvLocDetl)); + this.insert(agvLocDetl); + // 娴佹按 -- 鏂板璁㈠崟鏄庣粏 + OrderDetl orderDetl = orderDetlService.selectItem(agvWrkDetl.getOrderNo(), agvWrkDetl.getMatnr(), agvWrkDetl.getBatch(), agvWrkDetl.getThreeCode()); // FlowLog flowLog = new FlowLog(); // flowLog.setFid(String.valueOf(flowId)); // flowLog.setSpare2(String.valueOf(taskCode)); @@ -88,6 +95,7 @@ // if (!flowLogService.insert(flowLog)) { // throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触"); // } + } return agvLocDetl; }).collect(Collectors.toList()); @@ -97,11 +105,21 @@ //鏍规嵁鐗╂枡鍙峰拰鎵规鎵惧埌瀵瑰簲鐨勫簱瀛橈紝骞朵笖鎸夌収淇敼鏃堕棿鎺掑簭 Wrapper<AgvLocDetl> wrapper = new EntityWrapper<AgvLocDetl>().eq("matnr", matnr).orderBy("modi_time"); if (type != null) { - wrapper.notLike("loc_no", "F1"); + if (type.equals(AsrsConstants.ERCHANG)) { + wrapper.notLike("loc_no", "F3"); + } else { + if (matnr.startsWith("401") || matnr.startsWith("402")) { + //wrapper.notLike("loc_no", "F3"); + wrapper.notLike("loc_no", "F1"); + } else { + wrapper.notLike("loc_no", "F1"); + } + } } - wapperSetCondition(wrapper, "batch", batch); + //涓�鐩存湁PE甯︽壒娆″瓧娈靛鑷达紝鏃犳硶鍑哄簱锛屽氨娉ㄩ噴鎺� + //wapperSetCondition(wrapper, "batch", batch); wapperSetCondition(wrapper, "three_code", csocode); - wapperSetCondition(wrapper, "dead_time", isoseq); + //wapperSetCondition(wrapper, "dead_time", isoseq); if ("JG".equals(orderNo.substring(0, 2))) { wapperSetCondition(wrapper, "process_sts", "1"); @@ -136,7 +154,37 @@ //locDto.setAgvStaNos(queryAgvStaNosByFloor(floor)); //鍥涙湡 //locDto.setAgvStaNos(agvBasDevpService.selectCacheShelvesStationCodeByLocType(agvLocMast.getLocType1(), floor)); - locDto.setAgvStaNos(agvBasDevpService.selectCacheShelvesStationCodeByLocType(agvLocMast.getLocType1())); + + List<String> strings = agvBasDevpService.selectCacheShelvesStationCodeByLocType(agvLocMast.getLocType1()); + List<String> agvStaNos = new ArrayList<>(); + if (agvLocDetl.getLocNo().contains("01F1")) { + for (String string : strings) { + if (string.contains("F1") || string.contains("F4")) { + agvStaNos.add(string); + } + } + } else if (agvLocDetl.getLocNo().contains("02F1")) { + for (String string : strings) { + if (string.contains("F1") || string.contains("F4")) { + agvStaNos.add(string); + } + } + } else if (agvLocDetl.getLocNo().contains("F2")) { + for (String string : strings) { + if (string.contains("F2") || string.contains("F4")) { + agvStaNos.add(string); + } + } + } else if (agvLocDetl.getLocNo().contains("F3")) { + for (String string : strings) { + if (string.contains("F3")) { + agvStaNos.add(string); + } + } + } else { + agvStaNos = strings; + } + locDto.setAgvStaNos(agvStaNos); locDtoList.add(locDto); issued -= anfme; @@ -146,6 +194,7 @@ return issued; } + /* 鏇存柊搴撳瓨鏄庣粏 @@ -166,8 +215,19 @@ } @Override + public Double getSumAnfme2(String matnr, String threeCode) { + return this.baseMapper.selectSumAnfmeByMatnr2(matnr, threeCode); + } + + + @Override public AgvLocDetl selectItem(String locNo, String matnr, String batch, String csocode, String isoCode) { return this.baseMapper.selectItemByOrderNo(locNo, matnr, batch, csocode, isoCode); + } + + @Override + public List<AgvLocDetl> selectItem2(String locNo, String matnr, String batch, String csocode, String isoCode) { + return this.baseMapper.selectItemByOrderNo2(locNo, matnr, batch, csocode, isoCode); } @Override @@ -181,8 +241,18 @@ } @Override + public Double getSumAnfmeProcessed2(String matnr, String threeCode) { + return this.baseMapper.selectSumAnfmeByMatnrProcessed2(matnr, threeCode); + } + + @Override public Double getSumAnfmeDb(String matnr, String threeCode, Integer floor) { - return this.baseMapper.selectSumAnfmeByMatnr2(matnr, threeCode, floor); + return this.baseMapper.selectSumAnfmeByMatnr22(matnr, threeCode, floor); + } + + @Override + public Double getSumAnfmeDb2(String matnr, String threeCode, Integer floor) { + return this.baseMapper.selectSumAnfmeByMatnr3(matnr, threeCode, floor); } @Override -- Gitblit v1.9.1