From 0616f12078c8b6e24ea63a5a1b7a24df8e03dce8 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Wed, 13 Sep 2023 19:49:25 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E8=BD=A6=E6=AC=A1=E7=9A=84?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E8=87=AA=E7=BC=96=E5=8F=B7=E7=9A=84=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AsyncDataServiceImpl.java | 5 +--- .../service/impl/OuPaiFactoryServiceImpl.java | 29 +++++++++++++++---- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java index 2504b513f..9d1973865 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java @@ -407,15 +407,12 @@ public class AsyncDataServiceImpl implements IAsyncDataService { // 需要从老系统进行订单数据查询 AdvanceEntity advanceEntity = findAdvanceEntityUseCacheByOrderSelfNum(factoryOrderEntity.getSelfCode(),carNumber); if (ObjectUtils.isNull(advanceEntity)) { - - //todo 先阶段值推送老系统的双流和无锡 if(!ArrayUtil.contains(jidiCanshu,receivingOrderEntity.getCurrentWarehouseName())){ log.info("推送老系统失败,当前仓库不是双流和无锡,推送失败 {}",receivingOrderEntity.getCurrentWarehouseName()); continue; } - advanceEntity = new AdvanceEntity(); advanceEntity.setOrderSelfNum(StringUtil.isBlank(factoryOrderEntity.getSelfCode()) ? "" : factoryOrderEntity.getSelfCode()); //订单自编号 advanceEntity.setSiteName(receivingOrderEntity.getCurrentWarehouseName()); // 基地 TODO 需要映射 @@ -848,7 +845,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService { String key = AdvanceEntity.class.getName() + ":" + orderSelfNum + ":" + departCode; AdvanceEntity advanceEntity = bladeRedis.get(key); if (ObjectUtils.isNull(advanceEntity)) { - advanceEntity = iAdvanceClient.getQueryDataOne(orderSelfNum); + advanceEntity = iAdvanceClient.getEntityByMctsTruck(orderSelfNum,departCode); bladeRedis.setEx(key, advanceEntity, 12 * 60 * 60L); } return advanceEntity; diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java index 857a2be19..8ffac0218 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java @@ -14,8 +14,10 @@ import com.logpm.factory.oupai.service.*; import com.logpm.factory.oupai.vo.OpOrderStatusLogVO; import com.logpm.factory.props.OuPaiProperties; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.disk.DiskFileItem; import org.apache.commons.fileupload.disk.DiskFileItemFactory; +import org.apache.commons.io.IOUtils; import org.jetbrains.annotations.NotNull; import org.springblade.common.constant.RabbitConstant; import org.springblade.common.exception.CustomerException; @@ -27,11 +29,15 @@ import org.springblade.resource.feign.IOssClient; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.commons.CommonsMultipartFile; import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; +import java.io.OutputStream; import java.util.Date; import java.util.HashMap; import java.util.Map; @@ -616,9 +622,9 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { private String uploadFile(String body) { //文本内容和保存为本地文件 并上传 String logPath = FileLogsUtil.saveFileLogs(body); + log.info(">>> 文件路径 {}", logPath); MultipartFile multi = getMultipartFile(logPath); - OpOrderStatusLogEntity orderStatusLog = new OpOrderStatusLogEntity(); //上传到服务器 R r = ossClient.fileUpload(multi); if (r.isSuccess()) { @@ -634,11 +640,22 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { */ @NotNull private MultipartFile getMultipartFile(String logPath) { - File f = new File(logPath); - DiskFileItem fileItem = (DiskFileItem) new DiskFileItemFactory().createItem("file", - "multipart/form-data", true, f.getName()); - MultipartFile multi = new CommonsMultipartFile(fileItem); - return multi; + File file = new File(logPath); + + // File 转 MultipartFile + FileItem item = new DiskFileItemFactory().createItem("file" + , MediaType.MULTIPART_FORM_DATA_VALUE + , true + , file.getName()); + try (InputStream input = new FileInputStream(file); + OutputStream os = item.getOutputStream()) { + // 流转移 + IOUtils.copy(input, os); + } catch (Exception e) { + throw new IllegalArgumentException("Invalid file: " + e, e); + } + + return new CommonsMultipartFile(item); }