2 Commits

Author SHA1 Message Date
c4ea4650bf Merge branch 'master' into main_hhl0209 2026-02-25 14:00:25 +08:00
huhanlin
0cc088c51b 应用查询按字典排序值排序 2026-02-11 14:42:09 +08:00
8 changed files with 79 additions and 58 deletions

View File

@@ -7,25 +7,4 @@
表名xxx_demo 表名xxx_demo
字段 类型 长度 字段 类型 长度
xx_aa varchar 20 xx_aa varchar 20
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
日期2026-02-11新增字段
表名yunji_report_field
字段 类型 长度 字段说明
is_dynamic_group varchar 60 是否动态分组 Y|N
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
日期2026-02-12修改字段长度
表名yunji_report_field
字段 类型 长度 字段说明
is_hide_dimension varchar 255
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
日期2026-02-13新增字段
表名yunji_report_field
字段 类型 长度 字段说明
width varchar 60 单元格宽度
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
日期2026-02-24新增字段
表名yunji_report_field
字段 类型 长度 字段说明
searchDefaultValue varchar 150 查询控件默认值

View File

@@ -107,14 +107,5 @@ public class ReportFieldEntity extends BaseTenantEntity {
//隐藏列的,表单不显示该字段 //隐藏列的,表单不显示该字段
private String isHideCol; private String isHideCol;
//是否动态分组 Y|N
private String isDynamicGroup;
//单元格宽度
private String width;
//查询控件默认值
private String searchDefaultValue;
} }

View File

@@ -72,14 +72,5 @@ public class ReportFieldVo extends ReportFieldIdVo {
//隐藏列的,表单不显示该字段 //隐藏列的,表单不显示该字段
private String isHideCol; private String isHideCol;
//是否动态分组 Y|N
private String isDynamicGroup;
//单元格宽度
private String width;
//查询控件默认值
private String searchDefaultValue;
} }

View File

@@ -382,9 +382,6 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, ReportEntity> i
entity.setIsFixedColumn(vo.getIsFixedColumn()); //2026-02-10 新增 entity.setIsFixedColumn(vo.getIsFixedColumn()); //2026-02-10 新增
entity.setFixedColumnValue(vo.getFixedColumnValue()); //2026-02-10 新增 entity.setFixedColumnValue(vo.getFixedColumnValue()); //2026-02-10 新增
entity.setIsHideCol(vo.getIsHideCol()); //2026.2.10 新增 entity.setIsHideCol(vo.getIsHideCol()); //2026.2.10 新增
entity.setSearchDefaultValue(vo.getSearchDefaultValue());
entity.setWidth(vo.getWidth());
entity.setIsDynamicGroup(vo.getIsDynamicGroup());
entity.setHasChildren(vo.getHasChildren()); entity.setHasChildren(vo.getHasChildren());
entity.setParentFieldCode(vo.getParentFieldCode()); entity.setParentFieldCode(vo.getParentFieldCode());
entity.setParentFieldName(vo.getParentFieldName()); entity.setParentFieldName(vo.getParentFieldName());

View File

@@ -70,14 +70,13 @@
WHERE WHERE
report.is_deleted = 0 report.is_deleted = 0
AND field.is_deleted = 0 AND field.is_deleted = 0
-- AND field.query_is_db = 'Y' AND field.query_is_db = 'Y'
AND report.id = #{reportId} AND report.id = #{reportId}
ORDER BY ORDER BY
field.sort_num ASC, field.sort_num ASC,
field.id ASC field.id ASC
</select> </select>
<select id="getExcelExportFieldList" resultType="map"> <select id="getExcelExportFieldList" resultType="map">
SELECT SELECT
df.field_code as "field_code", df.field_code as "field_code",

View File

@@ -120,6 +120,11 @@
<groupId>com.tencentcloudapi</groupId> <groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java-sms</artifactId> <!-- 短信(腾讯云) --> <artifactId>tencentcloud-sdk-java-sms</artifactId> <!-- 短信(腾讯云) -->
</dependency> </dependency>
<dependency>
<groupId>com.github.yulichang</groupId>
<artifactId>mybatis-plus-join-boot-starter</artifactId>
<version>1.4.11</version> <!-- 请查看最新版本 -->
</dependency>
<!-- 低代码 --> <!-- 低代码 -->
<dependency> <dependency>

View File

@@ -0,0 +1,59 @@
package com.lideeyunji.service.system.mapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.lideeyunji.service.system.controller.vo.oauth2.client.OAuth2ClientPageReqVO;
import com.lideeyunji.service.system.entity.DictDataDO;
import com.lideeyunji.service.system.entity.OAuth2ClientDO;
import com.lideeyunji.tool.framework.common.pojo.PageResult;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface OAuth2ClientJoinMapper extends MPJBaseMapper<OAuth2ClientDO> {
/**
* 分页查询(关联字典表)
*/
default PageResult<OAuth2ClientDO> selectPage(OAuth2ClientPageReqVO reqVO) {
MPJLambdaWrapper<OAuth2ClientDO> wrapper = buildQueryWrapper(reqVO);
com.baomidou.mybatisplus.extension.plugins.pagination.Page<OAuth2ClientDO> page =
new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(
reqVO.getPageNo(),
reqVO.getPageSize()
);
com.baomidou.mybatisplus.extension.plugins.pagination.Page<OAuth2ClientDO> resultPage =
selectJoinPage(page, OAuth2ClientDO.class, wrapper);
return new PageResult<>(resultPage.getRecords(), resultPage.getTotal());
}
default MPJLambdaWrapper<OAuth2ClientDO> buildQueryWrapper(OAuth2ClientPageReqVO reqVO) {
MPJLambdaWrapper<OAuth2ClientDO> wrapper = new MPJLambdaWrapper<OAuth2ClientDO>()
.selectAll(OAuth2ClientDO.class)
.leftJoin(DictDataDO.class, on -> on
.eq(DictDataDO::getValue, OAuth2ClientDO::getCategory)
.eq(DictDataDO::getDictType, "app_category"));
applyQueryConditions(wrapper, reqVO);
wrapper.orderByAsc(DictDataDO::getSort)
.orderByDesc(OAuth2ClientDO::getId);
return wrapper;
}
default void applyQueryConditions(MPJLambdaWrapper<OAuth2ClientDO> wrapper, OAuth2ClientPageReqVO reqVO) {
if (reqVO.getName() != null && !reqVO.getName().isEmpty()) {
wrapper.like(OAuth2ClientDO::getName, reqVO.getName());
}
if (reqVO.getStatus() != null) {
wrapper.eq(OAuth2ClientDO::getStatus, reqVO.getStatus());
}
if (reqVO.getIds() != null && !reqVO.getIds().isEmpty()) {
wrapper.in(OAuth2ClientDO::getId, reqVO.getIds());
}
}
}

