From bb47bf3d97d1a68e06a73ce275e81b5e581219d4 Mon Sep 17 00:00:00 2001 From: cuijian <cuijian@xalxzn.com> Date: 星期三, 25 六月 2025 09:31:26 +0800 Subject: [PATCH] 工具分类导入调整 --- lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java | 95 ++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 93 insertions(+), 2 deletions(-) diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java index 0671b37..c9a24b8 100644 --- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java +++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java @@ -24,6 +24,7 @@ import org.jeecg.modules.tms.entity.vo.InboundDetailVo; import org.jeecg.modules.tms.mapper.InboundOrderMapper; import org.jeecg.modules.tms.service.*; +import org.jeecg.modules.tms.utils.QrCodePrinterUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -68,6 +69,9 @@ @Autowired private IInboundDetailService inboundDetailService; + + @Autowired + private IGoodsShelvesService goodsShelvesService; @Override public boolean submit(String id) { InboundOrder inboundOrder = this.getById(id); @@ -213,8 +217,12 @@ } @Override - public void addInStorage(JSONObject jSONObject) { + public List<Map<String,String>> addInStorage(JSONObject jSONObject) { String inStorehouseType = jSONObject.getString("inStorehouseType"); + String locationCodeId = jSONObject.getString("locationCodeId"); + //浜岀淮鐮佹墦鍗板垪琛� + List<Map<String,String>> results = new ArrayList<>(); + List<String> contentList = new ArrayList<>(); String classifyId = jSONObject.getString("classifyId"); Date inboundTime = jSONObject.getDate("inboundTime"); //鑾峰彇鍏ュ簱鏄庣粏 @@ -258,6 +266,7 @@ num++; //杞崲鍥炲瓧绗︿覆骞朵繚鐣欏墠瀵奸浂 String result = String.format("%0" + currentCode.length() + "d", num); + //鎵撳嵃浜岀淮鐮� //淇濆瓨鍏ュ簱娴佹按 InStoreDetail inStoreDetail = new InStoreDetail(); inStoreDetail.setInboundTime(inboundTime); @@ -266,18 +275,34 @@ inStoreDetail.setInStorehouseType("1"); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); inStoreDetail.setToolId(inboundDetailVo.getToolCode()+"-"+result); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //澧炲姞搴撳瓨鏄庣粏 ToolLedgerDetail toolLedgerDetail = new ToolLedgerDetail(); toolLedgerDetail.setToolCode(inboundDetailVo.getToolCodeId()); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setToolId(inboundDetailVo.getToolCode()+"-"+result); toolLedgerDetail.setQuantity(BigDecimal.ONE); + toolLedgerDetail.setRemainingPercentage(BigDecimal.ONE); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.save(toolLedgerDetail); //鏇存柊褰撳墠缂栫爜 newBaseTools.setCurrentCode(result); baseToolsService.updateById(newBaseTools); + //鎵撳嵃浜岀淮鐮� + contentList.add(inboundDetailVo.getToolCode()+"-"+result); } + //鎵撳嵃浜岀淮鐮侊紝鏆傛椂娉ㄩ噴锛屽緟鐜板満璋冭瘯鎵撴爣鏈� +// for(String content : contentList){ +// Map<String,String> result = new HashMap<>(); +// result.put("content",content); +// result.put("image", QrCodePrinterUtils.generateBacthQRCode(content, 200, 200)); +// // 鐢熸垚浜岀淮鐮佸浘鐗囷紙Base64锛� +// results.add(result); +// } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); //涓嶇鍒版妸 }else { //淇濆瓨鍏ュ簱娴佹按 @@ -287,6 +312,7 @@ inStoreDetail.setInNumber(inboundDetailVo.getInStorageQuantity()); inStoreDetail.setInStorehouseType("1"); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //鏌ヨ搴撳瓨鏄庣粏涓槸鍚﹀瓨鍦ㄨ宸ュ叿 ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one(); @@ -294,12 +320,17 @@ ToolLedgerDetail newToolLedgerDetail = new ToolLedgerDetail(); newToolLedgerDetail.setToolCode(inboundDetailVo.getToolCodeId()); newToolLedgerDetail.setQuantity(inboundDetailVo.getInStorageQuantity()); + newToolLedgerDetail.setPositionCode(locationCodeId); newToolLedgerDetail.setStatus("1"); toolLedgerDetailService.save(newToolLedgerDetail); }else { toolLedgerDetail.setQuantity(toolLedgerDetail.getQuantity().add(inboundDetailVo.getInStorageQuantity())); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetailService.updateById(toolLedgerDetail); } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); } } //褰掕繕鍏ュ簱 @@ -321,6 +352,8 @@ .eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()) .eq(ToolLedgerDetail::getToolId,inboundDetailVo.getOnlyCode()).one(); toolLedgerDetail.setQuantity(BigDecimal.ONE); + toolLedgerDetail.setRemainingPercentage(BigDecimal.ONE); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 @@ -331,12 +364,14 @@ inStoreDetail.setInStorehouseType("2"); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); inStoreDetail.setToolId(inboundDetailVo.getOnlyCode()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //涓嶇鍒版妸 }else { //澧炲姞搴撳瓨鏄庣粏鍙敤搴撳瓨锛屼慨鏀圭姸鎬� ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one(); toolLedgerDetail.setQuantity(toolLedgerDetail.getQuantity().add(inboundDetailVo.getInStorageQuantity())); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 @@ -346,10 +381,14 @@ inStoreDetail.setInNumber(inboundDetailVo.getInStorageQuantity()); inStoreDetail.setInStorehouseType("2"); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); } } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); }else if("5".equals(inStorehouseType)){ //寰幆鏂板鏄庣粏 for(InboundDetailVo inboundDetailVo : inStoreDetailList) { @@ -368,6 +407,8 @@ .eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()) .eq(ToolLedgerDetail::getToolId,inboundDetailVo.getOnlyCode()).one(); toolLedgerDetail.setQuantity(BigDecimal.ONE); + toolLedgerDetail.setRemainingPercentage(BigDecimal.ONE); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 @@ -378,12 +419,14 @@ inStoreDetail.setInStorehouseType("5"); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); inStoreDetail.setToolId(inboundDetailVo.getOnlyCode()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //涓嶇鍒版妸 }else { //澧炲姞搴撳瓨鏄庣粏鍙敤搴撳瓨锛屼慨鏀圭姸鎬� ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one(); toolLedgerDetail.setQuantity(toolLedgerDetail.getQuantity().add(inboundDetailVo.getInStorageQuantity())); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 @@ -393,16 +436,25 @@ inStoreDetail.setInNumber(inboundDetailVo.getInStorageQuantity()); inStoreDetail.setInStorehouseType("5"); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); } } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); } + return results; } @Override - public void addApplyInStorage(JSONObject jSONObject) { + public List<Map<String,String>> addApplyInStorage(JSONObject jSONObject) { String inStorehouseType = jSONObject.getString("inStorehouseType"); + String locationCodeId = jSONObject.getString("locationCodeId"); + //浜岀淮鐮佹墦鍗板垪琛� + List<Map<String,String>> results = new ArrayList<>(); + List<String> contentList = new ArrayList<>(); //鍏ュ簱鐢宠鍗昳d String orderId = jSONObject.getString("orderId"); //鑾峰彇鍏ュ簱鏄庣粏 @@ -455,18 +507,34 @@ inStoreDetail.setInStorehouseType("1"); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); inStoreDetail.setToolId(inboundDetailVo.getToolCode()+"-"+result); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //澧炲姞搴撳瓨鏄庣粏 ToolLedgerDetail toolLedgerDetail = new ToolLedgerDetail(); toolLedgerDetail.setToolCode(inboundDetailVo.getToolCodeId()); toolLedgerDetail.setToolId(inboundDetailVo.getToolCode()+"-"+result); toolLedgerDetail.setQuantity(BigDecimal.ONE); + toolLedgerDetail.setRemainingPercentage(BigDecimal.ONE); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.save(toolLedgerDetail); //鏇存柊褰撳墠缂栫爜 newBaseTools.setCurrentCode(result); baseToolsService.updateById(newBaseTools); + //鎵撳嵃浜岀淮鐮� + contentList.add(inboundDetailVo.getToolCode()+"-"+result); } + //鎵撳嵃浜岀淮鐮侊紝鏆傛椂娉ㄩ噴锛屽緟鐜板満楠岃瘉鎵撴爣鏈� +// for(String content : contentList){ +// Map<String,String> result = new HashMap<>(); +// result.put("content",content); +// result.put("image", QrCodePrinterUtils.generateBacthQRCode(content, 200, 200)); +// // 鐢熸垚浜岀淮鐮佸浘鐗囷紙Base64锛� +// results.add(result); +// } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); //涓嶇鍒版妸 }else { //淇濆瓨鍏ュ簱娴佹按 @@ -477,6 +545,7 @@ inStoreDetail.setInStorehouseType("1"); inStoreDetail.setInStorehouseId(orderId); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //鏌ヨ搴撳瓨鏄庣粏涓槸鍚﹀瓨鍦ㄨ宸ュ叿 ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one(); @@ -484,12 +553,17 @@ ToolLedgerDetail newToolLedgerDetail = new ToolLedgerDetail(); newToolLedgerDetail.setToolCode(inboundDetailVo.getToolCodeId()); newToolLedgerDetail.setQuantity(inboundDetailVo.getInStorageQuantity()); + newToolLedgerDetail.setPositionCode(locationCodeId); newToolLedgerDetail.setStatus("1"); toolLedgerDetailService.save(newToolLedgerDetail); }else { toolLedgerDetail.setQuantity(toolLedgerDetail.getQuantity().add(inboundDetailVo.getInStorageQuantity())); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetailService.updateById(toolLedgerDetail); } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); } //鏇存敼鏄庣粏鍏ュ簱鐘舵�佸強瀹為檯鍏ュ簱鏁伴噺 InboundDetail inboundDetail = inboundDetailService.getById(inboundDetailVo.getId()); @@ -516,6 +590,8 @@ .eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()) .eq(ToolLedgerDetail::getToolId,inboundDetailVo.getOnlyCode()).one(); toolLedgerDetail.setQuantity(BigDecimal.ONE); + toolLedgerDetail.setRemainingPercentage(BigDecimal.ONE); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 @@ -527,6 +603,7 @@ inStoreDetail.setInStorehouseId(orderId); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); inStoreDetail.setToolId(inboundDetailVo.getOnlyCode()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //涓嶇鍒版妸 }else { @@ -534,6 +611,7 @@ ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one(); toolLedgerDetail.setQuantity(toolLedgerDetail.getQuantity().add(inboundDetailVo.getInStorageQuantity())); toolLedgerDetail.setStatus("1"); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 InStoreDetail inStoreDetail = new InStoreDetail(); @@ -543,6 +621,7 @@ inStoreDetail.setInStorehouseType("2"); inStoreDetail.setInStorehouseId(orderId); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); } //鏇存敼鏄庣粏鍏ュ簱鐘舵�佸強瀹為檯鍏ュ簱鏁伴噺 @@ -551,6 +630,9 @@ inboundDetail.setInActualCount(inboundDetailVo.getInStorageQuantity()); inboundDetailService.updateById(inboundDetail); } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); }else if("5".equals(inStorehouseType)){ //寰幆鏂板鏄庣粏 for(InboundDetailVo inboundDetailVo : inStoreDetailList) { @@ -569,6 +651,8 @@ .eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()) .eq(ToolLedgerDetail::getToolId,inboundDetailVo.getOnlyCode()).one(); toolLedgerDetail.setQuantity(BigDecimal.ONE); + toolLedgerDetail.setRemainingPercentage(BigDecimal.ONE); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetail.setStatus("1"); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 @@ -580,6 +664,7 @@ inStoreDetail.setInStorehouseId(orderId); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); inStoreDetail.setToolId(inboundDetailVo.getOnlyCode()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); //涓嶇鍒版妸 }else { @@ -587,6 +672,7 @@ ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one(); toolLedgerDetail.setQuantity(toolLedgerDetail.getQuantity().add(inboundDetailVo.getInStorageQuantity())); toolLedgerDetail.setStatus("1"); + toolLedgerDetail.setPositionCode(locationCodeId); toolLedgerDetailService.updateById(toolLedgerDetail); //淇濆瓨鍏ュ簱娴佹按 InStoreDetail inStoreDetail = new InStoreDetail(); @@ -596,6 +682,7 @@ inStoreDetail.setInStorehouseType("5"); inStoreDetail.setInStorehouseId(orderId); inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId()); + inStoreDetail.setGoodsShelvesId(locationCodeId); inStoreDetailService.save(inStoreDetail); } //鏇存敼鏄庣粏鍏ュ簱鐘舵�佸強瀹為檯鍏ュ簱鏁伴噺 @@ -604,6 +691,9 @@ inboundDetail.setInActualCount(inboundDetailVo.getInStorageQuantity()); inboundDetailService.updateById(inboundDetail); } + Map<String,String> result = new HashMap<>(); + result.put("content","淇濆瓨鎴愬姛"); + results.add(result); } //鏇存敼鐢宠鍗曞叆搴撶姸鎬� InboundOrder inboundOrder = this.getById(orderId); @@ -615,6 +705,7 @@ inboundOrder.setInStatus("2"); } this.updateById(inboundOrder); + return results; } private LoginUser getCurrentUser() { -- Gitblit v1.9.3