新增了hcp登录1

This commit is contained in:
wucongxing8150 2025-06-16 09:30:05 +08:00
parent 92d2483425
commit 72ebcefef7
2 changed files with 12 additions and 85 deletions

View File

@ -50,7 +50,7 @@ public class PublicController {
@PostMapping("/login/hcp") @PostMapping("/login/hcp")
public Response<LoginDto> loginHcp(@Validated() @ModelAttribute LoginHcpRequest request) { public Response<LoginDto> loginHcp(@Validated() @ModelAttribute LoginHcpRequest request) {
// 用户登陆 // 用户登陆
LoginDto g = userService.UserLoginWithAppToken(request.getToken()); LoginDto g = userService.UserLoginWithApp(request.getToken());
return Response.success(g); return Response.success(g);
} }

View File

@ -52,7 +52,8 @@ public class UserService {
@Transactional @Transactional
public LoginDto UserLoginWithMobile(String phone) throws BusinessException { public LoginDto UserLoginWithMobile(String phone) throws BusinessException {
// 获取app用户数据 // 获取app用户数据
UserModel user = GetAppUserInfoByPhone(phone); GetUserInfoResponse result = userInfo.getUserInfoByMobile(phone);
UserModel user = GetAppUserInfo(result);
// 生成jwt // 生成jwt
String token = jwtUtil.createToken(String.valueOf(user.getUserId())); String token = jwtUtil.createToken(String.valueOf(user.getUserId()));
@ -76,15 +77,13 @@ public class UserService {
} }
/** /**
* 用户登陆-appToken * 用户登陆-app
* @param appToken 1 * @param appToken 1
* @return
* @throws BusinessException
*/ */
@Transactional @Transactional
public LoginDto UserLoginWithAppToken(String appToken) throws BusinessException { public LoginDto UserLoginWithApp(String appToken) throws BusinessException {
// 获取app用户数据 GetUserInfoResponse result = userInfo.getUserInfoByToken(appToken);
UserModel user = GetAppUserInfoByToken(appToken); UserModel user = GetAppUserInfo(result);
// 生成jwt // 生成jwt
String token = jwtUtil.createToken(String.valueOf(user.getUserId())); String token = jwtUtil.createToken(String.valueOf(user.getUserId()));
@ -107,89 +106,17 @@ public class UserService {
return g; return g;
} }
/** /**
* 获取app用户数据-手机号 * 获取app用户数据
* @param phone 手机号
* @return UserModel * @return UserModel
*/ */
public UserModel GetAppUserInfoByPhone(String phone) throws BusinessException { public UserModel GetAppUserInfo(GetUserInfoResponse r) throws BusinessException {
// 请求接口获取数据 GetUserInfoResponse.ResponsData data = r.getData();
GetUserInfoResponse result = userInfo.getUserInfoByMobile(phone);
GetUserInfoResponse.ResponsData data = result.getData();
// 查询数据库用户信息 // 查询数据库用户信息
LambdaQueryWrapper<UserModel> userModelWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<UserModel> userModelWrapper = new LambdaQueryWrapper<>();
userModelWrapper.eq(UserModel::getUserIden, result.getData().getUuid()); userModelWrapper.eq(UserModel::getUserIden, r.getData().getUuid());
UserModel user = userDao.selectOne(userModelWrapper);
if (user == null){
// 构造 UserModel 对象
user = new UserModel();
user.setUserIden(data.getUuid());
user.setUserName(data.getRealname());
user.setUserMobile(data.getMobile());
user.setMobileEncryption(SecureUtil.md5(data.getMobile()));
user.setStatus(1);
user.setRegisterSource(2);
user.setOpenId("");
user.setUnionId("");
user.setSex(0);
user.setAvatar(data.getPhoto());
user.setDepartmentName(data.getOfficeName());
user.setTitle(StringToInt.DoctorTitleToInt(data.getPositionName()));
user.setAddress(data.getProvName());
save(user);
}else{
if (!Objects.equals(user.getUserName(), data.getRealname())){
user.setUserName(data.getRealname());
}
if (!Objects.equals(user.getUserMobile(), data.getMobile())){
user.setUserMobile(data.getMobile());
user.setMobileEncryption(SecureUtil.md5(data.getMobile()));
}
if (!Objects.equals(user.getTitle(), StringToInt.DoctorTitleToInt(data.getOfficeName()))){
user.setTitle(StringToInt.DoctorTitleToInt(data.getOfficeName()));
}
if (!Objects.equals(user.getDepartmentName(), data.getOfficeName())){
user.setDepartmentName(data.getOfficeName());
}
if (!Objects.equals(user.getAddress(), data.getProvName())){
user.setAddress(data.getProvName());
}
userDao.updateById(user);
}
// 获取app医院数据
BasicHospitalModel basicHospital = GetAppHospital(data.getHospitalUuid());
// 修改用户所属医院
if (!Objects.equals(user.getHospitalId(), basicHospital.getHospitalId())){
UserModel updateUser = new UserModel();
updateUser.setUserId(user.getUserId());
updateUser.setHospitalId(basicHospital.getHospitalId());
userDao.updateById(updateUser);
}
return user;
}
/**
* 获取app用户数据-token
* @param token token
* @return UserModel
*/
public UserModel GetAppUserInfoByToken(String token) throws BusinessException {
// 请求接口获取数据
GetUserInfoResponse result = userInfo.getUserInfoByToken(token);
GetUserInfoResponse.ResponsData data = result.getData();
// 查询数据库用户信息
LambdaQueryWrapper<UserModel> userModelWrapper = new LambdaQueryWrapper<>();
userModelWrapper.eq(UserModel::getUserIden, result.getData().getUuid());
UserModel user = userDao.selectOne(userModelWrapper); UserModel user = userDao.selectOne(userModelWrapper);
if (user == null){ if (user == null){
// 构造 UserModel 对象 // 构造 UserModel 对象