SysAccountMultilevelController.java 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. package com.huimv.receive.controller;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.huimv.receive.common.token.TokenSign;
  4. import com.huimv.receive.common.utils.PdfUtil;
  5. import com.huimv.receive.common.utils.Result;
  6. import com.huimv.receive.common.utils.ResultCode;
  7. import com.huimv.receive.common.utils.UploadImage;
  8. import com.huimv.receive.entity.AccountGroup;
  9. import com.huimv.receive.entity.SysAccountMultilevel;
  10. import com.huimv.receive.service.IAccountGroupService;
  11. import com.huimv.receive.service.ISysAccountMultilevelService;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.transaction.annotation.Transactional;
  14. import org.springframework.transaction.interceptor.TransactionAspectSupport;
  15. import org.springframework.web.bind.annotation.*;
  16. import org.springframework.web.multipart.MultipartFile;
  17. import javax.servlet.http.HttpServletRequest;
  18. import javax.servlet.http.HttpServletResponse;
  19. import java.io.IOException;
  20. import java.util.HashMap;
  21. import java.util.List;
  22. import java.util.Map;
  23. /**
  24. * <p>
  25. * 前端控制器
  26. * </p>
  27. *
  28. * @author astupidcoder
  29. * @since 2021-10-14
  30. */
  31. @CrossOrigin
  32. @RestController
  33. @RequestMapping("/admin/accountMultilevel")
  34. public class SysAccountMultilevelController {
  35. @Autowired
  36. private ISysAccountMultilevelService accountMultilevelService;
  37. @Autowired
  38. private IAccountGroupService accountGroupService;
  39. @Autowired
  40. private UploadImage uploadImage;
  41. @PostMapping("/list")
  42. public Result list(@RequestBody Map map , HttpServletRequest request){
  43. Integer userId = TokenSign.getMemberIdByJwtToken(request);
  44. int pageNum = (Integer)map.get("pageNum");
  45. int pageSize = (Integer)map.get("pageSize");
  46. String searchStr = (String)map.get("searchStr");
  47. return accountMultilevelService.findUserAccount(searchStr,pageNum,pageSize,userId);
  48. }
  49. @PostMapping("/listSubordinate")
  50. public Result listSubordinate(@RequestBody Map map , HttpServletRequest request){
  51. Integer userId = TokenSign.getMemberIdByJwtToken(request);
  52. int pageNum = (Integer)map.get("pageNum");
  53. int pageSize = (Integer)map.get("pageSize");
  54. String searchStr = (String)map.get("searchStr");
  55. return accountMultilevelService.listSubordinate(searchStr,pageNum,pageSize,userId);
  56. }
  57. @PostMapping("/listSubordinateByFarm")
  58. public Result listSubordinateByFarm(@RequestBody Map map , HttpServletRequest request){
  59. Integer userId = TokenSign.getMemberIdByJwtToken(request);
  60. String farmId = (String)map.get("farmId");
  61. return accountMultilevelService.listSubordinateByFarm(farmId,userId);
  62. }
  63. @PostMapping("/add")
  64. public Result add(@RequestBody SysAccountMultilevel sysAccountMultilevel , HttpServletRequest request){
  65. Integer userId = TokenSign.getMemberIdByJwtToken(request);
  66. return accountMultilevelService.add(sysAccountMultilevel,userId);
  67. }
  68. @PostMapping("/update")
  69. public Result update(@RequestBody SysAccountMultilevel sysAccountMultilevel){
  70. accountMultilevelService.updateById(sysAccountMultilevel);
  71. return new Result(10000,"修改成功",true);
  72. }
  73. @GetMapping("/remove")
  74. public Result remove(@RequestParam(name ="userIds") List<Integer> userIds){
  75. accountGroupService.remove(new QueryWrapper<AccountGroup>().in("account_id",userIds));
  76. accountMultilevelService.removeByIds(userIds);
  77. return new Result(10000,"删除成功",true);
  78. }
  79. @GetMapping("/setAccountStatus")
  80. public Result setAccountStatus(@RequestParam(name = "ids") List<Integer> ids, @RequestParam(name = "status") Integer status){
  81. /* 设置账号状态 */
  82. return accountMultilevelService.setAccountStatus(ids,status);
  83. }
  84. @GetMapping("/findOne")
  85. public Result findOne(Integer id){
  86. return new Result(ResultCode.SUCCESS, accountMultilevelService.getById(id));
  87. }
  88. @GetMapping("/getLastFarmId")
  89. public Result getLastFarmId(HttpServletRequest request){
  90. Integer userId = TokenSign.getMemberIdByJwtToken(request);
  91. return accountMultilevelService.getLastFarmId(userId);
  92. }
  93. @PostMapping("/editImg")
  94. @Transactional(rollbackFor = Exception.class)
  95. public Result editImg(HttpServletRequest httpServletRequest, @RequestParam("img") MultipartFile img) throws IOException {
  96. SysAccountMultilevel sysAccountMultilevel = accountMultilevelService.getById(TokenSign.getMemberIdByJwtToken(httpServletRequest));
  97. if (uploadImage.getImageCom(img).equals("上传失败")) {
  98. TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
  99. return new Result(10001,"图片上传失败",false);
  100. }
  101. sysAccountMultilevel.setImgUrl(uploadImage.getImageCom(img));
  102. accountMultilevelService.updateById(sysAccountMultilevel);
  103. return Result.SUCCESS();
  104. }
  105. @PostMapping("/updateUserName")
  106. public Result updateUserName(HttpServletRequest httpServletRequest,@RequestBody Map<String, String> paramsMap){
  107. SysAccountMultilevel sysAccountMultilevel = accountMultilevelService.getById(TokenSign.getMemberIdByJwtToken(httpServletRequest));
  108. sysAccountMultilevel.setUserName(paramsMap.get("userName"));
  109. accountMultilevelService.updateById(sysAccountMultilevel);
  110. return Result.SUCCESS();
  111. }
  112. @PostMapping("/updatePaper")
  113. public Result updatePaper(HttpServletRequest httpServletRequest,@RequestBody Map<String, String> paramsMap){
  114. SysAccountMultilevel sysAccountMultilevel = accountMultilevelService.getById(TokenSign.getMemberIdByJwtToken(httpServletRequest));
  115. sysAccountMultilevel.setPapersType(paramsMap.get("papersType"));
  116. sysAccountMultilevel.setPapersCode(paramsMap.get("papersCode"));
  117. accountMultilevelService.updateById(sysAccountMultilevel);
  118. return Result.SUCCESS();
  119. }
  120. @PostMapping("/updateUser")
  121. public Result updateUser(HttpServletRequest httpServletRequest,
  122. @RequestParam(value = "img", required = false) MultipartFile img,
  123. @RequestParam(value = "userName", required = false) String userName,
  124. @RequestParam(value = "phone", required = false) String phone,
  125. @RequestParam(value = "workPost", required = false) Integer workPost,
  126. @RequestParam(value = "workLocation", required = false) String workLocation,
  127. @RequestParam(value = "workLocationId", required = false) String workLocationId,
  128. @RequestParam(value = "workName", required = false) String workName,
  129. @RequestParam(value = "papersType", required = false) String papersType,
  130. @RequestParam(value = "papersCode", required = false) String papersCode) throws IOException {
  131. return accountMultilevelService.updateUser(httpServletRequest,img,userName,phone,workPost,workLocation,workLocationId,workName,papersType,papersCode);
  132. }
  133. @PostMapping("/getDetail")
  134. public Result getDetail(HttpServletRequest httpServletRequest){
  135. return new Result(ResultCode.SUCCESS,accountMultilevelService.getById(TokenSign.getMemberIdByJwtToken(httpServletRequest)));
  136. }
  137. @GetMapping("/printAccount")
  138. public void printAccount(HttpServletResponse response, @RequestParam(name = "ids") String ids) throws Exception {
  139. Map<String, String> map = new HashMap<>();
  140. map.put("ids", ids);
  141. accountMultilevelService.printAccount(response, map);
  142. String path = "/opt/huatong/account.xls";
  143. PdfUtil.returnPdfStream3(response, path, "账号列表");
  144. }
  145. }