From 8d6042713c2e2d9719c64322ef26450a9f221523 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期六, 22 六月 2024 13:35:47 +0800
Subject: [PATCH] 捷众二期开发
---
src/main/webapp/views/pakStore/locDetlCheckQuery.html | 1
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 26 ++++++
src/main/resources/mapper/LocMastMapper.xml | 18 ++++
src/main/java/com/zy/asrs/mapper/LocMastMapper.java | 9 ++
src/main/resources/mapper/WrkMastMapper.xml | 2
src/main/webapp/views/pakStore/locDetlQuery.html | 1
src/main/java/com/zy/common/web/WcsController.java | 10 ++
src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java | 6
src/main/java/com/zy/common/service/CommonService.java | 97 +++++++++++++++++++++++
src/main/resources/application.yml | 5
.idea/misc.xml | 12 +++
11 files changed, 176 insertions(+), 11 deletions(-)
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 5b6a5c4..076a9f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,5 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
+ <component name="FindBugsConfigurable">
+ <option name="make" value="true" />
+ <option name="effort" value="default" />
+ <option name="priority" value="Medium" />
+ <option name="excludeFilter" value="" />
+ </component>
<component name="FrameworkDetectionExcludesConfiguration">
<file type="web" url="file://$PROJECT_DIR$" />
</component>
@@ -13,4 +19,10 @@
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
+ <component name="ProjectType">
+ <option name="id" value="jpab" />
+ </component>
+ <component name="SuppressionsComponent">
+ <option name="suppComments" value="[]" />
+ </component>
</project>
\ No newline at end of file
diff --git a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
index 77d16c9..db1c6b9 100644
--- a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
@@ -37,4 +37,13 @@
LocMast queryEmptyDeepLoc();
List<LocMast> queryDeepLocDMast();
+
+ /**
+ * 鏍规嵁鍫嗗灈鏈虹珯鐐规煡璇㈢┖搴撲綅
+ * @param crnNo 鍫嗗灈鏈哄彿
+ * @return 搴撲綅
+ */
+ LocMast queryEmptyLocNoByStaNo(@Param("crnNo") int crnNo);
+
+ LocMast queryLocByBarCode(@Param("row") int row);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
index 79163b5..8f5cc5a 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
@@ -55,9 +55,9 @@
if(station.getLoading()==null || !station.getLoading().equals("Y")) {
throw new CoolException(devpNo+"绔欑偣鏃犵墿");
}
- if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo()<9001) {
- throw new CoolException(devpNo+"绔欑偣宸叉湁宸ヤ綔鍙�");
- }
+// if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo()<9001) {
+// throw new CoolException(devpNo+"绔欑偣宸叉湁宸ヤ綔鍙�");
+// }
if(wrkMastService.getWorkingMast(devpNo)>0){
throw new CoolException(devpNo+"绔欑偣涓嶈兘鍚屾椂鐢熸垚涓ょ瑪鍏ュ簱宸ヤ綔妗�");
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 6d43269..0082d95 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -247,6 +247,7 @@
wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
wrkMast.setIoPri(reduce?13D:15D); // 浼樺厛绾э細13
wrkMast.setCrnNo(locMast.getCrnNo());
+ wrkMast.setBarcode(locMast.getBarcode());
wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯
wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
wrkMast.setSourceLocNo(dto.getLocNo()); // 婧愬簱浣�
@@ -892,10 +893,33 @@
if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
}
+ // 鎷c�佺洏銆佸苟 浣滀笟绔欒浆鎹�
+ int stnNo = 0;
+ if (wrkMast.getIoType() == 103) { // 鎷f枡鍑哄簱
+ if(wrkMast.getCrnNo() == 1) {
+ stnNo = 104;
+ }else if(wrkMast.getCrnNo() == 2) {
+ stnNo =204;
+ }else if(wrkMast.getCrnNo() == 3) {
+ stnNo = 304;
+ }
+ } else if(wrkMast.getIoType() == 107){ //鐩樼偣鍑哄簱
+ if(wrkMast.getCrnNo() == 1) {
+ stnNo = 101;
+ }else if(wrkMast.getCrnNo() == 2) {
+ stnNo =201;
+ }else if(wrkMast.getCrnNo() == 3) {
+ stnNo = 301;
+ }
+ }
+ if (stnNo == 0) {
+ log.error("{}鍙蜂换鍔℃暟鎹紓甯革紒", wrkMast.getWrkNo());
+ throw new CoolException("鍐嶅叆搴撶珯鐐规湁璇�");
+ }
// 鑾峰彇鐩爣绔�
Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
.eq("type_no", wrkMast.getIoType() - 50)
- .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
+ .eq("stn_no", stnNo) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
.eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
StaDesc staDesc = staDescService.selectOne(wrapper);
if (Cools.isEmpty(staDesc)) {
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 7930dd8..7aab917 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -7,6 +7,7 @@
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
+import com.zy.asrs.mapper.LocMastMapper;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.Utils;
import com.zy.asrs.utils.VersionUtils;
@@ -46,6 +47,9 @@
private LocDetlService locDetlService;
@Autowired
private SlaveProperties slaveProperties;
+
+ @Autowired
+ private LocMastMapper locMastMapper;
/**
* 鐢熸垚宸ヤ綔鍙�
@@ -109,9 +113,12 @@
if (sourceStaNo < 200) {
whsType = 1;
crnNo=1;
- } else if (sourceStaNo >= 200) {
+ } else if (sourceStaNo < 300) {
whsType = 2;
crnNo=2;
+ }else {
+ whsType = 3;
+ crnNo=3;
}
int workNo = getWorkNo(0);
@@ -218,7 +225,13 @@
} else {
curRow = sRow;
}
- crnNo = whsType;
+ basCrnpService.checkSiteStatus(crnNo, true);
+ }else {
+ if (curRow == sRow) {
+ curRow = eRow;
+ } else {
+ curRow = sRow;
+ }
basCrnpService.checkSiteStatus(crnNo, true);
}
}
@@ -496,4 +509,84 @@
}
}
+ public StartupDto emptyIngetLocNo(Integer devpNo) {
+ int crnNo = 0;
+ // 鐩爣搴撲綅
+ LocMast locMast = null;
+ if (devpNo == 304) {
+ crnNo = 3;
+ locMast = locMastMapper.queryEmptyLocNoByStaNo(crnNo);
+ }
+
+ if (locMast == null) {
+ throw new CoolException("娌℃湁绌哄簱浣�");
+ }
+
+ // 鑾峰彇鐩爣绔�
+ Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+ .eq("type_no", 10)
+ .eq("stn_no", devpNo)
+ .eq("crn_no", crnNo);
+ StaDesc staDesc = staDescService.selectOne(wrapper);
+ if (Cools.isEmpty(staDesc)) {
+ log.error("鍏ュ簱璺緞涓嶅瓨鍦�, staDescId={}, sourceStaNo={}, crnNo={}", 10, devpNo, crnNo);
+ throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
+ }
+
+ // 妫�娴嬬洰鏍囩珯
+ BasDevp staNo = basDevpService.selectById(staDesc.getCrnStn());
+ if (!staNo.getAutoing().equals("Y")) {
+ throw new CoolException("鐩爣绔�"+staDesc.getCrnStn()+"涓嶅彲鐢�");
+ }
+
+ basCrnpService.checkSiteStatus(crnNo, true);
+
+ // 杩斿洖dto
+ StartupDto startupDto = new StartupDto();
+ startupDto.setWorkNo(getWorkNo(0));
+ startupDto.setCrnNo(crnNo);
+ startupDto.setSourceStaNo(devpNo);
+ startupDto.setStaNo(devpNo);
+ startupDto.setLocNo(locMast.getLocNo());
+ return startupDto;
+ }
+
+ public StartupDto getLocNoBy304(String barcode) {
+ int crnNo = 3;
+ int devpNo = 304;
+ int row = barcode.charAt(0) == '5' ? 7 : 6;
+ // 鐩爣搴撲綅
+ LocMast locMast = locMastMapper.queryLocByBarCode(row);
+ if (locMast == null) {
+ throw new CoolException("304鍏ュ簱娌℃湁绌哄簱浣�");
+ }
+
+ // 鑾峰彇鐩爣绔�
+ Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+ .eq("type_no", 1)
+ .eq("stn_no", devpNo)
+ .eq("crn_no", crnNo);
+ StaDesc staDesc = staDescService.selectOne(wrapper);
+ if (Cools.isEmpty(staDesc)) {
+ log.error("鍏ュ簱璺緞涓嶅瓨鍦�, staDescId={}, sourceStaNo={}, crnNo={}", 1, devpNo, crnNo);
+ throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
+ }
+
+ // 妫�娴嬬洰鏍囩珯
+ BasDevp staNo = basDevpService.selectById(staDesc.getCrnStn());
+ if (!staNo.getAutoing().equals("Y")) {
+ throw new CoolException("鐩爣绔�"+staDesc.getCrnStn()+"涓嶅彲鐢�");
+ }
+
+ basCrnpService.checkSiteStatus(crnNo, true);
+
+ // 杩斿洖dto
+ StartupDto startupDto = new StartupDto();
+ startupDto.setWorkNo(getWorkNo(0));
+ startupDto.setCrnNo(crnNo);
+ startupDto.setSourceStaNo(devpNo);
+ startupDto.setStaNo(devpNo);
+ startupDto.setLocNo(locMast.getLocNo());
+ return startupDto;
+ }
}
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 78f3121..6d28621 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -109,7 +109,12 @@
BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
// 妫�绱㈠簱浣�
List<String> matNos = pltBarcodes.stream().map(PltBarcode::getMatNo).distinct().collect(Collectors.toList());
- StartupDto dto = commonService.getLocNo(1, 1, devpNo, false, matNos, locTypeDto,0);
+ StartupDto dto;
+ if (devpNo == 304) {
+ dto = commonService.getLocNoBy304(barcode);
+ } else {
+ dto = commonService.getLocNo(1, 1, devpNo, false, matNos, locTypeDto,0);
+ }
int workNo = dto.getWorkNo();
// 鐢熸垚宸ヤ綔妗�
@@ -177,7 +182,8 @@
// 婧愮珯鐐圭姸鎬佹娴�
BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
// 妫�绱㈠簱浣�
- StartupDto dto = commonService.getLocNo(1, 10, devpNo, true, null, locTypeDto,0);
+// StartupDto dto = commonService.getLocNo(1, 10, devpNo, true, null, locTypeDto,0);
+ StartupDto dto = commonService.emptyIngetLocNo(devpNo);
int workNo = dto.getWorkNo();
// 鐢熸垚宸ヤ綔妗�
WrkMast wrkMast = new WrkMast();
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index d32aa95..bea2334 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,5 +1,5 @@
server:
- port: 8081
+ port: 8080
servlet:
context-path: /@pom.build.finalName@
@@ -16,7 +16,8 @@
# password: xltys1995
# sql-server
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
- url: jdbc:sqlserver://localhost:1433;databasename=sxjzasrs
+# url: jdbc:sqlserver://172.17.20.240:1433;databasename=sxjzasrs
+ url: jdbc:sqlserver://127.0.0.1:1433;databasename=sxjzasrs
username: sa
password: sa@123
mvc:
diff --git a/src/main/resources/mapper/LocMastMapper.xml b/src/main/resources/mapper/LocMastMapper.xml
index 621e466..5aa38d2f 100644
--- a/src/main/resources/mapper/LocMastMapper.xml
+++ b/src/main/resources/mapper/LocMastMapper.xml
@@ -179,4 +179,22 @@
)
and loc_sts = 'D' and crn_no=1
</select>
+ <select id="queryEmptyLocNoByStaNo" resultType="com.zy.asrs.entity.LocMast">
+ SELECT TOP 1 loc_no AS locNo,crn_no AS crnNo FROM asr_loc_mast
+ where loc_sts = 'O'
+ <if test="crnNo == 1">
+ and row1 in(1,2)
+ </if>
+ <if test="crnNo == 2">
+ and row1 in(5,6)
+ </if>
+ <if test="crnNo == 3">
+ and row1 in(6,7)
+ </if>
+ ORDER BY lev1 ASC, bay1 ASC
+ </select>
+ <select id="queryLocByBarCode" resultType="com.zy.asrs.entity.LocMast">
+ SELECT TOP 1 loc_no AS locNo,crn_no AS crnNo FROM asr_loc_mast
+ where loc_sts = 'O' and row1 = #{row} ORDER BY lev1 ASC, bay1 ASC
+ </select>
</mapper>
diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml
index 76e18cc..6b204d4 100644
--- a/src/main/resources/mapper/WrkMastMapper.xml
+++ b/src/main/resources/mapper/WrkMastMapper.xml
@@ -74,7 +74,7 @@
select * from asr_wrk_mast
where wrk_sts=5
or (wrk_sts=15 and ove_mk='Y' and wrk_no not in (select wrk_no from asr_bas_devp))
- or (wrk_sts=15 and dateadd(mi,15,crn_end_time) <= getdate() and wrk_no not in (select wrk_no from asr_bas_devp))
+ or (wrk_sts=15 and dateadd(mi,5,crn_end_time) <= getdate() and wrk_no not in (select wrk_no from asr_bas_devp))
or (wrk_sts=15 and crn_end_time is null and wrk_no not in (select wrk_no from asr_bas_devp))
order by io_time,wrk_no asc
</select>
diff --git a/src/main/webapp/views/pakStore/locDetlCheckQuery.html b/src/main/webapp/views/pakStore/locDetlCheckQuery.html
index 0d2410b..4cc15aa 100644
--- a/src/main/webapp/views/pakStore/locDetlCheckQuery.html
+++ b/src/main/webapp/views/pakStore/locDetlCheckQuery.html
@@ -52,6 +52,7 @@
<option value="" style="display: none">璇烽�夋嫨宸烽亾</option>
<option value="1">1鍙�</option>
<option value="2">2鍙�</option>
+ <option value="3">3鍙�</option>
</select>
</div>
<div class="layui-inline">
diff --git a/src/main/webapp/views/pakStore/locDetlQuery.html b/src/main/webapp/views/pakStore/locDetlQuery.html
index 1d02c25..30d7ba0 100644
--- a/src/main/webapp/views/pakStore/locDetlQuery.html
+++ b/src/main/webapp/views/pakStore/locDetlQuery.html
@@ -52,6 +52,7 @@
<option value="" style="display: none">璇烽�夋嫨宸烽亾</option>
<option value="1">1鍙�</option>
<option value="2">2鍙�</option>
+ <option value="3">3鍙�</option>
</select>
</div>
<div class="layui-inline">
--
Gitblit v1.9.1