View File

@@ -1,26 +1,24 @@
package com.lideeyunji.service.system.service.impl; package com.lideeyunji.service.system.service.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.stream.CollectorUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.spring.SpringUtil; import cn.hutool.extra.spring.SpringUtil;
import com.lideeyunji.service.system.entity.AdminUserDO; import com.google.common.annotations.VisibleForTesting;
import com.lideeyunji.service.system.config.redis.RedisKeyConstants;
import com.lideeyunji.service.system.controller.vo.oauth2.client.OAuth2ClientPageReqVO;
import com.lideeyunji.service.system.controller.vo.oauth2.client.OAuth2ClientSaveReqVO;
import com.lideeyunji.service.system.entity.OAuth2ClientDO;
import com.lideeyunji.service.system.entity.UserRoleDO; import com.lideeyunji.service.system.entity.UserRoleDO;
import com.lideeyunji.service.system.mapper.OAuth2ClientJoinMapper;
import com.lideeyunji.service.system.mapper.OAuth2ClientMapper;
import com.lideeyunji.service.system.service.IAdminUserService; import com.lideeyunji.service.system.service.IAdminUserService;
import com.lideeyunji.service.system.service.IClientPermissionService; import com.lideeyunji.service.system.service.IClientPermissionService;
import com.lideeyunji.service.system.service.IOAuth2ClientService;
import com.lideeyunji.service.system.service.IPermissionService; import com.lideeyunji.service.system.service.IPermissionService;
import com.lideeyunji.tool.framework.common.enums.CommonStatusEnum; import com.lideeyunji.tool.framework.common.enums.CommonStatusEnum;
import com.lideeyunji.tool.framework.common.pojo.PageResult; import com.lideeyunji.tool.framework.common.pojo.PageResult;
import com.lideeyunji.tool.framework.common.util.object.BeanUtils; import com.lideeyunji.tool.framework.common.util.object.BeanUtils;
import com.lideeyunji.tool.framework.common.util.string.StrUtils;
import com.lideeyunji.service.system.controller.vo.oauth2.client.OAuth2ClientPageReqVO;
import com.lideeyunji.service.system.controller.vo.oauth2.client.OAuth2ClientSaveReqVO;
import com.lideeyunji.service.system.entity.OAuth2ClientDO;
import com.lideeyunji.service.system.mapper.OAuth2ClientMapper;
import com.lideeyunji.service.system.config.redis.RedisKeyConstants;
import com.lideeyunji.service.system.service.IOAuth2ClientService;
import com.google.common.annotations.VisibleForTesting;
import com.lideeyunji.tool.framework.security.core.LoginUser; import com.lideeyunji.tool.framework.security.core.LoginUser;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
@@ -35,10 +33,9 @@ import java.util.List;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.lideeyunji.tool.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.lideeyunji.service.system.constant.ErrorCodeConstants.*; import static com.lideeyunji.service.system.constant.ErrorCodeConstants.*;
import static com.lideeyunji.tool.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.lideeyunji.tool.framework.security.core.util.SecurityFrameworkUtils.*; import static com.lideeyunji.tool.framework.security.core.util.SecurityFrameworkUtils.*;
import static com.lideeyunji.tool.framework.security.core.util.SecurityFrameworkUtils.getLoginRoleId;
/** /**
* OAuth2.0 Client Service 实现类 * OAuth2.0 Client Service 实现类
@@ -53,6 +50,9 @@ public class OAuth2ClientServiceImpl implements IOAuth2ClientService {
@Resource @Resource
private OAuth2ClientMapper oauth2ClientMapper; private OAuth2ClientMapper oauth2ClientMapper;
@Resource
private OAuth2ClientJoinMapper oAuth2ClientJoinMapper;
@Resource @Resource
private IClientPermissionService clientPermissionService; private IClientPermissionService clientPermissionService;
@Resource @Resource
@@ -163,7 +163,7 @@ public class OAuth2ClientServiceImpl implements IOAuth2ClientService {
Set<Long> clientIds = clientPermissionService.getRoleClientListByRoleId(roleIds); Set<Long> clientIds = clientPermissionService.getRoleClientListByRoleId(roleIds);
pageReqVO.setIds(clientIds); pageReqVO.setIds(clientIds);
} }
return oauth2ClientMapper.selectPage(pageReqVO); return oAuth2ClientJoinMapper.selectPage(pageReqVO);
} }
@Override @Override