From 6f088dc1cb716e345da064a5e89f148bd248c75d Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期二, 30 四月 2024 10:54:51 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java | 113 +++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 103 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java index 43c140a..3e4ee35 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java @@ -36,6 +36,10 @@ //2妤� 1-25鎺� 1-33鍒� 1灞� this.insertBatch(getLocMastList(1, 25, 1, 33, 1, 1, 2)); } + public void initLocFloor3() { + //2妤� 1-25鎺� 1-33鍒� 1灞� + this.insertBatch(getLocMastList(1, 26, 1, 34, 1, 1, 3)); + } //鏍规嵁鎺掑垪灞傝幏鍙朅GV搴撲綅鍒楄〃 private List<AgvLocMast> getLocMastList(int rowIndex, int rowMax, int bayIndex, int bayMax, int levIndex, int levMax, int floor){ @@ -45,15 +49,15 @@ for (int bay = bayIndex; bay <= bayMax; bay++) { for (int lev = levIndex; lev <= levMax; lev++) { - if(!checkLocExistFloor2(row,bay)){ + if(!checkLocExistFloor3(row,bay)){ continue; } AgvLocMast loc = new AgvLocMast(); - String locRow = row < 10 ? "-00" + row : "-0" + row; - String locBay = bay < 10 ? "-00" + bay : "-0" + bay; - String locLev = lev < 10 ? "-0" + lev : "-" + lev; - String locNo = "YZ" + locRow + locBay + locLev + "@" + floor; + String locRow = row < 10 ? "_00" + row : "_0" + row; + String locBay = bay < 10 ? "_00" + bay : "_0" + bay; + String locLev = lev < 10 ? "_0" + lev : "_" + lev; + String locNo = "YZ" + locRow + locBay + locLev + "F" + floor; loc.setLocNo(locNo); loc.setLocSts("O"); loc.setRow1(row); @@ -63,7 +67,7 @@ loc.setModiTime(now); loc.setFirstTime(now); loc.setAppeTime(now); - loc.setLocType1(initLocMastSts(row,bay)); + loc.setLocType1(initLocMastSts3(row,bay)); agvLocMastList.add(loc); } } @@ -73,11 +77,11 @@ } private boolean checkLocExistFloor2(int row, int bay){ - if(row <= 4 && bay >= 17){ + if(row <= 4 && bay >= 13){ return false; } - if(row <= 7 && bay >= 26){ + if(row <= 7 && bay >= 25){ return false; } @@ -97,6 +101,10 @@ return false; } + if(row == 23 && bay == 29){ + return false; + } + return true; } @@ -111,6 +119,79 @@ } if(row >= 21){ + return 3; + } + + return 2; + } + private boolean checkLocExistFloor3(int row, int bay){ + if(row == 1 && (bay <= 15 || bay >= 30)){ + return false; + } + + if(row <= 6 && bay >= 30){ + return false; + } + + if((row >= 9 && row <= 16) && (bay <= 4 || bay >= 33)){ + return false; + } + if(row == 17 && (bay <= 3 || bay >= 33)){ + return false; + } + + if(row <= 21 && row != 7 && row != 8 && bay >= 33){ + return false; + } + if((row <= 24 && row != 7 && row != 8) && bay >= 34){ + return false; + } + if(row >= 25 && row <= 26 && bay >= 29){ + return false; + } + + + if((row != 8 && row != 21 && row != 23 && row != 24 && row != 25 && row != 26) && bay == 15){ + return false; + } + + if((row >= 22 && row != 26 ) && bay == 16){ + return false; + } + + if (row == 4 && (bay == 3 || bay == 4 || bay == 9 || bay == 14 || bay == 19 || bay == 20 || bay == 25)) { + return false; + } + + if ((row == 13 || row == 17) && (bay == 8 || bay == 14 || bay == 19 || bay == 24 )) { + return false; + } + if (row == 22 && (bay == 4 || bay == 9 || bay == 14 || bay == 20 || bay == 25 )) { + return false; + } + + return true; + } + + private short initLocMastSts3(int row, int bay){ + + if(row <= 8){ + return 1; + } + + if(row <= 17){ + return 2; + } + + if(row <= 18 && bay >= 9){ + return 2; + } + + if(row <= 21){ + return 4; + } + + if(row >= 22){ return 3; } @@ -232,10 +313,22 @@ } @Override - public AgvLocMast selectEmptyZpallet(int type) { + public AgvLocMast selectEmptyZpallet(int type, int floor) { - return this.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_sts","D").eq("loc_type2",type)); + return this.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_sts","D").eq("loc_type2",type).eq("floor",floor)); } + @Override + public AgvLocMast selectEmptyZpalletByLocType1(int type) { + + return this.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_sts","D").eq("loc_type1",type)); + + } + + @Override + public List<String> queryContainerTypeByLocType1(Short locType1) { + return this.baseMapper.queryContainerTypeByLocType1(locType1); + } + } -- Gitblit v1.9.1