UuzcController.java 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. package com.uas.platform.home.controller;
  2. import com.alibaba.fastjson.JSON;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.uas.account.entity.User;
  5. import com.uas.account.entity.UserSpaceDetail;
  6. import com.uas.account.entity.UserView;
  7. import com.uas.account.util.AccountUtils;
  8. import com.uas.platform.home.core.support.SystemSession;
  9. import com.uas.platform.home.model.ResultInfo;
  10. import com.uas.platform.home.model.UuzcUserInfo;
  11. import com.uas.platform.home.web.BaseController;
  12. import com.uas.sso.common.util.HttpUtil;
  13. import org.springframework.ui.ModelMap;
  14. import org.springframework.web.bind.annotation.RequestMapping;
  15. import org.springframework.web.bind.annotation.RequestMethod;
  16. import org.springframework.web.bind.annotation.RestController;
  17. import java.util.List;
  18. /**
  19. * 关于优软众创的一些接口
  20. *
  21. * Created by hejq on 2017-11-02.
  22. */
  23. @RestController
  24. @RequestMapping(value = "/uuzc")
  25. public class UuzcController extends BaseController {
  26. /**
  27. * 对当前登录账号进行检验
  28. *
  29. * @return
  30. */
  31. @RequestMapping(value = "/account/check", method = RequestMethod.GET)
  32. public ModelMap checkAccount() throws Exception {
  33. UserView user = SystemSession.getUser();
  34. ModelMap map = new ModelMap();
  35. //先判断个人账户类型
  36. String personalUrl = "http://job.uutest.com/index.php?m=&c=ubtob&a=check_user&uc_uid=" + user.getDialectUID();
  37. HttpUtil.ResponseWrap responseWrap = HttpUtil.doGet(personalUrl);
  38. ResultInfo userInfo = JSONObject.parseObject(responseWrap.getContent(), ResultInfo.class);
  39. if(null != userInfo.getData()) {
  40. if(userInfo.getData().getCode().equals("2")) {//个人用户
  41. UuzcUserInfo info = getUserInfo(user, false);
  42. JSONObject formData = JSON.parseObject(JSON.toJSONString(info));
  43. map.put("user", formData);
  44. map.put("usertype", "personal");
  45. return map;
  46. } else if(userInfo.getData().getCode().equals("1")) {// 企业用户
  47. UuzcUserInfo info = getUserInfo(user, true);
  48. JSONObject formData = JSON.parseObject(JSON.toJSONString(info));
  49. //判断是否设置了hr
  50. String result = AccountUtils.getHrAccount(info.getLicense());
  51. ResultInfo resInfo = JSONObject.parseObject(result, ResultInfo.class);
  52. map.put("hr", resInfo.getExistHr() ? true : false);
  53. if(user.getName().equals(user.getUserSpaceDetail().getAdminName())) {
  54. map.put("manager", true);
  55. }
  56. map.put("user", info);
  57. map.put("usertype", "company");
  58. }
  59. }
  60. return map;
  61. }
  62. /**
  63. * 将账户中心信息转成众创需要的信息
  64. *
  65. * @param user
  66. * @param company
  67. * @return
  68. */
  69. private UuzcUserInfo getUserInfo(UserView user, boolean company) {
  70. UuzcUserInfo info = new UuzcUserInfo();
  71. info.setEmail(user.getSecondUID());
  72. info.setMobile(user.getUid());
  73. info.setUc_uid(user.getDialectUID());
  74. info.setPassword(user.getPassword());
  75. info.setSalt(user.getSalt());
  76. info.setUsername(user.getName());
  77. if(null != user.getUserSpaceDetail() && company) {
  78. info.setCompanyname(user.getSpaceName());
  79. info.setLicense(user.getSpaceUID());
  80. info.setContact(user.getUserSpaceDetail().getContactMan());
  81. info.setWebsite(user.getUserSpaceDetail().getUrl());
  82. info.setTelephone(user.getUserSpaceDetail().getTel());
  83. info.setLandine_tel(user.getUserSpaceDetail().getContactTel());
  84. }
  85. return info;
  86. }
  87. /**
  88. * 设置hr账号
  89. *
  90. * @param user
  91. * @return
  92. */
  93. @RequestMapping(value = "/setHrAccount", method = RequestMethod.POST)
  94. public ModelMap setHrAccount(UuzcUserInfo user) throws Exception {
  95. UserSpaceDetail detail = SystemSession.getUser().getUserSpaceDetail();
  96. User userInfo = new User();
  97. userInfo.setHr((short) 1);
  98. userInfo.setName(user.getUsername());
  99. userInfo.setUid(user.getMobile());
  100. userInfo.setSecondUID(user.getEmail());
  101. String result = AccountUtils.setHrAccount(userInfo, detail);
  102. ResultInfo resInfo = JSONObject.parseObject(result, ResultInfo.class);
  103. return new ModelMap("result", resInfo.getMsg());
  104. }
  105. /**
  106. * 获取当前企业的用户信息
  107. *
  108. * @return
  109. * @throws Exception
  110. */
  111. @RequestMapping(value = "/existusers", method = RequestMethod.GET)
  112. public ModelMap getExistUsers() throws Exception {
  113. List<User> users = AccountUtils.getEmployees(SystemSession.getUser().getUserSpaceDetail().getBusinessCode());
  114. return success(users);
  115. }
  116. }