SysAccountMultilevelController.java 5.9 KB

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