Browse Source

用户登录没有登名的情况下用手机号

v3
蟑螂恶霸 2 years ago
parent
commit
cf41feda29
  1. 8
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/feign/UserApiImpl.java
  2. 1
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/mapper/UserMapper.java
  3. 6
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/resources/mapper/system/UserMapper.xml
  4. 22
      lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/ThirdLoginServiceImpl.java
  5. 1
      lib/EmergencyServiceApi/emergencyAuthServiceApi/src/main/java/com/zdxt/auth/feign/UserApi.java

8
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/feign/UserApiImpl.java

@ -166,6 +166,14 @@ public class UserApiImpl implements UserApi {
return userBean;
}
@Override
public UserBean getUserByUserPhone(String phone) {
User user = userMapper.selectUserByUserPhone(phone);
UserBean userBean = new UserBean();
BeanUtil.copyProperties(user, userBean);
return userBean;
}
/*@Override
public List<UserBean> getUserListByNoPermission(UserBean userBean) {
User user=new User();

1
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/user/mapper/UserMapper.java

@ -61,6 +61,7 @@ public interface UserMapper
* @return 用户对象信息
*/
public User selectUserByLoginName(String userName);
public User selectUserByUserPhone(String phone);
/**
* 通过手机号码查询用户

6
lib/EmergencyService/zdxtEmergencyAuthService/src/main/resources/mapper/system/UserMapper.xml

@ -259,6 +259,12 @@
and u.del_flag = 0
</select>
<select id="selectUserByUserPhone" parameterType="String" resultMap="UserResult">
<include refid="selectUserVo"/>
where u.phonenumber = #{phone}
and u.del_flag = 0
</select>
<select id="selectUserByPhoneNumber" parameterType="String" resultMap="UserResult">
<include refid="selectUserVo"/>
where u.phonenumber = #{phonenumber}

22
lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/ThirdLoginServiceImpl.java

@ -19,6 +19,7 @@ import com.zdxt.code.utils.ServiceInvocation;
import com.zdxt.common.util.IdCardCryptoUtil;
import com.zdxt.common.ZDResponse;
import com.zdxt.common.util.DateUtils;
import com.zdxt.common.util.StringUtils;
import com.zdxt.common.util.UserConstants;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.SecurityUtils;
@ -67,12 +68,27 @@ public class ThirdLoginServiceImpl implements ThirdLoginService {
@Override
public ZDResponse siqLogin(JSONObject jsonObject) {
try {
UserBean user = null;
//查询登录用户
log.info("用户名:{}",jsonObject.getString("account"));
UserBean user = userApi.getUserByUserLoginName(jsonObject.getString("account"));
if (StringUtils.isNotEmpty(jsonObject.getString("account"))) {
log.info("用户名:{}",jsonObject.getString("account"));
user = userApi.getUserByUserLoginName(jsonObject.getString("account"));
}
if (null == user || StringUtils.isEmpty(user.getLoginName())) {
// 电话号码解密并获取用户
String phone = IdCardCryptoUtil.symmetricDecryptIdCard(srzSecretKey, jsonObject.getString("phone"));
log.info("电话号码:{}",phone);
user = userApi.getUserByUserPhone(phone);
}
//本系统令牌
// UsernamePasswordToken sysToken = new UsernamePasswordToken(user.getLoginName(), user.getPassword(), false);
UserToken sysToken = new UserToken(user.getLoginName(), LoginType.NOPASSWD);
UserToken sysToken = null;
if (null != user && StringUtils.isEmpty(user.getLoginName())) {
sysToken = new UserToken(user.getLoginName(), LoginType.NOPASSWD);
}
if (null != user || StringUtils.isEmpty(user.getPhonenumber())) {
sysToken = new UserToken(user.getPhonenumber(), LoginType.NOPASSWD);
}
Subject subject = SecurityUtils.getSubject();
subject.login(sysToken);
user.setEnterpriseNumber(jsonObject.getString("corpCid"));

1
lib/EmergencyServiceApi/emergencyAuthServiceApi/src/main/java/com/zdxt/auth/feign/UserApi.java

@ -43,6 +43,7 @@ public interface UserApi {
@GetMapping("/getUserByLoginName")
@ApiOperation("获取用户管理信息列表")
public UserBean getUserByUserLoginName(String loginName);
public UserBean getUserByUserPhone(String phone);
@GetMapping("/selectUserByName")
@ApiOperation("获取用户管理信息列表")

Loading…
Cancel
Save