修改用户查询字段模型,修改查询逻辑
This commit is contained in:
parent
1e2d3cdb0f
commit
8100a55d23
|
|
@ -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;
|
||||
}
|
||||
|
|
@ -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;
|
||||
}
|
||||
|
|
@ -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<User> search(SearchKeywords searchKeywords);
|
||||
List<User> search(SearchKeyWords searchKeywords);
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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<User> searchUser(SearchKeywords searchKeywords);
|
||||
List<User> searchUser(SearchKeyWords searchKeyWords);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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<User> searchUser(SearchKeywords searchKeywords) { return userRepository.search(searchKeywords); }
|
||||
public List<User> searchUser(SearchKeyWords searchKeywords) { return userRepository.search(searchKeywords); }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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<User> search(SearchKeywords searchKeywords);
|
||||
List<User> search(SearchKeyWords searchKeywords);
|
||||
}
|
||||
|
|
@ -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<User> search(SearchKeywords searchKeywords) {
|
||||
public List<User> search(SearchKeyWords searchKeywords) {
|
||||
return userMapper.search(searchKeywords);
|
||||
}
|
||||
}
|
||||
|
|
@ -98,13 +98,13 @@
|
|||
</foreach>
|
||||
</update>
|
||||
|
||||
<select id="search" parameterType="com.electromagnetic.industry.software.data.manage.request.user.SearchUserRequest" resultType="com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User">
|
||||
<select id="search" parameterType="com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords" resultMap="UserResultMap">
|
||||
SELECT *
|
||||
FROM ed_users
|
||||
<where>
|
||||
<!-- 条件 1:按用户名或工号搜索 -->
|
||||
<if test="keyword != null and keyword != ''">
|
||||
(user_name LIKE CONCAT('%', #{keyword}, '%') OR work_number LIKE CONCAT('%', #{keyword}, '%'))
|
||||
<if test="keyWord != null and keyWord != ''">
|
||||
(user_name LIKE CONCAT('%', #{keyWord}, '%') OR work_number LIKE CONCAT('%', #{keyWord}, '%'))
|
||||
</if>
|
||||
|
||||
<!-- 条件 2:按用户状态搜索 -->
|
||||
|
|
@ -128,21 +128,15 @@
|
|||
|
||||
<!-- 动态排序条件 -->
|
||||
<choose>
|
||||
<when test="sortBy != null and sortOrder != null">
|
||||
<if test="sortBy == 'gmtCreate'">
|
||||
ORDER BY gmt_create ${sortOrder}
|
||||
</if>
|
||||
<if test="sortBy == 'joinTime'">
|
||||
ORDER BY join_time ${sortOrder}
|
||||
</if>
|
||||
<if test="sortBy == 'internEndDate'">
|
||||
ORDER BY internship_end_date ${sortOrder}
|
||||
</if>
|
||||
<when test="gmtCreate == 'asc' or gmtCreate == 'desc'">
|
||||
ORDER BY gmt_create ${gmtCreate}
|
||||
</when>
|
||||
<when test="joinTime == 'asc' or joinTime == 'desc'">
|
||||
ORDER BY join_time ${joinTime}
|
||||
</when>
|
||||
<when test="internEndDate == 'asc' or internEndDate == 'desc'">
|
||||
ORDER BY internship_end_date ${internEndDate}
|
||||
</when>
|
||||
<!-- 默认按工号的字典序排列 -->
|
||||
<otherwise>
|
||||
ORDER BY work_number ASC
|
||||
</otherwise>
|
||||
</choose>
|
||||
</select>
|
||||
|
||||
|
|
|
|||
|
|
@ -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列表
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Reference in New Issue