fix: 优化逻辑

This commit is contained in:
tangwei 2026-07-27 09:32:40 +08:00
parent 5063540d75
commit aea105c1f3
2 changed files with 15 additions and 19 deletions

View File

@ -3,6 +3,7 @@ package com.yfd.platform.qgc_base.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yfd.platform.common.DataSourceRequest; import com.yfd.platform.common.DataSourceRequest;
import com.yfd.platform.common.DataSourceResult;
import com.yfd.platform.qgc_base.domain.MsWarnRuleB; import com.yfd.platform.qgc_base.domain.MsWarnRuleB;
import com.yfd.platform.qgc_sys.warnRule.vo.MsWarnRuleBVo; import com.yfd.platform.qgc_sys.warnRule.vo.MsWarnRuleBVo;
import com.yfd.platform.qgc_sys.warnRule.vo.WarnRuleVo; import com.yfd.platform.qgc_sys.warnRule.vo.WarnRuleVo;
@ -58,7 +59,7 @@ public interface IMsWarnRuleBService extends IService<MsWarnRuleB> {
/** /**
* 查询测站和预警规则绑定列表 * 查询测站和预警规则绑定列表
*/ */
Page<MsWarnRuleBVo> getRuleBindList(DataSourceRequest request); DataSourceResult<MsWarnRuleBVo> getRuleBindList(DataSourceRequest request);
/** /**
* 根据id查询规则配置详情 * 根据id查询规则配置详情

View File

@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yfd.platform.common.DataSourceLoadOptionsBase;
import com.yfd.platform.common.DataSourceRequest; import com.yfd.platform.common.DataSourceRequest;
import com.yfd.platform.common.DataSourceResult;
import com.yfd.platform.common.MicroservicDynamicSQLMapper; import com.yfd.platform.common.MicroservicDynamicSQLMapper;
import com.yfd.platform.qgc_base.domain.MsWarnRuleB; import com.yfd.platform.qgc_base.domain.MsWarnRuleB;
import com.yfd.platform.qgc_base.domain.MsWarnRuleDetailB; import com.yfd.platform.qgc_base.domain.MsWarnRuleDetailB;
@ -20,10 +22,7 @@ import com.yfd.platform.qgc_sys.warnRule.vo.MsWarnRuleBVo;
import com.yfd.platform.qgc_sys.warnRule.vo.MsWarnRuleDetailVo; import com.yfd.platform.qgc_sys.warnRule.vo.MsWarnRuleDetailVo;
import com.yfd.platform.qgc_sys.warnRule.vo.WarnRuleVo; import com.yfd.platform.qgc_sys.warnRule.vo.WarnRuleVo;
import com.yfd.platform.qgc_sys.warnRule.vo.WarnYsVo; import com.yfd.platform.qgc_sys.warnRule.vo.WarnYsVo;
import com.yfd.platform.utils.DataSourceRequestUtil; import com.yfd.platform.utils.*;
import com.yfd.platform.utils.DictCodeToNameConverter;
import com.yfd.platform.utils.CodeToNameMetadataBo;
import com.yfd.platform.utils.SecurityUtils;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -174,7 +173,7 @@ public class MsWarnRuleBServiceImpl extends ServiceImpl<MsWarnRuleBMapper, MsWar
if (StringUtils.isBlank(vo.getId())) { if (StringUtils.isBlank(vo.getId())) {
// ---- 新增 ---- // ---- 新增 ----
entity.setRecordUser(SecurityUtils.getCurrentUsername()); entity.setRecordUser(SecurityUtils.getUserId());
if ("common".equals(vo.getRuleCode())) { if ("common".equals(vo.getRuleCode())) {
boolean exist = checkRuleExist(vo.getRuleType(), lvl); boolean exist = checkRuleExist(vo.getRuleType(), lvl);
if (exist) { if (exist) {
@ -323,7 +322,8 @@ public class MsWarnRuleBServiceImpl extends ServiceImpl<MsWarnRuleBMapper, MsWar
} }
@Override @Override
public Page<MsWarnRuleBVo> getRuleBindList(DataSourceRequest request) { public DataSourceResult<MsWarnRuleBVo> getRuleBindList(DataSourceRequest request) {
DataSourceResult<MsWarnRuleBVo> dataSourceResult = new DataSourceResult<>();
StringBuilder sql = new StringBuilder(); StringBuilder sql = new StringBuilder();
sql.append("SELECT id AS bindId, STCD, STNM, STTP_CODE AS sttpCode, RULE_NAME AS ruleName, ") sql.append("SELECT id AS bindId, STCD, STNM, STTP_CODE AS sttpCode, RULE_NAME AS ruleName, ")
.append("RULE_TYPE AS ruleType, recordUser, MODIFY_TIME AS modifyTime, isShow, RULE_CODE AS ruleCode ") .append("RULE_TYPE AS ruleType, recordUser, MODIFY_TIME AS modifyTime, isShow, RULE_CODE AS ruleCode ")
@ -342,18 +342,13 @@ public class MsWarnRuleBServiceImpl extends ServiceImpl<MsWarnRuleBMapper, MsWar
// 处理排序 // 处理排序
appendOrderBy(request, sql); appendOrderBy(request, sql);
DataSourceLoadOptionsBase loadOptions = request.toDevRequest();
Page<MsWarnRuleBVo> page; Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
if (request.getPage() > 0 && request.getPageSize() > 0) { List<MsWarnRuleBVo> list = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), params, MsWarnRuleBVo.class);
page = new Page<>(request.getPage(), request.getPageSize()); dictCodeToNameConverter.convertCodeToName(list, CODE_TO_NAME_META_LIST);
} else if (request.getTake() > 0) { dataSourceResult.setData(list);
long pageNum = (request.getSkip() / request.getTake()) + 1; dataSourceResult.setTotal(page == null ? list.size() : page.getTotal());
page = new Page<>(pageNum, request.getTake()); return dataSourceResult;
} else {
page = new Page<>(1, 20);
}
microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), params, MsWarnRuleBVo.class);
return page;
} }
@Override @Override