| | |
| | | /** 密码 */ |
| | | private String password; |
| | | |
| | | /** 帐号状态(0正常 1停用) */ |
| | | /** 帐号状态(0正常 1停用 2删除 3异常 4试用期结束) */ |
| | | @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用") |
| | | private String status; |
| | | |
| | |
| | | |
| | | /** 角色ID */ |
| | | private Long roleId; |
| | | |
| | | /**是否会员 0否 1是*/ |
| | | private Integer paid; |
| | | |
| | | public Integer getPaid() { |
| | | return paid; |
| | | } |
| | | |
| | | public void setPaid(Integer paid) { |
| | | this.paid = paid; |
| | | } |
| | | |
| | | |
| | | |
| | | public Integer getClanId() { |
| | |
| | | .append("updateTime", getUpdateTime()) |
| | | .append("remark", getRemark()) |
| | | .append("dept", getDept()) |
| | | .append("paid",getPaid()) |
| | | .toString(); |
| | | } |
| | | } |
| | |
| | | */ |
| | | public enum UserStatus |
| | | { |
| | | OK("0", "正常"), DISABLE("1", "停用"), DELETED("2", "删除"), ABNORMAL("3","异常"); |
| | | OK("0", "正常"), DISABLE("1", "停用"), DELETED("2", "删除"), ABNORMAL("3","异常"), END("4","试用期结束"); |
| | | |
| | | private final String code; |
| | | private final String info; |
| | |
| | | import com.ruoyi.system.service.ISysConfigService; |
| | | import com.ruoyi.system.service.ISysUserService; |
| | | |
| | | import java.time.Instant; |
| | | import java.time.LocalDateTime; |
| | | import java.time.ZoneId; |
| | | import java.time.temporal.ChronoUnit; |
| | | import java.time.temporal.Temporal; |
| | | import java.util.Date; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * 登录校验方法 |
| | | * |
| | |
| | | |
| | | |
| | | |
| | | public boolean endOfLife(String username) { |
| | | SysUser sysUser = userService.selectUserByUserName(username); |
| | | if (sysUser.getPaid() != null && sysUser.getPaid().equals(0) && !"4".equals(sysUser.getStatus())) { |
| | | Date startTime = sysUser.getCreateTime(); |
| | | |
| | | // 安全转换 |
| | | Instant instant = startTime.toInstant(); |
| | | LocalDateTime startDateTime = instant.atZone(ZoneId.systemDefault()).toLocalDateTime(); |
| | | long daysPassed = ChronoUnit.DAYS.between(startDateTime, LocalDateTime.now()); |
| | | |
| | | if (daysPassed > 7) { |
| | | sysUser.setStatus("4"); |
| | | userService.updateUserStatus(sysUser); |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | |
| | | |
| | |
| | | */ |
| | | public String login(String nickName, String password, String code, String uuid) |
| | | { |
| | | System.out.println("[[[[[[[[[[[[[["); |
| | | endOfLife(nickName); |
| | | // 验证码校验 |
| | | validateCaptcha(nickName, code, uuid); |
| | | // 登录前置校验 |
| | |
| | | { |
| | | log.info("登录用户:{} 异常.", username); |
| | | throw new ServiceException("对不起,您的账号:" + username + " 出现异常,请联系管理员"); |
| | | }else if(UserStatus.END.getCode().equals(user.getStatus())) |
| | | { |
| | | log.info("登录用户:{} 异常.", username); |
| | | throw new ServiceException("对不起,您的账号:" + username + " 试用期已结束,请付费继续使用"); |
| | | } |
| | | |
| | | passwordService.validate(user); |
| | |
| | | <result property="updateTime" column="update_time" /> |
| | | <result property="clanId" column="clan_id" /> |
| | | <result property="remark" column="remark" /> |
| | | <result property="paid" column="paid" /> |
| | | <association property="dept" column="dept_id" javaType="SysDept" resultMap="deptResult" /> |
| | | <collection property="roles" javaType="java.util.List" resultMap="RoleResult" /> |
| | | </resultMap> |
| | |
| | | </resultMap> |
| | | |
| | | <sql id="selectUserVo"> |
| | | select u.clan_id,u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, |
| | | select u.clan_id,u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,u.clan_id,u.paid, |
| | | d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status, |
| | | r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status |
| | | from sys_user u |