AccountingController.java 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package com.imed.costaccount.web;
  2. import com.imed.costaccount.common.util.Result;
  3. import com.imed.costaccount.model.Accounting;
  4. import com.imed.costaccount.model.User;
  5. import com.imed.costaccount.model.dto.AccountingEditDTO;
  6. import com.imed.costaccount.model.dto.AccountingSaveDTO;
  7. import com.imed.costaccount.model.vo.AccountVO;
  8. import com.imed.costaccount.model.vo.SelectAccountingVO;
  9. import com.imed.costaccount.service.AccountingService;
  10. import com.imed.costaccount.utils.PageUtils;
  11. import io.swagger.annotations.Api;
  12. import io.swagger.annotations.ApiImplicitParam;
  13. import io.swagger.annotations.ApiOperation;
  14. import org.apache.shiro.SecurityUtils;
  15. import org.springframework.web.bind.annotation.*;
  16. import javax.validation.Valid;
  17. import java.util.Arrays;
  18. import java.util.List;
  19. /**
  20. * 会计科目管理表
  21. *
  22. * @author huangrui
  23. * @date 2021-07-28 13:52:24
  24. */
  25. @Api(tags = "会计科目")
  26. @RestController
  27. @RequestMapping("/costAccount/accounting")
  28. public class AccountingController {
  29. private final AccountingService accountingService;
  30. public AccountingController(AccountingService accountingService) {
  31. this.accountingService = accountingService;
  32. }
  33. @ApiOperation("获取会计科目列表按收入支出类型")
  34. @GetMapping("/list")
  35. @ApiImplicitParam(name = "accountType",value = "会计科目类型1.收入,2.支出")
  36. public Result list(@RequestParam Integer accountType,Integer shareParamId){
  37. User user = (User) SecurityUtils.getSubject().getPrincipal();
  38. List<AccountVO> list = accountingService.getListByAccountType(accountType, user,shareParamId);
  39. PageUtils pageUtils = new PageUtils(list, 0, 0, 0);
  40. return Result.ok(pageUtils);
  41. }
  42. @ApiOperation("保存会计科目")
  43. @PostMapping("/save")
  44. public Result save(@RequestBody @Valid AccountingSaveDTO accountingSaveDTO){
  45. User user = (User) SecurityUtils.getSubject().getPrincipal();
  46. accountingService.saveAccounting(accountingSaveDTO,user);
  47. return Result.ok();
  48. }
  49. @ApiOperation("选择会计科目列表")
  50. @GetMapping("/selectAccounting")
  51. public Result selectAccounting(){
  52. User user = (User) SecurityUtils.getSubject().getPrincipal();
  53. List<SelectAccountingVO> list = accountingService.selectAccounting(user);
  54. return Result.ok(list);
  55. }
  56. /**
  57. * 修改
  58. */
  59. @ApiOperation("编辑")
  60. @PostMapping("/edit")
  61. public Result update(@RequestBody @Valid AccountingEditDTO accountingEditDTO){
  62. User user = (User) SecurityUtils.getSubject().getPrincipal();
  63. accountingService.updateAccount(accountingEditDTO,user);
  64. return Result.ok();
  65. }
  66. @ApiOperation("删除")
  67. @PostMapping("/delete")
  68. public Result delete(@RequestParam Integer id){
  69. User user = (User) SecurityUtils.getSubject().getPrincipal();
  70. accountingService.deleteAccount(id,user);
  71. return Result.ok();
  72. }
  73. }