Browse Source

Merge branch 'dev_1118' of http://121.42.41.42:7070/r/esua-epdc-cloud into dev_1118

dev
管理员 6 years ago
parent
commit
ea4ae58136
  1. 13
      esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/cloud/FastDFSCloudStorageService.java
  2. 2
      esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java
  3. 12
      esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/service/OssService.java
  4. 50
      esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/service/impl/OssServiceImpl.java
  5. 2
      esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/resources/application.yml

13
esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/cloud/FastDFSCloudStorageService.java

@ -1,8 +1,8 @@
/**
* Copyright (c) 2018 人人开源 All rights reserved.
*
* <p>
* https://www.renren.io
*
* <p>
* 版权所有侵权必究
*/
@ -13,9 +13,6 @@ import com.elink.esua.epdc.commons.tools.utils.SpringContextUtils;
import com.elink.esua.epdc.exception.ModuleErrorCode;
import com.github.tobato.fastdfs.domain.StorePath;
import com.github.tobato.fastdfs.service.DefaultGenerateStorageClient;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.utils.SpringContextUtils;
import com.elink.esua.epdc.exception.ModuleErrorCode;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
@ -32,7 +29,7 @@ public class FastDFSCloudStorageService extends AbstractCloudStorageService {
defaultGenerateStorageClient = (DefaultGenerateStorageClient) SpringContextUtils.getBean("defaultGenerateStorageClient");
}
public FastDFSCloudStorageService(CloudStorageConfig config){
public FastDFSCloudStorageService(CloudStorageConfig config) {
this.config = config;
}
@ -45,8 +42,8 @@ public class FastDFSCloudStorageService extends AbstractCloudStorageService {
public String upload(InputStream inputStream, String suffix) {
StorePath storePath;
try {
storePath = defaultGenerateStorageClient.uploadFile("group1", inputStream, inputStream.available(), suffix);
}catch (Exception ex){
storePath = defaultGenerateStorageClient.uploadFile("epdc-pic", inputStream, inputStream.available(), suffix);
} catch (Exception ex) {
throw new RenException(ModuleErrorCode.OSS_UPLOAD_FILE_ERROR, ex, ex.getMessage());
}

2
esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java

@ -129,6 +129,8 @@ public class OssController {
if (build instanceof AliyunCloudStorageService) {
AliyunCloudStorageService aliyunCloudStorageService = (AliyunCloudStorageService) build;
aliyunCloudStorageService.download(fileUrl, response);
} else {
ossService.download(fileUrl, response);
}
}

12
esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/service/OssService.java

@ -16,6 +16,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.UploadDTO;
import com.elink.esua.epdc.entity.OssEntity;
import javax.servlet.http.HttpServletResponse;
import java.util.Map;
/**
@ -37,4 +38,15 @@ public interface OssService extends BaseService<OssEntity> {
* @date 2019/9/19 10:09
*/
Result<UploadDTO> afterUpload(String url, long size);
/**
* 根据url下载图片到浏览器
*
* @param fileUrl
* @param response
* @return void
* @author work@yujt.net.cn
* @date 2019/12/10 17:23
*/
void download(String fileUrl, HttpServletResponse response);
}

50
esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/service/impl/OssServiceImpl.java

@ -12,9 +12,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dao.OssDao;
@ -23,6 +21,11 @@ import com.elink.esua.epdc.entity.OssEntity;
import com.elink.esua.epdc.service.OssService;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
import java.util.Date;
import java.util.Map;
@ -53,4 +56,45 @@ public class OssServiceImpl extends BaseServiceImpl<OssDao, OssEntity> implement
return new Result<UploadDTO>().ok(dto);
}
@Override
public void download(String fileUrl, HttpServletResponse response) {
URL url;
try {
url = new URL(fileUrl);
DataInputStream dataInputStream = new DataInputStream(url.openStream());
if (null != dataInputStream) {
String filename = fileUrl.substring(fileUrl.lastIndexOf("/") + 1);
// 设定输出文件头
response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode(filename, "UTF-8"));
response.setCharacterEncoding("UTF-8");
response.setHeader("Pragma", "No-Cache");
response.setHeader("Cache-Control", "No-Cache");
response.setDateHeader("Expires", 0);
response.setContentType("application/msexcel; charset=UTF-8");
byte[] buf = new byte[1024];
int L;
OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
while ((L = dataInputStream.read(buf)) != NumConstant.ONE_NEG) {
toClient.write(buf, NumConstant.ZERO, L);
}
dataInputStream.close();
toClient.flush();
toClient.close();
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}

2
esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/resources/application.yml

@ -45,7 +45,7 @@ fdfs:
so-timeout: 600000
connect-timeout: 6000
tracker-list: #TrackerList参数,支持多个
- 192.168.10.10:22122
- 10.5.34.165:22122
management:
endpoints:

Loading…
Cancel
Save