update 企业管理员登录
This commit is contained in:
+14
@@ -0,0 +1,14 @@
|
|||||||
|
package com.jero.common.constant.enums;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author liJiaRao
|
||||||
|
* @date 2022-08-15 10:27
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@AllArgsConstructor
|
||||||
|
public enum LoginUserTypeEnum {
|
||||||
|
system_, company_management_, company_
|
||||||
|
}
|
||||||
+9
@@ -109,6 +109,15 @@ public class ShiroConfig {
|
|||||||
filterChainDefinitionMap.put("/company/WCLogin", "anon");//微信登录
|
filterChainDefinitionMap.put("/company/WCLogin", "anon");//微信登录
|
||||||
filterChainDefinitionMap.put("/company/jscode2session", "anon");//微信登录凭证校验
|
filterChainDefinitionMap.put("/company/jscode2session", "anon");//微信登录凭证校验
|
||||||
|
|
||||||
|
filterChainDefinitionMap.put("/companyManager/login", "anon");//登录接口排除
|
||||||
|
filterChainDefinitionMap.put("/companyManager/smsLogin", "anon");//短信登录接口排除
|
||||||
|
filterChainDefinitionMap.put("/companyManager/logout", "anon");//登出接口排除
|
||||||
|
filterChainDefinitionMap.put("/companyManager/verificationChangePassword", "anon");//短信验证码修改密码
|
||||||
|
filterChainDefinitionMap.put("/companyManager/changePasswordWithToken", "anon");//token修改密码
|
||||||
|
filterChainDefinitionMap.put("/companyManager/sendVerificationCode", "anon");//企业端发送验证码
|
||||||
|
filterChainDefinitionMap.put("/companyManager/WCLogin", "anon");//微信登录
|
||||||
|
filterChainDefinitionMap.put("/companyManager/jscode2session", "anon");//微信登录凭证校验
|
||||||
|
|
||||||
|
|
||||||
//和会员系统交互的接口
|
//和会员系统交互的接口
|
||||||
//filterChainDefinitionMap.put("/meeting/payMeeting/addStandards","anon");//会员系统推送会议
|
//filterChainDefinitionMap.put("/meeting/payMeeting/addStandards","anon");//会员系统推送会议
|
||||||
|
|||||||
+29
-18
@@ -1,6 +1,7 @@
|
|||||||
package com.jero.config.shiro;
|
package com.jero.config.shiro;
|
||||||
|
|
||||||
import cn.hutool.crypto.SecureUtil;
|
import cn.hutool.crypto.SecureUtil;
|
||||||
|
import com.jero.common.constant.enums.LoginUserTypeEnum;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.shiro.authc.AuthenticationException;
|
import org.apache.shiro.authc.AuthenticationException;
|
||||||
import org.apache.shiro.authc.AuthenticationInfo;
|
import org.apache.shiro.authc.AuthenticationInfo;
|
||||||
@@ -144,26 +145,36 @@ public class ShiroRealm extends AuthorizingRealm {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public boolean jwtTokenRefresh(String token, String userName, String passWord) {
|
public boolean jwtTokenRefresh(String token, String userName, String passWord) {
|
||||||
String cacheToken = String.valueOf(redisUtil.get(CommonConstant.PREFIX_USER_TOKEN + token));
|
if (userName.startsWith(LoginUserTypeEnum.company_management_.toString())){
|
||||||
if (oConvertUtils.isNotEmpty(cacheToken)) {
|
String cacheToken = String.valueOf(redisUtil.get(CommonConstant.PREFIX_USER_TOKEN + userName));
|
||||||
// 校验token有效性
|
if (oConvertUtils.isNotEmpty(cacheToken)) {
|
||||||
if (!JwtUtil.verify(cacheToken, userName, passWord)) {
|
// 校验token有效性
|
||||||
String newAuthorization = JwtUtil.sign(userName, passWord);
|
if (!JwtUtil.verify(cacheToken, userName, passWord)) {
|
||||||
// 设置超时时间
|
//String newAuthorization = JwtUtil.sign(userName, passWord);
|
||||||
redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, newAuthorization);
|
// 设置超时时间
|
||||||
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME *2 / 1000);
|
//redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, newAuthorization);
|
||||||
log.debug("——————————用户在线操作,更新token保证不掉线—————————jwtTokenRefresh——————— "+ token);
|
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + userName, JwtUtil.EXPIRE_TIME *2 / 1000);
|
||||||
|
|
||||||
|
log.debug("——————————用户在线操作,更新token保证不掉线—————————jwtTokenRefresh——————— "+ token);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
//update-begin--Author:scott Date:20191005 for:解决每次请求,都重写redis中 token缓存问题
|
return false;
|
||||||
// else {
|
}else{
|
||||||
// // 设置超时时间
|
String cacheToken = String.valueOf(redisUtil.get(CommonConstant.PREFIX_USER_TOKEN + token));
|
||||||
// redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, cacheToken);
|
if (oConvertUtils.isNotEmpty(cacheToken)) {
|
||||||
// redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 1000);
|
// 校验token有效性
|
||||||
// }
|
if (!JwtUtil.verify(cacheToken, userName, passWord)) {
|
||||||
//update-end--Author:scott Date:20191005 for:解决每次请求,都重写redis中 token缓存问题
|
//String newAuthorization = JwtUtil.sign(userName, passWord);
|
||||||
return true;
|
// 设置超时时间
|
||||||
|
//redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, newAuthorization);
|
||||||
|
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME *2 / 1000);
|
||||||
|
log.debug("——————————用户在线操作,更新token保证不掉线—————————jwtTokenRefresh——————— "+ token);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+10
-17
@@ -5,22 +5,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
import com.jero.common.constant.CommonConstant;
|
import com.jero.common.constant.CommonConstant;
|
||||||
|
import com.jero.common.constant.enums.LoginUserTypeEnum;
|
||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
import com.jero.common.system.api.ISysBaseAPI;
|
import com.jero.common.system.api.ISysBaseAPI;
|
||||||
import com.jero.common.system.util.JwtUtil;
|
import com.jero.common.system.util.JwtUtil;
|
||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.common.util.*;
|
import com.jero.common.util.*;
|
||||||
import com.jero.company.entity.PayCompanyManagement;
|
import com.jero.company.entity.PayCompanyManagement;
|
||||||
import com.jero.company.entity.PayContactsManagement;
|
|
||||||
import com.jero.company.entity.PayManagerManagement;
|
import com.jero.company.entity.PayManagerManagement;
|
||||||
import com.jero.company.mapper.WxSecretMapper;
|
|
||||||
import com.jero.company.service.IPayCompanyManagementService;
|
import com.jero.company.service.IPayCompanyManagementService;
|
||||||
import com.jero.company.service.IPayContactsManagementService;
|
|
||||||
import com.jero.company.service.IPayManagerManagementService;
|
import com.jero.company.service.IPayManagerManagementService;
|
||||||
import com.jero.company.vo.CompanyLoginVO;
|
|
||||||
import com.jero.company.vo.CompanyManagerLoginVO;
|
import com.jero.company.vo.CompanyManagerLoginVO;
|
||||||
import com.jero.data.entity.PayCaseCouncilSubitem;
|
|
||||||
import com.jero.data.service.IPayCaseCouncilSubitemService;
|
|
||||||
import com.jero.modules.base.service.BaseCommonService;
|
import com.jero.modules.base.service.BaseCommonService;
|
||||||
import com.jero.modules.system.model.SysLoginModel;
|
import com.jero.modules.system.model.SysLoginModel;
|
||||||
import com.jero.modules.system.service.ISysDictService;
|
import com.jero.modules.system.service.ISysDictService;
|
||||||
@@ -228,15 +223,13 @@ public class CompanyManagerLoginController {
|
|||||||
if (oConvertUtils.isEmpty(token)) {
|
if (oConvertUtils.isEmpty(token)) {
|
||||||
return Result.error("退出登录失败!");
|
return Result.error("退出登录失败!");
|
||||||
}
|
}
|
||||||
String phone = JwtUtil.getUsername(token);
|
String username = JwtUtil.getUsername(token);
|
||||||
LambdaQueryWrapper<PayManagerManagement> queryWrapper = new LambdaQueryWrapper<>();
|
LoginUser sysUser = sysBaseAPI.getUserByName(username);
|
||||||
queryWrapper.eq(PayManagerManagement::getPhone, phone);
|
if (sysUser != null) {
|
||||||
PayManagerManagement managerManagement = payManagerManagementService.getOne(queryWrapper);
|
baseCommonService.addLog("手机号: " + PasswordUtil.decrypt(sysUser.getPhone()) + ",退出成功!", CommonConstant.LOG_TYPE_1, null, null);
|
||||||
if (managerManagement != null) {
|
log.info(" 企业端用户: " + sysUser.getRealname() + ",退出成功! ");
|
||||||
baseCommonService.addLog("手机号: " + PasswordUtil.decrypt(phone) + ",退出成功!", CommonConstant.LOG_TYPE_1, null, null);
|
|
||||||
log.info(" 企业端用户: " + managerManagement.getName() + ",退出成功! ");
|
|
||||||
//清空用户登录Token缓存
|
//清空用户登录Token缓存
|
||||||
redisUtil.del(CommonConstant.PREFIX_USER_TOKEN + token);
|
redisUtil.del(CommonConstant.PREFIX_USER_TOKEN + username);
|
||||||
//调用shiro的logout
|
//调用shiro的logout
|
||||||
SecurityUtils.getSubject().logout();
|
SecurityUtils.getSubject().logout();
|
||||||
return Result.OK("退出登录成功!");
|
return Result.OK("退出登录成功!");
|
||||||
@@ -320,10 +313,10 @@ public class CompanyManagerLoginController {
|
|||||||
managerManagement.setCompanyRole(one.getRoleCode());
|
managerManagement.setCompanyRole(one.getRoleCode());
|
||||||
}
|
}
|
||||||
// 生成token
|
// 生成token
|
||||||
String token = JwtUtil.sign(phone, syspassword);
|
String token = JwtUtil.sign(LoginUserTypeEnum.company_management_ + phone, syspassword);
|
||||||
// 设置token缓存有效时间
|
// 设置token缓存有效时间
|
||||||
redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token);
|
redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + LoginUserTypeEnum.company_management_ + phone, token);
|
||||||
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME * 2 / 1000);
|
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + LoginUserTypeEnum.company_management_ + phone, JwtUtil.EXPIRE_TIME * 2 / 1000);
|
||||||
|
|
||||||
JSONObject obj = new JSONObject();
|
JSONObject obj = new JSONObject();
|
||||||
obj.put("token", token);
|
obj.put("token", token);
|
||||||
|
|||||||
+3
@@ -66,6 +66,9 @@ public class PayManagerManagementController extends JeroController<PayManagerMan
|
|||||||
QueryWrapper<PayManagerManagement> queryWrapper = QueryGenerator.initQueryWrapper(payManagerManagement, req.getParameterMap());
|
QueryWrapper<PayManagerManagement> queryWrapper = QueryGenerator.initQueryWrapper(payManagerManagement, req.getParameterMap());
|
||||||
Page<PayManagerManagement> page = new Page<>(pageNo, pageSize);
|
Page<PayManagerManagement> page = new Page<>(pageNo, pageSize);
|
||||||
IPage<PayManagerManagement> pageList = payManagerManagementService.page(page, queryWrapper);
|
IPage<PayManagerManagement> pageList = payManagerManagementService.page(page, queryWrapper);
|
||||||
|
pageList.getRecords().forEach(record -> {
|
||||||
|
record.setPhone(PasswordUtil.decrypt(record.getPhone()));
|
||||||
|
});
|
||||||
return Result.OK(pageList);
|
return Result.OK(pageList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+181
@@ -0,0 +1,181 @@
|
|||||||
|
package com.jero.modules.pay.company.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
import com.jero.common.aspect.annotation.Dict;
|
||||||
|
import com.jero.common.util.superSearch.ConstantUtils;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import javax.validation.constraints.Pattern;
|
||||||
|
import javax.validation.constraints.Size;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 企业管理员管理
|
||||||
|
* @Author: jero-boot
|
||||||
|
* @Date: 2022-07-26
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("pay_manager_management")
|
||||||
|
@Accessors(chain = true)
|
||||||
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@ApiModel(value="pay_manager_management对象", description="企业管理员管理")
|
||||||
|
public class PayManagerManagement implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/**主键*/
|
||||||
|
@TableId(type = IdType.ASSIGN_ID)
|
||||||
|
@ApiModelProperty(value = "主键")
|
||||||
|
private String id;
|
||||||
|
|
||||||
|
/**企业id*/
|
||||||
|
@ApiModelProperty(value = "企业id")
|
||||||
|
@Size(max = 32, message = "企业id长度不能大于32个字符")
|
||||||
|
private String companyId;
|
||||||
|
|
||||||
|
/**企业名称(未审核状态下会多出5位,因此修改成55长度)*/
|
||||||
|
@Excel(name = "企业名称", width = 15)
|
||||||
|
@ApiModelProperty(value = "企业名称")
|
||||||
|
private String companyName;
|
||||||
|
|
||||||
|
/**姓名*/
|
||||||
|
@Excel(name = "姓名", width = 15)
|
||||||
|
@ApiModelProperty(value = "姓名")
|
||||||
|
@NotEmpty(message = "姓名不能为空")
|
||||||
|
@Size(max = 50, message = "姓名长度不能大于50个字符")
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
/**性别(1:男,2:女)*/
|
||||||
|
//@Excel(name = "性别", width = 15)
|
||||||
|
//@ApiModelProperty(value = "性别")
|
||||||
|
//@Dict(dicCode = "sex")
|
||||||
|
//private String gender;
|
||||||
|
|
||||||
|
/**职务*/
|
||||||
|
//@Excel(name = "职务", width = 15)
|
||||||
|
//@ApiModelProperty(value = "职务")
|
||||||
|
//@Size(max = 50, message = "职务长度不能大于50个字符")
|
||||||
|
//private String post;
|
||||||
|
|
||||||
|
/**手机号*/
|
||||||
|
@Excel(name = "手机号", width = 15)
|
||||||
|
@ApiModelProperty(value = "手机号")
|
||||||
|
@NotEmpty(message = "手机号不能为空")
|
||||||
|
@Pattern(regexp = ConstantUtils.TEL_PHONE,message = "手机号格式错误")
|
||||||
|
private String phone;
|
||||||
|
|
||||||
|
/**邮箱*/
|
||||||
|
//@Excel(name = "邮箱", width = 15)
|
||||||
|
//@ApiModelProperty(value = "邮箱")
|
||||||
|
//@Pattern(regexp = "^\\w[-\\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\\.)+[A-Za-z]{2,14}$",message = "邮箱格式错误")
|
||||||
|
//@NotEmpty(message = "邮箱不能为空")
|
||||||
|
//private String email;
|
||||||
|
|
||||||
|
/**邮箱授权码*/
|
||||||
|
//@ApiModelProperty(value = "邮箱授权码")
|
||||||
|
//private String emailPassword;
|
||||||
|
|
||||||
|
/**通讯地址*/
|
||||||
|
//@Excel(name = "通讯地址", width = 15)
|
||||||
|
//@ApiModelProperty(value = "通讯地址")
|
||||||
|
//@Size(max = 50, message = "通讯地址长度不能大于50个字符")
|
||||||
|
//@NotEmpty(message = "通讯地址不能为空")
|
||||||
|
//private String contactAddress;
|
||||||
|
|
||||||
|
/**邮政编码*/
|
||||||
|
//@Excel(name = "邮政编码", width = 15)
|
||||||
|
//@ApiModelProperty(value = "邮政编码")
|
||||||
|
//@Size(min=6,max = 6,message = "邮政编码长度必须为6个字符")
|
||||||
|
//@Pattern(regexp = "^[0-9]\\d{5}$",message = "邮政编码格式错误")
|
||||||
|
//@NotEmpty(message = "邮政编码不能为空")
|
||||||
|
//private String postalCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 密码
|
||||||
|
*/
|
||||||
|
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
|
||||||
|
private String password;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* md5密码盐
|
||||||
|
*/
|
||||||
|
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
|
||||||
|
private String salt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* openId
|
||||||
|
*/
|
||||||
|
private String openId;
|
||||||
|
|
||||||
|
/**备注*/
|
||||||
|
//@Excel(name = "备注", width = 15)
|
||||||
|
//@ApiModelProperty(value = "备注")
|
||||||
|
//@Size(max = 200, message = "备注长度不能大于200个字符")
|
||||||
|
//private String remarks;
|
||||||
|
|
||||||
|
/**创建人*/
|
||||||
|
@ApiModelProperty(value = "创建人")
|
||||||
|
private String createBy;
|
||||||
|
|
||||||
|
/**创建时间*/
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "创建时间")
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
/**更新人*/
|
||||||
|
@ApiModelProperty(value = "更新人")
|
||||||
|
private String updateBy;
|
||||||
|
|
||||||
|
/**更新时间*/
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty(value = "更新时间")
|
||||||
|
private Date updateTime;
|
||||||
|
|
||||||
|
/**删除状态 0:通过 1:未通过(会员系统审核状态)*/
|
||||||
|
@Excel(name = "删除状态 ", width = 15)
|
||||||
|
@ApiModelProperty(value = "删除状态 ")
|
||||||
|
private String delFlag;
|
||||||
|
|
||||||
|
/**用户名用于会员系统使用*/
|
||||||
|
@ApiModelProperty(value = "用户名用于会员系统使用")
|
||||||
|
private String username;
|
||||||
|
|
||||||
|
/**企业角色1:普通企业、2:会员企业*/
|
||||||
|
@Excel(name = "企业角色", width = 15)
|
||||||
|
@ApiModelProperty(value = "企业角色")
|
||||||
|
@Dict(dicCode = "company_role")
|
||||||
|
private String roleCode;
|
||||||
|
|
||||||
|
/**会员性质字段*/
|
||||||
|
@ApiModelProperty(value = "会员性质字段")
|
||||||
|
private String memberNature;
|
||||||
|
|
||||||
|
/**会员企业id*/
|
||||||
|
@ApiModelProperty(value = "会员企业id")
|
||||||
|
private String memberId;
|
||||||
|
|
||||||
|
/**企业角色1:普通企业、2:会员企业*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "企业角色1:普通企业、2:会员企业")
|
||||||
|
private String companyRole;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "RSA公钥")
|
||||||
|
private String rsaPublicKey;
|
||||||
|
|
||||||
|
}
|
||||||
+3
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.jero.modules.pay.company.entity.PayContactsManagement;
|
import com.jero.modules.pay.company.entity.PayContactsManagement;
|
||||||
|
import com.jero.modules.pay.company.entity.PayManagerManagement;
|
||||||
import com.jero.modules.system.entity.SysRole;
|
import com.jero.modules.system.entity.SysRole;
|
||||||
import com.jero.modules.system.vo.SysUserVo;
|
import com.jero.modules.system.vo.SysUserVo;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
@@ -166,6 +167,8 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
|
|||||||
|
|
||||||
PayContactsManagement getPayContactsManagementByPhone(@Param("username") String username);
|
PayContactsManagement getPayContactsManagementByPhone(@Param("username") String username);
|
||||||
|
|
||||||
|
PayManagerManagement getCompanyManagementByPhone(@Param("username") String username);
|
||||||
|
|
||||||
void forgetPassword(@Param("user") SysUser user);
|
void forgetPassword(@Param("user") SysUser user);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+5
@@ -212,4 +212,9 @@
|
|||||||
update sys_user set password = #{user.password}
|
update sys_user set password = #{user.password}
|
||||||
where username = #{user.username}
|
where username = #{user.username}
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<select id="getCompanyManagementByPhone" resultType="com.jero.modules.pay.company.entity.PayManagerManagement">
|
||||||
|
select *
|
||||||
|
from pay_manager_management where phone = #{username} and del_flag = 0;
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
+34
-14
@@ -9,9 +9,11 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.google.common.base.Joiner;
|
import com.google.common.base.Joiner;
|
||||||
|
import com.jero.common.constant.enums.LoginUserTypeEnum;
|
||||||
import com.jero.common.util.HuaWeiSmsUtil;
|
import com.jero.common.util.HuaWeiSmsUtil;
|
||||||
import com.jero.modules.oss.mapper.OSSFileMapper;
|
import com.jero.modules.oss.mapper.OSSFileMapper;
|
||||||
import com.jero.modules.pay.company.entity.PayContactsManagement;
|
import com.jero.modules.pay.company.entity.PayContactsManagement;
|
||||||
|
import com.jero.modules.pay.company.entity.PayManagerManagement;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
@@ -115,24 +117,42 @@ public class SysBaseApiImpl implements ISysBaseAPI {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
LoginUser loginUser = new LoginUser();
|
LoginUser loginUser = new LoginUser();
|
||||||
SysUser sysUser = userMapper.getUserByName(username);
|
if (username.startsWith(LoginUserTypeEnum.company_management_.toString())){
|
||||||
if(sysUser==null) {
|
username = username.substring(LoginUserTypeEnum.company_management_.toString().length());
|
||||||
PayContactsManagement contactsManagement = userMapper.getPayContactsManagementByPhone(username);
|
PayManagerManagement companyManagementByPhone = userMapper.getCompanyManagementByPhone(username);
|
||||||
if (contactsManagement == null){
|
if (companyManagementByPhone == null){
|
||||||
return null;
|
return null;
|
||||||
}else {
|
}else {
|
||||||
BeanUtils.copyProperties(contactsManagement, loginUser);
|
BeanUtils.copyProperties(companyManagementByPhone, loginUser);
|
||||||
loginUser.setIsCompanyUser(true);
|
loginUser.setIsCompanyUser(false);
|
||||||
loginUser.setUsername(contactsManagement.getPhone());
|
loginUser.setIsCompanyManager(true);
|
||||||
loginUser.setRealname(contactsManagement.getName());
|
loginUser.setUsername(companyManagementByPhone.getPhone());
|
||||||
loginUser.setRoleCode("企业用户");
|
loginUser.setRealname(companyManagementByPhone.getName());
|
||||||
|
loginUser.setRoleCode("企业管理员");
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
SysUser sysUser = userMapper.getUserByName(username);
|
||||||
|
if(sysUser==null) {
|
||||||
|
PayContactsManagement contactsManagement = userMapper.getPayContactsManagementByPhone(username);
|
||||||
|
if (contactsManagement == null){
|
||||||
|
return null;
|
||||||
|
}else {
|
||||||
|
BeanUtils.copyProperties(contactsManagement, loginUser);
|
||||||
|
loginUser.setIsCompanyUser(true);
|
||||||
|
loginUser.setIsCompanyManager(false);
|
||||||
|
loginUser.setUsername(contactsManagement.getPhone());
|
||||||
|
loginUser.setRealname(contactsManagement.getName());
|
||||||
|
loginUser.setRoleCode("企业用户");
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
BeanUtils.copyProperties(sysUser, loginUser);
|
||||||
|
List<String> roleByUserName = sysUserRoleMapper.getRoleByUserName(username);
|
||||||
|
loginUser.setRoleCode(StringUtils.join(roleByUserName, ","));
|
||||||
|
loginUser.setIsCompanyUser(false);
|
||||||
|
loginUser.setIsCompanyManager(false);
|
||||||
}
|
}
|
||||||
}else {
|
|
||||||
BeanUtils.copyProperties(sysUser, loginUser);
|
|
||||||
List<String> roleByUserName = sysUserRoleMapper.getRoleByUserName(username);
|
|
||||||
loginUser.setRoleCode(StringUtils.join(roleByUserName, ","));
|
|
||||||
loginUser.setIsCompanyUser(false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return loginUser;
|
return loginUser;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user