Commit 3d518cfba507e41b6515c405d457349120334f80
1 parent
c74bede62f
Exists in
master
and in
3 other branches
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
- platform-biz-service/src/main/java/com/lyms/platform/permission/model/Users.java
- platform-biz-service/src/main/java/com/lyms/platform/permission/service/UsersService.java
- platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/UsersServiceImpl.java
- platform-biz-service/src/main/resources/mainOrm/master/MasterUsers.xml
- platform-common/src/main/java/com/lyms/platform/common/utils/LoginUtil.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/UsersController.java
platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/MasterUsersMapper.java
View file @
3d518cf
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
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 | } |