From 4fb0aee4f2486d2ab6897b5afc3c9962191cdc48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Fri, 15 Nov 2024 09:19:06 +0800 Subject: [PATCH 01/18] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=8F=91=E5=B8=83?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/user/UserController.java | 6 +++++ .../user/repository/UserRepository.java | 7 ++++++ .../user/service/UserService.java | 7 ++++++ .../user/service/impl/UserServiceImpl.java | 8 ++++++ .../data/manage/facade/user/UserFacade.java | 8 +++++- .../request/user/UserPublishRequest.java | 25 +++++++++++++++++++ .../manage/repository/dao/UserMapper.java | 7 ++++++ .../repository/impl/UserRepositoryImpl.java | 11 ++++++++ .../main/resources/sqlmapper/UserMapper.xml | 8 ++++++ .../service/facade/user/UserFacadeImpl.java | 12 +++++++++ .../manage/service/mappers/UserMappers.java | 8 ++++++ 11 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index 918ed6a..13a44bc 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -1,6 +1,7 @@ package com.electromagnetic.industry.software.data.manage.controller.user; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; +import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import electromagnetic.data.framework.share.model.BaseResult; import electromagnetic.data.framework.share.model.ElectromagneticResult; @@ -22,4 +23,9 @@ public class UserController { return userFacade.createUser(userRequest); } + @ApiOperation(value = "发布用户信息", notes = "") + @RequestMapping(value = "/publish", method = RequestMethod.POST) + public BaseResult publishUser(@RequestBody UserPublishRequest userPublishRequest) { + return userFacade.publishUser(userPublishRequest); + } } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index eaf8b9e..e724dda 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -10,4 +10,11 @@ public interface UserRepository { * @return */ int insert(User user); + + /** + * 用户发布 + * @param user + * @return + */ + int publish(User user); } 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 3431c6e..c114b00 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 @@ -10,4 +10,11 @@ public interface UserService { * @return */ Boolean createUser(User user); + + /** + * 用户发布 + * @param user + * @return + */ + Boolean publishUser(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 8074adb..cba5f7f 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 @@ -27,4 +27,12 @@ public class UserServiceImpl implements UserService { public Boolean createUser(User user) { return userRepository.insert(user)>0; } + + /** + * 用户发布 + * @param user + * @return + */ + @Override + public Boolean publishUser(User user) { return userRepository.publish(user)>0; } } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java index 4fc3b20..92cca96 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java @@ -1,8 +1,8 @@ package com.electromagnetic.industry.software.data.manage.facade.user; +import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import electromagnetic.data.framework.share.model.BaseResult; -import electromagnetic.data.framework.share.model.ElectromagneticResult; public interface UserFacade { @@ -13,4 +13,10 @@ public interface UserFacade { */ BaseResult createUser(UserRequest userRequest); + /** + * 发布用户 + * @param userPublishRequest + * @return + */ + BaseResult publishUser(UserPublishRequest userPublishRequest); } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java new file mode 100644 index 0000000..63c0496 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java @@ -0,0 +1,25 @@ +package com.electromagnetic.industry.software.data.manage.request.user; + +import cn.hutool.core.date.DateTime; +import electromagnetic.data.framework.share.model.BaseRequest; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +@Data +public class UserPublishRequest extends BaseRequest implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 用户编码 + */ + private String userId; + + /** + * 是否处于发布状态 + */ + private int isPublished; +} \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java index c89b44a..8f7be47 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java @@ -11,4 +11,11 @@ public interface UserMapper { * @return */ int insert(User user); + + /** + * 发布 + * @param user + * @return + */ + int publish(User user); } \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java index 59d4410..ae0be75 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java @@ -26,4 +26,15 @@ public class UserRepositoryImpl implements UserRepository { public int insert(User user) { return userMapper.insert(user); } + + /** + * 用户发布 + * + * @param user + * @return + */ + @Override + public int publish(User user) { + return userMapper.publish(user); + } } \ No newline at end of file diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index 9aec6ea..92a33d3 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -61,4 +61,12 @@ 1 ) + + + update ed_users + + is_published = #{isPublished} + + where user_id = #{userId} + \ No newline at end of file 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 33a58bb..66c7b28 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 @@ -4,6 +4,7 @@ import com.electromagnetic.industry.software.data.manage.domain.boardservice.use import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; +import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; @@ -32,4 +33,15 @@ public class UserFacadeImpl implements UserFacade { user.setIsPublished(UserConstant.DEFAULT_PUBLISH_STATUS); return BaseResultUtil.success(userService.createUser(user)); } + + /** + * 发布用户信息 + * @param userPublishRequest + * @return + */ + @Override + public BaseResult publishUser(UserPublishRequest userPublishRequest){ + User user = UserMappers.INSTANCE.getUserPublishRequestToModel(userPublishRequest); + return BaseResultUtil.success(userService.publishUser(user)); + } } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index 11a915e..4a05563 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -4,6 +4,7 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; +import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -25,4 +26,11 @@ public interface UserMappers { */ User getUserRequestToModel(UserRequest userRequest); + + /** + * 用户PublishRequest转用户模型 + * @param userPublishRequest + * @return + */ + User getUserPublishRequestToModel(UserPublishRequest userPublishRequest); } \ No newline at end of file From cf7ed38c88cb97947849f73dcc52b6a36a56e75e Mon Sep 17 00:00:00 2001 From: lizhanhao Date: Fri, 15 Nov 2024 09:42:51 +0800 Subject: [PATCH 02/18] =?UTF-8?q?=E7=94=A8=E6=88=B7=E7=BC=96=E8=BE=91?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/controller/user/UserController.java | 4 ++++ .../user/repository/UserRepository.java | 7 +++++++ .../boardservice/user/service/UserService.java | 7 +++++++ .../user/service/impl/UserServiceImpl.java | 11 +++++++++++ .../data/manage/facade/user/UserFacade.java | 9 +++++++++ .../data/manage/repository/dao/UserMapper.java | 7 +++++++ .../repository/impl/UserRepositoryImpl.java | 11 +++++++++++ .../main/resources/sqlmapper/UserMapper.xml | 18 ++++++++++++++++++ .../service/facade/user/UserFacadeImpl.java | 17 +++++++++++++++++ .../manage/service/mappers/UserMappers.java | 8 ++++++++ 10 files changed, 99 insertions(+) diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index 918ed6a..849b14c 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -1,6 +1,7 @@ package com.electromagnetic.industry.software.data.manage.controller.user; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; +import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import electromagnetic.data.framework.share.model.BaseResult; import electromagnetic.data.framework.share.model.ElectromagneticResult; @@ -22,4 +23,7 @@ public class UserController { return userFacade.createUser(userRequest); } + @ApiOperation(value="编辑用户信息",notes = "") + @PutMapping + public BaseResult editUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);} } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index eaf8b9e..9e00b45 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -10,4 +10,11 @@ public interface UserRepository { * @return */ int insert(User user); + + /** + * 用户编辑 + * @param user + * @return + */ + int modify(User user); } 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 3431c6e..6126603 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 @@ -10,4 +10,11 @@ public interface UserService { * @return */ Boolean createUser(User user); + + /** + * 编辑用户 + * @param user + * @return + */ + Boolean modifyUser(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 8074adb..1521f93 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 @@ -27,4 +27,15 @@ public class UserServiceImpl implements UserService { public Boolean createUser(User user) { return userRepository.insert(user)>0; } + + /** + * 编辑用户 + * + * @param user + * @return + */ + @Override + public Boolean modifyUser(User user) { + return userRepository.modify(user)>0; + } } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java index 4fc3b20..5b6453b 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java @@ -1,5 +1,6 @@ package com.electromagnetic.industry.software.data.manage.facade.user; +import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import electromagnetic.data.framework.share.model.BaseResult; import electromagnetic.data.framework.share.model.ElectromagneticResult; @@ -13,4 +14,12 @@ public interface UserFacade { */ BaseResult createUser(UserRequest userRequest); + /** + * 编辑用户信息 + * @param userModiRequest + * @return + */ + BaseResult modifyUser(UserModiRequest userModiRequest); + + } diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java index c89b44a..86fa0d6 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java @@ -11,4 +11,11 @@ public interface UserMapper { * @return */ int insert(User user); + + /** + * 编辑 + * @param user + * @return + */ + int modify(User user); } \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java index 59d4410..c9f6b00 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java @@ -26,4 +26,15 @@ public class UserRepositoryImpl implements UserRepository { public int insert(User user) { return userMapper.insert(user); } + + /** + * 用户编辑 + * + * @param user + * @return + */ + @Override + public int modify(User user) { + return userMapper.modify(user); + } } \ No newline at end of file diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index 9aec6ea..c2e931c 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -61,4 +61,22 @@ 1 ) + + update ed_users + + user_id = #{userId}, + user_name = #{userName}, + work_number = #{workNumber}, + mobile = #{mobile}, + user_dept = #{userDept}, + user_title = #{userTitle}, + join_time = #{joinTime}, + user_status = #{userStatus}, + internship_end_date = #{internshipEndDate}, + modifier = #{modifier}, + modifier_name = #{modifierName}, + + where id= #{id} + + \ No newline at end of file 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 33a58bb..1ad3098 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 @@ -4,6 +4,7 @@ import com.electromagnetic.industry.software.data.manage.domain.boardservice.use import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; +import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; @@ -32,4 +33,20 @@ public class UserFacadeImpl implements UserFacade { user.setIsPublished(UserConstant.DEFAULT_PUBLISH_STATUS); return BaseResultUtil.success(userService.createUser(user)); } + + /** + * 修改用户信息 + * @param userModiRequest + * @return + */ + @Override + public BaseResult modifyUser(UserModiRequest userModiRequest) { + // 将请求对象转换为模型对象 + User user = UserMappers.INSTANCE.getUserModiRequestToModel(userModiRequest); + // 调用 UserService 的修改用户方法 + Boolean success = userService.modifyUser(user); + + //根据操作结果构建 BaseResult 对象并返回 + return BaseResultUtil.success(userService.modifyUser(user)); + } } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index 11a915e..4cacd3f 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -4,6 +4,7 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; +import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -25,4 +26,11 @@ public interface UserMappers { */ User getUserRequestToModel(UserRequest userRequest); + /** + * 编辑用户Reduest转用户模型 + * @param userModiRequest + * @return + */ + User getUserModiRequestToModel(UserModiRequest userModiRequest); + } \ No newline at end of file From f352d7226abe4a1bada1a44273cf71a2d859a038 Mon Sep 17 00:00:00 2001 From: lizhanhao Date: Fri, 15 Nov 2024 10:09:22 +0800 Subject: [PATCH 03/18] =?UTF-8?q?=E6=8F=90=E4=BA=A4UserModiRequest?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/request/user/UserModiRequest.java | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java new file mode 100644 index 0000000..375df77 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java @@ -0,0 +1,72 @@ +package com.electromagnetic.industry.software.data.manage.request.user; + +import cn.hutool.core.date.DateTime; +import electromagnetic.data.framework.share.model.BaseRequest; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +@Data +public class UserModiRequest extends BaseRequest implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 用户Id + */ + private String userId; + + /** + * 用户姓名 + */ + private String userName; + + + + /** + * 工号 + */ + private String workNumber; + + /** + * 手机号 + */ + private String mobile; + + /** + * 所属部门 + */ + private String userDept; + + /** + * 职称 + */ + private String userTitle; + + /** + * 入职日期 + */ + private DateTime joinTime; + + /** + * 工作状态 + */ + private String userStatus; + + /** + * 实习截止日期 + */ + private Date internshipEndDate; + + /** + * 创建者 + */ + private String modifier; + + /** + * 创建者姓名 + */ + private String modifierName; +} From c83a56c6dec335e64ee63e5f9933d6f69192880b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Fri, 15 Nov 2024 13:32:22 +0800 Subject: [PATCH 04/18] =?UTF-8?q?=E5=8F=91=E5=B8=83=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../boardservice/user/repository/UserRepository.java | 5 +++-- .../domain/boardservice/user/service/UserService.java | 6 ++++-- .../boardservice/user/service/impl/UserServiceImpl.java | 7 ++++--- .../data/manage/request/user/UserPublishRequest.java | 8 ++------ .../software/data/manage/repository/dao/UserMapper.java | 6 ++++-- .../data/manage/repository/impl/UserRepositoryImpl.java | 7 ++++--- .../src/main/resources/sqlmapper/UserMapper.xml | 7 +++++-- .../data/manage/service/facade/user/UserFacadeImpl.java | 5 +++-- .../software/data/manage/service/mappers/UserMappers.java | 7 ------- 9 files changed, 29 insertions(+), 29 deletions(-) diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index 38e1848..c788e2e 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -1,6 +1,7 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; +import java.util.List; public interface UserRepository { @@ -13,10 +14,10 @@ public interface UserRepository { /** * 用户发布 - * @param user + * @param userIds * @return */ - int publish(User user); + int publish(List userIds); /** * 通过工号查询用户 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 9ca7a75..0b4985f 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 @@ -3,6 +3,8 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.us import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; +import java.util.List; + public interface UserService { /** @@ -14,10 +16,10 @@ public interface UserService { /** * 用户发布 - * @param user + * @param userIds * @return */ - Boolean publishUser(User user); + Boolean publishUser(List userIds); /** * 通过工号查询用户 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 71e0652..38a2e5d 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 @@ -9,7 +9,8 @@ import electromagnetic.data.framework.share.util.SignUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; - +import java.util.List; +import java.lang.String; import javax.annotation.Resource; @Service @@ -54,9 +55,9 @@ public class UserServiceImpl implements UserService { /** * 用户发布 - * @param user + * @param userIds * @return */ @Override - public Boolean publishUser(User user) { return userRepository.publish(user)>0; } + public Boolean publishUser(List userIds) { return userRepository.publish(userIds)>0; } } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java index 63c0496..77a182d 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserPublishRequest.java @@ -6,6 +6,7 @@ import lombok.Data; import java.io.Serializable; import java.util.Date; +import java.util.List; @Data @@ -16,10 +17,5 @@ public class UserPublishRequest extends BaseRequest implements Serializable { /** * 用户编码 */ - private String userId; - - /** - * 是否处于发布状态 - */ - private int isPublished; + private List userIds; } \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java index 72ea9e8..08ae4fd 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java @@ -3,6 +3,8 @@ package com.electromagnetic.industry.software.data.manage.repository.dao; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + @Mapper public interface UserMapper { /** @@ -14,10 +16,10 @@ public interface UserMapper { /** * 发布 - * @param user + * @param userIds * @return */ - int publish(User user); + int publish(List userIds); /** * 通过工号查询用户 diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java index ce43d69..fce7ee4 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java @@ -8,6 +8,7 @@ import com.electromagnetic.industry.software.data.manage.domain.boardservice.use import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository; import com.electromagnetic.industry.software.data.manage.repository.dao.UserMapper; import org.springframework.stereotype.Repository; +import java.util.List; import javax.annotation.Resource; @@ -30,12 +31,12 @@ public class UserRepositoryImpl implements UserRepository { /** * 用户发布 * - * @param user + * @param userIds * @return */ @Override - public int publish(User user) { - return userMapper.publish(user); + public int publish(List userIds) { + return userMapper.publish(userIds); } /** diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index 340afa0..be7321c 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -72,9 +72,12 @@ update ed_users - is_published = #{isPublished} + is_published = 1 - where user_id = #{userId} + where user_id IN + + #{userId} + + + \ No newline at end of file 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 fa96ec6..aa1945c 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 @@ -1,16 +1,28 @@ package com.electromagnetic.industry.software.data.manage.service.facade.user; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCard; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCardDetial; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCardPage; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.parames.IndicatorCardParams; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; +import com.electromagnetic.industry.software.data.manage.request.indicator.IndicatorCardRequest; +import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardDetailReponse; +import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardPageResponse; +import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; +import com.electromagnetic.industry.software.data.manage.service.mappers.IndicatorCardMappers; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; +import electromagnetic.data.framework.share.model.ElectromagneticResult; +import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; import electromagnetic.data.framework.share.result.BaseResult; import electromagnetic.data.framework.share.result.LoginResult; import electromagnetic.data.framework.share.sign.AESUtils; @@ -70,8 +82,33 @@ public class UserFacadeImpl implements UserFacade { * @return */ @Override - public BaseResult publishUser(UserPublishRequest userPublishRequest){ + public ElectromagneticResult publishUser(UserPublishRequest userPublishRequest){ List userIds = userPublishRequest.getUserIds(); - return BaseResultUtil.success(userService.publishUser(userIds)); + return ElectromagneticResultUtil.success(userService.publishUser(userIds)); } + + /** + * 获取单条用户信息 + * @param getSingleUserRequest + * @return + */ + @Override + public ElectromagneticResult getSingleUser(GetSingleUserRequest getSingleUserRequest){ + //String userId = getSingleUserRequest.getUserId(); + //response + //User user = new User(); + //user.setUserId(getSingleUserRequest.getUserId()); + User user = userService.getSingleUser(getSingleUserRequest.getUserId()); + SingleUserResponse singleUserResponse = UserMappers.INSTANCE.getSingleUserToResponse(user); + return ElectromagneticResultUtil.success(singleUserResponse); + } + +// @Override +// public ElectromagneticResult getIndicatorCardDetail(IndicatorCardRequest request) { +// IndicatorCard card=new IndicatorCard(); +// card.setIndicatorCardNo(request.getIndicatorCardNo()); +// IndicatorCardDetial indicatorCardDetial=indicatorCardService.getIndicatorCardDetail(card); +// IndicatorCardDetailReponse reponse=IndicatorCardMappers.INSTANCE.getIndicatorCardDetailToReponse(indicatorCardDetial); +// return ElectromagneticResultUtil.success(reponse); +// } } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index 9e392d5..09be1b4 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -4,10 +4,12 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; +import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -34,4 +36,19 @@ public interface UserMappers { * @return */ UserLoginInfo getUserLoginRequestToModel(UserLoginRequest loginRequest); + + + /** + * 获取单条用户信息Request转用户模型 + * @param getSingleUserRequest + * @return + */ + User getSingleUserRequestToModel(GetSingleUserRequest getSingleUserRequest); + + /** + * 获取单条用户信息Request转用户模型 + * @param user + * @return + */ + SingleUserResponse getSingleUserToResponse(User user); } \ No newline at end of file From 6816544f3660b7a691df72d2987e535c4c82fc29 Mon Sep 17 00:00:00 2001 From: lizhanhao Date: Fri, 15 Nov 2024 17:16:45 +0800 Subject: [PATCH 06/18] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E5=94=AF=E4=B8=80=E6=80=A7=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/user/UserController.java | 19 ++++++---- .../user/service/UserService.java | 1 + .../user/service/impl/UserServiceImpl.java | 1 + .../data/manage/facade/user/UserFacade.java | 19 ++++++---- .../request/user/UserWorkNumRequest.java | 22 +++++++++++ .../service/facade/user/UserFacadeImpl.java | 38 ++++++++++++++----- .../manage/service/mappers/UserMappers.java | 14 ++++--- 7 files changed, 85 insertions(+), 29 deletions(-) create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserWorkNumRequest.java diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index fce74d2..c889ca2 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -1,10 +1,8 @@ package com.electromagnetic.industry.software.data.manage.controller.user; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; -import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.request.user.*; +import electromagnetic.data.framework.share.model.ElectromagneticResult; import electromagnetic.data.framework.share.result.BaseResult; import electromagnetic.data.framework.share.result.LoginResult; import io.swagger.annotations.ApiOperation; @@ -27,16 +25,23 @@ public class UserController { @ApiOperation(value = "新增用户信息", notes = "") @PostMapping - public BaseResult createUser(@RequestBody UserRequest userRequest) { + public ElectromagneticResult createUser(@RequestBody UserRequest userRequest) { return userFacade.createUser(userRequest); } @ApiOperation(value="编辑用户信息",notes = "") @PutMapping - public BaseResult editUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);} + public ElectromagneticResult editUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);} + @ApiOperation(value = "发布用户信息", notes = "") @RequestMapping(value = "/publish", method = RequestMethod.POST) - public BaseResult publishUser(@RequestBody UserPublishRequest userPublishRequest) { + public ElectromagneticResult publishUser(@RequestBody UserPublishRequest userPublishRequest) { return userFacade.publishUser(userPublishRequest); } + + @ApiOperation(value = "校验工号唯一性", notes = "") + @RequestMapping(value = "/validate", method = RequestMethod.POST) + public ElectromagneticResult validateWorkNum(@RequestBody UserWorkNumRequest userWorkNumRequest) { + return userFacade.validateWorkNum(userWorkNumRequest); + } } 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 0aa0415..a16ab8b 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 @@ -40,4 +40,5 @@ public interface UserService { * @return */ Boolean matchPassword(User user, String password); + } 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 fe5847f..e82e563 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 @@ -63,6 +63,7 @@ public class UserServiceImpl implements UserService { return user.getUserPwd().equals(encodePwd); } + /** * 用户发布 * @param user diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java index 84201a0..449ca2a 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java @@ -1,9 +1,7 @@ package com.electromagnetic.industry.software.data.manage.facade.user; -import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.request.user.*; +import electromagnetic.data.framework.share.model.ElectromagneticResult; import electromagnetic.data.framework.share.result.BaseResult; import electromagnetic.data.framework.share.result.LoginResult; @@ -21,14 +19,14 @@ public interface UserFacade { * @param userRequest * @return */ - BaseResult createUser(UserRequest userRequest); + ElectromagneticResult createUser(UserRequest userRequest); /** * 编辑用户信息 * @param userModiRequest * @return */ - BaseResult modifyUser(UserModiRequest userModiRequest); + ElectromagneticResult modifyUser(UserModiRequest userModiRequest); /** @@ -36,5 +34,12 @@ public interface UserFacade { * @param userPublishRequest * @return */ - BaseResult publishUser(UserPublishRequest userPublishRequest); + ElectromagneticResult publishUser(UserPublishRequest userPublishRequest); + + /** + * 校验工号唯一性 + * @param workNumberRequest + * @return + */ + ElectromagneticResult validateWorkNum(UserWorkNumRequest workNumberRequest); } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserWorkNumRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserWorkNumRequest.java new file mode 100644 index 0000000..7903a0c --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserWorkNumRequest.java @@ -0,0 +1,22 @@ +package com.electromagnetic.industry.software.data.manage.request.user; + +import cn.hutool.core.date.DateTime; +import electromagnetic.data.framework.share.model.BaseRequest; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +@Data +public class UserWorkNumRequest extends BaseRequest implements Serializable { + + private static final long serialVersionUID = 1L; + + + /** + * 工号 + */ + private String workNumber; + +} 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 2a7dd00..9e4e8fc 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 @@ -6,12 +6,11 @@ import com.electromagnetic.industry.software.data.manage.domain.boardservice.use import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; -import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.request.user.*; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; +import electromagnetic.data.framework.share.model.ElectromagneticResult; +import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; import electromagnetic.data.framework.share.result.BaseResult; import electromagnetic.data.framework.share.result.LoginResult; import electromagnetic.data.framework.share.sign.AESUtils; @@ -22,6 +21,7 @@ import org.apache.commons.lang3.RandomStringUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import javax.swing.text.StyledEditorKit; @Service public class UserFacadeImpl implements UserFacade { @@ -55,13 +55,14 @@ public class UserFacadeImpl implements UserFacade { * @return */ @Override - public BaseResult createUser(UserRequest userRequest){ + public ElectromagneticResult createUser(UserRequest userRequest){ User user = UserMappers.INSTANCE.getUserRequestToModel(userRequest); user.setSalt(RandomStringUtils.randomAlphanumeric(16)); user.setUserId(IdWorker.getSnowFlakeIdString()); user.setUserPwd(SignUtils.MD5(UserConstant.DEFAULT_PASSWORD+user.getSalt())); user.setIsPublished(UserConstant.DEFAULT_PUBLISH_STATUS); - return BaseResultUtil.success(userService.createUser(user)); + //return BaseResultUtil.success(userService.createUser(user)); + return ElectromagneticResultUtil.success(userService.createUser(user)); } /** @@ -70,14 +71,14 @@ public class UserFacadeImpl implements UserFacade { * @return */ @Override - public BaseResult modifyUser(UserModiRequest userModiRequest) { + public ElectromagneticResult modifyUser(UserModiRequest userModiRequest) { // 将请求对象转换为模型对象 User user = UserMappers.INSTANCE.getUserModiRequestToModel(userModiRequest); // 调用 UserService 的修改用户方法 Boolean success = userService.modifyUser(user); //根据操作结果构建 BaseResult 对象并返回 - return BaseResultUtil.success(userService.modifyUser(user)); + return ElectromagneticResultUtil.success(userService.modifyUser(user)); } /** @@ -86,8 +87,25 @@ public class UserFacadeImpl implements UserFacade { * @return */ @Override - public BaseResult publishUser(UserPublishRequest userPublishRequest){ + public ElectromagneticResult publishUser(UserPublishRequest userPublishRequest){ User user = UserMappers.INSTANCE.getUserPublishRequestToModel(userPublishRequest); - return BaseResultUtil.success(userService.publishUser(user)); + return ElectromagneticResultUtil.success(userService.publishUser(user)); + } + + /** + * 校验工号唯一性 + * + * @param userWorkNumRequest + * @return + */ + @Override + public ElectromagneticResult validateWorkNum(UserWorkNumRequest userWorkNumRequest) { + // 将请求对象转换为模型对象 + User user = UserMappers.INSTANCE.getUserWorkNumRequestToModel(userWorkNumRequest); + // 尝试根据工号获取用户 + User existingUser = userService.getUserByWorkNumber(user.getWorkNumber()); + // 根据是否存在具有相同工号的用户来确定工号的唯一性 + boolean isWorkNumberUnique = (existingUser == null); + return ElectromagneticResultUtil.success(Boolean.valueOf(isWorkNumberUnique)); } } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index 0f2d500..5c892e3 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -4,11 +4,8 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; -import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; +import com.electromagnetic.industry.software.data.manage.request.user.*; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; -import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -43,10 +40,17 @@ public interface UserMappers { */ UserLoginInfo getUserLoginRequestToModel(UserLoginRequest loginRequest); /** - * 编辑用户Reduest转用户模型 + * 编辑用户Request转用户模型 * @param userModiRequest * @return */ User getUserModiRequestToModel(UserModiRequest userModiRequest); + /** + * 校验工号唯一性Request转用户模型 + * @param userWorkNumRequest + * @return + */ + User getUserWorkNumRequestToModel(UserWorkNumRequest userWorkNumRequest); + } \ No newline at end of file From d2d9faedd535a89c57d4a75bb284f6fb8f54dc70 Mon Sep 17 00:00:00 2001 From: s2042968 Date: Fri, 15 Nov 2024 17:25:24 +0800 Subject: [PATCH 07/18] =?UTF-8?q?=E7=94=A8=E6=88=B7=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E8=BF=94=E5=9B=9Eresult=E4=BF=AE=E6=94=B9=EF=BC=8C=E6=8B=A6?= =?UTF-8?q?=E6=88=AA=E5=99=A8=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/controller/user/UserController.java | 7 +++++-- .../user/repository/TokenRepository.java | 7 +++++++ .../boardservice/user/service/TokenService.java | 5 +++++ .../user/service/impl/TokenServiceImpl.java | 14 ++++++++++++++ .../user/service/impl/UserServiceImpl.java | 2 +- electromagnetic-framework/pom.xml | 4 ++++ .../data/framework/share/sign/AESUtils.java | 2 +- .../data/manage/facade/user/UserFacade.java | 5 +++-- .../data/manage/repository/dao/TokenMapper.java | 7 +++++++ .../repository/impl/TokenRepositoryImpl.java | 8 ++++++++ .../src/main/resources/sqlmapper/TokenMapper.xml | 10 ++++++++++ .../manage/service/facade/user/UserFacadeImpl.java | 14 ++++++++------ 12 files changed, 73 insertions(+), 12 deletions(-) diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index fce74d2..e9d1282 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -5,6 +5,7 @@ import com.electromagnetic.industry.software.data.manage.request.user.UserModiRe import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import electromagnetic.data.framework.share.model.ElectromagneticResult; import electromagnetic.data.framework.share.result.BaseResult; import electromagnetic.data.framework.share.result.LoginResult; import io.swagger.annotations.ApiOperation; @@ -21,19 +22,21 @@ public class UserController { @ApiOperation(value = "登录", notes = "") @PostMapping("/login") - public LoginResult login(@RequestBody UserLoginRequest loginRequest) { + public ElectromagneticResult login(@RequestBody UserLoginRequest loginRequest) { return userFacade.login(loginRequest); } @ApiOperation(value = "新增用户信息", notes = "") @PostMapping - public BaseResult createUser(@RequestBody UserRequest userRequest) { + public ElectromagneticResult createUser(@RequestBody UserRequest userRequest) { return userFacade.createUser(userRequest); } + @ApiOperation(value="编辑用户信息",notes = "") @PutMapping public BaseResult editUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);} + @ApiOperation(value = "发布用户信息", notes = "") @RequestMapping(value = "/publish", method = RequestMethod.POST) public BaseResult publishUser(@RequestBody UserPublishRequest userPublishRequest) { diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/TokenRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/TokenRepository.java index 01b6928..88afa9d 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/TokenRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/TokenRepository.java @@ -10,4 +10,11 @@ public interface TokenRepository { * @return */ int insert(Token token); + + /** + * 查询令牌 + * @param token + * @return + */ + public Token selectToken(String token); } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java index 6446c4c..a17daed 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java @@ -20,4 +20,9 @@ public interface TokenService { * @return */ public Boolean createUserToken (User user, String tokenStr); + + /** + * 查看token是否有效 + */ + public Boolean isTokenValid(String tokenStr); } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java index 9bfbc3a..a852c88 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java @@ -1,6 +1,7 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.impl; import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.SystemClock; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.Token; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; @@ -56,4 +57,17 @@ public class TokenServiceImpl implements TokenService { token.setExpireAt(new DateTime(now()+UserConstant.DEFAULT_EXPIRE_TIME)); return tokenRepository.insert(token)>0; } + + /** + * 查看token是否有效 + */ + @Override + public Boolean isTokenValid(String tokenStr){ + Token token = tokenRepository.selectToken(tokenStr); + DateTime now = new DateTime(SystemClock.now()); + if (token != null && now.before(token.getExpireAt())) { + return true; + } + return false; + } } 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 fe5847f..59d017b 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 @@ -59,7 +59,7 @@ public class UserServiceImpl implements UserService { @Override public Boolean matchPassword(User user, String password){ String salt = user.getSalt(); - String encodePwd = SignUtils.MD5(UserConstant.DEFAULT_PASSWORD+salt); + String encodePwd = SignUtils.MD5(password+salt); return user.getUserPwd().equals(encodePwd); } diff --git a/electromagnetic-framework/pom.xml b/electromagnetic-framework/pom.xml index 899213d..9e7d955 100644 --- a/electromagnetic-framework/pom.xml +++ b/electromagnetic-framework/pom.xml @@ -71,6 +71,10 @@ org.apache.tomcat.embed tomcat-embed-core + + org.springframework + spring-webmvc + \ No newline at end of file diff --git a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/sign/AESUtils.java b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/sign/AESUtils.java index c8bcbf8..3bb0e57 100644 --- a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/sign/AESUtils.java +++ b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/sign/AESUtils.java @@ -132,7 +132,7 @@ public class AESUtils { Security.addProvider(new BouncyCastleProvider()); Cipher cipher = Cipher.getInstance("AES/ECB/PKCS7Padding"); cipher.init(Cipher.DECRYPT_MODE, secretKeySpec); - return cipher.doFinal(Base64.decodeBase64(enc)).toString(); + return new String(cipher.doFinal(Base64.decodeBase64(enc))); } catch (NoSuchPaddingException e) { throw new RuntimeException(e); } catch (IllegalBlockSizeException e) { diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java index 84201a0..b0de169 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java @@ -4,6 +4,7 @@ import com.electromagnetic.industry.software.data.manage.request.user.UserModiRe import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import electromagnetic.data.framework.share.model.ElectromagneticResult; import electromagnetic.data.framework.share.result.BaseResult; import electromagnetic.data.framework.share.result.LoginResult; @@ -14,14 +15,14 @@ public interface UserFacade { * @param loginRequest * @return */ - LoginResult login(UserLoginRequest loginRequest); + ElectromagneticResult login(UserLoginRequest loginRequest); /** * 新增用户信息 * @param userRequest * @return */ - BaseResult createUser(UserRequest userRequest); + ElectromagneticResult createUser(UserRequest userRequest); /** * 编辑用户信息 diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/TokenMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/TokenMapper.java index fb67a60..9a9690d 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/TokenMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/TokenMapper.java @@ -12,4 +12,11 @@ public interface TokenMapper { * @return */ int insert(Token token); + + /** + * 查询 + * @param token + * @return Token + */ + Token selectToken(String token); } diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/TokenRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/TokenRepositoryImpl.java index af4e7b7..f4c178e 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/TokenRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/TokenRepositoryImpl.java @@ -22,4 +22,12 @@ public class TokenRepositoryImpl implements TokenRepository { public int insert(Token token){ return tokenMapper.insert(token); } + + /** + * 查询令牌 + * @param token + * @return + */ + @Override + public Token selectToken(String token) {return tokenMapper.selectToken(token);} } diff --git a/infrastructure/repository/src/main/resources/sqlmapper/TokenMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/TokenMapper.xml index 0ab10d0..6a3061f 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/TokenMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/TokenMapper.xml @@ -10,6 +10,10 @@ + + select id, user_id, token, is_long_term, created_at, expire_at from tokens + + insert into tokens( user_id, @@ -26,4 +30,10 @@ #{expireAt} ) + + + \ No newline at end of file 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 2a7dd00..bcb0066 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 @@ -12,6 +12,8 @@ import com.electromagnetic.industry.software.data.manage.request.user.UserLoginR import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; +import electromagnetic.data.framework.share.model.ElectromagneticResult; +import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; import electromagnetic.data.framework.share.result.BaseResult; import electromagnetic.data.framework.share.result.LoginResult; import electromagnetic.data.framework.share.sign.AESUtils; @@ -37,16 +39,16 @@ public class UserFacadeImpl implements UserFacade { * @return */ @Override - public LoginResult login(UserLoginRequest loginRequest) { + public ElectromagneticResult login(UserLoginRequest loginRequest) { 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 ( user!=null && userService.matchPassword(user, decodePwd)) { String tokenStr = tokenService.createToken(info); tokenService.createUserToken(user, tokenStr); - return LoginResultUtil.success(tokenStr); + return ElectromagneticResultUtil.success(tokenStr); } - return LoginResultUtil.fail("500","用户不存在/密码错误"); + return ElectromagneticResultUtil.fail("500","用户不存在/密码错误"); } /** @@ -55,13 +57,13 @@ public class UserFacadeImpl implements UserFacade { * @return */ @Override - public BaseResult createUser(UserRequest userRequest){ + public ElectromagneticResult createUser(UserRequest userRequest){ User user = UserMappers.INSTANCE.getUserRequestToModel(userRequest); user.setSalt(RandomStringUtils.randomAlphanumeric(16)); user.setUserId(IdWorker.getSnowFlakeIdString()); user.setUserPwd(SignUtils.MD5(UserConstant.DEFAULT_PASSWORD+user.getSalt())); user.setIsPublished(UserConstant.DEFAULT_PUBLISH_STATUS); - return BaseResultUtil.success(userService.createUser(user)); + return ElectromagneticResultUtil.success(userService.createUser(user)); } /** From 96de169bf74361db206e5aff82ff56b045fa85ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Fri, 15 Nov 2024 17:29:29 +0800 Subject: [PATCH 08/18] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=8D=95=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../request/user/GetSingleUserRequest.java | 18 +++ .../response/user/SingleUserResponse.java | 113 ++++++++++++++++++ 2 files changed, 131 insertions(+) create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/GetSingleUserRequest.java create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/GetSingleUserRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/GetSingleUserRequest.java new file mode 100644 index 0000000..a50a018 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/GetSingleUserRequest.java @@ -0,0 +1,18 @@ +package com.electromagnetic.industry.software.data.manage.request.user; + +import cn.hutool.core.date.DateTime; +import electromagnetic.data.framework.share.model.BaseRequest; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class GetSingleUserRequest extends BaseRequest implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 用户编码 + */ + private String userId; + +} diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java new file mode 100644 index 0000000..154edf8 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java @@ -0,0 +1,113 @@ +package com.electromagnetic.industry.software.data.manage.response.user; + +import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardResponse; +import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorResponse; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + + +@Data +public class SingleUserResponse { + + private static final long serialVersionUID = -7475233976453471059L; + + /** + * 主键ID + */ + private Long id; + + /** + * 用户编码 + */ + private String userId; + + /** + * 用户姓名 + */ + private String userName; + + /** + * 工号 + */ + private String workNumber; + + /** + * 手机号 + */ + private String mobile; + + /** + * 所属部门 + */ + private String userDept; + + /** + * 职称 + */ + private String userTitle; + + /** + * 登录密码 + */ + private String userPwd; + + /** + * 入职日期 + */ + private Date joinTime; + + /** + * 工作状态 + */ + private String userStatus; + + /** + * 实习截止日期 + */ + private Date internshipEndDate; + + /** + * 是否已发布 + */ + private Integer isPublished; + + /** + * 盐 + */ + private String salt; + + /** + * 创建人 + */ + private String creator; + + /** + * 创建人姓名 + */ + private String creatorName; + /** + * 创建时间 + */ + private Date gmtCreate; + /** + * 更新人 + */ + private String modifier; + /** + * 更新人姓名 + */ + private String modifierName; + /** + * 更新时间 + */ + private Date gmtModified; + + /** + * 是否有效:0-无效 1-有效 + */ + private Integer effectFlag; +} + From ba8280c1e0b63d366849f28740eea7ae66f5923f Mon Sep 17 00:00:00 2001 From: s2042968 Date: Fri, 15 Nov 2024 17:52:19 +0800 Subject: [PATCH 09/18] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=86=B2=E7=AA=81-2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/config/WebMvcConfig.java | 14 +++ .../controller/user/UserController.java | 4 - .../user/interceptor/LoginInterceptor.java | 46 ++++++++ .../domain/boardservice/user/model/Token.java | 7 +- .../user/service/impl/TokenServiceImpl.java | 3 +- .../framework/share/result/BaseResult.java | 88 --------------- .../framework/share/result/LoginResult.java | 100 ------------------ .../framework/share/util/BaseResultUtil.java | 42 -------- .../framework/share/util/LoginResultUtil.java | 39 ------- .../data/manage/facade/user/UserFacade.java | 4 - .../service/facade/user/UserFacadeImpl.java | 36 +------ .../manage/service/mappers/UserMappers.java | 8 -- 12 files changed, 67 insertions(+), 324 deletions(-) create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java delete mode 100644 electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/BaseResult.java delete mode 100644 electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/LoginResult.java delete mode 100644 electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/BaseResultUtil.java delete mode 100644 electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/LoginResultUtil.java diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/config/WebMvcConfig.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/config/WebMvcConfig.java index ea7cbce..a00379a 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/config/WebMvcConfig.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/config/WebMvcConfig.java @@ -3,11 +3,15 @@ */ package com.electromagnetic.industry.software.data.manage.controller.config; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.interceptor.LoginInterceptor; import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import springfox.documentation.swagger2.annotations.EnableSwagger2; +import javax.annotation.Resource; + /** * @author * @version $Id: d.java, v 0.1 2021-01-05 19:33 Exp $$ @@ -15,6 +19,10 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2; @Configuration @EnableSwagger2 public class WebMvcConfig implements WebMvcConfigurer { + + @Resource + LoginInterceptor loginInterceptor; + /** * * @param registry registry @@ -28,5 +36,11 @@ public class WebMvcConfig implements WebMvcConfigurer { .addResourceLocations("classpath:/META-INF/resources/webjars/"); } + @Override + public void addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(loginInterceptor) + .addPathPatterns("/**") + .excludePathPatterns("/data/ed/user/login"); + } } diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index 43057b6..4923fe0 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -7,11 +7,7 @@ import com.electromagnetic.industry.software.data.manage.request.user.UserPublis import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import electromagnetic.data.framework.share.model.ElectromagneticResult; -import electromagnetic.data.framework.share.model.ElectromagneticResult; import com.electromagnetic.industry.software.data.manage.request.user.*; -import electromagnetic.data.framework.share.model.ElectromagneticResult; -import electromagnetic.data.framework.share.result.BaseResult; -import electromagnetic.data.framework.share.result.LoginResult; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java new file mode 100644 index 0000000..04bf533 --- /dev/null +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java @@ -0,0 +1,46 @@ +package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.interceptor; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; +import org.springframework.web.servlet.ModelAndView; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@Component +public class LoginInterceptor implements HandlerInterceptor { + + @Resource + TokenService tokenService; + + @Override + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { + + String token = request.getHeader("Authorization"); + if (token==null || !token.startsWith("Bearer ")) { + response.setStatus(401); + return false; + } else { + token = token.substring(7); + } + boolean result = tokenService.isTokenValid(token.substring(7)); + if (!result) { + response.setStatus(401); + return false; + } else { + return true; + } + } + + @Override + public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { + + } + + @Override + public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { + + } +} diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/Token.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/Token.java index 37e302f..e4975e6 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/Token.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/Token.java @@ -1,8 +1,9 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model; -import cn.hutool.core.date.DateTime; import lombok.Data; +import java.util.Date; + @Data public class Token { @@ -29,10 +30,10 @@ public class Token { /** * 创建时间 */ - private DateTime createdAt; + private Date createdAt; /** * 过期时间 */ - private DateTime expireAt; + private Date expireAt; } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java index a852c88..3bb3582 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/TokenServiceImpl.java @@ -13,6 +13,7 @@ import io.jsonwebtoken.SignatureAlgorithm; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Date; import java.util.HashMap; import java.util.Map; import java.util.UUID; @@ -64,7 +65,7 @@ public class TokenServiceImpl implements TokenService { @Override public Boolean isTokenValid(String tokenStr){ Token token = tokenRepository.selectToken(tokenStr); - DateTime now = new DateTime(SystemClock.now()); + Date now = new Date(SystemClock.now()); if (token != null && now.before(token.getExpireAt())) { return true; } diff --git a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/BaseResult.java b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/BaseResult.java deleted file mode 100644 index 769682b..0000000 --- a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/BaseResult.java +++ /dev/null @@ -1,88 +0,0 @@ -package electromagnetic.data.framework.share.result; - -import java.io.Serializable; - -public class BaseResult implements Serializable{ - - private static final long serialVersionUID = 1L; - - /** - * 请求成功还是失败 - */ - private Boolean success; - - /** - * 错误码 - */ - private String errorCode; - - /** - * 错误消息 - */ - private String errorMessage; - - - public BaseResult() { - - } - - public BaseResult(Boolean success, String errorCode, String errorMessage) { - this.success = success; - this.errorCode = errorCode; - this.errorMessage = errorMessage; - } - - /** - * Getter method for property success. - * - * @return property value of success - */ - public Boolean getSuccess() { - return success; - } - - /** - * Setter method for property success. - * - * @param success value to be assigned to property success - */ - public void setSuccess(Boolean success) { - this.success = success; - } - - /** - * Getter method for property errorCode. - * - * @return property value of errorCode - */ - public String getErrorCode() { - return errorCode; - } - - /** - * Setter method for property errorCode. - * - * @param errorCode value to be assigned to property errorCode - */ - public void setErrorCode(String errorCode) { - this.errorCode = errorCode; - } - - /** - * Getter method for property errorMsg. - * - * @return property value of errorMsg - */ - public String getErrorMessage() { - return errorMessage; - } - - /** - * Setter method for property errorMsg. - * - * @param errorMessage value to be assigned to property errorMsg - */ - public void setErrorMessage(String errorMessage) { - this.errorMessage = errorMessage; - } -} diff --git a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/LoginResult.java b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/LoginResult.java deleted file mode 100644 index 6ea7fa9..0000000 --- a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/result/LoginResult.java +++ /dev/null @@ -1,100 +0,0 @@ -package electromagnetic.data.framework.share.result; - -import java.io.Serializable; - -public class LoginResult implements Serializable{ - - private static final long serialVersionUID = 1L; - - /** - * 请求成功还是失败 - */ - private Boolean success; - - /** - * 错误码 - */ - private String errorCode; - - /** - * 错误消息 - */ - private String errorMessage; - - /** - * 令牌 - */ - private String token; - - public LoginResult() { - - } - - public LoginResult(Boolean success, String errorCode, String errorMessage, String token) { - this.success = success; - this.errorCode = errorCode; - this.errorMessage = errorMessage; - this.token = token; - } - - /** - * Getter method for property success. - * - * @return property value of success - */ - public Boolean getSuccess() { - return success; - } - - /** - * Setter method for property success. - * - * @param success value to be assigned to property success - */ - public void setSuccess(Boolean success) { - this.success = success; - } - - /** - * Getter method for property errorCode. - * - * @return property value of errorCode - */ - public String getErrorCode() { - return errorCode; - } - - /** - * Setter method for property errorCode. - * - * @param errorCode value to be assigned to property errorCode - */ - public void setErrorCode(String errorCode) { - this.errorCode = errorCode; - } - - /** - * Getter method for property errorMsg. - * - * @return property value of errorMsg - */ - public String getErrorMessage() { - return errorMessage; - } - - /** - * Setter method for property errorMsg. - * - * @param errorMessage value to be assigned to property errorMsg - */ - public void setErrorMessage(String errorMessage) { - this.errorMessage = errorMessage; - } - - public String getToken() { - return token; - } - public void setToken(String token) { - this.token = token; - } -} diff --git a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/BaseResultUtil.java b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/BaseResultUtil.java deleted file mode 100644 index 92cb311..0000000 --- a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/BaseResultUtil.java +++ /dev/null @@ -1,42 +0,0 @@ -package electromagnetic.data.framework.share.util; - -import electromagnetic.data.framework.share.enums.ErrorEnum; -import electromagnetic.data.framework.share.result.BaseResult; -import electromagnetic.data.framework.share.result.CallbackResult; - -/** - * 返回结果转换工具类 - * - */ -public class BaseResultUtil { - - public static BaseResult convertToResult(CallbackResult callbackResult) { - BaseResult BaseResult = new BaseResult<>(); - BaseResult.setSuccess(callbackResult.isSuccess()); - BaseResult.setErrorCode(callbackResult.getResultCode()); - BaseResult.setErrorMessage(callbackResult.getResultMessage()); - return BaseResult; - } - - public static BaseResult success(T data){ - BaseResult BaseResult = new BaseResult<>(); - BaseResult.setSuccess(true); - return BaseResult; - } - - public static BaseResult fail(String code , String msg){ - BaseResult BaseResult = new BaseResult<>(); - BaseResult.setSuccess(false); - BaseResult.setErrorCode(code); - BaseResult.setErrorMessage(msg); - return BaseResult; - } - - public static BaseResult fail(ErrorEnum errorEnum){ - BaseResult BaseResult = new BaseResult<>(); - BaseResult.setSuccess(false); - BaseResult.setErrorCode(errorEnum.getCode()); - BaseResult.setErrorMessage(errorEnum.getErrorMessage()); - return BaseResult; - } -} diff --git a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/LoginResultUtil.java b/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/LoginResultUtil.java deleted file mode 100644 index 5458bc6..0000000 --- a/electromagnetic-framework/src/main/java/electromagnetic/data/framework/share/util/LoginResultUtil.java +++ /dev/null @@ -1,39 +0,0 @@ -package electromagnetic.data.framework.share.util; - -import electromagnetic.data.framework.share.enums.ErrorEnum; -import electromagnetic.data.framework.share.result.CallbackResult; -import electromagnetic.data.framework.share.result.LoginResult; - -public class LoginResultUtil { - - public static LoginResult convertToResult(CallbackResult callbackResult) { - LoginResult LoginResult = new LoginResult<>(); - LoginResult.setSuccess(callbackResult.isSuccess()); - LoginResult.setErrorCode(callbackResult.getResultCode()); - LoginResult.setErrorMessage(callbackResult.getResultMessage()); - return LoginResult; - } - - public static LoginResult success(String token){ - LoginResult LoginResult = new LoginResult<>(); - LoginResult.setSuccess(true); - LoginResult.setToken(token); - return LoginResult; - } - - public static LoginResult fail(String code , String msg){ - LoginResult LoginResult = new LoginResult<>(); - LoginResult.setSuccess(false); - LoginResult.setErrorCode(code); - LoginResult.setErrorMessage(msg); - return LoginResult; - } - - public static LoginResult fail(ErrorEnum errorEnum){ - LoginResult LoginResult = new LoginResult<>(); - LoginResult.setSuccess(false); - LoginResult.setErrorCode(errorEnum.getCode()); - LoginResult.setErrorMessage(errorEnum.getErrorMessage()); - return LoginResult; - } -} diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java index 2975c83..b6aa635 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java @@ -6,11 +6,7 @@ import com.electromagnetic.industry.software.data.manage.request.user.UserPublis import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import electromagnetic.data.framework.share.model.ElectromagneticResult; -import electromagnetic.data.framework.share.model.ElectromagneticResult; import com.electromagnetic.industry.software.data.manage.request.user.*; -import electromagnetic.data.framework.share.model.ElectromagneticResult; -import electromagnetic.data.framework.share.result.BaseResult; -import electromagnetic.data.framework.share.result.LoginResult; public interface UserFacade { 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 3e593a8..e1bd5a8 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 @@ -1,9 +1,5 @@ package com.electromagnetic.industry.software.data.manage.service.facade.user; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCard; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCardDetial; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCardPage; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.parames.IndicatorCardParams; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService; @@ -11,32 +7,21 @@ import com.electromagnetic.industry.software.data.manage.domain.boardservice.use import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; import com.electromagnetic.industry.software.data.manage.request.user.*; -import com.electromagnetic.industry.software.data.manage.request.indicator.IndicatorCardRequest; -import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; -import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardDetailReponse; -import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardPageResponse; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; -import com.electromagnetic.industry.software.data.manage.service.mappers.IndicatorCardMappers; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; import electromagnetic.data.framework.share.model.ElectromagneticResult; import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; -import electromagnetic.data.framework.share.result.BaseResult; -import electromagnetic.data.framework.share.result.LoginResult; import electromagnetic.data.framework.share.sign.AESUtils; -import electromagnetic.data.framework.share.util.BaseResultUtil; -import electromagnetic.data.framework.share.util.LoginResultUtil; import electromagnetic.data.framework.share.util.SignUtils; import org.apache.commons.lang3.RandomStringUtils; import org.springframework.stereotype.Service; -import java.util.List; import javax.annotation.Resource; -import javax.swing.text.StyledEditorKit; @Service public class UserFacadeImpl implements UserFacade { @@ -88,9 +73,6 @@ public class UserFacadeImpl implements UserFacade { public ElectromagneticResult modifyUser(UserModiRequest userModiRequest) { // 将请求对象转换为模型对象 User user = UserMappers.INSTANCE.getUserModiRequestToModel(userModiRequest); - // 调用 UserService 的修改用户方法 - Boolean success = userService.modifyUser(user); - //根据操作结果构建 BaseResult 对象并返回 return ElectromagneticResultUtil.success(userService.modifyUser(user)); } @@ -102,8 +84,7 @@ public class UserFacadeImpl implements UserFacade { */ @Override public ElectromagneticResult publishUser(UserPublishRequest userPublishRequest){ - User user = UserMappers.INSTANCE.getUserPublishRequestToModel(userPublishRequest); - return ElectromagneticResultUtil.success(userService.publishUser(user)); + return ElectromagneticResultUtil.success(userService.publishUser(userPublishRequest.getUserIds())); } /** @@ -121,9 +102,6 @@ public class UserFacadeImpl implements UserFacade { // 根据是否存在具有相同工号的用户来确定工号的唯一性 boolean isWorkNumberUnique = (existingUser == null); return ElectromagneticResultUtil.success(Boolean.valueOf(isWorkNumberUnique)); - public ElectromagneticResult publishUser(UserPublishRequest userPublishRequest){ - List userIds = userPublishRequest.getUserIds(); - return ElectromagneticResultUtil.success(userService.publishUser(userIds)); } /** @@ -133,21 +111,9 @@ public class UserFacadeImpl implements UserFacade { */ @Override public ElectromagneticResult getSingleUser(GetSingleUserRequest getSingleUserRequest){ - //String userId = getSingleUserRequest.getUserId(); - //response - //User user = new User(); - //user.setUserId(getSingleUserRequest.getUserId()); User user = userService.getSingleUser(getSingleUserRequest.getUserId()); SingleUserResponse singleUserResponse = UserMappers.INSTANCE.getSingleUserToResponse(user); return ElectromagneticResultUtil.success(singleUserResponse); } -// @Override -// public ElectromagneticResult getIndicatorCardDetail(IndicatorCardRequest request) { -// IndicatorCard card=new IndicatorCard(); -// card.setIndicatorCardNo(request.getIndicatorCardNo()); -// IndicatorCardDetial indicatorCardDetial=indicatorCardService.getIndicatorCardDetail(card); -// IndicatorCardDetailReponse reponse=IndicatorCardMappers.INSTANCE.getIndicatorCardDetailToReponse(indicatorCardDetial); -// return ElectromagneticResultUtil.success(reponse); -// } } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index 307226a..966ed76 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -39,14 +39,6 @@ public interface UserMappers { */ UserLoginInfo getUserLoginRequestToModel(UserLoginRequest loginRequest); - - /** - * 获取单条用户信息Request转用户模型 - * @param getSingleUserRequest - * @return - */ - User getSingleUserRequestToModel(GetSingleUserRequest getSingleUserRequest); - /** * 获取单条用户信息Request转用户模型 * @param user From 0a4e98f446fa3e94ffefdaffa0b715c2f9050dce Mon Sep 17 00:00:00 2001 From: s2042968 Date: Mon, 18 Nov 2024 10:41:22 +0800 Subject: [PATCH 10/18] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data/manage/controller/user/UserController.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index 4923fe0..f47a2dd 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -27,13 +27,13 @@ public class UserController { } @ApiOperation(value = "新增用户信息", notes = "") - @PostMapping + @PostMapping("/createUser") public ElectromagneticResult createUser(@RequestBody UserRequest userRequest) { return userFacade.createUser(userRequest); } @ApiOperation(value="编辑用户信息",notes = "") - @PutMapping + @PutMapping("/updateUser") public ElectromagneticResult editUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);} @ApiOperation(value = "发布用户信息", notes = "") @@ -43,10 +43,9 @@ public class UserController { } @ApiOperation(value = "获取单条用户信息", notes = "") - @RequestMapping(value = "/{userId}", method = RequestMethod.GET) - public ElectromagneticResult getSingleUser(@PathVariable String userId) { - GetSingleUserRequest getSingleUserRequest = new GetSingleUserRequest(); - getSingleUserRequest.setUserId(userId); + @RequestMapping(value = "/getInfo", method = RequestMethod.GET) + public ElectromagneticResult getSingleUser(GetSingleUserRequest getSingleUserRequest) { + System.out.println(getSingleUserRequest.getUserId()); return userFacade.getSingleUser(getSingleUserRequest); } From 0c6c99da0421811d7b4dd45a689babcae0dcb58d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Mon, 18 Nov 2024 10:50:33 +0800 Subject: [PATCH 11/18] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/mappers/UserMappersImpl.java | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java diff --git a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java new file mode 100644 index 0000000..6228e69 --- /dev/null +++ b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java @@ -0,0 +1,100 @@ +package com.electromagnetic.industry.software.data.manage.service.mappers; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; +import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; +import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; +import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; +import javax.annotation.Generated; + +@Generated( + value = "org.mapstruct.ap.MappingProcessor", + date = "2024-11-15T16:08:08+0800", + comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_141 (Oracle Corporation)" +) +public class UserMappersImpl implements UserMappers { + + @Override + public User getUserRequestToModel(UserRequest userRequest) { + if ( userRequest == null ) { + return null; + } + + User user = new User(); + + user.setUserId( userRequest.getUserId() ); + user.setUserName( userRequest.getUserName() ); + user.setWorkNumber( userRequest.getWorkNumber() ); + user.setMobile( userRequest.getMobile() ); + user.setUserDept( userRequest.getUserDept() ); + user.setUserTitle( userRequest.getUserTitle() ); + user.setJoinTime( userRequest.getJoinTime() ); + user.setUserStatus( userRequest.getUserStatus() ); + user.setInternshipEndDate( userRequest.getInternshipEndDate() ); + user.setCreator( userRequest.getCreator() ); + user.setCreatorName( userRequest.getCreatorName() ); + + return user; + } + + @Override + public UserLoginInfo getUserLoginRequestToModel(UserLoginRequest loginRequest) { + if ( loginRequest == null ) { + return null; + } + + UserLoginInfo userLoginInfo = new UserLoginInfo(); + + userLoginInfo.setWorkNumber( loginRequest.getWorkNumber() ); + userLoginInfo.setUserPwd( loginRequest.getUserPwd() ); + + return userLoginInfo; + } + + @Override + public User getSingleUserRequestToModel(GetSingleUserRequest getSingleUserRequest) { + if ( getSingleUserRequest == null ) { + return null; + } + + User user = new User(); + + user.setUserId( getSingleUserRequest.getUserId() ); + user.setUserName( getSingleUserRequest.getUserName() ); + + return user; + } + + @Override + public SingleUserResponse getSingleUserToResponse(User user) { + if ( user == null ) { + return null; + } + + SingleUserResponse singleUserResponse = new SingleUserResponse(); + + singleUserResponse.setId( user.getId() ); + singleUserResponse.setUserId( user.getUserId() ); + singleUserResponse.setUserName( user.getUserName() ); + singleUserResponse.setWorkNumber( user.getWorkNumber() ); + singleUserResponse.setMobile( user.getMobile() ); + singleUserResponse.setUserDept( user.getUserDept() ); + singleUserResponse.setUserTitle( user.getUserTitle() ); + singleUserResponse.setUserPwd( user.getUserPwd() ); + singleUserResponse.setJoinTime( user.getJoinTime() ); + singleUserResponse.setUserStatus( user.getUserStatus() ); + singleUserResponse.setInternshipEndDate( user.getInternshipEndDate() ); + singleUserResponse.setIsPublished( user.getIsPublished() ); + singleUserResponse.setSalt( user.getSalt() ); + singleUserResponse.setCreator( user.getCreator() ); + singleUserResponse.setCreatorName( user.getCreatorName() ); + singleUserResponse.setGmtCreate( user.getGmtCreate() ); + singleUserResponse.setModifier( user.getModifier() ); + singleUserResponse.setModifierName( user.getModifierName() ); + singleUserResponse.setGmtModified( user.getGmtModified() ); + singleUserResponse.setEffectFlag( user.getEffectFlag() ); + + return singleUserResponse; + } +} From 239b94ec333453c9db418f6079b50d78b239350a Mon Sep 17 00:00:00 2001 From: s2042968 Date: Tue, 19 Nov 2024 09:18:16 +0800 Subject: [PATCH 12/18] =?UTF-8?q?=E7=9B=AE=E5=BD=95=E6=A0=91=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../category/CategoryController.java | 28 +++++++ .../controller/user/UserController.java | 1 - .../boardservice/category/model/Category.java | 82 ++++++++++++++++++ .../user/repository/CategoryRepository.java | 18 ++++ .../user/service/CategoryService.java | 14 ++++ .../user/service/TokenService.java | 1 - .../service/impl/CategoryServiceImpl.java | 83 +++++++++++++++++++ .../facade/Category/CategoryFacade.java | 12 +++ .../manage/repository/dao/CategoryMapper.java | 22 +++++ .../impl/CategoryRepositoryImpl.java | 33 ++++++++ .../resources/sqlmapper/CategoryMapper.xml | 35 ++++++++ .../facade/user/CategoryFacadeImpl.java | 26 ++++++ 12 files changed, 353 insertions(+), 2 deletions(-) create mode 100644 bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/category/CategoryController.java create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/category/model/Category.java create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/CategoryRepository.java create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/CategoryService.java create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/CategoryServiceImpl.java create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/Category/CategoryFacade.java create mode 100644 infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/CategoryMapper.java create mode 100644 infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/CategoryRepositoryImpl.java create mode 100644 infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml create mode 100644 service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/CategoryFacadeImpl.java diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/category/CategoryController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/category/CategoryController.java new file mode 100644 index 0000000..215a39c --- /dev/null +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/category/CategoryController.java @@ -0,0 +1,28 @@ +package com.electromagnetic.industry.software.data.manage.controller.category; + +import com.electromagnetic.industry.software.data.manage.facade.Category.CategoryFacade; +import electromagnetic.data.framework.share.model.ElectromagneticResult; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@RequestMapping("/data/ed/category") +@RestController +public class CategoryController { + + @Resource + CategoryFacade categoryFacade; + + /** + * 目录树查询 + */ + @ApiOperation(value = "目录树查询", notes = "") + @RequestMapping(value = "/tree", method = RequestMethod.GET) + public ElectromagneticResult categoryTree() { + return categoryFacade.categoryTree(); + } + +} diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index f47a2dd..9eea355 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -45,7 +45,6 @@ public class UserController { @ApiOperation(value = "获取单条用户信息", notes = "") @RequestMapping(value = "/getInfo", method = RequestMethod.GET) public ElectromagneticResult getSingleUser(GetSingleUserRequest getSingleUserRequest) { - System.out.println(getSingleUserRequest.getUserId()); return userFacade.getSingleUser(getSingleUserRequest); } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/category/model/Category.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/category/model/Category.java new file mode 100644 index 0000000..6643fc2 --- /dev/null +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/category/model/Category.java @@ -0,0 +1,82 @@ +package com.electromagnetic.industry.software.data.manage.domain.boardservice.category.model; + +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +@Data +public class Category implements Serializable { + + /** + * 主键ID + */ + private Long id; + + /** + * 目录类型ID + */ + private String categoryTypeId; + + /** + * 上级编码,为空则为一级 + */ + private String parentId; + + /** + * 目录编码 + */ + private String categoryId; + + /** + * 目录名称 + */ + private String categoryName; + + /** + * 目录状态 + */ + private String categoryStatus; + + /** + * 创建人 + */ + private String creator; + + /** + * 创建人姓名 + */ + private String creatorName; + + /** + * 创建时间 + */ + private Date gmtCreate; + + /** + * 编辑人 + */ + private String modifier; + + /** + * 编辑人姓名 + */ + private String modifierName; + + /** + * 编辑时间 + */ + private Date gmtModified; + + /** + * 是否有效:0-无效 1-有效 + */ + private int effectFlag; + + /** + * 子目录 + */ + private List children = new ArrayList<>(); +} diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/CategoryRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/CategoryRepository.java new file mode 100644 index 0000000..42d01a0 --- /dev/null +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/CategoryRepository.java @@ -0,0 +1,18 @@ +package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.category.model.Category; + +import java.util.List; + +public interface CategoryRepository { + + /** + * 获取顶级节点 + */ + List getTopCategories(); + + /** + * 获取所有节点 + */ + List getAllCategories(); +} diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/CategoryService.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/CategoryService.java new file mode 100644 index 0000000..1a62adb --- /dev/null +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/CategoryService.java @@ -0,0 +1,14 @@ +package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.category.model.Category; + +import java.util.List; + +public interface CategoryService { + + /** + * 构建树结构 + */ + public List buildCategoryTree(); + +} diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java index a17daed..2bdacf1 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/TokenService.java @@ -1,6 +1,5 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.Token; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/CategoryServiceImpl.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/CategoryServiceImpl.java new file mode 100644 index 0000000..ab1cc51 --- /dev/null +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/service/impl/CategoryServiceImpl.java @@ -0,0 +1,83 @@ +package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.impl; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.category.model.Category; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.CategoryRepository; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.CategoryService; +import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class CategoryServiceImpl implements CategoryService { + + @Resource + CategoryRepository categoryRepository; + + /** + * 构建树结构 + */ + @Override + public List buildCategoryTree(){ + List categories = categoryRepository.getAllCategories(); + List returnList = new ArrayList<>(); + List tempList = categories.stream().map(Category::getCategoryId).collect(Collectors.toList()); + for (Category category : categories) { + if (!tempList.contains(category.getParentId())) { + recursionFn(categories, category); + returnList.add(category); + } + } + if (returnList.isEmpty()) { + returnList = categories; + } + return returnList; + } + + /** + * 递归列表 + * @param list + * @param category + */ + private void recursionFn (List list, Category category) { + List childList = getChildList(list, category); + category.setChildren(childList); + for (Category child : childList) { + if (hasChild(list, child)) { + recursionFn(list, child); + } + } + } + + /** + * 得到子节点列表 + * @param list + * @param category + * @return + */ + private List getChildList(List list, Category category) { + List childList = new ArrayList<>(); + Iterator it = list.iterator(); + while (it.hasNext()) { + Category child = it.next(); + if (!StringUtils.isEmpty(child.getParentId()) && child.getParentId().equals(category.getCategoryId())) { + childList.add(child); + } + } + return childList; + } + + /** + * 判断是否有子节点 + * @param list + * @param category + * @return + */ + private boolean hasChild(List list, Category category) { + return !getChildList(list, category).isEmpty(); + } +} diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/Category/CategoryFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/Category/CategoryFacade.java new file mode 100644 index 0000000..63b1509 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/Category/CategoryFacade.java @@ -0,0 +1,12 @@ +package com.electromagnetic.industry.software.data.manage.facade.Category; + +import java.util.List; +import electromagnetic.data.framework.share.model.ElectromagneticResult; + +public interface CategoryFacade { + + /** + * 构建树结构 + */ + ElectromagneticResult categoryTree(); +} diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/CategoryMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/CategoryMapper.java new file mode 100644 index 0000000..762c437 --- /dev/null +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/CategoryMapper.java @@ -0,0 +1,22 @@ +package com.electromagnetic.industry.software.data.manage.repository.dao; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.category.model.Category; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface CategoryMapper { + + /** + * 获取顶级节点 + * @return + */ + List selectTopCategories(); + + /** + * 获取所有节点 + * @return + */ + List selectAllCategories(); +} diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/CategoryRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/CategoryRepositoryImpl.java new file mode 100644 index 0000000..ae4471f --- /dev/null +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/CategoryRepositoryImpl.java @@ -0,0 +1,33 @@ +package com.electromagnetic.industry.software.data.manage.repository.impl; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.category.model.Category; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.CategoryRepository; +import com.electromagnetic.industry.software.data.manage.repository.dao.CategoryMapper; +import org.springframework.stereotype.Repository; + +import javax.annotation.Resource; +import java.util.List; + +@Repository +public class CategoryRepositoryImpl implements CategoryRepository { + + @Resource + CategoryMapper categoryMapper; + + /** + * 获取顶级节点 + */ + @Override + public List getTopCategories(){ + return categoryMapper.selectTopCategories(); + } + + /** + * 获取所有节点 + */ + @Override + public List getAllCategories(){ + return categoryMapper.selectAllCategories(); + } + +} diff --git a/infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml new file mode 100644 index 0000000..86f06c8 --- /dev/null +++ b/infrastructure/repository/src/main/resources/sqlmapper/CategoryMapper.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + select category_type_id, parent_id, category_id, category_name, category_status, + creator, creator_name, gmt_create, modifier, modifier_name, gmt_modified, effect_flag + from ed_category + + + + + + \ No newline at end of file diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/CategoryFacadeImpl.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/CategoryFacadeImpl.java new file mode 100644 index 0000000..cd38858 --- /dev/null +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/facade/user/CategoryFacadeImpl.java @@ -0,0 +1,26 @@ +package com.electromagnetic.industry.software.data.manage.service.facade.user; + +import com.electromagnetic.industry.software.data.manage.domain.boardservice.category.model.Category; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.CategoryService; +import com.electromagnetic.industry.software.data.manage.facade.Category.CategoryFacade; +import electromagnetic.data.framework.share.model.ElectromagneticResult; +import electromagnetic.data.framework.share.model.ElectromagneticResultUtil; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class CategoryFacadeImpl implements CategoryFacade { + + @Resource + CategoryService categoryService; + + /** + * 构建树结构 + */ + public ElectromagneticResult categoryTree(){ + List list =categoryService.buildCategoryTree(); + return ElectromagneticResultUtil.success(list); + } +} From d0b23573903d180f01dc1636846cda120bafb4d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Tue, 19 Nov 2024 09:23:00 +0800 Subject: [PATCH 13/18] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/user/UserController.java | 5 ++ .../user/model/SearchKeywords.java | 18 +++++++ .../user/repository/UserRepository.java | 10 ++++ .../user/service/UserService.java | 8 +++ .../user/service/impl/UserServiceImpl.java | 9 ++++ .../data/manage/facade/user/UserFacade.java | 7 +++ .../request/user/SearchUserRequest.java | 38 ++++++++++++++ .../response/user/UserSearchResponse.java | 26 ++++++++++ .../manage/repository/dao/UserMapper.java | 8 +++ .../repository/impl/UserRepositoryImpl.java | 11 ++++ .../main/resources/sqlmapper/UserMapper.xml | 51 ++++++++++++++++++- .../service/facade/user/UserFacadeImpl.java | 24 +++++++++ .../manage/service/mappers/UserMappers.java | 17 +++++++ 13 files changed, 231 insertions(+), 1 deletion(-) create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index f47a2dd..d99b8ed 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -49,6 +49,11 @@ public class UserController { return userFacade.getSingleUser(getSingleUserRequest); } + @ApiOperation(value = "查询用户信息", notes = "") + @RequestMapping(value = "/list", method = RequestMethod.GET) + public ElectromagneticResult searchUser(SearchUserRequest searchUserRequest) { + return userFacade.searchUser(searchUserRequest); + } @ApiOperation(value = "校验工号唯一性", notes = "") @RequestMapping(value = "/validate", method = RequestMethod.POST) diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java new file mode 100644 index 0000000..cea6324 --- /dev/null +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java @@ -0,0 +1,18 @@ +package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model; + +public class SearchKeywords { + /** + * 搜索关键词 + */ + private String keyword; + + /** + * 用户状态 + */ + private String userStatus; + + /** + * 用户发布状态 + */ + private int isPublished; +} diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index cf5ced7..72846a1 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -1,5 +1,6 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import java.util.List; @@ -39,4 +40,13 @@ public interface UserRepository { * @return */ User getSingleUser(String userId); + + /** + * 查询用户 + * @param searchKeywords + * @return + */ + List search(SearchKeywords searchKeywords); + + } 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 8cd8245..b815198 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 @@ -1,5 +1,6 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; @@ -50,4 +51,11 @@ public interface UserService { * @return */ User getSingleUser(String userId); + + /** + * 查询用户信息 + * @param searchKeywords + * @return + */ + List searchUser(SearchKeywords searchKeywords); } 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 36992d4..6df8007 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,6 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.impl; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; @@ -80,4 +81,12 @@ public class UserServiceImpl implements UserService { */ @Override public User getSingleUser(String userId) { return userRepository.getSingleUser(userId); } + + /** + * 查询用户信息 + * @param searchKeywords + * @return + */ + @Override + public List searchUser(SearchKeywords searchKeywords) { return userRepository.search(searchKeywords); } } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java index b6aa635..74f43d3 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java @@ -52,4 +52,11 @@ public interface UserFacade { * @return */ ElectromagneticResult getSingleUser(GetSingleUserRequest getSingleUserRequest); + + /** + * 查询用户信息 + * @param searchUserRequest + * @return + */ + ElectromagneticResult searchUser(SearchUserRequest searchUserRequest); } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java new file mode 100644 index 0000000..bd42529 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java @@ -0,0 +1,38 @@ +package com.electromagnetic.industry.software.data.manage.request.user; + +import electromagnetic.data.framework.share.model.BaseRequest; +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class SearchUserRequest extends BaseRequest implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 搜索关键词 + */ + private String keyword; + + /** + * 用户状态 + */ + private String userStatus; + + /** + * 用户发布状态 + */ + private int isPublished; + + /** + * 排序字段: "gmtCreate", "joinTime", "internEndDate" + */ + private String sortBy; + + /** + * 排序方式: "asc" 或 "desc" + */ + private String sortOrder; +} diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java new file mode 100644 index 0000000..97f5f74 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java @@ -0,0 +1,26 @@ +/** + * Copyright (c) 2004-2024 All Rights Reserved. + */ +package com.electromagnetic.industry.software.data.manage.response.user; + +import lombok.Data; +import org.apache.catalina.User; + +import java.io.Serializable; +import java.util.List; + +/** + * 指标卡详情Reponse + * @author + * @version $Id: IndicatorCardDetail.java, v 0.1 2024-08-14 10:37 + */ +@Data +public class UserSearchResponse implements Serializable { + private static final long serialVersionUID = -7475233976453471059L; + + /** + * 用户列表 + */ + private List userList; + //private List userList; +} \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java index ed74fed..18a4406 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java @@ -1,5 +1,6 @@ package com.electromagnetic.industry.software.data.manage.repository.dao; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import org.apache.ibatis.annotations.Mapper; @@ -41,4 +42,11 @@ public interface UserMapper { * @return */ User getSingleUser(String userId); + + /** + * 通过用户编码查询用户 + * @param searchKeywords + * @return + */ + List search(SearchKeywords searchKeywords); } \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java index 0729eb2..1a698ea 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java @@ -4,6 +4,7 @@ package com.electromagnetic.industry.software.data.manage.repository.impl; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository; import com.electromagnetic.industry.software.data.manage.repository.dao.UserMapper; @@ -69,4 +70,14 @@ public class UserRepositoryImpl implements UserRepository { public User getSingleUser(String userId) { return userMapper.getSingleUser(userId); } + + /** + * 查询用户 + * @param searchKeywords + * @return + */ + @Override + public List search(SearchKeywords searchKeywords) { + return userMapper.search(searchKeywords); + } } \ No newline at end of file diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index 4b32137..73a99e4 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -98,7 +98,56 @@ - + SELECT * + FROM ed_users + + + + (user_name LIKE CONCAT('%', #{keyword}, '%') OR work_number LIKE CONCAT('%', #{keyword}, '%')) + + + + + + + AND user_status = #{userStatus} + + + + + + + + + AND is_published = #{isPublished} + + + + + + + + + + ORDER BY gmt_create ${sortOrder} + + + ORDER BY join_time ${sortOrder} + + + ORDER BY internship_end_date ${sortOrder} + + + + + ORDER BY work_number ASC + + + + + + 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 e1bd5a8..9991352 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 @@ -1,17 +1,25 @@ package com.electromagnetic.industry.software.data.manage.service.facade.user; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.Indicator; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCard; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCardDetial; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; +import com.electromagnetic.industry.software.data.manage.request.indicator.IndicatorCardRequest; import com.electromagnetic.industry.software.data.manage.request.user.*; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardDetailReponse; +import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorResponse; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; +import com.electromagnetic.industry.software.data.manage.response.user.UserSearchResponse; +import com.electromagnetic.industry.software.data.manage.service.mappers.IndicatorCardMappers; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; import electromagnetic.data.framework.share.model.ElectromagneticResult; @@ -22,6 +30,8 @@ import org.apache.commons.lang3.RandomStringUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; @Service public class UserFacadeImpl implements UserFacade { @@ -116,4 +126,18 @@ public class UserFacadeImpl implements UserFacade { return ElectromagneticResultUtil.success(singleUserResponse); } + /** + * 查询用户信息 + * @param searchUserRequest + * @return + */ + @Override + public ElectromagneticResult searchUser(SearchUserRequest searchUserRequest){ + List userList = userService.searchUser(UserMappers.INSTANCE.getSearchKeywordsRequestToModel(searchUserRequest)); + UserSearchResponse userSearchResponse = UserMappers.INSTANCE.userListToResponse(userList); + return ElectromagneticResultUtil.success(userSearchResponse); + } + + + } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index 966ed76..185e4e6 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -3,6 +3,7 @@ */ package com.electromagnetic.industry.software.data.manage.service.mappers; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; @@ -12,6 +13,7 @@ import com.electromagnetic.industry.software.data.manage.domain.boardservice.use import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; +import com.electromagnetic.industry.software.data.manage.response.user.UserSearchResponse; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -45,6 +47,21 @@ public interface UserMappers { * @return */ SingleUserResponse getSingleUserToResponse(User user); + + /** + * 获取单条用户信息Request转用户模型 + * @param searchUserRequest + * @return + */ + SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest); + + /** + * 获取单条用户信息Request转用户模型 + * @param users + * @return + */ + UserSearchResponse userListToResponse(List users); + /** * 编辑用户Request转用户模型 * @param userModiRequest From 1e2d3cdb0fc55d14389ea6b4519035a840790b7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Tue, 19 Nov 2024 13:56:31 +0800 Subject: [PATCH 14/18] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=86=B2=E7=AA=81bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/sqlmapper/UserMapper.xml | 2 +- .../service/facade/user/UserFacadeImpl.java | 4 +- .../manage/service/mappers/UserMappers.java | 4 +- .../service/mappers/UserMappersImpl.java | 86 +++++++++++++++---- 4 files changed, 76 insertions(+), 20 deletions(-) diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index 73a99e4..cf08d30 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -98,7 +98,7 @@ - SELECT * FROM ed_users 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 9991352..d4114fb 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 @@ -134,7 +134,9 @@ public class UserFacadeImpl implements UserFacade { @Override public ElectromagneticResult searchUser(SearchUserRequest searchUserRequest){ List userList = userService.searchUser(UserMappers.INSTANCE.getSearchKeywordsRequestToModel(searchUserRequest)); - UserSearchResponse userSearchResponse = UserMappers.INSTANCE.userListToResponse(userList); + List singleUserResponseList = UserMappers.INSTANCE.userListToResponseList(userList); + UserSearchResponse userSearchResponse = new UserSearchResponse(); + userSearchResponse.setUserList(singleUserResponseList); return ElectromagneticResultUtil.success(userSearchResponse); } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index 185e4e6..c327309 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -56,11 +56,11 @@ public interface UserMappers { SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest); /** - * 获取单条用户信息Request转用户模型 + * 获取用户列表转response列表 * @param users * @return */ - UserSearchResponse userListToResponse(List users); + List userListToResponseList(List users); /** * 编辑用户Request转用户模型 diff --git a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java index 6228e69..070b3b4 100644 --- a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java +++ b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java @@ -1,16 +1,21 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; -import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; +import com.electromagnetic.industry.software.data.manage.request.user.SearchUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; +import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; +import com.electromagnetic.industry.software.data.manage.request.user.UserWorkNumRequest; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; +import java.util.ArrayList; +import java.util.List; import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2024-11-15T16:08:08+0800", + date = "2024-11-19T13:26:03+0800", comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_141 (Oracle Corporation)" ) public class UserMappersImpl implements UserMappers { @@ -52,20 +57,6 @@ public class UserMappersImpl implements UserMappers { return userLoginInfo; } - @Override - public User getSingleUserRequestToModel(GetSingleUserRequest getSingleUserRequest) { - if ( getSingleUserRequest == null ) { - return null; - } - - User user = new User(); - - user.setUserId( getSingleUserRequest.getUserId() ); - user.setUserName( getSingleUserRequest.getUserName() ); - - return user; - } - @Override public SingleUserResponse getSingleUserToResponse(User user) { if ( user == null ) { @@ -97,4 +88,67 @@ public class UserMappersImpl implements UserMappers { return singleUserResponse; } + + @Override + public SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest) { + if ( searchUserRequest == null ) { + return null; + } + + SearchKeywords searchKeywords = new SearchKeywords(); + + return searchKeywords; + } + + @Override + public List userListToResponseList(List users) { + if ( users == null ) { + return null; + } + + List list = new ArrayList( users.size() ); + for ( User user : users ) { + list.add( getSingleUserToResponse( user ) ); + } + + return list; + } + + @Override + public User getUserModiRequestToModel(UserModiRequest userModiRequest) { + if ( userModiRequest == null ) { + return null; + } + + User user = new User(); + + user.setUserId( userModiRequest.getUserId() ); + user.setUserName( userModiRequest.getUserName() ); + user.setWorkNumber( userModiRequest.getWorkNumber() ); + user.setMobile( userModiRequest.getMobile() ); + user.setUserDept( userModiRequest.getUserDept() ); + user.setUserTitle( userModiRequest.getUserTitle() ); + user.setJoinTime( userModiRequest.getJoinTime() ); + user.setUserStatus( userModiRequest.getUserStatus() ); + user.setInternshipEndDate( userModiRequest.getInternshipEndDate() ); + user.setModifier( userModiRequest.getModifier() ); + user.setModifierName( userModiRequest.getModifierName() ); + + return user; + } + + @Override + public User getUserWorkNumRequestToModel(UserWorkNumRequest userWorkNumRequest) { + if ( userWorkNumRequest == null ) { + return null; + } + + User user = new User(); + + user.setUserId( userWorkNumRequest.getUserId() ); + user.setUserName( userWorkNumRequest.getUserName() ); + user.setWorkNumber( userWorkNumRequest.getWorkNumber() ); + + return user; + } } From 3bb3e4f6cc96425f4e68bbf01bab54ad6e802fcc Mon Sep 17 00:00:00 2001 From: lizhanhao Date: Wed, 20 Nov 2024 10:41:26 +0800 Subject: [PATCH 15/18] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/user/UserController.java | 9 ++++- .../user/repository/UserRepository.java | 6 ++++ .../user/service/UserService.java | 7 ++++ .../user/service/impl/UserServiceImpl.java | 11 +++++++ .../common/ElectromagneticErrorEnum.java | 4 +-- .../data/manage/facade/user/UserFacade.java | 7 ++++ .../request/user/UserDeleteRequest.java | 20 +++++++++++ .../manage/repository/dao/UserMapper.java | 7 ++++ .../repository/impl/UserRepositoryImpl.java | 12 +++++++ .../main/resources/sqlmapper/UserMapper.xml | 6 ++++ .../service/facade/user/UserFacadeImpl.java | 33 ++++++++++++++----- .../manage/service/mappers/UserMappers.java | 11 +++++-- .../service/mappers/UserMappersImpl.java | 19 +++++++++-- 13 files changed, 136 insertions(+), 16 deletions(-) create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserDeleteRequest.java diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index d99b8ed..8f81174 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -9,6 +9,7 @@ import com.electromagnetic.industry.software.data.manage.request.user.UserReques import electromagnetic.data.framework.share.model.ElectromagneticResult; import com.electromagnetic.industry.software.data.manage.request.user.*; import io.swagger.annotations.ApiOperation; +import jdk.internal.org.objectweb.asm.tree.analysis.Value; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -34,7 +35,7 @@ public class UserController { @ApiOperation(value="编辑用户信息",notes = "") @PutMapping("/updateUser") - public ElectromagneticResult editUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);} + public ElectromagneticResult updateUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);} @ApiOperation(value = "发布用户信息", notes = "") @RequestMapping(value = "/publish", method = RequestMethod.POST) @@ -60,4 +61,10 @@ public class UserController { public ElectromagneticResult validateWorkNum(@RequestBody UserWorkNumRequest userWorkNumRequest) { return userFacade.validateWorkNum(userWorkNumRequest); } + + @ApiOperation(value="删除用户信息",notes="") + @GetMapping(value = "/deleteUser") + public ElectromagneticResult deleteUser(@RequestBody UserDeleteRequest userDeleteRequest) { + return userFacade.deleteUser(userDeleteRequest); + } } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index 72846a1..06f8b56 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -48,5 +48,11 @@ public interface UserRepository { */ List search(SearchKeywords searchKeywords); + /** + * 删除用户 + * @param userId + * @return + */ + int deleteUser(String userId); } 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 b815198..518d8bf 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 @@ -58,4 +58,11 @@ public interface UserService { * @return */ List searchUser(SearchKeywords searchKeywords); + + /** + * 根据userId逻辑删除用户 + * @param userId + * @return + */ + Boolean deleteUser(String userId); } 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 6df8007..c4b7df2 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 @@ -89,4 +89,15 @@ public class UserServiceImpl implements UserService { */ @Override public List searchUser(SearchKeywords searchKeywords) { return userRepository.search(searchKeywords); } + + /** + * 根据userId逻辑删除用户 + * + * @param userId + * @return + */ + @Override + public Boolean deleteUser(String userId) { + return userRepository.deleteUser(userId)>0; + } } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/common/ElectromagneticErrorEnum.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/common/ElectromagneticErrorEnum.java index 2890365..f805b5e 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/common/ElectromagneticErrorEnum.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/common/ElectromagneticErrorEnum.java @@ -65,12 +65,12 @@ public enum ElectromagneticErrorEnum implements ErrorEnum { REPORT_OFF_DESC_NULL(ErrorLevels.ERROR, ErrorTypes.BIZ, "53034", "REPORT_URL_ERROR", "下架原因不能为空"), REPORT_CANCEL_OFF_DESC_NULL(ErrorLevels.ERROR, ErrorTypes.BIZ, "53035", "REPORT_URL_ERROR", "取消下架原因不能为空"), DEPT_EXIST_REPORT(ErrorLevels.ERROR, ErrorTypes.BIZ, "53036", "DEPT_EXIST_REPORT", "部门下已挂在数据"), - FINE_CREATE_USER_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53037", "FINE_CREATE_USER_ERROR", "帆软创建用户失败"), + FINE_CREATE_USER_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53037", "FINE_CREATE_USER_ERROR", "创建用户失败"), FINE_CONNECT_LIST_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53038", "FINE_CONNECT_LIST_ERROR", "获取finebi数据库连接列表错误"), FINE_CONNECT_TABLE_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53039", "FINE_CONNECT_TABLE_ERROR", "获取finebi数据库对应表列表错误"), FINE_ADD_GROUP_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53040", "FINE_ADD_GROUP_ERROR", "添加分组报错"), FINE_ADD_PACK_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53041", "FINE_ADD_PACK_ERROR", "添加业务包报错"), - FINE_DELETE_USER_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53042", "FINE_DELETE_USER_ERROR", "帆软删除用户失败"), + FINE_DELETE_USER_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53042", "FINE_DELETE_USER_ERROR", "删除用户失败"), FINE_ADD_DB_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53043", "FINE_ADD_DB_ERROR", "数据集已存在,请不要重复添加"), FINE_GET_TABLE_INFO_ERROR(ErrorLevels.ERROR, ErrorTypes.BIZ, "53044", "FINE_GET_TABLE_INFO_ERROR", "数据集表信息错误"), LABEL_OBJNAME_IS_CHINESE(ErrorLevels.ERROR, ErrorTypes.BIZ, "53045", "LABEL_OSS_ANALYSIS_FAIL", "名称不能包含特殊字符(下划线,横杠,加号 除外)"), diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java index 74f43d3..b7af854 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/facade/user/UserFacade.java @@ -59,4 +59,11 @@ public interface UserFacade { * @return */ ElectromagneticResult searchUser(SearchUserRequest searchUserRequest); + + /** + * 刪除用戶(逻辑删除) + * @param userDeleteRequest + * @return + */ + ElectromagneticResult deleteUser(UserDeleteRequest userDeleteRequest); } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserDeleteRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserDeleteRequest.java new file mode 100644 index 0000000..1685fe4 --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserDeleteRequest.java @@ -0,0 +1,20 @@ +package com.electromagnetic.industry.software.data.manage.request.user; + +import cn.hutool.core.date.DateTime; +import electromagnetic.data.framework.share.model.BaseRequest; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +@Data +public class UserDeleteRequest extends BaseRequest implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 用户编码 + */ + private String userId; +} diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java index 18a4406..9914c03 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java @@ -49,4 +49,11 @@ public interface UserMapper { * @return */ List search(SearchKeywords searchKeywords); + + /** + * 通过用户ID删除用户 + * @param userId + * @return + */ + int deleteUser(String userId); } \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java index 1a698ea..5d21b75 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java @@ -80,4 +80,16 @@ public class UserRepositoryImpl implements UserRepository { public List search(SearchKeywords searchKeywords) { return userMapper.search(searchKeywords); } + + /** + * 删除用户 + * @param userId + * @return + */ + @Override + public int deleteUser(String userId) { + return userMapper.deleteUser(userId); + } + + } \ No newline at end of file diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index cf08d30..6f331a8 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -156,4 +156,10 @@ where user_id = #{userId} + + + update ed_users + set effect_flag=0 + where user_id = #{userId} + \ No newline at end of file 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 d4114fb..07e603c 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 @@ -1,25 +1,19 @@ package com.electromagnetic.industry.software.data.manage.service.facade.user; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.Indicator; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCard; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.indicator.model.IndicatorCardDetial; +import com.electromagnetic.industry.software.data.manage.common.ElectromagneticErrorEnum; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade; -import com.electromagnetic.industry.software.data.manage.request.indicator.IndicatorCardRequest; import com.electromagnetic.industry.software.data.manage.request.user.*; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; -import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardDetailReponse; -import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorResponse; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; import com.electromagnetic.industry.software.data.manage.response.user.UserSearchResponse; -import com.electromagnetic.industry.software.data.manage.service.mappers.IndicatorCardMappers; import com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers; import electromagnetic.data.framework.share.id.IdWorker; import electromagnetic.data.framework.share.model.ElectromagneticResult; @@ -30,7 +24,6 @@ import org.apache.commons.lang3.RandomStringUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.ArrayList; import java.util.List; @Service @@ -140,6 +133,30 @@ public class UserFacadeImpl implements UserFacade { return ElectromagneticResultUtil.success(userSearchResponse); } + /** + * 刪除用戶(逻辑删除) + * @param userDeleteRequest + * @return + */ + @Override + public ElectromagneticResult deleteUser(UserDeleteRequest userDeleteRequest) { + // 将请求对象转换为模型对象 + User user = UserMappers.INSTANCE.getUserDeleteRequestToModel(userDeleteRequest); + // 检查用户是否已经被逻辑删除 + User existingUser = userService.getSingleUser(user.getUserId()); + if(existingUser != null && existingUser.getEffectFlag()==0){ + // 如果用户已经被逻辑删除(在这个假设中,0 表示已删除),则不进行任何操作或返回错误 + return ElectromagneticResultUtil.fail(ElectromagneticErrorEnum. FINE_DELETE_USER_ERROR); + } + if(existingUser!=null && existingUser.getEffectFlag()==1){// 在这个假设中,1 表示未删除 + return ElectromagneticResultUtil.success(userService.deleteUser(user.getUserId())); + }else{ + // 如果用户不存在(理论上不应该发生,除非数据库状态不一致),则返回错误 + return ElectromagneticResultUtil.fail(ElectromagneticErrorEnum. FINE_DELETE_USER_ERROR); + + } + + } } diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index c327309..5684c1d 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -5,15 +5,12 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; -import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.*; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; -import com.electromagnetic.industry.software.data.manage.response.user.UserSearchResponse; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -76,4 +73,12 @@ public interface UserMappers { */ User getUserWorkNumRequestToModel(UserWorkNumRequest userWorkNumRequest); + /** + * 删除单条用户信息Request转用户模型 + * @param userDeleteRequest + * @return + */ + User getUserDeleteRequestToModel(UserDeleteRequest userDeleteRequest); + + } \ No newline at end of file diff --git a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java index 070b3b4..0ad222c 100644 --- a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java +++ b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java @@ -4,6 +4,7 @@ import com.electromagnetic.industry.software.data.manage.domain.boardservice.use import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.request.user.SearchUserRequest; +import com.electromagnetic.industry.software.data.manage.request.user.UserDeleteRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; @@ -15,8 +16,8 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2024-11-19T13:26:03+0800", - comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_141 (Oracle Corporation)" + date = "2024-11-20T10:26:08+0800", + comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_321 (Oracle Corporation)" ) public class UserMappersImpl implements UserMappers { @@ -151,4 +152,18 @@ public class UserMappersImpl implements UserMappers { return user; } + + @Override + public User getUserDeleteRequestToModel(UserDeleteRequest userDeleteRequest) { + if ( userDeleteRequest == null ) { + return null; + } + + User user = new User(); + + user.setUserId( userDeleteRequest.getUserId() ); + user.setUserName( userDeleteRequest.getUserName() ); + + return user; + } } From 8100a55d235ac53b12639f59c808f7d418e3fd77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Wed, 20 Nov 2024 10:45:56 +0800 Subject: [PATCH 16/18] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=AD=97=E6=AE=B5=E6=A8=A1=E5=9E=8B=EF=BC=8C?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E8=AF=A2=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../user/model/SearchKeywords.java | 18 ---------- .../user/params/SearchKeyWords.java | 36 +++++++++++++++++++ .../user/repository/UserRepository.java | 4 +-- .../user/service/UserService.java | 7 ++-- .../user/service/impl/UserServiceImpl.java | 5 ++- .../request/user/SearchUserRequest.java | 24 ++++++++++--- .../manage/repository/dao/UserMapper.java | 4 +-- .../repository/impl/UserRepositoryImpl.java | 4 +-- .../main/resources/sqlmapper/UserMapper.xml | 28 ++++++--------- .../manage/service/mappers/UserMappers.java | 7 ++-- .../service/mappers/UserMappersImpl.java | 19 ++++++---- 11 files changed, 92 insertions(+), 64 deletions(-) delete mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java create mode 100644 domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java deleted file mode 100644 index cea6324..0000000 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/model/SearchKeywords.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model; - -public class SearchKeywords { - /** - * 搜索关键词 - */ - private String keyword; - - /** - * 用户状态 - */ - private String userStatus; - - /** - * 用户发布状态 - */ - private int isPublished; -} diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java new file mode 100644 index 0000000..8792a10 --- /dev/null +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java @@ -0,0 +1,36 @@ +package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params; + +import lombok.Data; + +@Data +public class SearchKeyWords { + /** + * 搜索关键词 + */ + private String keyWord; + + /** + * 用户状态 + */ + private String userStatus; + + /** + * 用户发布状态 + */ + private int isPublished; + + /** + * 排序方式: "asc" 或 "desc" 或 “” + */ + private String gmtCreate; + + /** + * 排序方式: "asc" 或 "desc" 或 “” + */ + private String joinTime; + + /** + * 排序方式: "asc" 或 "desc" 或 “” + */ + private String internEndDate; +} diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index 72846a1..4584a0a 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -1,6 +1,6 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import java.util.List; @@ -46,7 +46,7 @@ public interface UserRepository { * @param searchKeywords * @return */ - List search(SearchKeywords searchKeywords); + List search(SearchKeyWords searchKeywords); } 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 b815198..1c93b05 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 @@ -1,8 +1,7 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import java.util.List; @@ -54,8 +53,8 @@ public interface UserService { /** * 查询用户信息 - * @param searchKeywords + * @param searchKeyWords * @return */ - List searchUser(SearchKeywords searchKeywords); + List searchUser(SearchKeyWords searchKeyWords); } 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 6df8007..9e33024 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,10 +1,9 @@ package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.impl; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant; import electromagnetic.data.framework.share.exception.LoggerConstant; import electromagnetic.data.framework.share.util.SignUtils; import org.slf4j.Logger; @@ -88,5 +87,5 @@ public class UserServiceImpl implements UserService { * @return */ @Override - public List searchUser(SearchKeywords searchKeywords) { return userRepository.search(searchKeywords); } + public List searchUser(SearchKeyWords searchKeywords) { return userRepository.search(searchKeywords); } } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java index bd42529..3b9ae44 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java @@ -14,7 +14,7 @@ public class SearchUserRequest extends BaseRequest implements Serializable { /** * 搜索关键词 */ - private String keyword; + private String keyWord; /** * 用户状态 @@ -26,13 +26,27 @@ public class SearchUserRequest extends BaseRequest implements Serializable { */ private int isPublished; +// /** +// * 排序字段: "gmtCreate", "joinTime", "internEndDate" +// */ +// private String sortBy; +// +// /** +// * 排序方式: "asc" 或 "desc" +// */ +// private String sortOrder; /** - * 排序字段: "gmtCreate", "joinTime", "internEndDate" + * 排序方式: "asc" 或 "desc" 或 “” */ - private String sortBy; + private String gmtCreate; /** - * 排序方式: "asc" 或 "desc" + * 排序方式: "asc" 或 "desc" 或 “” */ - private String sortOrder; + private String joinTime; + + /** + * 排序方式: "asc" 或 "desc" 或 “” + */ + private String internEndDate; } diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java index 18a4406..550d7e7 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java @@ -1,6 +1,6 @@ package com.electromagnetic.industry.software.data.manage.repository.dao; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import org.apache.ibatis.annotations.Mapper; @@ -48,5 +48,5 @@ public interface UserMapper { * @param searchKeywords * @return */ - List search(SearchKeywords searchKeywords); + List search(SearchKeyWords searchKeywords); } \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java index 1a698ea..ffe075b 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java @@ -4,7 +4,7 @@ package com.electromagnetic.industry.software.data.manage.repository.impl; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository; import com.electromagnetic.industry.software.data.manage.repository.dao.UserMapper; @@ -77,7 +77,7 @@ public class UserRepositoryImpl implements UserRepository { * @return */ @Override - public List search(SearchKeywords searchKeywords) { + public List search(SearchKeyWords searchKeywords) { return userMapper.search(searchKeywords); } } \ No newline at end of file diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index cf08d30..3a9ffdb 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -98,13 +98,13 @@ - SELECT * FROM ed_users - - (user_name LIKE CONCAT('%', #{keyword}, '%') OR work_number LIKE CONCAT('%', #{keyword}, '%')) + + (user_name LIKE CONCAT('%', #{keyWord}, '%') OR work_number LIKE CONCAT('%', #{keyWord}, '%')) @@ -128,21 +128,15 @@ - - - ORDER BY gmt_create ${sortOrder} - - - ORDER BY join_time ${sortOrder} - - - ORDER BY internship_end_date ${sortOrder} - + + ORDER BY gmt_create ${gmtCreate} + + + ORDER BY join_time ${joinTime} + + + ORDER BY internship_end_date ${internEndDate} - - - ORDER BY work_number ASC - diff --git a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java index c327309..5f4fe44 100644 --- a/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java +++ b/service/src/main/java/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappers.java @@ -3,17 +3,14 @@ */ package com.electromagnetic.industry.software.data.manage.service.mappers; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; -import com.electromagnetic.industry.software.data.manage.request.user.GetSingleUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; -import com.electromagnetic.industry.software.data.manage.request.user.UserPublishRequest; import com.electromagnetic.industry.software.data.manage.request.user.*; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserRequest; import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse; -import com.electromagnetic.industry.software.data.manage.response.user.UserSearchResponse; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -53,7 +50,7 @@ public interface UserMappers { * @param searchUserRequest * @return */ - SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest); + SearchKeyWords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest); /** * 获取用户列表转response列表 diff --git a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java index 070b3b4..75cccff 100644 --- a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java +++ b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java @@ -1,8 +1,8 @@ package com.electromagnetic.industry.software.data.manage.service.mappers; -import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.SearchKeywords; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User; import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo; +import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords; import com.electromagnetic.industry.software.data.manage.request.user.SearchUserRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest; import com.electromagnetic.industry.software.data.manage.request.user.UserModiRequest; @@ -15,8 +15,8 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2024-11-19T13:26:03+0800", - comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_141 (Oracle Corporation)" + date = "2024-11-20T10:18:06+0800", + comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_271 (Oracle Corporation)" ) public class UserMappersImpl implements UserMappers { @@ -90,14 +90,21 @@ public class UserMappersImpl implements UserMappers { } @Override - public SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest) { + public SearchKeyWords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest) { if ( searchUserRequest == null ) { return null; } - SearchKeywords searchKeywords = new SearchKeywords(); + SearchKeyWords searchKeyWords = new SearchKeyWords(); - return searchKeywords; + searchKeyWords.setKeyWord( searchUserRequest.getKeyWord() ); + searchKeyWords.setUserStatus( searchUserRequest.getUserStatus() ); + searchKeyWords.setIsPublished( searchUserRequest.getIsPublished() ); + searchKeyWords.setGmtCreate( searchUserRequest.getGmtCreate() ); + searchKeyWords.setJoinTime( searchUserRequest.getJoinTime() ); + searchKeyWords.setInternEndDate( searchUserRequest.getInternEndDate() ); + + return searchKeyWords; } @Override From 15733c9a6be43f9a1b4003b5b406a0cd08277ebb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E7=92=9E=E8=87=BB?= <349044@gmail.com> Date: Wed, 20 Nov 2024 10:53:59 +0800 Subject: [PATCH 17/18] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/boardservice/user/repository/UserRepository.java | 4 ++-- .../boardservice/user/service/impl/UserServiceImpl.java | 5 ++--- .../data/manage/service/mappers/UserMappersImpl.java | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index a910a72..ad59301 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -43,10 +43,10 @@ public interface UserRepository { /** * 查询用户 - * @param searchKeywords + * @param searchKeyWords * @return */ - List search(SearchKeyWords searchKeywords); + List search(SearchKeyWords searchKeyWords); /** * 删除用户 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 cab5480..a659146 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 @@ -83,11 +83,11 @@ public class UserServiceImpl implements UserService { /** * 查询用户信息 - * @param searchKeywords + * @param searchKeyWords * @return */ @Override - public List searchUser(SearchKeywords searchKeywords) { return userRepository.search(searchKeywords); } + public List searchUser(SearchKeyWords searchKeyWords) { return userRepository.search(searchKeyWords); } /** * 根据userId逻辑删除用户 @@ -99,5 +99,4 @@ public class UserServiceImpl implements UserService { public Boolean deleteUser(String userId) { return userRepository.deleteUser(userId)>0; } - public List searchUser(SearchKeyWords searchKeywords) { return userRepository.search(searchKeywords); } } diff --git a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java index 01fef84..b2f2e61 100644 --- a/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java +++ b/service/target/generated-sources/annotations/com/electromagnetic/industry/software/data/manage/service/mappers/UserMappersImpl.java @@ -16,7 +16,7 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2024-11-20T10:18:06+0800", + date = "2024-11-20T10:52:53+0800", comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_271 (Oracle Corporation)" ) public class UserMappersImpl implements UserMappers { From 00103fdff57755f4ce69fe7832f5a3e265f7673a Mon Sep 17 00:00:00 2001 From: s2042968 Date: Wed, 20 Nov 2024 17:08:10 +0800 Subject: [PATCH 18/18] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/user/UserController.java | 4 +- .../user/interceptor/LoginInterceptor.java | 2 +- .../user/params/SearchKeyWords.java | 12 ++++- .../user/repository/UserRepository.java | 7 +++ .../user/service/UserService.java | 7 +++ .../user/service/impl/UserServiceImpl.java | 10 +++++ .../request/user/SearchUserRequest.java | 23 +++++----- .../manage/request/user/UserModiRequest.java | 2 - .../response/user/SingleUserResponse.java | 5 --- .../response/user/UserLoginResponse.java | 13 ++++++ .../response/user/UserSearchResponse.java | 7 ++- .../manage/repository/dao/UserMapper.java | 7 +++ .../repository/impl/UserRepositoryImpl.java | 8 ++++ .../main/resources/sqlmapper/UserMapper.xml | 44 ++++++++++++++++++- .../service/facade/user/UserFacadeImpl.java | 16 +++++-- 15 files changed, 140 insertions(+), 27 deletions(-) create mode 100644 facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserLoginResponse.java diff --git a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java index c74e56e..db38ce7 100644 --- a/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java +++ b/bootstrap/src/main/java/com/electromagnetic/industry/software/data/manage/controller/user/UserController.java @@ -50,8 +50,8 @@ public class UserController { } @ApiOperation(value = "查询用户信息", notes = "") - @RequestMapping(value = "/list", method = RequestMethod.GET) - public ElectromagneticResult searchUser(SearchUserRequest searchUserRequest) { + @RequestMapping(value = "/list", method = RequestMethod.POST) + public ElectromagneticResult searchUser(@RequestBody SearchUserRequest searchUserRequest) { return userFacade.searchUser(searchUserRequest); } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java index 04bf533..c771921 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/interceptor/LoginInterceptor.java @@ -23,7 +23,7 @@ public class LoginInterceptor implements HandlerInterceptor { response.setStatus(401); return false; } else { - token = token.substring(7); + //token = token.substring(7); } boolean result = tokenService.isTokenValid(token.substring(7)); if (!result) { diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java index 8792a10..8b90ee1 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/params/SearchKeyWords.java @@ -17,7 +17,7 @@ public class SearchKeyWords { /** * 用户发布状态 */ - private int isPublished; + private String isPublished; /** * 排序方式: "asc" 或 "desc" 或 “” @@ -33,4 +33,14 @@ public class SearchKeyWords { * 排序方式: "asc" 或 "desc" 或 “” */ private String internEndDate; + + /** + * 页码 + */ + private int pageIndex; + + /** + * 单页条目数量 + */ + private int pageSize; } diff --git a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java index ad59301..7f61690 100644 --- a/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java +++ b/domain/src/main/java/com/electromagnetic/industry/software/data/manage/domain/boardservice/user/repository/UserRepository.java @@ -48,6 +48,13 @@ public interface UserRepository { */ List search(SearchKeyWords searchKeyWords); + /** + * 查询数据总条目数 + * @param searchKeywords + * @return + */ + int getTotalCount (SearchKeyWords searchKeywords); + /** * 删除用户 * @param userId 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 b4f744e..bddc728 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 @@ -58,6 +58,13 @@ public interface UserService { */ List searchUser(SearchKeyWords searchKeyWords); + /** + * 查询数据总条目数 + * @param searchKeywords + * @return + */ + int getTotalCount (SearchKeyWords searchKeywords); + /** * 根据userId逻辑删除用户 * @param userId 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 a659146..34592ef 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 @@ -89,6 +89,16 @@ public class UserServiceImpl implements UserService { @Override public List searchUser(SearchKeyWords searchKeyWords) { return userRepository.search(searchKeyWords); } + /** + * 查询数据总条目数 + * @param searchKeywords + * @return + */ + @Override + public int getTotalCount (SearchKeyWords searchKeywords) { + return userRepository.getTotalCount(searchKeywords); + } + /** * 根据userId逻辑删除用户 * diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java index 3b9ae44..b918533 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/SearchUserRequest.java @@ -22,19 +22,10 @@ public class SearchUserRequest extends BaseRequest implements Serializable { private String userStatus; /** - * 用户发布状态 + * 用户发布状态,1已发布,0未发布 */ - private int isPublished; + private String isPublished; -// /** -// * 排序字段: "gmtCreate", "joinTime", "internEndDate" -// */ -// private String sortBy; -// -// /** -// * 排序方式: "asc" 或 "desc" -// */ -// private String sortOrder; /** * 排序方式: "asc" 或 "desc" 或 “” */ @@ -49,4 +40,14 @@ public class SearchUserRequest extends BaseRequest implements Serializable { * 排序方式: "asc" 或 "desc" 或 “” */ private String internEndDate; + + /** + * 页码 + */ + private int pageIndex; + + /** + * 单页条目数量 + */ + private int pageSize; } diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java index 375df77..4af010f 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/request/user/UserModiRequest.java @@ -23,8 +23,6 @@ public class UserModiRequest extends BaseRequest implements Serializable { */ private String userName; - - /** * 工号 */ diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java index 154edf8..9dfabe8 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/SingleUserResponse.java @@ -1,13 +1,8 @@ package com.electromagnetic.industry.software.data.manage.response.user; -import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorCardResponse; -import com.electromagnetic.industry.software.data.manage.response.indicator.IndicatorResponse; import lombok.Data; -import java.io.Serializable; import java.util.Date; -import java.util.List; - @Data public class SingleUserResponse { diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserLoginResponse.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserLoginResponse.java new file mode 100644 index 0000000..aea4acf --- /dev/null +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserLoginResponse.java @@ -0,0 +1,13 @@ +package com.electromagnetic.industry.software.data.manage.response.user; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class UserLoginResponse implements Serializable { + + private String token; + + private String userId; +} diff --git a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java index 97f5f74..e8846e4 100644 --- a/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java +++ b/facade/src/main/java/com/electromagnetic/industry/software/data/manage/response/user/UserSearchResponse.java @@ -22,5 +22,10 @@ public class UserSearchResponse implements Serializable { * 用户列表 */ private List userList; - //private List userList; + + + /** + * 总数据数 + */ + private long totalCount; } \ No newline at end of file diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java index d7c5bff..180d05e 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/dao/UserMapper.java @@ -50,6 +50,13 @@ public interface UserMapper { */ List search(SearchKeyWords searchKeywords); + /** + * 查询数据总条目数 + * @param searchKeywords + * @return + */ + int getTotalCount (SearchKeyWords searchKeywords); + /** * 通过用户ID删除用户 * @param userId diff --git a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java index a4fe9b1..81d328e 100644 --- a/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java +++ b/infrastructure/repository/src/main/java/com/electromagnetic/industry/software/data/manage/repository/impl/UserRepositoryImpl.java @@ -81,6 +81,14 @@ public class UserRepositoryImpl implements UserRepository { return userMapper.search(searchKeywords); } + /** + * 查询数据总条目数 + * @param searchKeywords + * @return + */ + @Override + public int getTotalCount (SearchKeyWords searchKeywords) {return userMapper.getTotalCount(searchKeywords);} + /** * 删除用户 * @param userId diff --git a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml index a656462..ccac3af 100644 --- a/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml +++ b/infrastructure/repository/src/main/resources/sqlmapper/UserMapper.xml @@ -116,6 +116,49 @@ + + + + + AND is_published = CAST(#{isPublished} AS INT) + + + + + + + + + ORDER BY gmt_create ${gmtCreate} + + + ORDER BY join_time ${joinTime} + + + ORDER BY internship_end_date ${internEndDate} + + + LIMIT #{pageSize} OFFSET #{pageIndex} + + + -