|
|
@@ -2,6 +2,7 @@ package org.jeecg.modules.app.service.impl;
|
|
|
|
|
|
import cn.binarywang.wx.miniapp.api.WxMaService;
|
|
|
import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
|
|
|
+import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo;
|
|
|
import cn.binarywang.wx.miniapp.util.WxMaConfigHolder;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import lombok.extern.log4j.Log4j2;
|
|
|
@@ -54,10 +55,6 @@ public class UserServiceImpl implements IUserService {
|
|
|
@Resource
|
|
|
private SysAnnouncementMapper sysAnnouncementMapper;
|
|
|
@Resource
|
|
|
- private SysDepartMapper sysDepartMapper;
|
|
|
- @Resource
|
|
|
- private SysUserDepartMapper sysUserDepartMapper;
|
|
|
- @Resource
|
|
|
private FamilyMembersMapper familyMembersMapper;
|
|
|
@Resource
|
|
|
private SecurityManager securityManager;
|
|
|
@@ -92,7 +89,12 @@ public class UserServiceImpl implements IUserService {
|
|
|
if (!result) {
|
|
|
throw new JeecgBootException("登录失败", SC_INTERNAL_SERVER_ERROR_500);
|
|
|
}
|
|
|
- familyMembersMapper.insert(new FamilyMembers().setDelFlag(0).setUserId(user.getId()).setUserType(0).setRealNameStatus(0));
|
|
|
+ sysUserMapper.updateById(user);
|
|
|
+ if(user.getPhone() != null && familyMembersMapper.selectOne(Wrappers.<FamilyMembers>lambdaQuery()
|
|
|
+ .eq(FamilyMembers::getUserId,user.getId())
|
|
|
+ .eq(FamilyMembers::getUserType,0)) == null ){
|
|
|
+ familyMembersMapper.insert(new FamilyMembers().setDelFlag(0).setUserId(user.getId()).setUserType(0).setRealNameStatus(0));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return generateLoginUserVO(user);
|
|
|
@@ -103,6 +105,20 @@ public class UserServiceImpl implements IUserService {
|
|
|
WxMaConfigHolder.remove(); // 清理ThreadLocal
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean getMobilePhone(String code) {
|
|
|
+ try {
|
|
|
+ WxMaPhoneNumberInfo phoneNoInfo = wxMaService.getUserService().getPhoneNoInfo(code);
|
|
|
+ LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
+ SysUser sysUser = sysUserMapper.selectById(user.getId());
|
|
|
+ sysUser.setPhone(phoneNoInfo.getPhoneNumber());
|
|
|
+ } catch (WxErrorException e) {
|
|
|
+ throw new RuntimeException(e);
|
|
|
+ }
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
private String generateRandomString(int letterCount, int digitCount) {
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
String letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|