From b20f26652b83b3cee96451f61b3092e53c1b3d55 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期三, 14 八月 2024 20:34:50 +0800
Subject: [PATCH] 合格品校验
---
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 163 ++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 116 insertions(+), 47 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 869bbeb..e8c0951 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -986,31 +986,74 @@
}
@Override
+ public void updateBarcode() {
+ List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D"));
+ for (int i = 0; i < locMasts.size(); i ++) {
+ LocMast locMast = locMasts.get(i);
+ locMast.setBarcode("a"+i);
+ locMastService.updateById(locMast);
+ }
+ System.out.println("鏇存柊瀹屼簡" + locMasts.size());
+ }
+
+ @Override
+ @Transactional
+ public void prodCheck(List<ProdCheckParam> param) {
+ if (param.isEmpty()) {
+ throw new CoolException("璇锋眰鍙傛暟涓嶈兘涓虹┖");
+ }
+ for (ProdCheckParam checkParam : param) {
+ // 鏇存柊搴撳瓨鏄庣粏鏄惁鍚堟牸
+ LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("brand", checkParam.getPackageGroupNo())
+ .eq("unit", checkParam.getBoxNo()).eq("model", checkParam.getRollNo()));
+ // 鏇存柊鍟嗗搧琛ㄦ槸鍚﹀悎鏍�
+ Mat mat = matService.selectOne(new EntityWrapper<Mat>().eq("brand", checkParam.getPackageGroupNo())
+ .eq("unit", checkParam.getBoxNo()).eq("model", checkParam.getRollNo()));
+ if (locDetl == null || mat == null) {
+ throw new CoolException("鏇存柊鏄惁鍚堟牸鐗╂枡涓嶅瓨鍦細" + checkParam);
+ }
+
+ locDetl.setThreeCode(checkParam.getQualified());
+ mat.setThreeCode(checkParam.getQualified());
+
+ locDetlService.update(locDetl,new EntityWrapper<LocDetl>().eq("brand", checkParam.getPackageGroupNo())
+ .eq("unit", checkParam.getBoxNo()).eq("model", checkParam.getRollNo()));
+ matService.update(mat,(new EntityWrapper<Mat>().eq("brand", checkParam.getPackageGroupNo())
+ .eq("unit", checkParam.getBoxNo()).eq("model", checkParam.getRollNo())));
+ }
+ }
+
+ @Override
@Transactional
public R gwmsGenerateInventory(GwmsGenerateInventoryDto param) {
if (Cools.isEmpty(param)) {
throw new CoolException("璇锋眰鍙傛暟鏈夎锛�" + param);
}
- int zpalletCount = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode()));
- if (zpalletCount > 0) {
- throw new CoolException("搴撳瓨鎵樼洏鐮佸凡瀛樺湪锛�" + param.getBarcode());
- }
+ if (!Cools.isEmpty(param.getBarcode())) {
+ int zpalletCount = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode()));
+ if (zpalletCount > 0) {
+ throw new CoolException("搴撳瓨鎵樼洏鐮佸凡瀛樺湪锛�" + param.getBarcode());
+ }
- int barcodeCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode()));
- if (barcodeCount > 0) {
- throw new CoolException("宸ヤ綔妗e凡瀛樺湪璇ユ墭鐩樼爜锛�" + param.getBarcode());
+ int barcodeCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode()));
+ if (barcodeCount > 0) {
+ throw new CoolException("宸ヤ綔妗e凡瀛樺湪璇ユ墭鐩樼爜锛�" + param.getBarcode());
+ }
}
-
LocTypeDto locTypeDto = new LocTypeDto();
locTypeDto.setLocType1((short)1);
-
+ int iotype = 1;
+ if (Cools.isEmpty(param.getMatList())) {
+ iotype = 10;
+ }
// 鏍规嵁婧愮珯鐐瑰鎵惧簱浣�
// StartupDto dto = commonService.getLocNo(1, 1, param.getPalletizingNo(), null,null,null, locTypeDto);
- StartupDto dto = commonService.getLocNo(1, param.getPalletizingNo(), locTypeDto);
+ StartupDto dto = commonService.getLocNo(iotype, param.getPalletizingNo(), locTypeDto,0);
// 杩斿洖GWCS鐩爣淇℃伅
pushStaNoToGwcs(param.getPalletizingNo(),dto.getStaNo(),dto.getWorkNo());
+
int workNo = dto.getWorkNo();
Date now = new Date();
@@ -1019,7 +1062,7 @@
wrkMast.setWrkNo(workNo);
wrkMast.setIoTime(new Date());
wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細璁惧涓婅蛋
- wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
+ wrkMast.setIoType(iotype); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱
wrkMast.setIoPri(13D); // 浼樺厛绾�
wrkMast.setCrnNo(dto.getCrnNo());
wrkMast.setSourceStaNo(param.getPalletizingNo());
@@ -1040,46 +1083,53 @@
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
- List<GwmsGenerateInventoryDto.MatList> matList = param.getMatList();
- for (GwmsGenerateInventoryDto.MatList obj :matList) {
- WrkDetl wrkDetl = new WrkDetl();
- wrkDetl.setWrkNo(wrkMast.getWrkNo());
- obj.getRolls().forEach(roll -> {
- Mat mat = matService.selectByMatnr(roll.getSpecs());
- if (mat == null) {
- mat = new Mat();
+ if (!Cools.isEmpty(param.getMatList())) {
+ List<GwmsGenerateInventoryDto.MatList> matList = param.getMatList();
+ for (GwmsGenerateInventoryDto.MatList obj :matList) {
+ WrkDetl wrkDetl = new WrkDetl();
+ wrkDetl.setWrkNo(wrkMast.getWrkNo());
+ obj.getRolls().forEach(roll -> {
+ wrkDetl.setWrkNo(wrkMast.getWrkNo());
+ wrkDetl.setMatnr(roll.getSpecs()); // 瑙勬牸
+ wrkDetl.setMaktx(roll.getSpecs()); //瑙勬牸
+ wrkDetl.setUnit(roll.getBoxNo()); // 绠卞彿
+ wrkDetl.setModel(roll.getRollNo()); // 鍗峰彿
+ wrkDetl.setBrand(obj.getPackageGroupNo()); // 鍖呰缁勫彿
+ wrkDetl.setZpallet(param.getBarcode()); // 鎵樼洏鐮�
+ wrkDetl.setBarcode(param.getBarcode());
+ wrkDetl.setOrigin(obj.getBoxPos()); // 鏈ㄧ鍦ㄦ墭鐩樹綅缃�
+ wrkDetl.setColor(obj.getBoxType()); // 鏈ㄧ绫诲瀷
+ wrkDetl.setManu(obj.getRollType()); // 绠¤姱绫诲瀷
+ wrkDetl.setSku(obj.getWideInWidth()); // 瀹炴祴瀹藉箙
+ wrkDetl.setItemNum(obj.getThickness()); // 鐢熺當鍘氬害
+ wrkDetl.setManuDate(obj.getFqTime()); // 鍒嗗垏涓嬫枡鏃堕棿
+ wrkDetl.setWeight(roll.getNetWeight()); // 鍑�閲�
+ wrkDetl.setVolume(roll.getGrossWeight()); // 姣涢噸
+ wrkDetl.setLength(roll.getLength()); // 闀垮害
+ wrkDetl.setSpecs(String.valueOf(roll.getSplices())); // 鎺ュご
+ wrkDetl.setAnfme(1.0);
+// wrkDetl.setThreeCode(null); // 閫氳繃mes鎴杄xcel瀵煎叆妫�娴嬫槸鍚﹀悎鏍� 0涓嶅悎鏍硷紝1 鍚堟牸
+ wrkDetl.setIoTime(now);
+ wrkDetl.setAppeTime(now);
+ wrkDetl.setModiTime(now);
+ if (!wrkDetlService.insert(wrkDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+ }
+
+ // 鐗╂枡琛ㄥ浠戒竴浠�
+ Mat mat = new Mat();
+ mat.sync(wrkDetl);
mat.setTagId(6L);
- mat.setMatnr(roll.getSpecs());
- mat.setMaktx(roll.getSpecs());
- mat.setSpecs(roll.getSpecs());
- mat.setStatus(1);
mat.setCreateTime(now);
mat.setUpdateTime(now);
if (!matService.insert(mat)) {
- throw new CoolException("鐗╂枡瀵煎叆澶辫触锛�");
+ throw new CoolException("澶囦唤鐗╂枡琛ㄥけ璐�");
}
- }
- wrkDetl.setWrkNo(wrkMast.getWrkNo());
- wrkDetl.setMatnr(roll.getSpecs()); // 瑙勬牸
- wrkDetl.setMaktx(roll.getSpecs()); //瑙勬牸
- wrkDetl.setBatch(roll.getBoxNo()); // 绠卞彿
- wrkDetl.setModel(roll.getRollNo()); // 鍗峰彿
- wrkDetl.setBrand(""); // 鏈ㄧ绫诲瀷
- wrkDetl.setZpallet(param.getBarcode()); // 鎵樼洏鍚�
- wrkDetl.setOrigin(obj.getBoxPos()); // 鏈ㄧ鍦ㄦ墭鐩樹綅缃�
- wrkDetl.setWeight(roll.getNetWeight()); // 鍑�閲�
- wrkDetl.setVolume(roll.getGrossWeight()); // 姣涢噸
- wrkDetl.setPrice(roll.getLength());
- wrkDetl.setSpecs(String.valueOf(roll.getSplices()));
- wrkDetl.setAnfme(1.0);
- wrkDetl.setIoTime(now);
- wrkDetl.setAppeTime(now);
- wrkDetl.setModiTime(now);
- if (!wrkDetlService.insert(wrkDetl)) {
- throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
- }
- });
+
+ });
+ }
}
+
// 鏇存柊鐩爣搴撲綅鐘舵��
LocMast locMast = locMastService.selectById(dto.getLocNo());
@@ -1108,6 +1158,9 @@
}
wrkMast.setWrkSts(2L);
+ if(wrkMast.getIoType() == 10){
+ wrkMast.setBarcode(param.getBarcode());
+ }
wrkMastService.updateById(wrkMast);
return "璇锋眰鎴愬姛";
@@ -1237,17 +1290,32 @@
return "鍑哄簱缁撴灉涓婃姤鎴愬姛";
}
+ @Autowired
+ private BasCrnpService basCrnpService;
+
@Override
@Transactional
public String emptyOutLoc(GhjtApiParam param) {
// 3102/3009/3008/3006/3003/3002鈫�3047/3112
+ // 鑾峰彇妯″紡涓虹數鑴戞ā寮忥紝鏃犱换鍔$殑鍫嗗灈鏈哄垪琛�:闃叉鍒嗛厤鍒板爢鍨涙満涓嶅彲鐢�
+ List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().eq("crn_sts",3)
+ .eq("wrk_no",0));
+ if (basCrnps.isEmpty()) {
+ // 閮芥湁浠诲姟鍒欒幏鍙栫數鑴戞ā寮忕殑鍫嗗灈鏈哄垪琛�
+ basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().eq("crn_sts",3));
+ }
+ if (basCrnps.isEmpty()) {
+ throw new CoolException("娌℃湁鍙敤鍫嗗灈鏈�,鍫嗗灈鏈哄仠姝㈡垨寮傚父");
+ }
+ // 鍙敤鍫嗗灈鏈哄垪琛�
+ List<Integer> crnNoList = basCrnps.stream().map(BasCrnp::getCrnNo).collect(Collectors.toList());
// 瀵绘壘绌烘墭鐩樺簱浣嶏紝鍏堟壘娴呭簱浣�
List<LocMast> locMasts;
locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts","D")
- .orderAsc(Arrays.asList("row1","lev1","bay1")).in("row1",3,4,6,7,10,11,14,15,18,19,22,23));
+ .orderAsc(Arrays.asList("row1","lev1","bay1")).in("crn_no",crnNoList).in("row1",3,4,6,7,10,11,14,15,18,19,22,23));
if (locMasts.isEmpty()) {
locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts","D")
- .orderAsc(Arrays.asList("row1","lev1","bay1")).in("row1",1,4,5,8,9,12,13,16,17,20,21,24));
+ .orderAsc(Arrays.asList("row1","lev1","bay1")).in("crn_no",crnNoList).in("row1",1,4,5,8,9,12,13,16,17,20,21,24));
}
if (locMasts.isEmpty()) {
@@ -1277,6 +1345,7 @@
wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
wrkMast.setCrnNo(locMast.getCrnNo());
wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
+ wrkMast.setBarcode(locMast.getBarcode());
wrkMast.setFullPlt("N"); // 婊℃澘锛歒
wrkMast.setPicking("N"); // 鎷f枡
wrkMast.setExitMk("N"); // 閫�鍑�
--
Gitblit v1.9.1