修改用户查询字段模型,修改查询逻辑
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;
|
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 com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -46,7 +46,7 @@ public interface UserRepository {
|
||||||
* @param searchKeywords
|
* @param searchKeywords
|
||||||
* @return
|
* @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;
|
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.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -54,8 +53,8 @@ public interface UserService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询用户信息
|
* 查询用户信息
|
||||||
* @param searchKeywords
|
* @param searchKeyWords
|
||||||
* @return
|
* @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;
|
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.model.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository;
|
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.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.exception.LoggerConstant;
|
||||||
import electromagnetic.data.framework.share.util.SignUtils;
|
import electromagnetic.data.framework.share.util.SignUtils;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
|
|
@ -88,5 +87,5 @@ public class UserServiceImpl implements UserService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@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;
|
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;
|
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 com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
|
@ -48,5 +48,5 @@ public interface UserMapper {
|
||||||
* @param searchKeywords
|
* @param searchKeywords
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<User> search(SearchKeywords searchKeywords);
|
List<User> search(SearchKeyWords searchKeywords);
|
||||||
}
|
}
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.repository.impl;
|
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.model.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.UserRepository;
|
||||||
import com.electromagnetic.industry.software.data.manage.repository.dao.UserMapper;
|
import com.electromagnetic.industry.software.data.manage.repository.dao.UserMapper;
|
||||||
|
|
@ -77,7 +77,7 @@ public class UserRepositoryImpl implements UserRepository {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<User> search(SearchKeywords searchKeywords) {
|
public List<User> search(SearchKeyWords searchKeywords) {
|
||||||
return userMapper.search(searchKeywords);
|
return userMapper.search(searchKeywords);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -98,13 +98,13 @@
|
||||||
</foreach>
|
</foreach>
|
||||||
</update>
|
</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 *
|
SELECT *
|
||||||
FROM ed_users
|
FROM ed_users
|
||||||
<where>
|
<where>
|
||||||
<!-- 条件 1:按用户名或工号搜索 -->
|
<!-- 条件 1:按用户名或工号搜索 -->
|
||||||
<if test="keyword != null and keyword != ''">
|
<if test="keyWord != null and keyWord != ''">
|
||||||
(user_name LIKE CONCAT('%', #{keyword}, '%') OR work_number LIKE CONCAT('%', #{keyword}, '%'))
|
(user_name LIKE CONCAT('%', #{keyWord}, '%') OR work_number LIKE CONCAT('%', #{keyWord}, '%'))
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<!-- 条件 2:按用户状态搜索 -->
|
<!-- 条件 2:按用户状态搜索 -->
|
||||||
|
|
@ -128,21 +128,15 @@
|
||||||
|
|
||||||
<!-- 动态排序条件 -->
|
<!-- 动态排序条件 -->
|
||||||
<choose>
|
<choose>
|
||||||
<when test="sortBy != null and sortOrder != null">
|
<when test="gmtCreate == 'asc' or gmtCreate == 'desc'">
|
||||||
<if test="sortBy == 'gmtCreate'">
|
ORDER BY gmt_create ${gmtCreate}
|
||||||
ORDER BY gmt_create ${sortOrder}
|
</when>
|
||||||
</if>
|
<when test="joinTime == 'asc' or joinTime == 'desc'">
|
||||||
<if test="sortBy == 'joinTime'">
|
ORDER BY join_time ${joinTime}
|
||||||
ORDER BY join_time ${sortOrder}
|
</when>
|
||||||
</if>
|
<when test="internEndDate == 'asc' or internEndDate == 'desc'">
|
||||||
<if test="sortBy == 'internEndDate'">
|
ORDER BY internship_end_date ${internEndDate}
|
||||||
ORDER BY internship_end_date ${sortOrder}
|
|
||||||
</if>
|
|
||||||
</when>
|
</when>
|
||||||
<!-- 默认按工号的字典序排列 -->
|
|
||||||
<otherwise>
|
|
||||||
ORDER BY work_number ASC
|
|
||||||
</otherwise>
|
|
||||||
</choose>
|
</choose>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,17 +3,14 @@
|
||||||
*/
|
*/
|
||||||
package com.electromagnetic.industry.software.data.manage.service.mappers;
|
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.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.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.request.user.*;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo;
|
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.UserLoginRequest;
|
||||||
import com.electromagnetic.industry.software.data.manage.request.user.UserRequest;
|
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.SingleUserResponse;
|
||||||
import com.electromagnetic.industry.software.data.manage.response.user.UserSearchResponse;
|
|
||||||
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapper;
|
||||||
import org.mapstruct.factory.Mappers;
|
import org.mapstruct.factory.Mappers;
|
||||||
|
|
||||||
|
|
@ -53,7 +50,7 @@ public interface UserMappers {
|
||||||
* @param searchUserRequest
|
* @param searchUserRequest
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest);
|
SearchKeyWords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取用户列表转response列表
|
* 获取用户列表转response列表
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.service.mappers;
|
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.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo;
|
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.SearchUserRequest;
|
||||||
import com.electromagnetic.industry.software.data.manage.request.user.UserLoginRequest;
|
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.UserModiRequest;
|
||||||
|
|
@ -15,8 +15,8 @@ import javax.annotation.Generated;
|
||||||
|
|
||||||
@Generated(
|
@Generated(
|
||||||
value = "org.mapstruct.ap.MappingProcessor",
|
value = "org.mapstruct.ap.MappingProcessor",
|
||||||
date = "2024-11-19T13:26:03+0800",
|
date = "2024-11-20T10:18:06+0800",
|
||||||
comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_141 (Oracle Corporation)"
|
comments = "version: 1.4.1.Final, compiler: javac, environment: Java 1.8.0_271 (Oracle Corporation)"
|
||||||
)
|
)
|
||||||
public class UserMappersImpl implements UserMappers {
|
public class UserMappersImpl implements UserMappers {
|
||||||
|
|
||||||
|
|
@ -90,14 +90,21 @@ public class UserMappersImpl implements UserMappers {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest) {
|
public SearchKeyWords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest) {
|
||||||
if ( searchUserRequest == null ) {
|
if ( searchUserRequest == null ) {
|
||||||
return 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
|
@Override
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue