src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/WrkMastService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/utils/Utils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/WrkMastMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.mapper.BaseMapper; import com.zy.asrs.entity.WrkMast; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import java.util.List; @@ -16,4 +17,8 @@ List<WrkMast> selectToBeHistoryData(); WrkMast selectByLocNoOfPakin(@Param("locNo") String locNo); WrkMast selectBySourceLocNoOfPakout(@Param("sourceLocNo") String sourceLocNo); } src/main/java/com/zy/asrs/service/WrkMastService.java
@@ -15,6 +15,8 @@ WrkMast selectByBarcode(String barcode); Double getIoPri(Integer ioType, String locNo); /** * 从工作档得到站点入库暂存数 * @param crnNo src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
@@ -6,6 +6,7 @@ import com.zy.asrs.entity.WrkMast; import com.zy.asrs.mapper.WrkMastMapper; import com.zy.asrs.service.WrkMastService; import com.zy.asrs.utils.Utils; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -40,6 +41,61 @@ } @Override public synchronized Double getIoPri(Integer ioType, String locNo) { Double defaultIoPri = null; if (Cools.isEmpty(ioType, locNo)) { return 15.0D; } if (ioType != 11) { // 入库 if (ioType < 100) { List<String> groupOuterLoc = Utils.getGroupOuterLoc(locNo); if (!Cools.isEmpty(groupOuterLoc)) { for (String outerLoc : groupOuterLoc) { WrkMast wrkMast = this.baseMapper.selectByLocNoOfPakin(outerLoc); if (wrkMast != null) { defaultIoPri = defaultIoPri == null ? wrkMast.getIoPri() + 2 : defaultIoPri + 2; } } } List<String> groupInsideLoc = Utils.getGroupInsideLoc(locNo); if (!Cools.isEmpty(groupInsideLoc)) { for (String insideLoc : groupInsideLoc) { WrkMast wrkMast = this.baseMapper.selectByLocNoOfPakin(insideLoc); if (wrkMast != null) { defaultIoPri = defaultIoPri == null ? wrkMast.getIoPri() - 2 : defaultIoPri - 2; } } } // 出库 } else { List<String> groupOuterLoc = Utils.getGroupOuterLoc(locNo); if (!Cools.isEmpty(groupOuterLoc)) { for (String outerLoc : groupOuterLoc) { WrkMast wrkMast = this.baseMapper.selectBySourceLocNoOfPakout(outerLoc); if (wrkMast != null) { defaultIoPri = defaultIoPri == null ? wrkMast.getIoPri() - 2 : defaultIoPri - 2; } } } List<String> groupInsideLoc = Utils.getGroupInsideLoc(locNo); if (!Cools.isEmpty(groupInsideLoc)) { for (String insideLoc : groupInsideLoc) { WrkMast wrkMast = this.baseMapper.selectBySourceLocNoOfPakout(insideLoc); if (wrkMast != null) { defaultIoPri = defaultIoPri == null ? wrkMast.getIoPri() + 2 : defaultIoPri + 2; } } } } // 移库 } else { // @Deprecated } return defaultIoPri == null ? 15.0D : defaultIoPri; } @Override public int getStoreCount(Integer crnNo) { return selectCount(new EntityWrapper<WrkMast>().eq("crn_no", crnNo) .last(" and (wrk_sts in (1,2) or (wrk_sts=3 and wrk_no in (select wrk_no from asr_bas_devp)))")); src/main/java/com/zy/asrs/utils/Utils.java
@@ -443,4 +443,92 @@ } } // 注意顺序 public static List<String> getGroupInsideLoc(String locNo){ int row = getRow(locNo); switch (row) { case 1: case 21: case 14: case 15: case 7: case 8: return new ArrayList<>(); case 2: return new ArrayList<String>() {{ add(zerofill(String.valueOf(1), 2) + locNo.substring(2)); }}; case 3: return new ArrayList<String>() {{ add(zerofill(String.valueOf(1), 2) + locNo.substring(2)); add(zerofill(String.valueOf(2), 2) + locNo.substring(2)); }}; case 4: return new ArrayList<String>() {{ add(zerofill(String.valueOf(7), 2) + locNo.substring(2)); add(zerofill(String.valueOf(6), 2) + locNo.substring(2)); add(zerofill(String.valueOf(5), 2) + locNo.substring(2)); }}; case 5: return new ArrayList<String>() {{ add(zerofill(String.valueOf(7), 2) + locNo.substring(2)); add(zerofill(String.valueOf(6), 2) + locNo.substring(2)); }}; case 6: return new ArrayList<String>() {{ add(zerofill(String.valueOf(7), 2) + locNo.substring(2)); }}; case 9: return new ArrayList<String>() {{ add(zerofill(String.valueOf(8), 2) + locNo.substring(2)); }}; case 10: return new ArrayList<String>() {{ add(zerofill(String.valueOf(8), 2) + locNo.substring(2)); add(zerofill(String.valueOf(9), 2) + locNo.substring(2)); }}; case 11: return new ArrayList<String>() {{ add(zerofill(String.valueOf(8), 2) + locNo.substring(2)); add(zerofill(String.valueOf(9), 2) + locNo.substring(2)); add(zerofill(String.valueOf(10), 2) + locNo.substring(2)); }}; case 12: return new ArrayList<String>() {{ add(zerofill(String.valueOf(14), 2) + locNo.substring(2)); add(zerofill(String.valueOf(13), 2) + locNo.substring(2)); }}; case 13: return new ArrayList<String>() {{ add(zerofill(String.valueOf(14), 2) + locNo.substring(2)); }}; case 16: return new ArrayList<String>() {{ add(zerofill(String.valueOf(15), 2) + locNo.substring(2)); }}; case 17: return new ArrayList<String>() {{ add(zerofill(String.valueOf(15), 2) + locNo.substring(2)); add(zerofill(String.valueOf(16), 2) + locNo.substring(2)); }}; case 18: return new ArrayList<String>() {{ add(zerofill(String.valueOf(15), 2) + locNo.substring(2)); add(zerofill(String.valueOf(16), 2) + locNo.substring(2)); add(zerofill(String.valueOf(17), 2) + locNo.substring(2)); }}; case 19: return new ArrayList<String>() {{ add(zerofill(String.valueOf(21), 2) + locNo.substring(2)); add(zerofill(String.valueOf(20), 2) + locNo.substring(2)); }}; case 20: return new ArrayList<String>() {{ add(zerofill(String.valueOf(21), 2) + locNo.substring(2)); }}; default: throw new RuntimeException("库位解析异常"); } } } src/main/resources/mapper/WrkMastMapper.xml
@@ -78,4 +78,22 @@ order by io_time,wrk_no asc </select> <select id="selectByLocNoOfPakin" resultMap="BaseResultMap"> select top 1 * from asr_wrk_mast where 1=1 and io_type < 100 and io_type != 11 and loc_no = #{locNo} and wrk_sts < 9 </select> <select id="selectBySourceLocNoOfPakout" resultMap="BaseResultMap"> select top 1 * from asr_wrk_mast where 1=1 and io_type > 100 and source_loc_no = #{sourceLocNo} and wrk_sts < 17 </select> </mapper>