From d8e24bd5996421c5277aecc85ff4614509c0f59d Mon Sep 17 00:00:00 2001 From: BAWEI Date: Wed, 5 Apr 2023 11:15:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=85=E7=A9=BA=E6=9C=8D=E5=8A=A1=E5=99=A8?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E6=96=87=E4=BB=B6=E7=9A=84=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/jnpf/config/ToolUtils.java | 23 +++++++ .../controller/PurchaseorderController.java | 62 ++++++++++--------- 2 files changed, 56 insertions(+), 29 deletions(-) create mode 100644 SC-boot/linkage-common/src/main/java/jnpf/config/ToolUtils.java diff --git a/SC-boot/linkage-common/src/main/java/jnpf/config/ToolUtils.java b/SC-boot/linkage-common/src/main/java/jnpf/config/ToolUtils.java new file mode 100644 index 00000000..9bab4cfa --- /dev/null +++ b/SC-boot/linkage-common/src/main/java/jnpf/config/ToolUtils.java @@ -0,0 +1,23 @@ +package jnpf.config; + +import java.io.File; + +public class ToolUtils { + public boolean forceDelete(File file) { + + boolean result = file.delete(); + + int tryCount = 0; + + while (!result && tryCount++ < 10) { + + System.gc(); //回收资源 + + result = file.delete(); + + } + + return result; + + } +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java index 76ea84d0..ea61288d 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java @@ -16,6 +16,7 @@ import jnpf.base.vo.DownloadVO; import jnpf.base.vo.PageListVO; import jnpf.base.vo.PaginationVO; import jnpf.config.ConfigValueUtil; +import jnpf.config.ToolUtils; import jnpf.contractfile.entity.ContractFileEntity; import jnpf.contractfile.service.ContractFileService; import jnpf.exception.DataException; @@ -220,7 +221,7 @@ public class PurchaseorderController { purchaseorder_item0Wrapper.lambda().select(Purchaseorder_item0Entity::getPoundlistId); List poundIdList = purchaseorder_item0Service.listObjs(purchaseorder_item0Wrapper).stream().map(o -> (String) o).collect(Collectors.toList()); List poundlistEntityList = new ArrayList<>(); - if(poundIdList.size() > 0){ + if (poundIdList.size() > 0) { poundlistEntityList = poundlistService.queryPoundListByIds(poundIdList); } purchaseorderVO.setPoundlistEntityList(poundlistEntityList); @@ -330,8 +331,8 @@ public class PurchaseorderController { String s = UUID.randomUUID().toString(); - cn.hutool.core.io.FileUtil.del(new File(configValueUtil.getTemporaryFilePath() +"unzip\\"+s+"\\")); - String filePath = configValueUtil.getTemporaryFilePath() + "unzip\\"+s+"\\"; + cn.hutool.core.io.FileUtil.del(new File(configValueUtil.getTemporaryFilePath() + "unzip\\" + s + "\\")); + String filePath = configValueUtil.getTemporaryFilePath() + "unzip\\" + s + "\\"; // String fileName = RandomUtil.uuId() + "." + UpUtil.getFileType(file); // fileName = XSSEscape.escape(fileName); @@ -343,8 +344,18 @@ public class PurchaseorderController { InputStream inputStream = file.getInputStream(); File gbk = ZipUtil.unzip(inputStream, temporaryFile, Charset.forName("GBK")); - List resultList= FileCopy.getInfoAndUpFile(gbk.listFiles()); + List resultList = null; + ToolUtils cache = new ToolUtils(); + + try { + resultList = FileCopy.getInfoAndUpFile(gbk.listFiles()); + } catch (IOException e) { + log.info("loadProperties IOException:" + e.getMessage()); + } inputStream.close(); + + cache.forceDelete(temporaryFile); + // cn.hutool.core.io.FileUtil.del(temporaryFile); // FileUtil.upFile(file, filePath, fileName); DownloadVO vo = DownloadVO.builder().build(); @@ -523,11 +534,11 @@ public class PurchaseorderController { int i = 0; for (String allId : idList) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.lambda().eq(Purchaseorder_item0Entity::getPurchaseorderId,allId); + queryWrapper.lambda().eq(Purchaseorder_item0Entity::getPurchaseorderId, allId); queryWrapper.lambda().select(Purchaseorder_item0Entity::getPoundlistId); List poundlistIdList = purchaseorder_item0Service.listObjs(queryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); List poundlistList = poundlistService.listByIds(poundlistIdList); - for (PoundlistEntity poundlistEntity: poundlistList) { + for (PoundlistEntity poundlistEntity : poundlistList) { poundlistEntity.setPurchaseStatus("99"); } poundlistService.updateBatchById(poundlistList); @@ -554,7 +565,7 @@ public class PurchaseorderController { String[] idList = ids.split(","); for (String id : idList) { PurchaseorderitemEntity entity = purchaseorderitemService.getInfo(id); - if(StringUtils.isNotEmpty(entity.getSupplierId())){ + if (StringUtils.isNotEmpty(entity.getSupplierId())) { SupplierEntity supplierEntity = supplierService.getById(entity.getSupplierId()); entity.setColectionBank(supplierEntity.getBank()); entity.setCollectionAccount(supplierEntity.getBankAccount()); @@ -584,15 +595,15 @@ public class PurchaseorderController { PurchaseorderitemEntity entity = purchaseorderitemService.getInfo(id); PurchaseorderInfoVO vo = JsonUtil.getJsonToBean(entity, PurchaseorderInfoVO.class); vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); - if(StringUtils.isNotEmpty(vo.getSupplierId())) { + if (StringUtils.isNotEmpty(vo.getSupplierId())) { SupplierEntity supplierEntity = supplierService.getById(vo.getSupplierId()); if (ObjectUtils.isNotEmpty(supplierEntity) && StringUtils.isNotEmpty(supplierEntity.getSupplierName())) { vo.setSupplierName(supplierEntity.getSupplierName()); } } - if (StringUtils.isNotEmpty(vo.getContractCode())){ + if (StringUtils.isNotEmpty(vo.getContractCode())) { ContractFileEntity contractFileEntity = contractFileService.getById(vo.getContractCode()); - if (ObjectUtils.isNotEmpty(contractFileEntity) && StringUtils.isNotEmpty(contractFileEntity.getContractName())){ + if (ObjectUtils.isNotEmpty(contractFileEntity) && StringUtils.isNotEmpty(contractFileEntity.getContractName())) { vo.setContractName(contractFileEntity.getContractName()); } } @@ -611,13 +622,13 @@ public class PurchaseorderController { purchaseorder_item0Entity.setMaterialName(materialEntity.getItemName()); if (StringUtils.isNotEmpty(materialEntity.getInArea())) { purchaseorder_item0Entity.setReservoirareaId(materialEntity.getInArea()); - if(StringUtils.isNotEmpty(purchaseorder_item0Entity.getReservoirareaId())){ + if (StringUtils.isNotEmpty(purchaseorder_item0Entity.getReservoirareaId())) { ReservoirareaEntity reservoirareaEntity = reservoirareaService.getById(purchaseorder_item0Entity.getReservoirareaId()); - if(reservoirareaEntity != null){ + if (reservoirareaEntity != null) { purchaseorder_item0Entity.setReservoirareaName(reservoirareaEntity.getAreaname()); - if(StringUtils.isNotEmpty(reservoirareaEntity.getWarehouseId())){ + if (StringUtils.isNotEmpty(reservoirareaEntity.getWarehouseId())) { WareHouseEntity wareHouseEntity = wareHouseService.getById(reservoirareaEntity.getWarehouseId()); - if(wareHouseEntity != null){ + if (wareHouseEntity != null) { purchaseorder_item0Entity.setWarehouseName(wareHouseEntity.getName()); } } @@ -646,16 +657,16 @@ public class PurchaseorderController { QueryWrapper receiptinWrapper = new QueryWrapper<>(); receiptinWrapper.lambda().eq(ReceiptinEntity::getSouceno, id); ReceiptinEntity receiptinEntity = receiptinService.getOne(receiptinWrapper); - if(receiptinEntity != null){ + if (receiptinEntity != null) { vo.setReceiptamount(receiptinEntity.getReceiptamount()); vo.setReceiptnum(receiptinEntity.getReceiptnum()); QueryWrapper receiptinitem0Wrapper = new QueryWrapper<>(); receiptinitem0Wrapper.lambda().eq(Receiptin_item0Entity::getReceiptinId, receiptinEntity.getId()); List receiptin_item0EntityList = receiptin_item0Service.list(receiptinitem0Wrapper); receiptinEntity.setReceiptin_item0List(receiptin_item0EntityList); - vo.setReceiptin_item0List(JsonUtil.getJsonToList(receiptin_item0EntityList,Receiptin_item0Model.class )); + vo.setReceiptin_item0List(JsonUtil.getJsonToList(receiptin_item0EntityList, Receiptin_item0Model.class)); vo.setReceiptinEntity(receiptinEntity); - }else{ + } else { vo.setReceiptinEntity(new ReceiptinEntity()); } @@ -749,11 +760,6 @@ public class PurchaseorderController { vo.setPaymentList(paymentList); - - - - - List receiptin_item0itemList = purchaseorderitemService.GetReceiptin_item0itemList(id); List jg_receiptin_item0ModelList = JsonUtil.getJsonToList(receiptin_item0itemList, Receiptin_item0Model.class); vo.setReceiptin_item0List(jg_receiptin_item0ModelList); @@ -768,7 +774,7 @@ public class PurchaseorderController { List receiptin_item0EntityList = receiptin_item0Service.list(receiptinitem0Wrapper); receiptinEntity.setReceiptin_item0List(receiptin_item0EntityList); vo.setReceiptinEntity(receiptinEntity); - }else{ + } else { vo.setReceiptinEntity(new ReceiptinEntity()); } QueryWrapper purchasebackWrapper = new QueryWrapper<>(); @@ -804,11 +810,11 @@ public class PurchaseorderController { //添加到详情表单对象中 ContractFileEntity contractFileEntity = contractFileService.getInfo(vo.getContractCode()); - if (ObjectUtils.isNotEmpty(contractFileEntity) && StringUtils.isNotEmpty(contractFileEntity.getContractName())){ + if (ObjectUtils.isNotEmpty(contractFileEntity) && StringUtils.isNotEmpty(contractFileEntity.getContractName())) { vo.setContractName(contractFileEntity.getContractName()); } SupplierEntity supplierEntity = supplierService.getInfo(vo.getSupplierId()); - if (ObjectUtils.isNotEmpty(supplierEntity) && StringUtils.isNotEmpty(supplierEntity.getSupplierName())){ + if (ObjectUtils.isNotEmpty(supplierEntity) && StringUtils.isNotEmpty(supplierEntity.getSupplierName())) { vo.setSupplierName(supplierEntity.getSupplierName()); } // Map contractCodeMap = new HashMap<>(); @@ -948,11 +954,11 @@ public class PurchaseorderController { if (entity != null) { purchaseorderitemService.delete(entity); QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.lambda().eq(Purchaseorder_item0Entity::getPurchaseorderId,entity.getId()); + queryWrapper.lambda().eq(Purchaseorder_item0Entity::getPurchaseorderId, entity.getId()); queryWrapper.lambda().select(Purchaseorder_item0Entity::getPoundlistId); List poundlistIdList = purchaseorder_item0Service.listObjs(queryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); List poundlistList = poundlistService.listByIds(poundlistIdList); - for (PoundlistEntity poundlistEntity: poundlistList) { + for (PoundlistEntity poundlistEntity : poundlistList) { poundlistEntity.setPurchaseStatus("99"); } poundlistService.updateBatchById(poundlistList); @@ -975,6 +981,4 @@ public class PurchaseorderController { } return ActionResult.success("删除成功"); } - - }