WechatController.java 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package com.xjrsoft.module.organization.controller;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.xjrsoft.common.constant.GlobalConstant;
  4. import com.xjrsoft.common.model.result.R;
  5. import com.xjrsoft.common.utils.RedisUtil;
  6. import com.xjrsoft.module.organization.dto.WeChatDepartPageDto;
  7. import com.xjrsoft.module.organization.dto.WeChatPageDto;
  8. import com.xjrsoft.module.organization.dto.WeChatSendMessageDto;
  9. import com.xjrsoft.module.organization.entity.Department;
  10. import com.xjrsoft.module.organization.entity.User;
  11. import com.xjrsoft.module.organization.service.IDepartmentService;
  12. import com.xjrsoft.module.organization.service.IUserService;
  13. import com.xjrsoft.module.organization.service.IWeChatService;
  14. import io.swagger.annotations.Api;
  15. import io.swagger.annotations.ApiOperation;
  16. import lombok.AllArgsConstructor;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.List;
  19. import java.util.concurrent.CompletableFuture;
  20. @RestController
  21. @RequestMapping(value = GlobalConstant.ORGANIZATION_MODULE_PREFIX + "/wechat")
  22. @Api(value = GlobalConstant.ORGANIZATION_MODULE_PREFIX + "/wechat", tags = "微信")
  23. @AllArgsConstructor
  24. public class WechatController {
  25. private final IWeChatService WeChatService;
  26. private final IUserService userService;
  27. private final IDepartmentService departmentService;
  28. private final RedisUtil redisUtil;
  29. @PutMapping("/sync-user")
  30. @ApiOperation(value="微信信息更新")
  31. public R updateInfo(){
  32. WeChatService.updateInfo();
  33. CompletableFuture.runAsync(() -> {
  34. List<Department> depList = departmentService.list();
  35. redisUtil.set(GlobalConstant.DEP_CACHE_KEY, depList);
  36. List<User> userList = userService.list();
  37. redisUtil.set(GlobalConstant.USER_CACHE_KEY, userList);
  38. });
  39. return R.ok();
  40. }
  41. @GetMapping(value = "/page")
  42. @ApiOperation(value="获取员工分页信息")
  43. public R page(WeChatPageDto dto){
  44. return R.ok(userService.getPage(dto));
  45. }
  46. @GetMapping(value = "/departpage")
  47. @ApiOperation(value="获取部门分页信息")
  48. public R page(WeChatDepartPageDto dto){
  49. return R.ok(departmentService.Ipage(dto));
  50. }
  51. @GetMapping(value = "/js-config")
  52. @ApiOperation(value="前端jssdk页面配置需要用到的配置参数")
  53. public R getWeixinJs () throws Exception {
  54. return R.ok(WeChatService.getJsConfig());
  55. }
  56. }