SysUserController.java 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. package com.dgtly.api.controller;
  2. import com.dgtly.common.annotation.ApiPassToken;
  3. import com.dgtly.common.core.controller.ApiBaseController;
  4. import com.dgtly.common.core.domain.AjaxResult;
  5. import com.dgtly.common.core.domain.ParameterObject;
  6. import com.dgtly.common.core.domain.ResultType;
  7. import com.dgtly.common.utils.security.EncryptPassWordClass;
  8. import com.dgtly.system.domain.OrderSalesParameter;
  9. import com.dgtly.system.domain.SysUser;
  10. import com.dgtly.system.service.IAlertConfigurationService;
  11. import com.dgtly.system.service.ISysUserExtService;
  12. import com.dgtly.wxportal.domain.WxQyUser;
  13. import com.dgtly.system.service.ISysUserService;
  14. import com.dgtly.wxportal.service.IWxQyUserService;
  15. import io.swagger.annotations.Api;
  16. import io.swagger.annotations.ApiImplicitParam;
  17. import io.swagger.annotations.ApiImplicitParams;
  18. import io.swagger.annotations.ApiOperation;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.web.bind.annotation.*;
  21. import java.util.ArrayList;
  22. import java.util.HashMap;
  23. import java.util.List;
  24. import java.util.Map;
  25. import java.util.concurrent.TimeUnit;
  26. @Api(tags = "系统用户相关API")
  27. @RestController
  28. @RequestMapping("sysuser")
  29. public class SysUserController extends ApiBaseController {
  30. @Autowired
  31. private IWxQyUserService wxQyUserService;
  32. @Autowired
  33. private ISysUserService sysUserService;
  34. @Autowired
  35. private ISysUserExtService userExtService;
  36. @Autowired
  37. private IAlertConfigurationService alertConfigurationService;
  38. @ApiOperation(value = "绑定微信用户和系统用户",
  39. notes = "参数:{wxUserId:'xxxxxxxxxxxxxxxxxxxx'," +
  40. "username:'admin',password:'admin123'}" +
  41. "错误:" +
  42. "301 用户不存在或密码错误")
  43. @ApiImplicitParams({
  44. @ApiImplicitParam(name = "params" , paramType = "body")
  45. })
  46. @ApiPassToken
  47. @PostMapping("bindingUser")
  48. public Object bindingUser(){
  49. ParameterObject obj = getParameterObject();
  50. obj.checkParameterNotNull("wxUserId,username,password");
  51. SysUser sysUser = sysUserService.selectUserByLoginName(obj.getString("username"));
  52. if(sysUser==null){
  53. return AjaxResult.error(301,"用户不存在或密码错误");
  54. }
  55. String p =EncryptPassWordClass.encryptPassword(sysUser.getLoginName(), obj.getString("password"), sysUser.getSalt());
  56. if(!sysUser.getPassword().equals(p)){
  57. return AjaxResult.error(301,"用户不存在或密码错误");
  58. }
  59. String wxUserId = obj.getString("wxUserId");
  60. WxQyUser wxQyUserIntable = wxQyUserService.selectWxQyUserById(wxUserId);
  61. if(wxQyUserIntable.getSysUserId()!=null){
  62. return AjaxResult.error(302,"此用户已绑定现相关系统用户");
  63. }
  64. WxQyUser wxQyUser = new WxQyUser();
  65. wxQyUser.setUserid(wxUserId);
  66. wxQyUser.setSysUserId(sysUser.getUserId());
  67. int i =wxQyUserService.updateWxQyUser(wxQyUser);
  68. if (i > 0) {
  69. return AjaxResult.success().putKV("user",sysUser);
  70. }else{
  71. return AjaxResult.error();
  72. }
  73. }
  74. @ApiOperation(value = "接触绑定",
  75. notes = "参数:{" +
  76. "userId:xxxxxx}")
  77. @ApiImplicitParams({
  78. @ApiImplicitParam(name = "params" , paramType = "body")
  79. })
  80. @PostMapping("bonded")
  81. public Object bonded(){
  82. ParameterObject obj = getParameterObject();
  83. obj.checkParameterNotNull("userId");
  84. Long userId =obj.getLong("userId");
  85. int i = wxQyUserService.bondedSysUserBySysUserId(userId);
  86. return toAjax(i);
  87. }
  88. @ApiOperation(value = "获取用户信息",
  89. notes = "参数:{" +
  90. "userId:xxxxxx}")
  91. @ApiImplicitParams({
  92. @ApiImplicitParam(name = "params" , paramType = "body")
  93. })
  94. @PostMapping("getUserInfo")
  95. public Object getUserInfo(){
  96. ParameterObject obj = getParameterObject();
  97. obj.checkParameterNotNull("userId");
  98. Long userId =obj.getLong("userId");
  99. SysUser user = sysUserService.selectUserById(userId);
  100. WxQyUser wxQyUser = new WxQyUser();
  101. wxQyUser.setSysUserId(userId);
  102. List<WxQyUser> wxQyUsers = wxQyUserService.selectWxQyUserList(wxQyUser);
  103. wxQyUser = wxQyUsers.size()>0?wxQyUsers.get(0):null;
  104. return AjaxResult.success().putKV("wxUser",wxQyUser).putKV("sysUser",user);
  105. }
  106. @ApiOperation(value = "获取用户信息",
  107. notes = "参数:{" +
  108. "loginName:xxxxxx}")
  109. @ApiImplicitParams({
  110. @ApiImplicitParam(name = "params" , paramType = "body")
  111. })
  112. @PostMapping("getUserInfoByLoginName")
  113. public Object getUserInfoByLoginName(){
  114. ParameterObject obj = getParameterObject();
  115. obj.checkParameterNotNull("loginName");
  116. String loginName =obj.getString("loginName");
  117. SysUser user = sysUserService.selectUserByLoginName(loginName);
  118. if(user==null){
  119. return AjaxResult.error("查无此人");
  120. }
  121. return AjaxResult.success().putKV("sysUser",user);
  122. }
  123. @ApiOperation(value = "测试接口访问超时",
  124. notes = "参数:{" +
  125. "waitingTime:int秒}")
  126. @ApiImplicitParams({
  127. @ApiImplicitParam(name = "params" , paramType = "body")
  128. })
  129. @PostMapping("testAccessTimeout")
  130. public Object testAccessTimeout() throws Exception{
  131. ParameterObject obj = getParameterObject();
  132. obj.checkParameterNotNull("waitingTime");
  133. String waitingTime =obj.getString("waitingTime");
  134. int i = Integer.parseInt(waitingTime);
  135. if (a<3) {
  136. TimeUnit.SECONDS.sleep(i);//秒
  137. }
  138. a=a++;
  139. System.out.println("访问次数");
  140. return AjaxResult.success();
  141. }
  142. private int a=0;
  143. @ApiOperation(value = "获取销售员列表",
  144. notes = "参数:{" +
  145. "bossEmployeeId:xxxxxx}")
  146. @ApiImplicitParams({
  147. @ApiImplicitParam(name = "params" , paramType = "body")
  148. })
  149. @PostMapping("getSelesList")
  150. public Object getSelesList(){
  151. ParameterObject obj = getParameterObject();
  152. obj.checkParameterNotNull("bossEmployeeId");
  153. String bossEmployeeId =obj.getString("bossEmployeeId");
  154. List<String> list = userExtService.selectEmployeeIdsByBossEmployeeId(bossEmployeeId);
  155. return list.size()>0?AjaxResult.success().putKV("list",list):AjaxResult.error(ResultType.NUll);
  156. }
  157. @PostMapping("/searchOrg")
  158. @ApiOperation(value = "查询组织机构",
  159. notes = "参数:{payType:'xxxxxxxxxxxxxxxxxxxx'," +
  160. "payValue:'xxx'")
  161. @ApiImplicitParams({
  162. @ApiImplicitParam(name = "params" , paramType = "body")
  163. })
  164. public Map searchProductParamByCustomerCode() {
  165. ParameterObject obj = getParameterObject();
  166. OrderSalesParameter salesManager =new OrderSalesParameter();
  167. String payType = obj.getString("payType");
  168. String payValue = obj.getString("payValue");
  169. if("".equals(payType) ||payType ==null){
  170. salesManager.setParType("diy_level");
  171. }else{
  172. salesManager.setParType(payType);
  173. salesManager.setParValue(payValue);
  174. }
  175. Map map = new HashMap();
  176. List<Map<String,Object>> dataList = alertConfigurationService.searchProductParamByCustomerCode(
  177. salesManager.getParType(),salesManager.getParValue());
  178. if(dataList != null && dataList.size() > 0){
  179. map.put("levelInfo",dataList.get(0));
  180. if ("suboffice_level".equals(salesManager.getParType()) ||
  181. "customer_level".equals(salesManager.getParType()) ||
  182. "emp_level".equals(salesManager.getParType()) ||
  183. "saledept_level".equals(salesManager.getParType())
  184. ){
  185. map.put("dataList",new ArrayList());
  186. }else{
  187. map.put("dataList",dataList);
  188. }
  189. return map;
  190. } else {
  191. Map mapnull = new HashMap();
  192. map.put("levelInfo",mapnull);
  193. map.put("dataList",dataList);
  194. return map;
  195. }
  196. }
  197. }