行政人员微信自动登入
This commit is contained in:
parent
69acfa4d17
commit
2770ff5cf9
|
@ -33,6 +33,14 @@ public class CeesAdminInfo implements Serializable {
|
||||||
@TableId(type = IdType.ASSIGN_ID)
|
@TableId(type = IdType.ASSIGN_ID)
|
||||||
@ApiModelProperty(value = "id")
|
@ApiModelProperty(value = "id")
|
||||||
private Integer id;
|
private Integer id;
|
||||||
|
/**
|
||||||
|
* openid
|
||||||
|
*/
|
||||||
|
private String openId;
|
||||||
|
/**
|
||||||
|
* UnionID
|
||||||
|
*/
|
||||||
|
private String unionId;
|
||||||
/**工号*/
|
/**工号*/
|
||||||
@Excel(name = "工号", width = 15)
|
@Excel(name = "工号", width = 15)
|
||||||
@ApiModelProperty(value = "工号")
|
@ApiModelProperty(value = "工号")
|
||||||
|
@ -47,10 +55,10 @@ public class CeesAdminInfo implements Serializable {
|
||||||
private String userId;
|
private String userId;
|
||||||
/**用户专业id*/
|
/**用户专业id*/
|
||||||
@Excel(name = "用户专业Id", width = 15)
|
@Excel(name = "用户专业Id", width = 15)
|
||||||
@ApiModelProperty(value = "用户专业id")
|
@ApiModelProperty(value = "用户专业Id")
|
||||||
private String userMajorId;
|
private String userMajorId;
|
||||||
/**专业id,0表示未选择*/
|
/**专业id,0表示未选择*/
|
||||||
@Excel(name = "专业id,0表示未选择", width = 15)
|
// @Excel(name = "专业id,0表示未选择", width = 15)
|
||||||
@ApiModelProperty(value = "专业id,0表示未选择 语文|政治|地理|历史")
|
@ApiModelProperty(value = "专业id,0表示未选择 语文|政治|地理|历史")
|
||||||
private Integer majorId;
|
private Integer majorId;
|
||||||
/**组别*/
|
/**组别*/
|
||||||
|
|
|
@ -135,11 +135,26 @@ public class CeesUserServiceImpl extends ServiceImpl<CeesUserMapper, CeesUser> i
|
||||||
adminInfoLambdaQueryWrapper.eq(CeesAdminInfo::getUserId, user.getUserId());
|
adminInfoLambdaQueryWrapper.eq(CeesAdminInfo::getUserId, user.getUserId());
|
||||||
CeesAdminInfo ceesAdminInfo = ceesAdminInfoMapper.selectOne(adminInfoLambdaQueryWrapper);
|
CeesAdminInfo ceesAdminInfo = ceesAdminInfoMapper.selectOne(adminInfoLambdaQueryWrapper);
|
||||||
if (ceesAdminInfo != null) {
|
if (ceesAdminInfo != null) {
|
||||||
|
|
||||||
|
if(StringUtils.isEmpty(ceesAdminInfo.getOpenId())){
|
||||||
|
ceesAdminInfo.setOpenId(ceesUser.getOpenId());
|
||||||
|
ceesAdminInfo.setUnionId(ceesUser.getUnionId());
|
||||||
|
ceesAdminInfoMapper.updateById(ceesAdminInfo);
|
||||||
|
return Result.error("正在进行数据关联!请5秒后刷新页面或退出重进!!");
|
||||||
|
}
|
||||||
|
if(ceesAdminInfo.getOpenId().equals(ceesUser.getOpenId()) && StringUtils.isEmpty(ceesAdminInfo.getUnionId())){
|
||||||
|
ceesAdminInfo.setUnionId(ceesUser.getUnionId());
|
||||||
|
ceesAdminInfoMapper.updateById(ceesAdminInfo);
|
||||||
|
}
|
||||||
|
if(ceesAdminInfo.getOpenId().equals(ceesUser.getOpenId())){
|
||||||
JSONObject jsonObject = new JSONObject();
|
JSONObject jsonObject = new JSONObject();
|
||||||
jsonObject.put("userId", user.getUserId());
|
jsonObject.put("userId", user.getUserId());
|
||||||
jsonObject.put("router", "/leaderShip");
|
jsonObject.put("router", "/leaderShip");
|
||||||
jsonObject.put("status", "2"); //无需填写信息
|
jsonObject.put("status", "2"); //无需填写信息
|
||||||
return Result.ok(jsonObject);
|
return Result.ok(jsonObject);
|
||||||
|
}else {
|
||||||
|
return Result.error("检测到当前微信非首次登录身份识别码使用的微信,请使用原微信登入,如有疑问,请联系学院管理员!!");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
return Result.error("管理员账号还未申请通过!");
|
return Result.error("管理员账号还未申请通过!");
|
||||||
}
|
}
|
||||||
|
@ -244,6 +259,8 @@ public class CeesUserServiceImpl extends ServiceImpl<CeesUserMapper, CeesUser> i
|
||||||
if(ceesWaiTeacher.getOpenId().equals(ceesUser.getOpenId()) && StringUtils.isEmpty(ceesWaiTeacher.getUnionId())){
|
if(ceesWaiTeacher.getOpenId().equals(ceesUser.getOpenId()) && StringUtils.isEmpty(ceesWaiTeacher.getUnionId())){
|
||||||
ceesWaiTeacher.setUnionId(ceesUser.getUnionId());
|
ceesWaiTeacher.setUnionId(ceesUser.getUnionId());
|
||||||
ceesWaiTeacherMapper.updateById(ceesWaiTeacher);
|
ceesWaiTeacherMapper.updateById(ceesWaiTeacher);
|
||||||
|
user.setUnionId(ceesUser.getUnionId());
|
||||||
|
ceesUserMapper.updateById(user);
|
||||||
}
|
}
|
||||||
if(ceesWaiTeacher.getOpenId().equals(ceesUser.getOpenId())){
|
if(ceesWaiTeacher.getOpenId().equals(ceesUser.getOpenId())){
|
||||||
JSONObject jsonObject = new JSONObject();
|
JSONObject jsonObject = new JSONObject();
|
||||||
|
@ -435,20 +452,34 @@ public class CeesUserServiceImpl extends ServiceImpl<CeesUserMapper, CeesUser> i
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Result<?> checkUserByEmployeeCode(CeesAdminInfo ceesAdminInfo) {
|
public Result<?> checkUserByEmployeeCode(CeesAdminInfo ceesAdminInfo) {
|
||||||
|
|
||||||
LambdaQueryWrapper<CeesAdminInfo> adminInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<CeesAdminInfo> adminInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
adminInfoLambdaQueryWrapper.eq(CeesAdminInfo::getUserId, ceesAdminInfo.getUserId())
|
adminInfoLambdaQueryWrapper.eq(CeesAdminInfo::getUserId, ceesAdminInfo.getUserId())
|
||||||
.eq(CeesAdminInfo::getWorkNumber, ceesAdminInfo.getWorkNumber());
|
.eq(CeesAdminInfo::getWorkNumber, ceesAdminInfo.getWorkNumber());
|
||||||
CeesAdminInfo ceesAdminInfodata = ceesAdminInfoMapper.selectOne(adminInfoLambdaQueryWrapper);
|
CeesAdminInfo ceesAdminInfodata = ceesAdminInfoMapper.selectOne(adminInfoLambdaQueryWrapper);
|
||||||
if (ceesAdminInfodata != null) {
|
if (ceesAdminInfo != null) {
|
||||||
|
if(StringUtils.isEmpty(ceesAdminInfodata.getOpenId())){
|
||||||
|
ceesAdminInfodata.setOpenId(ceesAdminInfo.getOpenId());
|
||||||
|
ceesAdminInfodata.setUnionId(ceesAdminInfo.getUnionId());
|
||||||
|
ceesAdminInfoMapper.updateById(ceesAdminInfodata);
|
||||||
|
return Result.error("正在进行数据关联!请5秒后刷新页面或退出重进!!");
|
||||||
|
}
|
||||||
|
if(ceesAdminInfodata.getOpenId().equals(ceesAdminInfo.getOpenId()) && StringUtils.isEmpty(ceesAdminInfodata.getUnionId())){
|
||||||
|
ceesAdminInfodata.setUnionId(ceesAdminInfo.getUnionId());
|
||||||
|
ceesAdminInfoMapper.updateById(ceesAdminInfodata);
|
||||||
|
}
|
||||||
|
if(ceesAdminInfodata.getOpenId().equals(ceesAdminInfo.getOpenId())){
|
||||||
JSONObject jsonObject = new JSONObject();
|
JSONObject jsonObject = new JSONObject();
|
||||||
jsonObject.put("userId", ceesAdminInfodata.getUserId());
|
jsonObject.put("userId", ceesAdminInfodata.getUserId());
|
||||||
jsonObject.put("router", "/leaderShip");
|
jsonObject.put("router", "/leaderShip");
|
||||||
jsonObject.put("status", "2"); //无需填写信息
|
jsonObject.put("status", "2"); //无需填写信息
|
||||||
return Result.ok(jsonObject);
|
return Result.ok(jsonObject);
|
||||||
}else {
|
}else {
|
||||||
return Result.error("管理员账号还未申请通过!");
|
return Result.error("检测到当前微信非首次登录身份识别码使用的微信,请使用原微信登入,如有疑问,请联系学院管理员!!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String removeByUserId(String userId) {
|
public String removeByUserId(String userId) {
|
||||||
|
|
|
@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
import org.jeecg.modules.entity.*;
|
import org.jeecg.modules.entity.*;
|
||||||
import org.jeecg.modules.mapper.*;
|
import org.jeecg.modules.mapper.*;
|
||||||
|
@ -146,18 +147,30 @@ public class WeChantServiceImpl implements WeChantService {
|
||||||
// * 1.按照openid来查询当前用户的账号和身份
|
// * 1.按照openid来查询当前用户的账号和身份
|
||||||
// * 2.如果账号存在则直接进入到主页面,如果不存在让用户输入信息
|
// * 2.如果账号存在则直接进入到主页面,如果不存在让用户输入信息
|
||||||
// */
|
// */
|
||||||
|
String userId = null;
|
||||||
|
Integer identity = null;
|
||||||
LambdaQueryWrapper<CeesUser> ceesUserQuery = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<CeesUser> ceesUserQuery = new LambdaQueryWrapper<>();
|
||||||
ceesUserQuery.eq(CeesUser::getOpenId, openId);
|
ceesUserQuery.eq(CeesUser::getOpenId, openId);
|
||||||
CeesUser user = ceesUserMapper.selectOne(ceesUserQuery);
|
CeesUser user = ceesUserMapper.selectOne(ceesUserQuery);
|
||||||
// //TODO:未处理
|
//行政人员
|
||||||
if (user == null) {
|
LambdaQueryWrapper<CeesAdminInfo> admin = new LambdaQueryWrapper<>();
|
||||||
|
admin.eq(CeesAdminInfo::getOpenId, openId);
|
||||||
|
CeesAdminInfo adminUser = ceesAdminInfoMapper.selectOne(admin);
|
||||||
|
//TODO:未处理
|
||||||
|
if (user == null && adminUser == null) {
|
||||||
// 说明还没注册过-》把他引导去填写身份识别码
|
// 说明还没注册过-》把他引导去填写身份识别码
|
||||||
return Result.ok("/home");
|
return Result.ok("/home");
|
||||||
|
|
||||||
}
|
}
|
||||||
String userId = user.getUserId();
|
if (adminUser != null) {
|
||||||
Integer identity = user.getIdentity();
|
userId = adminUser.getUserId();
|
||||||
|
ceesUserQuery.clear();
|
||||||
|
ceesUserQuery.eq(CeesUser::getUserId, userId);
|
||||||
|
user = ceesUserMapper.selectOne(ceesUserQuery);
|
||||||
|
identity = user.getIdentity();
|
||||||
|
}else{
|
||||||
|
userId = user.getUserId();
|
||||||
|
identity = user.getIdentity();
|
||||||
|
}
|
||||||
// 检查四个身份
|
// 检查四个身份
|
||||||
switch (identity) {
|
switch (identity) {
|
||||||
// 管理员1, 学生2,老师 3 ,外校老师4
|
// 管理员1, 学生2,老师 3 ,外校老师4
|
||||||
|
@ -165,7 +178,7 @@ public class WeChantServiceImpl implements WeChantService {
|
||||||
LambdaQueryWrapper<CeesAdminInfo> H5AdminInfoWreapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<CeesAdminInfo> H5AdminInfoWreapper = new LambdaQueryWrapper<>();
|
||||||
H5AdminInfoWreapper.eq(CeesAdminInfo::getUserId, userId);
|
H5AdminInfoWreapper.eq(CeesAdminInfo::getUserId, userId);
|
||||||
CeesAdminInfo ceesAdminInfo = ceesAdminInfoMapper.selectOne(H5AdminInfoWreapper);
|
CeesAdminInfo ceesAdminInfo = ceesAdminInfoMapper.selectOne(H5AdminInfoWreapper);
|
||||||
if (ceesAdminInfo != null) {
|
if (ceesAdminInfo != null && ceesAdminInfo.getOpenId().equals(openId)) {
|
||||||
// 返回整个user
|
// 返回整个user
|
||||||
HashMap<String, Object> map = new HashMap<>();
|
HashMap<String, Object> map = new HashMap<>();
|
||||||
map.put("user", ceesAdminInfo);
|
map.put("user", ceesAdminInfo);
|
||||||
|
@ -213,8 +226,8 @@ public class WeChantServiceImpl implements WeChantService {
|
||||||
//外校老师4
|
//外校老师4
|
||||||
case 4:
|
case 4:
|
||||||
LambdaQueryWrapper<CeesWaiTeacher> h5WaiTeacherWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<CeesWaiTeacher> h5WaiTeacherWrapper = new LambdaQueryWrapper<>();
|
||||||
h5WaiTeacherWrapper.eq(CeesWaiTeacher::getOpenId, openId);
|
h5WaiTeacherWrapper.eq(CeesWaiTeacher::getOpenId, openId)
|
||||||
h5WaiTeacherWrapper.eq(CeesWaiTeacher::getUserId, userId);
|
.eq(CeesWaiTeacher::getUserId, userId);
|
||||||
CeesWaiTeacher h5WaiTeacher = ceesWaiTeacherMapper.selectOne(h5WaiTeacherWrapper);
|
CeesWaiTeacher h5WaiTeacher = ceesWaiTeacherMapper.selectOne(h5WaiTeacherWrapper);
|
||||||
if (h5WaiTeacher != null && h5WaiTeacher.getOpenId().equals(openId)) {
|
if (h5WaiTeacher != null && h5WaiTeacher.getOpenId().equals(openId)) {
|
||||||
// 说明已经填写过个人信息了直接放行到主页面
|
// 说明已经填写过个人信息了直接放行到主页面
|
||||||
|
|
Loading…
Reference in New Issue