DgFileController.java 3.23 KB
package com.pashanhoo.file.controller;

import com.pashanhoo.common.Result;
import com.pashanhoo.common.util.fileupload.MinioConfig;
import com.pashanhoo.common.util.fileupload.MinioUtil;
import com.pashanhoo.file.entity.vo.AddDgFileRequest;
import com.pashanhoo.file.entity.vo.DgCatalogWithFileVO;
import com.pashanhoo.file.entity.vo.DgFileListVO;
import com.pashanhoo.file.entity.vo.UpdateDgFileRequest;
import com.pashanhoo.file.service.DgFileService;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

/**
 * <p>
 * 档案文件信息 前端控制器
 * </p>
 *
 * @author
 * @since 2021-11-05
 */
@RestController
@RequestMapping("/system/dgFile/")
@Api(tags = "档案文件信息接口")
public class DgFileController {
    @Autowired
    private DgFileService dgfileService;

    @PostMapping("insertDgFile")
    @ApiOperation("新增档案文件信息")
    public Result insertDgFile(@RequestBody List<AddDgFileRequest> request){
        if(dgfileService.insertDgFile(request)){
            return Result.ok();
        }
        return Result.error("新增失败");
    }

    @DeleteMapping("deleteDgFileByIds")
    @ApiOperation(value = "批量删除档案文件信息和附件")
    public Result deleteDgFileByIds(@ApiParam("档案文件信息ID列表") @RequestParam(value = "bsmFileList") List<String> bsmFileList) {
        try {
            if(dgfileService.delete(bsmFileList)) {
                return Result.ok("删除成功");
            }
        } catch (Exception e) {
            return Result.exception(e.getMessage());
        }
        return Result.error("删除失败");
    }

    @PutMapping("updateDgFile")
    @ApiOperation("修改档案文件信息")
    public Result updateDgFile(@RequestBody UpdateDgFileRequest request){
        if(dgfileService.updateDgFile(request)) {
            return Result.ok("修改成功");
        }
        return Result.error("修改失败");
    }

    @GetMapping("getDgFileDetailById")
    @ApiOperation(value = "获取附件列表")
    public Result<List<DgCatalogWithFileVO>> getDgFileDetailById(@ApiParam("档案标识码") @RequestParam String bsmArchive){
        return Result.ok(dgfileService.getFileList(bsmArchive));
    }

    @PutMapping("updateFileSort")
    @ApiOperation("附件排序")
    public Result updateFileSort(@RequestBody List<UpdateDgFileRequest> requests){
        if(dgfileService.updateFileSort(requests)) {
            return Result.ok("修改成功");
        }
        return Result.error("修改失败");
    }

    @RequestMapping(value = "/upload", method = RequestMethod.POST)
    @ApiOperation("上传材料附件")
    public Result upload(@RequestPart("file") MultipartFile file, AddDgFileRequest fileRequest) {
        try {
            return Result.ok(dgfileService.upload(file,fileRequest));
        } catch (Exception e) {
            return Result.exception(e.getMessage());
        }
    }
}