invAccountExcelController.java 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. package com.ydtech.modules.inv.controller;
  2. import com.ydtech.constants.enums.inv.InvPayMethodEnum;
  3. import com.ydtech.core.page.HttpResult;
  4. import com.ydtech.exception.SystemException;
  5. import com.ydtech.modules.base.controller.BaseController;
  6. import com.ydtech.modules.inv.model.InvAccount;
  7. import com.ydtech.modules.inv.model.InvAccountExcel;
  8. import com.ydtech.modules.inv.service.InvAccountExcelService;
  9. import com.ydtech.modules.inv.service.InvAccountService;
  10. import io.swagger.annotations.ApiOperation;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.web.bind.annotation.*;
  13. import java.util.Date;
  14. import java.util.List;
  15. /**
  16. * @author jianlong
  17. * @date 2024-01-10 09:49
  18. */
  19. @RequestMapping("accountExcel")
  20. @RestController
  21. public class invAccountExcelController {
  22. @Autowired
  23. private InvAccountExcelService invAccountExcelService;
  24. @Autowired
  25. private InvAccountService invAccountService;
  26. @PostMapping("excel")
  27. @ApiOperation("导出资金申请模板")
  28. public HttpResult excelAccountOperate(@RequestBody List<String> idList) {
  29. return invAccountExcelService.excelAccount(idList);
  30. }
  31. @PostMapping("invert")
  32. @ApiOperation("插入资金模板信息")
  33. public HttpResult invertAccount(@RequestBody InvAccountExcel invAccountExcel) {
  34. BaseController baseController = new BaseController();
  35. Date date = new Date();
  36. invAccountExcel.setCreateBy(baseController.getUserName());
  37. invAccountExcel.setCreateTime(date);
  38. InvAccount byId = invAccountService.getById(invAccountExcel.getOutAccountId());
  39. if (invAccountExcel.getEnterAccountId() != null) {
  40. if (invAccountExcel.getOutAccountId().equals(invAccountExcel.getEnterAccountId())) {
  41. throw new SystemException("无法转账给本公司");
  42. }
  43. }
  44. if (invAccountExcel.getOutFlag().equals("1") && byId.getOuterFlag().equals("1")) {
  45. throw new SystemException("外部账户转出到外部账户无法生成资金模板");
  46. }
  47. if (invAccountExcelService.save(invAccountExcel)) {
  48. return HttpResult.ok("", invAccountExcel.getExcelAccountOperateId());
  49. }
  50. return HttpResult.error("新增失败");
  51. }
  52. @PostMapping("update")
  53. @ApiOperation("修改资金模板信息")
  54. public HttpResult updateAccount(@RequestBody InvAccountExcel invAccountExcel) {
  55. if (invAccountExcel.getExcelAccountOperateId() != null) {
  56. if (invAccountExcel.getTransferFlag().equals("1")) {
  57. BaseController baseController = new BaseController();
  58. invAccountExcel.setUpdateBy(baseController.getUserName());
  59. invAccountExcel.setUpdateTime(new Date());
  60. return HttpResult.ok("", invAccountExcelService.updateById(invAccountExcel));
  61. } else {
  62. return HttpResult.error("已转账无法修改");
  63. }
  64. } else {
  65. return HttpResult.error("id不能为空");
  66. }
  67. }
  68. @ApiOperation("获取资金模板详细信息")
  69. @GetMapping("getAccountExcelById")
  70. public HttpResult<InvAccountExcel> getAccountExcelById(@RequestParam("excelAccountOperateId") String excelAccountOperateId) {
  71. if (excelAccountOperateId != null) {
  72. InvAccountExcel byId = invAccountExcelService.getById(excelAccountOperateId);
  73. StringBuilder a = new StringBuilder();
  74. String[] split = byId.getPayMethod().split(",");
  75. for (String i : split) {
  76. a.append(InvPayMethodEnum.getNameByCode(i)).append(",");
  77. }
  78. byId.setPayMethod(a.toString());
  79. return HttpResult.ok("", byId);
  80. } else {
  81. return HttpResult.error("id不能为空");
  82. }
  83. }
  84. @ApiOperation("获取资金模板列表")
  85. @PostMapping("getAccountExcel")
  86. public HttpResult getAccountExcel(@RequestBody InvAccountExcel invAccountExcel) {
  87. return invAccountExcelService.selectAccountExcel(invAccountExcel);
  88. }
  89. @ApiOperation("删除资金模板")
  90. @DeleteMapping("{excelAccountOperateId}")
  91. public HttpResult deleteAccountExcel(@PathVariable("excelAccountOperateId") String excelAccountOperateId) {
  92. InvAccountExcel invAccountExcel = invAccountExcelService.getById(excelAccountOperateId);
  93. if (excelAccountOperateId != null) {
  94. if (invAccountExcel.getTransferFlag().equals("1")) {
  95. invAccountExcel.setDelFlag("1");
  96. return HttpResult.ok("", invAccountExcelService.updateById(invAccountExcel));
  97. } else {
  98. return HttpResult.error("已转账无法删除");
  99. }
  100. } else {
  101. return HttpResult.error("id不能为空");
  102. }
  103. }
  104. @ApiOperation("修改转账状态")
  105. @GetMapping("updateTransferFlag")
  106. public HttpResult updateTransferFlag(@RequestParam("excelAccountOperateId") String excelAccountOperateId) {
  107. if (excelAccountOperateId == null) {
  108. return HttpResult.error("id不能为空");
  109. }
  110. return invAccountExcelService.updateTransferFlag(excelAccountOperateId);
  111. }
  112. }