HSController.java 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. package com.malk.hangshi.controller;
  2. import com.alibaba.fastjson.JSON;
  3. import com.malk.hangshi.service.HSService;
  4. import com.malk.server.aliwork.YDConf;
  5. import com.malk.server.aliwork.YDParam;
  6. import com.malk.server.common.McException;
  7. import com.malk.server.common.McR;
  8. import com.malk.service.aliwork.YDClient;
  9. import com.malk.service.dingtalk.DDClient;
  10. import com.malk.service.dingtalk.DDClient_Contacts;
  11. import com.malk.service.dingtalk.DDService;
  12. import com.malk.utils.UtilMap;
  13. import com.malk.utils.UtilServlet;
  14. import lombok.extern.slf4j.Slf4j;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.PostMapping;
  17. import org.springframework.web.bind.annotation.RequestBody;
  18. import org.springframework.web.bind.annotation.RequestMapping;
  19. import org.springframework.web.bind.annotation.RestController;
  20. import javax.servlet.http.HttpServletRequest;
  21. import java.util.Arrays;
  22. import java.util.List;
  23. import java.util.Map;
  24. import java.util.stream.Collectors;
  25. /**
  26. * 错误抛出与拦截详见CatchException
  27. */
  28. @Slf4j
  29. @RestController
  30. @RequestMapping
  31. public class HSController {
  32. @Autowired
  33. private DDClient ddClient;
  34. @Autowired
  35. private DDClient_Contacts ddClient_contacts;
  36. @Autowired
  37. private HSService hsService;
  38. /**
  39. * 获取员工人数
  40. */
  41. @PostMapping("user/count")
  42. McR queryCount() {
  43. return McR.success(hsService.getCorpCount());
  44. }
  45. @PostMapping("user/deptInfo")
  46. McR queryDeptInfo() {
  47. return McR.success(hsService.getDeptInfo(false));
  48. }
  49. @Autowired
  50. private YDClient ydClient;
  51. /**
  52. * 自愿上报动态审批
  53. */
  54. @PostMapping("user/approve")
  55. List<String> approveAQGL(HttpServletRequest request) {
  56. Map param = UtilServlet.getParamMap(request);
  57. log.info("自愿上报安全管理, {}", param);
  58. McException.assertParamException_Null(param, "corpName");
  59. String type = "总公司".equals(param.get("corpName")) ? "总公司安全管理部" : "子公司安全部人员";
  60. List<Map> list = (List<Map>) ydClient.queryData(YDParam.builder()
  61. .formUuid("FORM-3C866TC1RA29KJXD7XF4N4ZXW9932Z69W6CFLR")
  62. .searchFieldJson(JSON.toJSONString(UtilMap.map("textField_lfw8yizv, selectField_lfw82zh0", type, param.get("corpName"))))
  63. .build(), YDConf.FORM_QUERY.retrieve_search_form).getData();
  64. List<String> userIds = list.stream().map(item -> String.valueOf(((Map) item.get("formData")).get("textField_lfw8yizu"))).collect(Collectors.toList());
  65. return userIds;
  66. }
  67. /**
  68. * 自愿上报动态审批
  69. */
  70. @PostMapping("user/compId")
  71. List<String> approveZRBM(HttpServletRequest request) {
  72. Map param = UtilServlet.getParamMap(request);
  73. log.info("自愿上责任部门, {}", param);
  74. return Arrays.asList(String.valueOf(param.get("userId")).split(","));
  75. }
  76. @Autowired
  77. private DDService ddService;
  78. /**
  79. * jsApi 注册
  80. */
  81. @PostMapping("register")
  82. McR register(@RequestBody Map<String, String> data) {
  83. McException.assertParamException_Null(data, "url", "nonceStr");
  84. return McR.success(ddService.registerJsApi(data.get("url"), data.get("nonceStr")));
  85. }
  86. /**
  87. * jsApi 免登
  88. */
  89. @PostMapping("user/code")
  90. McR userCodeAuth(@RequestBody Map<String, String> data) {
  91. McException.assertParamException_Null(data, "code");
  92. return McR.success(ddService.getUserInfoByCode(data.get("code")));
  93. }
  94. }