CostAccountShareController.java 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. package com.imed.costaccount.web;
  2. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  3. import com.imed.costaccount.common.util.PageUtils;
  4. import com.imed.costaccount.common.util.Result;
  5. import com.imed.costaccount.common.util.UserContext;
  6. import com.imed.costaccount.model.CostAccountShare;
  7. import com.imed.costaccount.model.Responsibility;
  8. import com.imed.costaccount.model.User;
  9. import com.imed.costaccount.model.dto.AccountShareCopyDto;
  10. import com.imed.costaccount.model.dto.CostAccountShareEditDto;
  11. import com.imed.costaccount.model.dto.CostAccountShareSaveDto;
  12. import com.imed.costaccount.model.dto.ShareParamEditDto;
  13. import com.imed.costaccount.model.vo.CostShareParamStatusVO;
  14. import com.imed.costaccount.model.vo.ShareParamProportionVO;
  15. import com.imed.costaccount.service.CostAccountShareService;
  16. import io.swagger.annotations.Api;
  17. import io.swagger.annotations.ApiOperation;
  18. import org.apache.shiro.SecurityUtils;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.web.bind.annotation.*;
  21. import javax.validation.Valid;
  22. import java.util.Arrays;
  23. import java.util.List;
  24. /**
  25. * 责任中心成本对照表
  26. *
  27. * @author KCYG
  28. * @date 2021-07-28 18:34:52
  29. */
  30. @RestController
  31. @RequestMapping("/costAccount/costaccountshare")
  32. @Api(tags = "成本分摊参数对应相关操作")
  33. public class CostAccountShareController {
  34. @Autowired
  35. private CostAccountShareService costAccountShareService;
  36. /**
  37. * 分页查询列表
  38. */
  39. @GetMapping("/list")
  40. @ApiOperation("分页获取责任中心成本数据")
  41. public Result list(@RequestParam(defaultValue = "1", value = "current") Integer current,
  42. @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
  43. @RequestParam(value = "name", required = false) String name){
  44. User user = (User) SecurityUtils.getSubject().getPrincipal();
  45. Long hospId = user.getHospId();
  46. PageUtils pageUtils = costAccountShareService.queryList(current,pageSize,name,hospId);
  47. return Result.ok(pageUtils);
  48. }
  49. /**
  50. * 获取相关的责任中心成本对照表数据
  51. */
  52. @GetMapping("/getCostAccountShare")
  53. @ApiOperation("根据成本分摊参数对应表的Id获取")
  54. public Result getCostAccountShare(Integer id){
  55. CostAccountShare costAccountShare = costAccountShareService.getById(id);
  56. return Result.ok(costAccountShare);
  57. }
  58. /**
  59. * 保存
  60. */
  61. @PostMapping("/save")
  62. @ApiOperation("保存成本分摊参数对应数据")
  63. public Result save(@RequestBody @Valid CostAccountShareSaveDto costAccountShareSaveDto){
  64. costAccountShareService.addCostAccountShare(costAccountShareSaveDto);
  65. return Result.ok();
  66. }
  67. /**
  68. * 修改
  69. */
  70. @PostMapping("/update")
  71. @ApiOperation("修改成本分摊参数对应数据")
  72. public Result update(@RequestBody @Valid CostAccountShareEditDto costAccountShareEditDto){
  73. costAccountShareService.updateByCostAccountShare(costAccountShareEditDto);
  74. return Result.ok();
  75. }
  76. /**
  77. * 显示会计科目里面
  78. */
  79. /**
  80. * 在全部分摊参数里面显示当前责任中心已经存在的分摊参数
  81. */
  82. @GetMapping("/getAllShareParamStatusById")
  83. @ApiOperation("在全部分摊参数里面显示当前责任中心已经存在的分摊参数的状态")
  84. public Result getAllShareParamStatusById(@RequestParam(defaultValue = "1", value = "current") Integer current,
  85. @RequestParam(value = "pageSize", defaultValue = "2") Integer pageSize,
  86. Integer id){
  87. User user = (User) SecurityUtils.getSubject().getPrincipal();
  88. Long hospId = user.getHospId();
  89. List<CostShareParamStatusVO> costShareParamStatusVOList= costAccountShareService.getAllShareParamStatusById(id,hospId);
  90. Page<CostShareParamStatusVO> page = new Page<>(current, pageSize);
  91. page.setRecords(costShareParamStatusVOList);
  92. PageUtils pageUtils = new PageUtils(page);
  93. pageUtils.setList(page.getRecords());
  94. return Result.ok(pageUtils);
  95. }
  96. /**
  97. * 获取责任中心成本对应的分摊参数数据
  98. */
  99. @GetMapping("/getShareParamById")
  100. @ApiOperation("获取指定责任中心成本的分摊参数集合")
  101. public Result getShareParamById(Integer id){
  102. User user = (User) SecurityUtils.getSubject().getPrincipal();
  103. Long hospId = user.getHospId();
  104. List<ShareParamProportionVO> shareParamProportionVOList = costAccountShareService.selectShareParamById(id,hospId);
  105. return Result.ok(shareParamProportionVOList);
  106. }
  107. /**
  108. * 进行分摊参数设置
  109. */
  110. @PostMapping("/updateShareParam")
  111. @ApiOperation("添加分摊参数设置")
  112. public Result updateShareParam(@RequestBody @Valid ShareParamEditDto shareParamEditDto){
  113. costAccountShareService.updateShareParam(shareParamEditDto);
  114. return Result.ok();
  115. }
  116. /**
  117. * 删除
  118. */
  119. @PostMapping("/delete")
  120. @ApiOperation("删除责任中心成本数据")
  121. public Result delete(@RequestBody Long[] ids){
  122. costAccountShareService.removeByIds(Arrays.asList(ids));
  123. return Result.ok();
  124. }
  125. /**
  126. * 成本分摊参数设置对应复制
  127. */
  128. @PostMapping("/copyAccountShareData")
  129. @ApiOperation("复制成本分摊参数设置功能")
  130. public Result copyAccountShareData(@RequestBody @Valid AccountShareCopyDto accountShareCopyDto){
  131. Long hospId = UserContext.getHospId();
  132. costAccountShareService.copyAccountShareData(accountShareCopyDto,hospId);
  133. return Result.ok();
  134. }
  135. /**
  136. * 获取指定类型的责任中心集合 分开计算还是合并计算
  137. * @param accountShareId 分摊参数设置的Id
  138. */
  139. @GetMapping("/getResponsibilityCalType")
  140. @ApiOperation("获取指定类型的责任中心集合")
  141. public Result getResponsibilityCalType(Long accountShareId){
  142. Long hospId = UserContext.getHospId();
  143. List<Responsibility> responsibilityList= costAccountShareService.getResponsibilityCalType(accountShareId,hospId);
  144. return Result.ok(responsibilityList);
  145. }
  146. }