Commit 8333afac by songyinghui

Merge remote-tracking branch 'origin/xgh_内容中台' into xgh_内容中台

parents 2a35bff3 fc847371
package com.gic.haoban.manage.web.controller;
import java.io.File;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import com.gic.commons.util.GlobalInfo;
import com.gic.commons.util.GlobalVar;
import com.gic.enterprise.api.dto.EnterpriseDTO;
import com.gic.enterprise.api.service.EnterpriseService;
import com.gic.haoban.common.anno.IgnoreLogin;
import com.gic.haoban.common.utils.HaobanResponse;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.thirdparty.api.dto.PicUploadResDTO;
import com.gic.thirdparty.api.service.QQCloudPicService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import java.io.InputStream;
import java.util.*;
import com.gic.thirdparty.cloudfile.CloudFileUtil;
import com.gic.thirdparty.cloudfile.enums.CloudFileBusinessOptEnum;
import com.gic.thirdparty.cloudfile.enums.CloudFileTypeEnum;
import com.gic.thirdparty.cloudfile.pojo.CloudFileInfo;
@RestController
public class UploadController extends WebBaseController {
@Autowired
private QQCloudPicService qqCloudPicService;
@Autowired
private EnterpriseService enterpriseService ;
@RequestMapping("upload-img")
......@@ -56,5 +72,52 @@ public class UploadController extends WebBaseController {
}
return resultResponse(HaoBanErrCode.ERR_1, picList);
}
// fileType image:图片 video:视频 file:文件 audio音频 other:其它
@RequestMapping("upload-img-fee")
@IgnoreLogin
public HaobanResponse imgUploadFee(HttpServletRequest request , String fileType , String enterpriseId) throws Exception {
MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
Iterator<String> iter = multiRequest.getFileNames();
java.util.List<Map<String, Object>> picList = new ArrayList<>();
while (iter.hasNext()) {
String fileName = iter.next();
List<MultipartFile> list = multiRequest.getMultiFileMap().get(fileName);
Map<String, Object> map = null;
for (int i = 0; i < list.size(); i++) {
map = new HashMap<>();
MultipartFile mf = list.get(i);
CloudFileTypeEnum type = getType(fileType) ;
EnterpriseDTO enterprise = this.enterpriseService.getEnterpriseById(enterpriseId) ;
File file = File.createTempFile("tmp", null);
mf.transferTo(file);
String factoryCode = "jhdm";
if(null != enterprise) {
factoryCode= enterprise.getFactoryCode() ;
}
CloudFileInfo uploadInfo = CloudFileUtil.uploadTempFile(file, fileName, type, factoryCode , CloudFileBusinessOptEnum.COMMON, 7*24L) ;
if (uploadInfo != null) {
map.put("qcloudImageUrl", uploadInfo.getOrgFileUrl());
}
picList.add(map);
file.deleteOnExit();
}
}
return resultResponse(HaoBanErrCode.ERR_1, picList);
}
private CloudFileTypeEnum getType(String fileType) {
if(StringUtils.isBlank(fileType)) {
return CloudFileTypeEnum.IMAGE ;
}
CloudFileTypeEnum[] arr = CloudFileTypeEnum.values() ;
for(int i=0;i<arr.length;i++) {
if(arr[i].getType().equals(fileType)) {
return arr[i];
}
}
return CloudFileTypeEnum.IMAGE ;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment