Commit 3d518cfba507e41b6515c405d457349120334f80

Authored by 侯添瑞
1 parent c74bede62f

his对接账号转换

Showing 7 changed files with 131 additions and 7 deletions

platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/MasterUsersMapper.java View file @ 3d518cf
... ... @@ -44,5 +44,7 @@
44 44 Map<String, String> getSmnSeq(String hospitalId);
45 45 void insertSmnSeq(Map<String,String> map);
46 46 void updateSmnSeq(Map<String,String> map);
  47 +
  48 + public Users queryUsers3(String hisId);
47 49 }
platform-biz-service/src/main/java/com/lyms/platform/permission/model/Users.java View file @ 3d518cf
... ... @@ -37,6 +37,18 @@
37 37 private String teamName;
38 38 private String orgName;
39 39 private String deptName;
  40 + //his工号
  41 + private String hisId;
  42 +
  43 + public String getHisId() {
  44 + return hisId;
  45 + }
  46 +
  47 + public void setHisId(String hisId) {
  48 + this.hisId = hisId;
  49 + }
  50 +
  51 +
40 52  
41 53 public String getDeptName() {
42 54 return deptName;
platform-biz-service/src/main/java/com/lyms/platform/permission/service/UsersService.java View file @ 3d518cf
... ... @@ -34,5 +34,10 @@
34 34 String getUsersByDept(String hospitalId);
35 35  
36 36 String getSmnSeq(String hospitalId);
  37 +
  38 + Users queryUsers3(String query);
  39 +
  40 +
  41 +
37 42 }
platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/UsersServiceImpl.java View file @ 3d518cf
1 1 package com.lyms.platform.permission.service.impl;
2 2  
3   -import com.google.common.cache.CacheLoader;
4   -import com.google.common.cache.LoadingCache;
5   -import com.google.common.util.concurrent.ListenableFuture;
6 3 import com.lyms.platform.biz.dal.ISyncDataDao;
7   -import com.lyms.platform.common.exception.BusinessException;
8   -import com.lyms.platform.common.utils.CacheHelper;
9 4 import com.lyms.platform.common.utils.DateUtil;
10 5 import com.lyms.platform.permission.DataAccessLayerService;
11 6 import com.lyms.platform.permission.dao.master.MasterUsersMapper;
... ... @@ -14,7 +9,6 @@
14 9 import com.lyms.platform.permission.model.Users;
15 10 import com.lyms.platform.permission.model.UsersQuery;
16 11 import com.lyms.platform.permission.service.UsersService;
17   -import com.lyms.platform.pojo.BasicConfig;
18 12 import org.apache.commons.collections.CollectionUtils;
19 13 import org.springframework.beans.factory.annotation.Autowired;
20 14 import org.springframework.stereotype.Service;
... ... @@ -165,6 +159,15 @@
165 159 usersMapper.insertSmnSeq(dbMap);
166 160 return seq;
167 161 }
  162 +
  163 +
  164 +
  165 + @Override
  166 + public Users queryUsers3(String query) {
  167 +
  168 + return usersMapper.queryUsers3(query);
  169 + }
  170 +
168 171  
169 172  
170 173 }
platform-biz-service/src/main/resources/mainOrm/master/MasterUsers.xml View file @ 3d518cf
... ... @@ -26,6 +26,7 @@
26 26 <result column="other_account" property="otherAccount" jdbcType="INTEGER"/>
27 27 <result column="zhiChenId" property="zhiChenId" jdbcType="INTEGER"/>
28 28 <result column="defaultpage" property="defaultPage" jdbcType="INTEGER"/>
  29 + <result column="his_d" property="hisId" jdbcType="VARCHAR"/>
29 30 </resultMap>
30 31  
31 32 <insert id="addUsers" parameterType="com.lyms.platform.permission.model.Users">
... ... @@ -380,6 +381,12 @@
380 381 <update id="updateSmnSeq" parameterType="map">
381 382 update lyms_smn_seq set seq = #{seq} where hospital_id=#{hospitalId}
382 383 </update>
  384 +
  385 +
  386 + <select id="queryUsers3" resultMap="UsersResultMap" parameterType="java.lang.String">
  387 + select id,logincenter_id,type,org_id,dept_id,name,account,pwd,phone,publish_id,publish_name,yn,enable,modified,created,remarks,last_login_time, ks_id,foreign_id,other_account,zhiChenId,defaultpage,his_id
  388 + from users where his_id = #{hisId}
  389 + </select>
383 390  
384 391 </mapper>
platform-common/src/main/java/com/lyms/platform/common/utils/LoginUtil.java View file @ 3d518cf
... ... @@ -55,10 +55,16 @@
55 55 stopWatch.start("init http client");
56 56 HttpClient client = new HttpClient();
57 57 PostMethod post = new MessageUtil.UTF8PostMethod("http://passport.healthbaby.com.cn/v1/userLogin.action");
  58 + //密码超过20位进行md5加密
  59 + String password = pwd;
  60 + if (pwd.length()<20){
  61 + password = org.apache.commons.lang.StringUtils.isBlank(pwd) ? "p" : MD5Utils.md5(pwd).toUpperCase();
  62 + }
58 63 NameValuePair[] data = {
59 64 new NameValuePair("account", account),
60 65 new NameValuePair("typeId", typeId),
61   - new NameValuePair("password", org.apache.commons.lang.StringUtils.isBlank(pwd) ? "p" : MD5Utils.md5(pwd).toUpperCase())
  66 + new NameValuePair("password", password)
  67 +// new NameValuePair("password", org.apache.commons.lang.StringUtils.isBlank(pwd) ? "p" : MD5Utils.md5(pwd).toUpperCase())
62 68 };
63 69 post.setRequestBody(data);
64 70 post.setRequestHeader("Authorization", token);
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/UsersController.java View file @ 3d518cf
... ... @@ -93,6 +93,7 @@
93 93 @Autowired
94 94 private OperateLogFacade operateLogFacade;
95 95  
  96 +
96 97 private static final String LYMS = "龙源美生";
97 98  
98 99 private static final String ADMIN = "管理员";
... ... @@ -1494,5 +1495,93 @@
1494 1495 Long seq = usersService.getBabySeq(year);
1495 1496 return String.valueOf(seq);
1496 1497 }
  1498 +
  1499 + //his对接接口登录验证
  1500 +
  1501 + @RequestMapping(value = "/hisAbutting", method = RequestMethod.POST)
  1502 + public void login(@RequestParam(value = "hisId") String hisId,
  1503 + @RequestParam(value = "idNumber", required = false)String idNumber,
  1504 + HttpServletResponse response,
  1505 + HttpServletRequest request) {
  1506 + Map<String, Object> resultMsgMap = new HashMap<>();
  1507 +
  1508 + String idNumbers = null;
  1509 + if (idNumber!=null){
  1510 + idNumbers =idNumber;
  1511 + }
  1512 + UsersQuery usersQuery = new UsersQuery();
  1513 + usersQuery.setYn(YnEnums.YES.getId());
  1514 + Users users = usersService.queryUsers3(hisId);
  1515 + System.out.println(users.toString());
  1516 +
  1517 + if((StringUtils.isEmpty(users.getAccount()) && StringUtils.isEmpty(hisId))){
  1518 + resultMsgMap.put(ResultUtils.ERROR_CODE, ConstantInterface.PARAMETER_ERROR);//参数错误
  1519 + resultMsgMap.put(ResultUtils.ERROR_MSG, "登录账户或者验证码为空,请输入");
  1520 + writeJson(response, JsonUtil.obj2JsonString(resultMsgMap));
  1521 + }
  1522 +
  1523 + if (users == null) {
  1524 + ResultUtils.buildParameterErrorResultAndWrite(response, "该账户不存在");
  1525 + return;
  1526 + }
  1527 +
  1528 +
  1529 + if (!users.getEnable().equals(1)) {
  1530 + ResultUtils.buildParameterErrorResultAndWrite(response, "该账户已被禁用");
  1531 + return;
  1532 + }
  1533 +
  1534 +
  1535 + String ip = IpUtils.getIpAddress(request);
  1536 + if ("xxx".equals(users.getRemarks())) {
  1537 + if ("2100001452".equals(users.getOrgId().toString()) && "10.0.61.50".equals(ip)) {
  1538 + ResultUtils.buildParameterErrorResultAndWrite(response, "");
  1539 + return;
  1540 + }
  1541 + }
  1542 +
  1543 + if (null != users.getOrgId()) {
  1544 + Organization organization = organizationService.getOrganization(users.getOrgId());
  1545 + if (null != organization) {
  1546 + if (null != organization.getStatus() && HospitalStatusEnums.TZYX.getId() == organization.getStatus()) {
  1547 + ResultUtils.buildParameterErrorResultAndWrite(response, "该账户已被禁用");
  1548 + return;
  1549 + }
  1550 + }
  1551 + }
  1552 +
  1553 + String account=users.getAccount();
  1554 + String password= users.getPwd();
  1555 + String code = null;
  1556 + LoginContext loginContext = new LoginContext();
  1557 + loginContext.setErrormsg("服务器内部错误!");
  1558 + loginContext = iSessionProvider.login(account, password, code);
  1559 + /* if(null != code) {
  1560 + loginContext =LoginUtil.loginByPhone(account, code, typeId, token);
  1561 + }
  1562 + if(null != password) {
  1563 + loginContext = LoginUtil.loginByAccount(account, password, typeId, token);
  1564 + }*/
  1565 +
  1566 + if (null != loginContext && loginContext.getErrorcode().equals(0)) {
  1567 + if (users.getLastLoginTime() != null) {
  1568 + Users users1 = new Users();
  1569 + users1.setId(users.getId());
  1570 + users1.setLastLoginTime(new Date());
  1571 + usersService.updateUsers(users1);
  1572 +
  1573 + operateLogFacade.addAddOptLog(users.getId(), users.getOrgId(), users, OptActionEnums.ADD.getId(), "登陆成功");
  1574 + }
  1575 +
  1576 + Map<String, Object> result = new HashMap<>();
  1577 + result.put("token", loginContext.getToken());
  1578 + result.put("IdNumber",idNumbers);
  1579 + ResultUtils.buildSuccessResultAndWrite(response, result);
  1580 + } else {
  1581 + ResultUtils.buildResultAndWrite(response, ErrorCodeConstants.PARAMETER_ERROR, loginContext.getErrormsg());
  1582 + }
  1583 +
  1584 + }
  1585 +
1497 1586 }