mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-14 05:42:06 +08:00
组织分页、用户分页接口添加名称拼音模糊查询
This commit is contained in:
+12
@@ -132,4 +132,16 @@ public class LambdaQueryWrapperX<T> extends LambdaQueryWrapper<T> {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public LambdaQueryWrapperX<T> or(boolean condition) {
|
||||||
|
super.or(condition);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public LambdaQueryWrapperX<T> or() {
|
||||||
|
super.or();
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+9
@@ -33,4 +33,13 @@ public class OrganPageReqVO extends PageParam {
|
|||||||
@Schema(description = "创建时间")
|
@Schema(description = "创建时间")
|
||||||
private LocalDateTime[] createTime;
|
private LocalDateTime[] createTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 拼音首字母
|
||||||
|
*/
|
||||||
|
private String pyFirstChar;
|
||||||
|
/**
|
||||||
|
* 全拼
|
||||||
|
*/
|
||||||
|
private String pyAll;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
-1
@@ -59,7 +59,6 @@ public class UserController {
|
|||||||
@Operation(summary = "新增用户")
|
@Operation(summary = "新增用户")
|
||||||
@PreAuthorize("@ss.hasPermission('system:user:create')")
|
@PreAuthorize("@ss.hasPermission('system:user:create')")
|
||||||
public CommonResult<Long> createUser(@Valid @RequestBody UserSaveReqVO reqVO) {
|
public CommonResult<Long> createUser(@Valid @RequestBody UserSaveReqVO reqVO) {
|
||||||
System.out.println(reqVO);
|
|
||||||
Long id = userService.createUser(reqVO);
|
Long id = userService.createUser(reqVO);
|
||||||
return success(id);
|
return success(id);
|
||||||
}
|
}
|
||||||
|
|||||||
+12
@@ -19,6 +19,9 @@ import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH
|
|||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
public class UserPageReqVO extends PageParam {
|
public class UserPageReqVO extends PageParam {
|
||||||
|
|
||||||
|
@Schema(description = "用户昵称")
|
||||||
|
private String nickname;
|
||||||
|
|
||||||
@Schema(description = "用户账号,模糊匹配", example = "chenfeng")
|
@Schema(description = "用户账号,模糊匹配", example = "chenfeng")
|
||||||
private String username;
|
private String username;
|
||||||
|
|
||||||
@@ -35,4 +38,13 @@ public class UserPageReqVO extends PageParam {
|
|||||||
@Schema(description = "部门编号,同时筛选子部门", example = "1024")
|
@Schema(description = "部门编号,同时筛选子部门", example = "1024")
|
||||||
private Long deptId;
|
private Long deptId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 拼音首字母
|
||||||
|
*/
|
||||||
|
private String pyFirstChar;
|
||||||
|
/**
|
||||||
|
* 全拼
|
||||||
|
*/
|
||||||
|
private String pyAll;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+9
@@ -93,4 +93,13 @@ public class AdminUserDO extends OrganBaseDO {
|
|||||||
*/
|
*/
|
||||||
private LocalDateTime loginDate;
|
private LocalDateTime loginDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 拼音首字母
|
||||||
|
*/
|
||||||
|
private String pinyinInitial;
|
||||||
|
/**
|
||||||
|
* 全拼
|
||||||
|
*/
|
||||||
|
private String pinyinFull;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+6
-1
@@ -1,5 +1,6 @@
|
|||||||
package com.cf.imes.module.system.dal.mysql.organ;
|
package com.cf.imes.module.system.dal.mysql.organ;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.cf.imes.framework.common.pojo.PageResult;
|
import com.cf.imes.framework.common.pojo.PageResult;
|
||||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
@@ -19,11 +20,15 @@ public interface OrganMapper extends BaseMapperX<OrganizationDO> {
|
|||||||
|
|
||||||
default PageResult<OrganizationDO> selectPage(OrganPageReqVO reqVO) {
|
default PageResult<OrganizationDO> selectPage(OrganPageReqVO reqVO) {
|
||||||
return selectPage(reqVO, new LambdaQueryWrapperX<OrganizationDO>()
|
return selectPage(reqVO, new LambdaQueryWrapperX<OrganizationDO>()
|
||||||
.likeIfPresent(OrganizationDO::getName, reqVO.getName())
|
|
||||||
.likeIfPresent(OrganizationDO::getContactName, reqVO.getContactName())
|
.likeIfPresent(OrganizationDO::getContactName, reqVO.getContactName())
|
||||||
.likeIfPresent(OrganizationDO::getContactMobile, reqVO.getContactMobile())
|
.likeIfPresent(OrganizationDO::getContactMobile, reqVO.getContactMobile())
|
||||||
.eqIfPresent(OrganizationDO::getStatus, reqVO.getStatus())
|
.eqIfPresent(OrganizationDO::getStatus, reqVO.getStatus())
|
||||||
.betweenIfPresent(OrganizationDO::getCreateTime, reqVO.getCreateTime())
|
.betweenIfPresent(OrganizationDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.likeIfPresent(OrganizationDO::getName, reqVO.getName())
|
||||||
|
.or(StrUtil.isNotBlank(reqVO.getName()))
|
||||||
|
.likeIfPresent(OrganizationDO::getPinyinFull, reqVO.getPyAll())
|
||||||
|
.or(StrUtil.isNotBlank(reqVO.getName()))
|
||||||
|
.likeIfPresent(OrganizationDO::getPinyinInitial, reqVO.getPyFirstChar())
|
||||||
.orderByDesc(OrganizationDO::getId));
|
.orderByDesc(OrganizationDO::getId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+6
@@ -1,5 +1,6 @@
|
|||||||
package com.cf.imes.module.system.dal.mysql.user;
|
package com.cf.imes.module.system.dal.mysql.user;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.cf.imes.framework.common.pojo.PageResult;
|
import com.cf.imes.framework.common.pojo.PageResult;
|
||||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
@@ -38,6 +39,11 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|||||||
.eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
.eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
||||||
.betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
.betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
||||||
.inIfPresent(AdminUserDO::getDeptId, deptIds)
|
.inIfPresent(AdminUserDO::getDeptId, deptIds)
|
||||||
|
.likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())
|
||||||
|
.or(StrUtil.isNotBlank(reqVO.getNickname()))
|
||||||
|
.likeIfPresent(AdminUserDO::getPinyinFull, reqVO.getPyAll())
|
||||||
|
.or(StrUtil.isNotBlank(reqVO.getNickname()))
|
||||||
|
.likeIfPresent(AdminUserDO::getPinyinInitial, reqVO.getPyFirstChar())
|
||||||
.orderByDesc(AdminUserDO::getId));
|
.orderByDesc(AdminUserDO::getId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+15
-1
@@ -109,6 +109,9 @@ public class OrganServiceImpl implements OrganService {
|
|||||||
// 创建组织
|
// 创建组织
|
||||||
OrganizationDO tenant = BeanUtils.toBean(createReqVO, OrganizationDO.class);
|
OrganizationDO tenant = BeanUtils.toBean(createReqVO, OrganizationDO.class);
|
||||||
String pinyinFull = PinYinUtils.convertToPinyin(tenant.getName());
|
String pinyinFull = PinYinUtils.convertToPinyin(tenant.getName());
|
||||||
|
if(StrUtil.isNotBlank(pinyinFull)) {
|
||||||
|
pinyinFull = pinyinFull.replaceAll(" ", "");
|
||||||
|
}
|
||||||
tenant.setPinyinFull(pinyinFull);
|
tenant.setPinyinFull(pinyinFull);
|
||||||
tenant.setCode(StrUtil.isBlank(createReqVO.getCode())? pinyinFull : createReqVO.getCode());
|
tenant.setCode(StrUtil.isBlank(createReqVO.getCode())? pinyinFull : createReqVO.getCode());
|
||||||
tenant.setLarge(createReqVO.getLarge() == null ? Boolean.FALSE : createReqVO.getLarge());
|
tenant.setLarge(createReqVO.getLarge() == null ? Boolean.FALSE : createReqVO.getLarge());
|
||||||
@@ -164,7 +167,14 @@ public class OrganServiceImpl implements OrganService {
|
|||||||
validTenantWebsiteDuplicate(updateReqVO.getWebsite(), updateReqVO.getId());
|
validTenantWebsiteDuplicate(updateReqVO.getWebsite(), updateReqVO.getId());
|
||||||
// 校验套餐被禁用
|
// 校验套餐被禁用
|
||||||
TenantPackageDO tenantPackage = tenantPackageService.validTenantPackage(updateReqVO.getPackageId());
|
TenantPackageDO tenantPackage = tenantPackageService.validTenantPackage(updateReqVO.getPackageId());
|
||||||
|
if(!Objects.equals(tenant.getName(), updateReqVO.getName())) {
|
||||||
|
String pinyinFull = PinYinUtils.convertToPinyin(tenant.getName());
|
||||||
|
if(StrUtil.isNotBlank(pinyinFull)) {
|
||||||
|
pinyinFull = pinyinFull.replaceAll(" ", "");
|
||||||
|
}
|
||||||
|
tenant.setPinyinFull(pinyinFull);
|
||||||
|
tenant.setPinyinInitial(PinYinUtils.convertFirstChar(tenant.getName()));
|
||||||
|
}
|
||||||
// 更新组织
|
// 更新组织
|
||||||
OrganizationDO updateObj = BeanUtils.toBean(updateReqVO, OrganizationDO.class);
|
OrganizationDO updateObj = BeanUtils.toBean(updateReqVO, OrganizationDO.class);
|
||||||
organMapper.updateById(updateObj);
|
organMapper.updateById(updateObj);
|
||||||
@@ -257,6 +267,10 @@ public class OrganServiceImpl implements OrganService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<OrganizationDO> getOrganPage(OrganPageReqVO pageReqVO) {
|
public PageResult<OrganizationDO> getOrganPage(OrganPageReqVO pageReqVO) {
|
||||||
|
if(StrUtil.isNotBlank(pageReqVO.getName())) {
|
||||||
|
pageReqVO.setPyFirstChar(PinYinUtils.convertFirstChar(pageReqVO.getName()));
|
||||||
|
pageReqVO.setPyAll(PinYinUtils.convertToPinyin(pageReqVO.getName()).replaceAll(" ", ""));
|
||||||
|
}
|
||||||
return organMapper.selectPage(pageReqVO);
|
return organMapper.selectPage(pageReqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+29
-1
@@ -10,6 +10,7 @@ import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
|
|||||||
import com.cf.imes.framework.common.pojo.PageResult;
|
import com.cf.imes.framework.common.pojo.PageResult;
|
||||||
import com.cf.imes.framework.common.util.collection.CollectionUtils;
|
import com.cf.imes.framework.common.util.collection.CollectionUtils;
|
||||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||||
|
import com.cf.imes.framework.common.util.pinyin.PinYinUtils;
|
||||||
import com.cf.imes.framework.datapermission.core.util.DataPermissionUtils;
|
import com.cf.imes.framework.datapermission.core.util.DataPermissionUtils;
|
||||||
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
|
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
|
||||||
import com.cf.imes.module.infra.api.file.FileApi;
|
import com.cf.imes.module.infra.api.file.FileApi;
|
||||||
@@ -96,6 +97,13 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
AdminUserDO user = BeanUtils.toBean(createReqVO, AdminUserDO.class);
|
AdminUserDO user = BeanUtils.toBean(createReqVO, AdminUserDO.class);
|
||||||
user.setStatus(CommonStatusEnum.ENABLE.getStatus()); // 默认开启
|
user.setStatus(CommonStatusEnum.ENABLE.getStatus()); // 默认开启
|
||||||
user.setPassword(encodePassword(createReqVO.getPassword())); // 加密密码
|
user.setPassword(encodePassword(createReqVO.getPassword())); // 加密密码
|
||||||
|
|
||||||
|
String pinyinFull = PinYinUtils.convertToPinyin(user.getNickname());
|
||||||
|
if (StrUtil.isNotBlank(pinyinFull)) {
|
||||||
|
pinyinFull = pinyinFull.replaceAll(" ", "");
|
||||||
|
}
|
||||||
|
user.setPinyinFull(pinyinFull);
|
||||||
|
user.setPinyinInitial(PinYinUtils.convertFirstChar(user.getNickname()));
|
||||||
userMapper.insert(user);
|
userMapper.insert(user);
|
||||||
// 插入关联岗位
|
// 插入关联岗位
|
||||||
if (CollectionUtil.isNotEmpty(user.getPostIds())) {
|
if (CollectionUtil.isNotEmpty(user.getPostIds())) {
|
||||||
@@ -114,6 +122,17 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
updateReqVO.getMobile(), updateReqVO.getEmail(), updateReqVO.getDeptId(), updateReqVO.getPostIds(), updateReqVO.getOrganId());
|
updateReqVO.getMobile(), updateReqVO.getEmail(), updateReqVO.getDeptId(), updateReqVO.getPostIds(), updateReqVO.getOrganId());
|
||||||
// 更新用户
|
// 更新用户
|
||||||
AdminUserDO updateObj = BeanUtils.toBean(updateReqVO, AdminUserDO.class);
|
AdminUserDO updateObj = BeanUtils.toBean(updateReqVO, AdminUserDO.class);
|
||||||
|
|
||||||
|
if(!Objects.isNull(updateReqVO.getNickname())) {
|
||||||
|
|
||||||
|
String pinyinFull = PinYinUtils.convertToPinyin(updateReqVO.getNickname());
|
||||||
|
if (StrUtil.isNotBlank(pinyinFull)) {
|
||||||
|
pinyinFull = pinyinFull.replaceAll(" ", "");
|
||||||
|
}
|
||||||
|
updateObj.setPinyinFull(pinyinFull);
|
||||||
|
updateObj.setPinyinInitial(PinYinUtils.convertFirstChar(updateReqVO.getNickname()));
|
||||||
|
}
|
||||||
|
|
||||||
userMapper.updateById(updateObj);
|
userMapper.updateById(updateObj);
|
||||||
// 更新岗位
|
// 更新岗位
|
||||||
updateUserPost(updateReqVO, updateObj);
|
updateUserPost(updateReqVO, updateObj);
|
||||||
@@ -221,7 +240,14 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<AdminUserDO> getUserPage(UserPageReqVO reqVO) {
|
public PageResult<AdminUserDO> getUserPage(UserPageReqVO reqVO) {
|
||||||
return userMapper.selectPage(reqVO, getDeptCondition(reqVO.getDeptId()));
|
if (StrUtil.isNotBlank(reqVO.getNickname())) {
|
||||||
|
reqVO.setPyFirstChar(PinYinUtils.convertFirstChar(reqVO.getNickname()));
|
||||||
|
reqVO.setPyAll(PinYinUtils.convertToPinyin(reqVO.getNickname()).replaceAll(" ", ""));
|
||||||
|
}
|
||||||
|
|
||||||
|
PageResult<AdminUserDO> adminUserDOPageResult = userMapper.selectPage(reqVO, getDeptCondition(reqVO.getDeptId()));
|
||||||
|
|
||||||
|
return adminUserDOPageResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -284,6 +310,7 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 获得部门条件:查询指定部门的子部门编号们,包括自身
|
* 获得部门条件:查询指定部门的子部门编号们,包括自身
|
||||||
|
*
|
||||||
* @param deptId 部门编号
|
* @param deptId 部门编号
|
||||||
* @return 部门编号集合
|
* @return 部门编号集合
|
||||||
*/
|
*/
|
||||||
@@ -383,6 +410,7 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 校验旧密码
|
* 校验旧密码
|
||||||
|
*
|
||||||
* @param id 用户 id
|
* @param id 用户 id
|
||||||
* @param oldPassword 旧密码
|
* @param oldPassword 旧密码
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user