From 1648307cdce7e7e3781ac5a1e629a7e9c92c9cff Mon Sep 17 00:00:00 2001 From: luliqiang <kidgrow> Date: Sat, 15 Aug 2020 19:52:11 +0800 Subject: [PATCH] 修改OSS路径中医院ID和科室ID不能获取的Bug --- kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java | 50 ++++++++++++++++++++++++++------------------------ 1 files changed, 26 insertions(+), 24 deletions(-) diff --git a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java index 2b09032..a443a97 100644 --- a/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java +++ b/kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-server/src/main/java/com/kidgrow/filecenter/config/AliyunOSSAutoConfigure.java @@ -11,6 +11,7 @@ import com.kidgrow.filecenter.properties.FileServerProperties; import com.kidgrow.filecenter.service.impl.AbstractIFileService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -20,8 +21,6 @@ import javax.servlet.http.HttpServletRequest; import java.io.InputStream; import java.util.Date; -import java.util.HashMap; -import java.util.Map; import java.util.UUID; /** @@ -64,9 +63,14 @@ return fileProperties.getType(); } + @Value("${spring.profiles.active}") + private String OssPathEn; + @Override protected void uploadFile(MultipartFile file, FileInfo fileInfo) throws Exception { String clientID = httpServletRequest.getHeader(SecurityConstants.CLIENT_HEADER); + String hospitalID = httpServletRequest.getHeader(SecurityConstants.USER_HOSPITAL_ID_HEADER); + String depID = httpServletRequest.getHeader(SecurityConstants.USER_DEP_ID_HEADER); String folderByDate = DateUtil.formatDate(new Date()); int begin = file.getOriginalFilename().indexOf("."); int last = file.getOriginalFilename().length(); @@ -74,10 +78,11 @@ String fileName = UUID.randomUUID().toString().replaceAll("-", "") + fileType; String fileFolder = ""; if (clientID.equals("hospital")) {//医院端平台, - fileFolder = FilePath(fileInfo.getImgType(), folderByDate, null, null); + fileFolder = FilePath(fileInfo.getImgType(), folderByDate, hospitalID, depID); fileUpLoadOss(fileInfo, fileFolder + fileName, file.getInputStream()); } else { - fileUpLoadOss(fileInfo, fileProperties.getOss().getFolder() + folderByDate + "/" + fileName, file.getInputStream()); + fileFolder = FilePath(fileInfo.getImgType(), folderByDate, hospitalID, depID); + fileUpLoadOss(fileInfo, fileFolder + fileName, file.getInputStream()); } } @@ -114,42 +119,39 @@ */ public String FilePath(String imgType, String folderByDate, String hospitalId, String departmentId) { //返回的文件路径 - String fileFolder = ""; + String fileFolder = OssPathEn+"/"; + + if (StringUtils.isNotBlank(imgType)) { // 光片需要按照根据医院ID,科室ID,日期进行OSS存储 if (imgType.toLowerCase().equals("xray")) { - String hospitalID = httpServletRequest.getHeader(SecurityConstants.USER_HOSPITAL_ID_HEADER); - String depID = httpServletRequest.getHeader(SecurityConstants.USER_DEP_ID_HEADER); - if (org.apache.commons.lang3.StringUtils.isBlank(hospitalID) && - org.apache.commons.lang3.StringUtils.isBlank(depID)) { - fileFolder = "Xray/" + hospitalID + "/" + depID + "/" + folderByDate + "/"; + + if (StringUtils.isNotBlank(hospitalId) && + StringUtils.isNotBlank(departmentId)) { + fileFolder += "Xray/" + hospitalId + "/" + departmentId + "/" + folderByDate + "/"; } else { - if (org.apache.commons.lang3.StringUtils.isBlank(hospitalId) && - org.apache.commons.lang3.StringUtils.isBlank(departmentId)) { - fileFolder = "Xray/" + hospitalId + "/" + departmentId + "/" + folderByDate + "/"; - } else { - fileFolder = "Xray/" + folderByDate + "/"; - } + fileFolder += "Xray/" + folderByDate + "/"; } + } else if (imgType.toLowerCase().equals("app")) { //移动端APP上传 - if (org.apache.commons.lang3.StringUtils.isBlank(hospitalId) && - org.apache.commons.lang3.StringUtils.isBlank(departmentId)) { - fileFolder = "AppXray/" + hospitalId + "/" + departmentId + "/" + folderByDate + "/"; + if (StringUtils.isNotBlank(hospitalId) && + StringUtils.isNotBlank(departmentId)) { + fileFolder += "AppXray/" + hospitalId + "/" + departmentId + "/" + folderByDate + "/"; } else { - fileFolder = "AppXray/" + folderByDate + "/"; + fileFolder += "AppXray/" + folderByDate + "/"; } } // 医院Logo只保存在一个目录中 else if (imgType.toLowerCase().equals("logo")) { - fileFolder = "HospitalLogo/"; + fileFolder += "HospitalLogo/"; } else if (imgType.toLowerCase().equals("doctor")) { - fileFolder = "DoctorImage/"; + fileFolder += "DoctorImage/"; } else { - fileFolder = "OtherImage/" + folderByDate + "/"; + fileFolder += "OtherImage/" + folderByDate + "/"; } } else { - fileFolder = "OtherImage/" + folderByDate + "/"; + fileFolder += "OtherImage/" + folderByDate + "/"; } return fileFolder; } -- Gitblit v1.8.0