Merge branch 'develop_comac' of https://gitee.com/shuzisaidao/electromagnetic-data into develop_comac
This commit is contained in:
commit
796f4a0e1a
|
|
@ -48,6 +48,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)
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
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<User> search(SearchKeywords searchKeywords);
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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<User> searchUser(SearchKeywords searchKeywords);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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<User> searchUser(SearchKeywords searchKeywords) { return userRepository.search(searchKeywords); }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -52,4 +52,11 @@ public interface UserFacade {
|
|||
* @return
|
||||
*/
|
||||
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;
|
||||
|
||||
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<User> search(SearchKeywords searchKeywords);
|
||||
}
|
||||
|
|
@ -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<User> search(SearchKeywords searchKeywords) {
|
||||
return userMapper.search(searchKeywords);
|
||||
}
|
||||
}
|
||||
|
|
@ -98,7 +98,56 @@
|
|||
</foreach>
|
||||
</update>
|
||||
|
||||
<select id="selectUserByWorkNumber" parameterType="String" resultMap="UserResultMap">
|
||||
<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">
|
||||
<include refid="selectUserVo" />
|
||||
where work_number = #{workNumber}
|
||||
</select>
|
||||
|
|
|
|||
|
|
@ -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<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;
|
||||
|
||||
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<User> users);
|
||||
|
||||
/**
|
||||
* 编辑用户Request转用户模型
|
||||
* @param userModiRequest
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue