From 8b43a1a91c37676e6a1e506e211f60e3e238f669 Mon Sep 17 00:00:00 2001 From: dongyukun <1208714201@qq.com> Date: 星期四, 20 二月 2025 16:23:48 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/value/service/impl/IndItemValueServiceImpl.java | 40 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 40 insertions(+), 0 deletions(-) diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/value/service/impl/IndItemValueServiceImpl.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/value/service/impl/IndItemValueServiceImpl.java index 5efbb4c..2453ea2 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/value/service/impl/IndItemValueServiceImpl.java +++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/value/service/impl/IndItemValueServiceImpl.java @@ -3,13 +3,22 @@ import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.common.service.impl.BaseServiceImpl; import com.iailab.framework.common.util.object.BeanUtils; +import com.iailab.framework.common.util.object.ConvertUtils; +import com.iailab.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.iailab.framework.tenant.core.context.DataContextHolder; +import com.iailab.module.data.common.utils.DateUtils; +import com.iailab.module.data.common.xss.SQLFilter; +import com.iailab.module.data.ind.item.vo.IndItemValueVO; import com.iailab.module.data.ind.value.dao.IndItemValueDao; +import com.iailab.module.data.ind.value.dto.QuerySourceValueDTO; import com.iailab.module.data.ind.value.entity.IndItemValueEntity; import com.iailab.module.data.ind.value.service.IndItemValueService; import com.iailab.module.data.ind.value.vo.IndItemValuePageReqVO; import com.iailab.module.data.ind.value.vo.IndItemValueSaveReqVO; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; +import java.util.List; import java.util.UUID; /** @@ -47,4 +56,35 @@ public void delete(String id) { baseDao.deleteById(id); } + + /** + * 根据配置的数据源动态查询 + * @param dto + * @return + */ + @Override + public List<IndItemValueVO> getSourceValue(QuerySourceValueDTO dto) { + if (StringUtils.isEmpty(dto.getDataSource())) { + log.warn("数据源不能为空"); + return null; + } + SQLFilter.sqlInject2(dto.getSelectSql()); + SQLFilter.sqlInject2(dto.getViewSql()); + SQLFilter.sqlInject2(dto.getWhereSql()); + SQLFilter.sqlInject2(dto.getGroupSql()); + SQLFilter.sqlInject2(dto.getGroupSql()); + DataContextHolder.setDataSourceId(Long.valueOf(dto.getDataSource())); + return baseDao.getSourceValue(dto); + } + + @Override + public List<IndItemValueVO> getValueList(IndItemValuePageReqVO reqVO) { + List<IndItemValueEntity> entities = baseDao.selectList( new LambdaQueryWrapperX<IndItemValueEntity>() + .eq(StringUtils.isNotBlank(reqVO.getItemNo()), IndItemValueEntity::getItemNo, reqVO.getItemNo()) + .geIfPresent(IndItemValueEntity::getDataTime, DateUtils.stringToDate(reqVO.getStartTime(), DateUtils.DATE_TIME_PATTERN)) + .leIfPresent(IndItemValueEntity::getDataTime, DateUtils.stringToDate(reqVO.getEndTime(), DateUtils.DATE_TIME_PATTERN)) + .orderByDesc(IndItemValueEntity::getDataTime) + ); + return ConvertUtils.sourceToTarget(entities, IndItemValueVO.class); + } } \ No newline at end of file -- Gitblit v1.9.3