MemberInfoController.java 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. package com.ruoyi.web.controller.member;
  2. import javax.servlet.http.HttpServletResponse;
  3. import com.ruoyi.common.core.domain.entity.SysMenu;
  4. import com.ruoyi.common.core.domain.entity.SysUser;
  5. import com.ruoyi.common.utils.poi.ExcelUtil;
  6. import com.ruoyi.system.domain.member.MemberInfo;
  7. import com.ruoyi.system.service.impl.TaskService;
  8. import org.springframework.security.access.prepost.PreAuthorize;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.web.bind.annotation.GetMapping;
  11. import org.springframework.web.bind.annotation.PostMapping;
  12. import org.springframework.web.bind.annotation.PathVariable;
  13. import org.springframework.web.bind.annotation.RequestBody;
  14. import org.springframework.web.bind.annotation.RequestMapping;
  15. import org.springframework.web.bind.annotation.RestController;
  16. import com.ruoyi.common.annotation.Log;
  17. import com.ruoyi.common.core.controller.BaseController;
  18. import com.ruoyi.common.core.domain.AjaxResult;
  19. import com.ruoyi.common.enums.BusinessType;
  20. import com.ruoyi.system.service.IMemberInfoService;
  21. import com.ruoyi.common.core.page.TableDataInfo;
  22. import org.springframework.web.multipart.MultipartFile;
  23. import java.util.List;
  24. /**
  25. * 委员信息Controller
  26. *
  27. * @author boman
  28. * @date 2024-03-07
  29. */
  30. @RestController
  31. @RequestMapping("/member/info")
  32. public class MemberInfoController extends BaseController {
  33. @Autowired
  34. private IMemberInfoService memberInfoService;
  35. @Autowired
  36. private TaskService taskService;
  37. /**
  38. * 查询委员信息列表
  39. */
  40. @PreAuthorize("@ss.hasPermi('member:info:list')")
  41. @GetMapping("/list")
  42. public TableDataInfo list(MemberInfo memberInfo) {
  43. startPage();
  44. List<MemberInfo> list = memberInfoService.selectMemberInfoList(memberInfo);
  45. return getDataTable(list);
  46. }
  47. /**
  48. * 获取委员菜单下拉树列表
  49. */
  50. @GetMapping("/treeSelect")
  51. public AjaxResult treeSelect(MemberInfo memberInfo) {
  52. List<MemberInfo> list = memberInfoService.selectMemberInfoList(memberInfo);
  53. return success(memberInfoService.buildMemberInfoTreeSelect(list));
  54. }
  55. /**
  56. * 查询委员信息列表不分页
  57. */
  58. @PreAuthorize("@ss.hasPermi('member:info:listNoPage')")
  59. @GetMapping("/listNoPage")
  60. public TableDataInfo listNoPage(MemberInfo memberInfo) {
  61. List<MemberInfo> list = memberInfoService.selectMemberInfoList(memberInfo);
  62. return getDataTable(list);
  63. }
  64. /**
  65. * 导出委员信息列表
  66. */
  67. @PreAuthorize("@ss.hasPermi('member:info:export')")
  68. @Log(title = "委员信息", businessType = BusinessType.EXPORT)
  69. @PostMapping("/export")
  70. public void export(HttpServletResponse response, MemberInfo memberInfo) {
  71. List<MemberInfo> list = memberInfoService.selectMemberInfoList(memberInfo);
  72. ExcelUtil<MemberInfo> util = new ExcelUtil<MemberInfo>(MemberInfo.class);
  73. util.exportExcel(response, list, "委员信息数据");
  74. }
  75. @Log(title = "委员信息", businessType = BusinessType.IMPORT)
  76. @PreAuthorize("@ss.hasPermi('member:info:import')")
  77. @PostMapping("/importData")
  78. public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception
  79. {
  80. ExcelUtil<MemberInfo> util = new ExcelUtil<MemberInfo>(MemberInfo.class);
  81. List<MemberInfo> list = util.importExcel(file.getInputStream());
  82. String operName = getUsername();
  83. String message = memberInfoService.importData(list, updateSupport, operName);
  84. return success(message);
  85. }
  86. /**
  87. * 获取委员信息详细信息
  88. */
  89. @PreAuthorize("@ss.hasPermi('member:info:query')")
  90. @GetMapping(value = "/{memberId}")
  91. public AjaxResult getInfo(@PathVariable("memberId") Long memberId) {
  92. return success(memberInfoService.selectMemberInfoByMemberId(memberId));
  93. }
  94. /**
  95. * 获取委员履职信息详细信息
  96. */
  97. @PreAuthorize("@ss.hasPermi('member:info:queryJop')")
  98. @PostMapping(value = "/getInfoJop")
  99. public AjaxResult getInfoJop(@RequestBody MemberInfo memberInfo) {
  100. return success(memberInfoService.getInfoJop(memberInfo));
  101. }
  102. /**
  103. * 获取委员履职年度报告
  104. */
  105. @PreAuthorize("@ss.hasPermi('member:info:MemberReport')")
  106. @PostMapping(value = "/getMemberReport")
  107. public AjaxResult getMemberReport(@RequestBody MemberInfo memberInfo) {
  108. return success(memberInfoService.getMemberReport(memberInfo));
  109. }
  110. /**
  111. * 新增委员信息
  112. */
  113. @PreAuthorize("@ss.hasPermi('member:info:add')")
  114. @Log(title = "委员信息", businessType = BusinessType.INSERT)
  115. @PostMapping
  116. public AjaxResult add(@RequestBody MemberInfo memberInfo) {
  117. return memberInfoService.insertMemberInfo(memberInfo);
  118. }
  119. /**
  120. * 修改委员信息
  121. */
  122. @PreAuthorize("@ss.hasPermi('member:info:edit')")
  123. @Log(title = "委员信息", businessType = BusinessType.UPDATE)
  124. @PostMapping("/put")
  125. public AjaxResult edit(@RequestBody MemberInfo memberInfo) {
  126. return toAjax(memberInfoService.updateMemberInfo(memberInfo));
  127. }
  128. /**
  129. * 删除委员信息
  130. */
  131. @PreAuthorize("@ss.hasPermi('member:info:remove')")
  132. @Log(title = "委员信息", businessType = BusinessType.DELETE)
  133. @GetMapping("/delete/{memberIds}")
  134. public AjaxResult remove(@PathVariable Long[] memberIds) {
  135. return toAjax(memberInfoService.deleteMemberInfoByMemberIds(memberIds));
  136. }
  137. /**
  138. * 手动更新所有委员分数,排名
  139. */
  140. @PreAuthorize("@ss.hasPermi('member:info:assessmentScore')")
  141. @PostMapping("/assessmentScore")
  142. public AjaxResult assessmentScore() {
  143. taskService.assessmentScore();
  144. return AjaxResult.success();
  145. }
  146. }