package com.yuanchu.mom.controller;
import com.alibaba.excel.EasyExcel;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.annotation.CustomClazzName;
import com.yuanchu.mom.annotation.ValueAuth;
import com.yuanchu.mom.annotation.ValueClassify;
import com.yuanchu.mom.excel.ManageDocumentListListener;
import com.yuanchu.mom.mapper.ManageDocumentListMapper;
import com.yuanchu.mom.pojo.ManageDocumentList;
import com.yuanchu.mom.pojo.Warehouse;
import com.yuanchu.mom.service.ManageDocumentListService;
import com.yuanchu.mom.utils.JackSonUtil;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
*
* 文件清单
前端控制器
*
*
* @author
* @since 2024-11-08 11:08:11
*/
@RestController
@RequestMapping("/manageDocumentList")
public class ManageDocumentListController {
@Resource
private ManageDocumentListService manageDocumentListService;
@ValueClassify(value = "管理体系文件的控制")
@ApiOperation(value = "分页查询文件清单")
@PostMapping("/pageManageDocumentList")
public Result pageManageDocumentList(@RequestBody Map data) throws Exception {
Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
ManageDocumentList manageDocumentList = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), ManageDocumentList.class);
return Result.success(manageDocumentListService.pageManageDocumentList(page, manageDocumentList));
}
@ValueClassify(value = "管理体系文件的控制")
@ApiOperation(value = "编辑文件清单")
@PostMapping("/doManageDocumentList")
public Result doManageDocumentList(@RequestBody ManageDocumentList manageDocumentList) {
return Result.success(manageDocumentListService.updateById(manageDocumentList));
}
@ValueClassify(value = "管理体系文件的控制")
@ApiOperation(value = "编辑文件清单")
@PostMapping("/delManageDocumentList")
public Result delManageDocumentList(Integer id) {
return Result.success(manageDocumentListService.removeById(id));
}
@ValueClassify(value = "管理体系文件的控制")
@ApiOperation(value = "上传附件-文件清单")
@PostMapping("/uploadFileManageDocumentList")
public Result uploadFileManageDocumentList(Integer id, MultipartFile file) {
return Result.success(manageDocumentListService.uploadFile(id,file));
}
@ValueClassify(value = "管理体系文件的控制")
@ApiOperation(value = "导入文件清单列表")
@PostMapping("/exportManageDocumentList")
public Result exportManageDocumentList(MultipartFile file) {
try {
EasyExcel.read(file.getInputStream(), ManageDocumentList.class, new ManageDocumentListListener(manageDocumentListService)).sheet().doRead();
} catch (IOException e) {
e.printStackTrace();
}
return Result.success();
}
}