CostProjectDocumentController.java 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. package com.hotent.project.controller;
  2. import com.aliyun.tea.utils.StringUtils;
  3. import com.hotent.base.annotation.ApiGroup;
  4. import com.hotent.base.constants.ApiGroupConsts;
  5. import com.hotent.baseInfo.model.CostDocumentTemplateFile;
  6. import com.hotent.common.CrudService;
  7. import com.hotent.config.EipConfig;
  8. import com.hotent.constant.BaseConstant;
  9. import com.hotent.project.manager.CostProjectDocumentFileManager;
  10. import com.hotent.project.model.CostProjectApproval;
  11. import com.hotent.project.model.CostProjectDocumentFile;
  12. import com.hotent.project.req.CostProjectApprovalPageReq;
  13. import com.hotent.project.req.CostProjectBasePageReq;
  14. import com.hotent.project.req.CostProjectDocumentPageReq;
  15. import com.hotent.project.req.CostProjectDocumentReq;
  16. import com.hotent.project.resp.CostProjectDocumentResp;
  17. import com.hotent.req.IdReq;
  18. import com.hotent.req.PageReq;
  19. import com.hotent.resp.PageResp;
  20. import com.hotent.util.FileUploadUtil;
  21. import com.hotent.util.wordexcelutils.DocumentProcessor;
  22. import io.swagger.annotations.Api;
  23. import org.springframework.beans.factory.annotation.Autowired;
  24. import org.springframework.web.bind.annotation.*;
  25. import com.hotent.base.model.CommonResult;
  26. import com.hotent.base.util.StringUtil;
  27. import io.swagger.annotations.ApiOperation;
  28. import io.swagger.annotations.ApiParam;
  29. import com.hotent.base.controller.BaseController;
  30. import com.hotent.project.model.CostProjectDocument;
  31. import com.hotent.project.manager.CostProjectDocumentManager;
  32. import java.util.LinkedHashMap;
  33. import java.util.List;
  34. import java.util.Map;
  35. import java.util.stream.Collectors;
  36. /**
  37. * 监审项目文书表 前端控制器
  38. *
  39. * @company 山西清众科技股份有限公司
  40. * @author 超级管理员
  41. * @since 2025-09-26
  42. */
  43. @RestController
  44. @RequestMapping("/api/costProjectDocument/v1/")
  45. @Api(tags = "监审项目文书")
  46. @ApiGroup(group = {ApiGroupConsts.GROUP_COST})
  47. public class CostProjectDocumentController extends BaseController<CostProjectDocumentManager, CostProjectDocument> {
  48. // 创建通用服务实例
  49. private final CrudService crudService = new CrudService();
  50. @Autowired
  51. private CostProjectDocumentManager costProjectDocumentManager;
  52. @Autowired
  53. private CostProjectDocumentFileManager costProjectDocumentFileManager;
  54. /**
  55. * 根据id获取监审项目文书表数据详情
  56. * @param id
  57. * @return
  58. * @throws Exception
  59. * ModelAndView
  60. */
  61. @GetMapping(value="/getDetail")
  62. @ApiOperation(value="根据id获取监审项目文书表数据详情",httpMethod = "GET",notes = "根据id获取监审项目文书表数据详情")
  63. public CommonResult<CostProjectDocument> getDetail(@ApiParam(name="id",value="业务对象主键", required = true)@RequestParam(required=true) String id) throws Exception{
  64. return CommonResult.<CostProjectDocument>ok().value(baseService.getDetail(id));
  65. }
  66. //分页查询
  67. @PostMapping(value="/pageList")
  68. @ApiOperation(value="分页查询pageList",httpMethod = "POST",notes = "分页查询pageList")
  69. public CommonResult<PageResp<CostProjectDocument>> pageList(@RequestBody CostProjectDocumentPageReq req) {
  70. return CommonResult.<PageResp<CostProjectDocument>>ok().value(crudService.pageQuery(req, baseService::pageList));
  71. }
  72. //新增
  73. @PostMapping(value="/save")
  74. @ApiOperation(value="新增save",httpMethod = "POST",notes = "新增save")
  75. public CommonResult<String> save(@RequestBody CostProjectDocumentReq req) throws Exception {
  76. costProjectDocumentManager.create(req);
  77. return CommonResult.<String>ok().message("保存成功");
  78. }
  79. //修改
  80. @PutMapping(value="/update")
  81. @ApiOperation(value="修改update",httpMethod = "Put",notes = "修改update")
  82. public CommonResult<String> update(@RequestBody CostProjectDocumentReq req) {
  83. costProjectDocumentManager.updateProjectDocument(req);
  84. return CommonResult.<String>ok().message("修改成功");
  85. }
  86. @PostMapping(value="/deleteByIds")
  87. @ApiOperation(value="根据id删除数据",httpMethod = "POST",notes = "根据id删除数据")
  88. public CommonResult<String> cleanByIds(@ApiParam(name="ids", value="id集合") @RequestBody IdReq req){
  89. costProjectDocumentManager.deleteByIds(req.getIds());
  90. return CommonResult.<String>ok().message("删除文书成功");
  91. }
  92. @GetMapping(value="/getByProjectId")
  93. @ApiOperation(value="根据项目id获取项目文书内容",httpMethod = "GET",notes = "根据项目id获取项目文书内容")
  94. public CommonResult<CostProjectDocumentResp> getByProjectId(@ApiParam(name="projectId", value="项目id") @RequestParam String projectId){
  95. return CommonResult.<CostProjectDocumentResp>ok().value(costProjectDocumentManager.getByProjectId(projectId));
  96. }
  97. /**
  98. * 根据id生成文书并且下载
  99. * @param id
  100. * @return
  101. * @throws Exception
  102. * ModelAndView
  103. */
  104. @GetMapping(value="/downDocument")
  105. @ApiOperation(value="根据id生成文书并且下载",httpMethod = "GET",notes = "根据id生成文书并且下载")
  106. public CommonResult<String> downDocument(@ApiParam(name="id",value="业务对象主键", required = true)@RequestParam(required=true) String id) throws Exception{
  107. return CommonResult.<String>ok().value(costProjectDocumentManager.createDocument(id));
  108. }
  109. //上传扫描
  110. @PostMapping(value="/updateScan")
  111. @ApiOperation(value="",httpMethod = "POST",notes = "修改update")
  112. public CommonResult<String> updateScan(@RequestBody CostProjectDocument req) {
  113. CostProjectDocument entity = costProjectDocumentManager.get(req.getId());
  114. entity.setScanDocumentUrl(req.getScanDocumentUrl());
  115. costProjectDocumentManager.updateById(entity);
  116. return CommonResult.<String>ok().message("修改成功");
  117. }
  118. }