From a58017780033b924f1b21c9e3feec86013e33371 Mon Sep 17 00:00:00 2001
From: "578646533@qq.com" <123456qq>
Date: Thu, 21 Nov 2024 19:01:52 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AF=BC=E5=85=A5?=
=?UTF-8?q?=E5=92=8C=E5=AF=BC=E5=87=BA=E6=AD=A5=E9=AA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
service/pom.xml | 1 -
1 file changed, 1 deletion(-)
diff --git a/service/pom.xml b/service/pom.xml
index 803c542..d952cf8 100644
--- a/service/pom.xml
+++ b/service/pom.xml
@@ -33,7 +33,6 @@
com.github.pagehelper
pagehelper
-
com.electromagnetic.data
electromagnetic-framework
From cea8c222a289b85d0156e80bcd9c90be546d9d2a Mon Sep 17 00:00:00 2001
From: s2042968
Date: Mon, 25 Nov 2024 14:28:54 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=94=A8=E6=88=B7?=
=?UTF-8?q?=E6=A0=A1=E9=AA=8C=EF=BC=8C=E6=9C=AA=E5=8F=91=E5=B8=83=E7=94=A8?=
=?UTF-8?q?=E6=88=B7=E4=B8=8D=E8=83=BD=E7=99=BB=E5=BD=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../boardservice/user/enums/PublishEnum.java | 24 +++++++++++++++++++
.../user/service/UserService.java | 9 ++++++-
.../user/service/impl/UserServiceImpl.java | 22 +++++++++++++++++
.../main/resources/sqlmapper/UserMapper.xml | 2 +-
.../service/facade/user/UserFacadeImpl.java | 2 +-
5 files changed, 56 insertions(+), 3 deletions(-)
create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/enums/PublishEnum.java
diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/enums/PublishEnum.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/enums/PublishEnum.java
new file mode 100644
index 0000000..eb12480
--- /dev/null
+++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/enums/PublishEnum.java
@@ -0,0 +1,24 @@
+package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 发布状态枚举
+ */
+@AllArgsConstructor
+@Getter
+public enum PublishEnum {
+ /**
+ * 已发布
+ */
+ PUBLISHED(1,"已发布"),
+ /**
+ * 未发布
+ */
+ UNPUBLISHED(0,"未发布"),
+ ;
+ private Integer code;
+ private String desc;
+
+}
\ No newline at end of file
diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/UserService.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/UserService.java
index 536c606..55f566f 100644
--- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/UserService.java
+++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/UserService.java
@@ -69,8 +69,15 @@ public interface UserService {
/**
* 根据userId逻辑删除用户
- * @param userId
+ * @param userDeleteKeyWords
* @return
*/
Boolean deleteUser(UserDeleteKeyWords userDeleteKeyWords);
+
+ /**
+ * 检查用户是否有效,未发布的用户无效,实习到期的用户无效
+ * @param user
+ * @return
+ */
+ Boolean checkUserValid(User user);
}
diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/UserServiceImpl.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/UserServiceImpl.java
index e9f6fab..46f65f2 100644
--- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/UserServiceImpl.java
+++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/UserServiceImpl.java
@@ -1,5 +1,7 @@
package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.impl;
+import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.enums.EffectFlagEnum;
+import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.enums.PublishEnum;
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.PublishParam;
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords;
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
@@ -15,6 +17,8 @@ import java.util.List;
import java.lang.String;
import javax.annotation.Resource;
+import static cn.hutool.core.date.DateTime.now;
+
@Service
public class UserServiceImpl implements UserService {
@@ -111,4 +115,22 @@ public class UserServiceImpl implements UserService {
public Boolean deleteUser(UserDeleteKeyWords userDeleteKeyWords) {
return userRepository.deleteUser(userDeleteKeyWords)>0;
}
+
+ /**
+ * 检查用户是否有效,未发布,实习到期,已被逻辑删除的用户无效
+ * @param user
+ * @return
+ */
+ @Override
+ public Boolean checkUserValid(User user){
+ if ( user == null
+ || user.getIsPublished() == PublishEnum.UNPUBLISHED.getCode()
+ || user.getEffectFlag() == EffectFlagEnum.EFFECT_FLAG_0.getCode()
+ ) {
+ return false;
+ } else if( user.getInternshipEndDate()!=null && user.getInternshipEndDate().before(now())) {
+ return false;
+ }
+ return true;
+ }
}
diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml
index 996a144..1e765f1 100644
--- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml
+++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml
@@ -122,7 +122,7 @@
- AND is_published = CAST(#{isPublished} AS INT)
+ AND is_published = CAST(#{isPublished} AS SIGNED)
diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/UserFacadeImpl.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/UserFacadeImpl.java
index 68267c7..c60d223 100644
--- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/UserFacadeImpl.java
+++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/UserFacadeImpl.java
@@ -49,7 +49,7 @@ public class UserFacadeImpl implements UserFacade {
UserLoginInfo info = UserMappers.INSTANCE.getUserLoginRequestToModel(loginRequest);
String decodePwd = AESUtils.decrypt(info.getUserPwd(), UserConstant.SECRET_KEY);
User user = userService.getUserByWorkNumber(info.getWorkNumber());
- if ( user!=null && userService.matchPassword(user, decodePwd)) {
+ if ( userService.checkUserValid(user) && userService.matchPassword(user, decodePwd)) {
String tokenStr = tokenService.createToken(info);
tokenService.createUserToken(user, tokenStr);
UserLoginResponse userLoginResponse = new UserLoginResponse();