查询用户返回列表
This commit is contained in:
parent
af21a4d024
commit
d0b2357390
|
|
@ -49,6 +49,11 @@ public class UserController {
|
||||||
return userFacade.getSingleUser(getSingleUserRequest);
|
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 = "")
|
@ApiOperation(value = "校验工号唯一性", notes = "")
|
||||||
@RequestMapping(value = "/validate", method = RequestMethod.POST)
|
@RequestMapping(value = "/validate", method = RequestMethod.POST)
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
|
}
|
||||||
|
|
@ -1,5 +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.model.User;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -39,4 +40,13 @@ public interface UserRepository {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
User getSingleUser(String userId);
|
User getSingleUser(String userId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户
|
||||||
|
* @param searchKeywords
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<User> search(SearchKeywords searchKeywords);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
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.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;
|
||||||
|
|
||||||
|
|
@ -50,4 +51,11 @@ public interface UserService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
User getSingleUser(String userId);
|
User getSingleUser(String userId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户信息
|
||||||
|
* @param searchKeywords
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<User> searchUser(SearchKeywords searchKeywords);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
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.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;
|
||||||
|
|
@ -80,4 +81,12 @@ public class UserServiceImpl implements UserService {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public User getSingleUser(String userId) { return userRepository.getSingleUser(userId); }
|
public User getSingleUser(String userId) { return userRepository.getSingleUser(userId); }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户信息
|
||||||
|
* @param searchKeywords
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<User> searchUser(SearchKeywords searchKeywords) { return userRepository.search(searchKeywords); }
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -52,4 +52,11 @@ public interface UserFacade {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
ElectromagneticResult<?> getSingleUser(GetSingleUserRequest getSingleUserRequest);
|
ElectromagneticResult<?> getSingleUser(GetSingleUserRequest getSingleUserRequest);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户信息
|
||||||
|
* @param searchUserRequest
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
ElectromagneticResult<?> searchUser(SearchUserRequest searchUserRequest);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
|
}
|
||||||
|
|
@ -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<SingleUserResponse> userList;
|
||||||
|
//private List<User> userList;
|
||||||
|
}
|
||||||
|
|
@ -1,5 +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.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;
|
||||||
|
|
||||||
|
|
@ -41,4 +42,11 @@ public interface UserMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
User getSingleUser(String userId);
|
User getSingleUser(String userId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过用户编码查询用户
|
||||||
|
* @param searchKeywords
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<User> search(SearchKeywords searchKeywords);
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +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.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;
|
||||||
|
|
@ -69,4 +70,14 @@ public class UserRepositoryImpl implements UserRepository {
|
||||||
public User getSingleUser(String userId) {
|
public User getSingleUser(String userId) {
|
||||||
return userMapper.getSingleUser(userId);
|
return userMapper.getSingleUser(userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户
|
||||||
|
* @param searchKeywords
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<User> search(SearchKeywords searchKeywords) {
|
||||||
|
return userMapper.search(searchKeywords);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -98,6 +98,55 @@
|
||||||
</foreach>
|
</foreach>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<select id="search" parameterType="com.electromagnetic.industry.software.data.manage.request.user.UserSearchRequest" resultType="com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User">
|
||||||
|
SELECT *
|
||||||
|
FROM ed_users
|
||||||
|
<where>
|
||||||
|
<!-- 条件 1:按用户名或工号搜索 -->
|
||||||
|
<if test="keyword != null and keyword != ''">
|
||||||
|
(user_name LIKE CONCAT('%', #{keyword}, '%') OR work_number LIKE CONCAT('%', #{keyword}, '%'))
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<!-- 条件 2:按用户状态搜索 -->
|
||||||
|
<if test="userStatus != null and userStatus != ''">
|
||||||
|
<choose>
|
||||||
|
<when test="userStatus != 'all'">
|
||||||
|
AND user_status = #{userStatus}
|
||||||
|
</when>
|
||||||
|
</choose>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<!-- 条件 3:按发布状态搜索 -->
|
||||||
|
<if test="isPublished != null and isPublished != ''">
|
||||||
|
<choose>
|
||||||
|
<when test="isPublished != 'all'">
|
||||||
|
AND is_published = #{isPublished}
|
||||||
|
</when>
|
||||||
|
</choose>
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
|
||||||
|
<!-- 动态排序条件 -->
|
||||||
|
<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>
|
||||||
|
<!-- 默认按工号的字典序排列 -->
|
||||||
|
<otherwise>
|
||||||
|
ORDER BY work_number ASC
|
||||||
|
</otherwise>
|
||||||
|
</choose>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<select id="selectUserByWorkNumber" parameterType="String" resultMap="UserResultMap">
|
<select id="selectUserByWorkNumber" parameterType="String" resultMap="UserResultMap">
|
||||||
<include refid="selectUserVo" />
|
<include refid="selectUserVo" />
|
||||||
where work_number = #{workNumber}
|
where work_number = #{workNumber}
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,25 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.service.facade.user;
|
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.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.service.TokenService;
|
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.service.UserService;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant;
|
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.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.*;
|
||||||
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.UserPublishRequest;
|
||||||
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.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.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 com.electromagnetic.industry.software.data.manage.service.mappers.UserMappers;
|
||||||
import electromagnetic.data.framework.share.id.IdWorker;
|
import electromagnetic.data.framework.share.id.IdWorker;
|
||||||
import electromagnetic.data.framework.share.model.ElectromagneticResult;
|
import electromagnetic.data.framework.share.model.ElectromagneticResult;
|
||||||
|
|
@ -22,6 +30,8 @@ import org.apache.commons.lang3.RandomStringUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class UserFacadeImpl implements UserFacade {
|
public class UserFacadeImpl implements UserFacade {
|
||||||
|
|
@ -116,4 +126,18 @@ public class UserFacadeImpl implements UserFacade {
|
||||||
return ElectromagneticResultUtil.success(singleUserResponse);
|
return ElectromagneticResultUtil.success(singleUserResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户信息
|
||||||
|
* @param searchUserRequest
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public ElectromagneticResult<UserSearchResponse> searchUser(SearchUserRequest searchUserRequest){
|
||||||
|
List<User> userList = userService.searchUser(UserMappers.INSTANCE.getSearchKeywordsRequestToModel(searchUserRequest));
|
||||||
|
UserSearchResponse userSearchResponse = UserMappers.INSTANCE.userListToResponse(userList);
|
||||||
|
return ElectromagneticResultUtil.success(userSearchResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
*/
|
*/
|
||||||
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.request.user.GetSingleUserRequest;
|
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;
|
||||||
|
|
@ -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.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;
|
||||||
|
|
||||||
|
|
@ -45,6 +47,21 @@ public interface UserMappers {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
SingleUserResponse getSingleUserToResponse(User user);
|
SingleUserResponse getSingleUserToResponse(User user);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取单条用户信息Request转用户模型
|
||||||
|
* @param searchUserRequest
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
SearchKeywords getSearchKeywordsRequestToModel(SearchUserRequest searchUserRequest);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取单条用户信息Request转用户模型
|
||||||
|
* @param users
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
UserSearchResponse userListToResponse(List<User> users);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 编辑用户Request转用户模型
|
* 编辑用户Request转用户模型
|
||||||
* @param userModiRequest
|
* @param userModiRequest
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue