HybzController.java 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. package com.ruoyi.zzb.hybz.controller;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.ruoyi.common.core.controller.BaseController;
  4. import com.ruoyi.common.core.domain.AjaxResult;
  5. import com.ruoyi.common.core.domain.entity.SysUser;
  6. import com.ruoyi.common.utils.SecurityUtils;
  7. import com.ruoyi.zzb.hybz.domain.HybzApplyInfo;
  8. import com.ruoyi.zzb.hybz.service.HybzService;
  9. import lombok.extern.slf4j.Slf4j;
  10. import org.apache.commons.lang3.StringUtils;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.web.bind.annotation.*;
  13. import java.util.Arrays;
  14. @Slf4j
  15. @RestController
  16. @RequestMapping("/api/hybz")
  17. public class HybzController extends BaseController {
  18. @Autowired
  19. private HybzService hybzService;
  20. /**
  21. * 保存一条【会员保障】申请信息记录,同时保存每一个上传文件项的需要提交的多个附件信息记录以及保存对应的文件到服务器
  22. * @param
  23. * @return
  24. */
  25. /*@PostMapping("/saveOrUpdate")
  26. public JSONObject saveOrUpdate(HybzApplyInfo hybzApplyInfo, HybzFileSetDTO hybzFileSetDTO){
  27. try {
  28. // 文件上传路径
  29. String fileStoragePath = RuoYiConfig.getUploadPath();
  30. SysUser user = SecurityUtils.getLoginUser().getUser();
  31. if(null != user){
  32. String applyFormId;
  33. if(StringUtils.isBlank(hybzApplyInfo.getApplyFormId())){ // 申请单ID为空代表是 新增操作
  34. // 生成申请单ID
  35. SnowflakeIdGenerator generator = new SnowflakeIdGenerator(1);
  36. applyFormId = String.valueOf(generator.nextId());
  37. } else { // 修改操作
  38. applyFormId = hybzApplyInfo.getApplyFormId();
  39. }
  40. List<BaseFileInfo> baseFileInfoList = hybzService.processUploadAndBuildParams(hybzFileSetDTO, "hybz", "会员保障", applyFormId, fileStoragePath);
  41. // 等上传的文件写盘成功,再向数据库写入对应的申请信息和与之关联的文件信息
  42. hybzService.saveOrUpdateHybzApplyInfoAndBaseFileInfos(hybzApplyInfo, user, applyFormId, baseFileInfoList);
  43. return RspResult.success(true);
  44. }
  45. return RspResult.error("用户信息为空,【会员保障】申请信息无法保存/修改");
  46. } catch (Exception e){
  47. log.error("【会员保障】申请信息保存/修改失败", e);
  48. return RspResult.error("【会员保障】申请信息保存/修改失败 - " + e.getMessage());
  49. }
  50. }*/
  51. @PostMapping("/approve")
  52. public AjaxResult approve(@RequestBody JSONObject reqBody){
  53. String applyFormId = reqBody.getString("applyFormId");
  54. String optFlag = reqBody.getString("optFlag");
  55. String approveDesc = reqBody.getString("approveDesc");
  56. if(StringUtils.isBlank(applyFormId) || StringUtils.isBlank(optFlag) || ("2".equals(optFlag) && StringUtils.isBlank(approveDesc))){
  57. log.error("审批参数为空");
  58. return error("审批参数为空");
  59. }
  60. SysUser user = SecurityUtils.getLoginUser().getUser();
  61. try {
  62. if(null != user){
  63. if(hybzService.approveAndSaveApproveInfo(applyFormId, optFlag, approveDesc, user)){
  64. return success(true);
  65. }
  66. }
  67. return error("用户信息为空,【会员保障】申请信息审批失败");
  68. } catch (Exception e){
  69. log.error("【会员保障】申请信息审批失败", e);
  70. return error("【会员保障】申请信息审批失败 - " + e.getMessage());
  71. }
  72. }
  73. /**
  74. * 根据 审批状态码 分页查询【会员保障】申请信息列表
  75. * @param reqBody
  76. * @return
  77. */
  78. @PostMapping("/query")
  79. public AjaxResult query(@RequestBody JSONObject reqBody){
  80. // 审批状态码 ---0:审批中,1:审批通过,2:审批驳回
  81. Integer approveStatus = reqBody.getInteger("approveStatus");
  82. String type = reqBody.getString("type");
  83. String optFlag = reqBody.getString("optFlag");
  84. if(approveStatus == null || StringUtils.isBlank(type)){
  85. log.error("查询参数为空");
  86. return error("查询参数为空");
  87. }
  88. try {
  89. return success(hybzService.getDataByPage(approveStatus, type, optFlag, reqBody));
  90. } catch (Exception e){
  91. log.error("根据条件分页查询【会员保障】申请信息发生异常", e);
  92. return error("根据条件分页查询【会员保障】申请信息发生异常 - " + e.getMessage());
  93. }
  94. }
  95. /**
  96. * 保存/修改一条【会员保障】申请信息记录
  97. * @param
  98. * @return
  99. */
  100. @PostMapping("/saveOrUpdate")
  101. public AjaxResult saveOrUpdate(@RequestBody HybzApplyInfo hybzApplyInfo){
  102. try {
  103. SysUser user = SecurityUtils.getLoginUser().getUser();
  104. if(null != user){
  105. String applyFormId = hybzApplyInfo.getApplyFormId();
  106. if(StringUtils.isBlank(applyFormId)){
  107. return error("applyFormId参数为空");
  108. }
  109. boolean optFlag = hybzService.saveOrUpdateHybzApplyInfo(hybzApplyInfo, user);
  110. return optFlag? success(true) : error("【会员保障】申请信息保存/修改失败");
  111. }
  112. return error("用户信息为空,【会员保障】申请信息无法保存/修改");
  113. } catch (Exception e){
  114. log.error("【会员保障】申请信息保存/修改失败", e);
  115. return error("【会员保障】申请信息保存/修改失败 - " + e.getMessage());
  116. }
  117. }
  118. /**
  119. * 根据applyFormIds(申请单ID集合)删除一/多条申请单信息,同时删除与对应申请单ID关联的文件信息记录
  120. * @param reqBody
  121. * @return
  122. */
  123. @PostMapping("/delete")
  124. public AjaxResult delete(@RequestBody JSONObject reqBody){
  125. String applyFormIds = reqBody.getString("applyFormIds");
  126. if(StringUtils.isBlank(applyFormIds) || Arrays.asList(applyFormIds.split(",")).size() == 0){
  127. return error("applyFormIds参数为空");
  128. }
  129. try {
  130. return hybzService.delDataByApplyFormIds(Arrays.asList(applyFormIds.split(",")))? success(true) : error("【会员保障】申请信息删除失败 - 删除失败的申请单ID:[" + applyFormIds + "]");
  131. } catch (Exception e){
  132. log.error("【会员保障】申请信息删除失败", e);
  133. return error("【会员保障】申请信息删除失败 - " + e.getMessage());
  134. }
  135. }
  136. }