From 56efb9b94e1a256743a7ded90d43cd7479918fe4 Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期三, 30 七月 2025 18:19:54 +0800
Subject: [PATCH] 会员判断
---
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java | 4 ++++
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java | 26 ++++++++++++++++++++++++++
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml | 3 ++-
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java | 15 ++++++++++++++-
ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java | 2 +-
5 files changed, 47 insertions(+), 3 deletions(-)
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
index 1dc0d3d..e9b9959 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
@@ -57,7 +57,7 @@
/** 瀵嗙爜 */
private String password;
- /** 甯愬彿鐘舵�侊紙0姝e父 1鍋滅敤锛� */
+ /** 甯愬彿鐘舵�侊紙0姝e父 1鍋滅敤 2鍒犻櫎 3寮傚父 4璇曠敤鏈熺粨鏉燂級 */
@Excel(name = "甯愬彿鐘舵��", readConverterExp = "0=姝e父,1=鍋滅敤")
private String status;
@@ -90,6 +90,18 @@
/** 瑙掕壊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() {
@@ -336,6 +348,7 @@
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.append("dept", getDept())
+ .append("paid",getPaid())
.toString();
}
}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java b/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java
index 9aa6ccd..a554be7 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java
@@ -7,7 +7,7 @@
*/
public enum UserStatus
{
- OK("0", "姝e父"), DISABLE("1", "鍋滅敤"), DELETED("2", "鍒犻櫎"), ABNORMAL("3","寮傚父");
+ OK("0", "姝e父"), DISABLE("1", "鍋滅敤"), DELETED("2", "鍒犻櫎"), ABNORMAL("3","寮傚父"), END("4","璇曠敤鏈熺粨鏉�");
private final String code;
private final String info;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
index 58be3dd..07d6867 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
@@ -33,6 +33,14 @@
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;
+
/**
* 鐧诲綍鏍¢獙鏂规硶
*
@@ -109,7 +117,23 @@
+ 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;
+ }
@@ -124,6 +148,8 @@
*/
public String login(String nickName, String password, String code, String uuid)
{
+ System.out.println("[[[[[[[[[[[[[[");
+ endOfLife(nickName);
// 楠岃瘉鐮佹牎楠�
validateCaptcha(nickName, code, uuid);
// 鐧诲綍鍓嶇疆鏍¢獙
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java
index 1df9939..7ef58a1 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java
@@ -56,6 +56,10 @@
{
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);
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 30699b6..95dc3a5 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -24,6 +24,7 @@
<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>
@@ -48,7 +49,7 @@
</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
--
Gitblit v1.9.1