报表模块mycat环境无法路由修复

This commit is contained in:
gaoqr
2026-05-15 11:21:09 +08:00
parent 9b1a85afb5
commit 3cc76015a8
2 changed files with 25 additions and 7 deletions
@@ -12,6 +12,8 @@ import org.apache.ibatis.annotations.Param;
import java.util.List;
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.CF_ORGANID;
/**
* 报表模板信息 Mapper
*
@@ -32,10 +34,16 @@ public interface ReportTemplateMapper extends BaseMapperX<ReportTemplateDO> {
default ReportTemplateDO selectNormalTemplateById(Long id, Long organId) {
LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<ReportTemplateDO>()
.eq(ReportTemplateDO::getId, id)
.and(wr -> wr.or(wrapper -> wrapper
.and(wr -> wr
.or(wrapper -> wrapper
.eq(ReportTemplateDO::getOrganId, organId)
.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.CUSTOM))
.or(wrapper -> wrapper.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.SYSTEM)));
.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.CUSTOM)
)
.or(wrapper -> wrapper
.eq(ReportTemplateDO::getOrganId, CF_ORGANID)
.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.SYSTEM)
)
);
return selectOne(queryWrapper);
}
@@ -52,10 +60,16 @@ public interface ReportTemplateMapper extends BaseMapperX<ReportTemplateDO> {
LambdaQueryWrapper<ReportTemplateDO> queryWrapper = new LambdaQueryWrapperX<ReportTemplateDO>()
.likeIfPresent(ReportTemplateDO::getName, name)
.orderByDesc(ReportTemplateDO::getCreateTime)
.and(wr -> wr.or(wrapper -> wrapper
.and(wr -> wr
.or(wrapper -> wrapper
.eq(ReportTemplateDO::getOrganId, organId)
.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.CUSTOM))
.or(wrapper -> wrapper.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.SYSTEM)))
.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.CUSTOM)
)
.or(wrapper -> wrapper
.eq(ReportTemplateDO::getOrganId, CF_ORGANID)
.eq(ReportTemplateDO::getType, ReportTemplateTypeEnum.SYSTEM)
)
)
// 不返回content xml,点击具体的模板中返回xml
.select(ReportTemplateDO::getId, ReportTemplateDO::getName, ReportTemplateDO::getCreateTime, ReportTemplateDO::getRemark, ReportTemplateDO::getType);
return selectList(queryWrapper);
@@ -53,6 +53,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.CF_ORGANID;
import static com.cf.imes.module.report.enums.ErrorCodeConstants.DATASET_GET_FIELDS_ERROR;
import static com.cf.imes.module.report.enums.ErrorCodeConstants.DATASET_SQL_INJECTION_RISK;
import static com.cf.imes.module.report.enums.ErrorCodeConstants.DATASET_SQL_REQUIRED;
@@ -155,7 +156,10 @@ public class ReportDatasourceServiceImpl implements ReportDatasourceService {
queryWrapper.or(wrapper -> wrapper
.eq(ReportDatasourceDO::getOrganId, finalCurrentOrganId)
.eq(ReportDatasourceDO::getBuildinType, ReportTemplateTypeEnum.CUSTOM))
.or(wrapper -> wrapper.eq(ReportDatasourceDO::getBuildinType, ReportTemplateTypeEnum.SYSTEM));
.or(wrapper -> wrapper
.eq(ReportDatasourceDO::getOrganId, CF_ORGANID)
.eq(ReportDatasourceDO::getBuildinType, ReportTemplateTypeEnum.SYSTEM)
);
List<ReportDatasourceDO> reportDatasourceDOS = datasourceMapper.selectList(queryWrapper);
// 查询数据集