mirror of https://github.com/elunez/eladmin
85 lines
2.8 KiB
Java
85 lines
2.8 KiB
Java
package me.zhengjie.rest;
|
|
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import me.zhengjie.aop.log.Log;
|
|
import me.zhengjie.domain.Picture;
|
|
import me.zhengjie.service.PictureService;
|
|
import me.zhengjie.service.dto.PictureQueryCriteria;
|
|
import me.zhengjie.utils.SecurityUtils;
|
|
import org.springframework.data.domain.Pageable;
|
|
import org.springframework.http.HttpStatus;
|
|
import org.springframework.http.ResponseEntity;
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.io.IOException;
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* @author 郑杰
|
|
* @date 2018/09/20 14:13:32
|
|
*/
|
|
@RestController
|
|
@RequestMapping("/api/pictures")
|
|
@Api(tags = "工具:免费图床管理")
|
|
public class PictureController {
|
|
|
|
private final PictureService pictureService;
|
|
|
|
public PictureController(PictureService pictureService) {
|
|
this.pictureService = pictureService;
|
|
}
|
|
|
|
@Log("查询图片")
|
|
@PreAuthorize("@el.check('pictures:list')")
|
|
@GetMapping
|
|
@ApiOperation("查询图片")
|
|
public ResponseEntity getRoles(PictureQueryCriteria criteria, Pageable pageable){
|
|
return new ResponseEntity<>(pictureService.queryAll(criteria,pageable),HttpStatus.OK);
|
|
}
|
|
|
|
@Log("导出数据")
|
|
@ApiOperation("导出数据")
|
|
@GetMapping(value = "/download")
|
|
@PreAuthorize("@el.check('pictures:list')")
|
|
public void download(HttpServletResponse response, PictureQueryCriteria criteria) throws IOException {
|
|
pictureService.download(pictureService.queryAll(criteria), response);
|
|
}
|
|
|
|
@Log("上传图片")
|
|
@PreAuthorize("@el.check('pictures:add')")
|
|
@PostMapping
|
|
@ApiOperation("上传图片")
|
|
public ResponseEntity upload(@RequestParam MultipartFile file){
|
|
String userName = SecurityUtils.getUsername();
|
|
Picture picture = pictureService.upload(file,userName);
|
|
Map<String,Object> map = new HashMap<>(3);
|
|
map.put("errno",0);
|
|
map.put("id",picture.getId());
|
|
map.put("data",new String[]{picture.getUrl()});
|
|
return new ResponseEntity<>(map,HttpStatus.OK);
|
|
}
|
|
|
|
@Log("删除图片")
|
|
@ApiOperation("删除图片")
|
|
@PreAuthorize("@el.check('pictures:del')")
|
|
@DeleteMapping(value = "/{id}")
|
|
public ResponseEntity delete(@PathVariable Long id) {
|
|
pictureService.delete(pictureService.findById(id));
|
|
return new ResponseEntity(HttpStatus.OK);
|
|
}
|
|
|
|
@Log("多选删除图片")
|
|
@ApiOperation("多选删除图片")
|
|
@PreAuthorize("@el.check('pictures:del')")
|
|
@DeleteMapping
|
|
public ResponseEntity deleteAll(@RequestBody Long[] ids) {
|
|
pictureService.deleteAll(ids);
|
|
return new ResponseEntity(HttpStatus.OK);
|
|
}
|
|
}
|