package com.stylefeng.guns.modular.system.controller.util;
|
|
import com.stylefeng.guns.config.properties.GunsProperties;
|
import com.stylefeng.guns.core.base.controller.BaseController;
|
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
|
import com.stylefeng.guns.core.exception.GunsException;
|
import com.stylefeng.guns.modular.system.util.ObsUploadUtil;
|
import com.stylefeng.guns.modular.system.util.OssUploadUtil;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestPart;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
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.File;
|
import java.io.IOException;
|
import java.util.HashMap;
|
import java.util.Map;
|
import java.util.UUID;
|
|
/**
|
* 上传文件
|
*/
|
@RestController
|
@RequestMapping("/upload")
|
public class UploadUtil extends BaseController {
|
private final static Logger log = LoggerFactory.getLogger(UploadUtil.class);
|
|
@Autowired
|
private GunsProperties gunsProperties;
|
|
/**
|
* 上传图片(上传到项目的webapp/static/img)
|
*/
|
/* @RequestMapping("/image")
|
public String image(@RequestPart("file") MultipartFile picture) {
|
String pictureName = UUID.randomUUID().toString() + ".jpg";
|
try {
|
// 文件目录路径
|
String fileSavePath = gunsProperties.getFileUploadPath();
|
picture.transferTo(new File(fileSavePath + pictureName));
|
} catch (Exception e) {
|
log.error(e.getMessage(), e);
|
throw new GunsException(BizExceptionEnum.UPLOAD_ERROR);
|
}
|
return pictureName;
|
}*/
|
|
/**
|
* 多图片上传使用
|
* @param request
|
* @return
|
*/
|
@RequestMapping( "/uploadPhoto")
|
@ResponseBody
|
public Map<String, Object> saveimg(HttpServletRequest request) {
|
Map<String, Object> m = new HashMap<>();
|
try {
|
|
String ossUpload = null;
|
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
MultipartFile file = (MultipartFile) multipartRequest.getFile("myfile");
|
if (file.getSize() != 0) {
|
ossUpload = ObsUploadUtil.obsUpload(request, file);
|
// ossUpload = OssUploadUtil.ossUpload(request, file);
|
m.put("imgUrl", ossUpload);
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
return m;
|
}
|
|
@RequestMapping("/image")
|
@ResponseBody
|
public String image(@RequestPart("file") MultipartFile picture, HttpServletRequest request) {
|
try {
|
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
MultipartFile file = (MultipartFile) picture;
|
String name = file.getOriginalFilename();
|
String s = name.substring(name.lastIndexOf(".") + 1).toLowerCase();
|
if(!s.equals("jpg") && !s.equals("png") && !s.equals("jpeg")){
|
return null;
|
}
|
String pictureName = ObsUploadUtil.obsUpload(request, file);
|
// String pictureName = OssUploadUtil.ossUpload(request, file);
|
return pictureName;
|
} catch (IOException e1) {
|
return null;
|
}
|
}
|
|
/**
|
* 上传文件
|
*/
|
@RequestMapping("/file")
|
public String file(@RequestPart("file") MultipartFile picture) {
|
//获取文件名后缀
|
String suffix = picture.getOriginalFilename().substring(picture.getOriginalFilename().lastIndexOf("."));
|
String pictureName = UUID.randomUUID().toString() + suffix;
|
try {
|
// 文件目录路径
|
String fileSavePath = gunsProperties.getFileUploadPath();
|
File file = new File(fileSavePath + pictureName);
|
picture.transferTo(file);
|
} catch (Exception e) {
|
log.error(e.getMessage(), e);
|
throw new GunsException(BizExceptionEnum.UPLOAD_ERROR);
|
}
|
return pictureName;
|
}
|
|
/**
|
* UEditor编辑器上传图片
|
*/
|
@RequestMapping("/imageUp")
|
public String imageUp(@RequestPart("upfile") MultipartFile picture, HttpServletRequest request) {
|
String callback = request.getParameter("callback");
|
String pictureName = UUID.randomUUID().toString() + ".jpg";
|
try {
|
// 上传文件目录
|
//String fileSavePath = gunsProperties.getFileUploadPath();
|
//picture.transferTo(new File(fileSavePath + pictureName));
|
// 文件全路径
|
//pictureName = gunsProperties.getPictureServerAddress() + pictureName;
|
// pictureName = ObsUploadUtil.obsUpload(super.getHttpServletRequest(), picture);
|
|
String name = picture.getOriginalFilename();
|
String s = name.substring(name.lastIndexOf(".") + 1).toLowerCase();
|
if(!s.equals("jpg") && !s.equals("png") && !s.equals("jpeg")){
|
return null;
|
}
|
|
pictureName = ObsUploadUtil.obsUpload(super.getHttpServletRequest(), picture);
|
// pictureName = OssUploadUtil.ossUpload(super.getHttpServletRequest(), picture);
|
|
String result = "{'original': '" + picture.getOriginalFilename() + "', 'state': 'SUCCESS', 'url': '" + pictureName + "'}";
|
if (callback == null) {
|
return result;
|
} else {
|
return "<script>" + callback + "(" + result + ")</script>";
|
}
|
} catch (Exception e) {
|
log.error(e.getMessage(), e);
|
String result = "{'original': '', 'state': '文件上传失败','url': ''}";
|
if (callback == null) {
|
return result;
|
} else {
|
return "<script>" + callback + "(" + result + ")</script>";
|
}
|
}
|
}
|
|
}
|