package com.terra.system.service.show; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.terra.system.entity.ctrl.TabEntity; import com.terra.system.helper.ClassHelper; import com.terra.system.mapper.all.BasicMapper; import com.terra.system.service.data.DictService; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; /** * 自动执行查询服务类 * @author WWW * @date 2023-09-24 */ @Service public class AutoQueryService { @Resource DictService dictService; private final static Log log = LogFactory.getLog(AutoQueryService.class); /** * 自动查询 */ public void autoQuery() { try { log.info("开始自动查询.."); long beginTime = System.currentTimeMillis(); List list = dictService.selectDictTab(null, "gid"); if (null != list && list.size() > 0) { for (TabEntity tab : list) { queryTable(tab.getEntity()); } } double time = (System.currentTimeMillis() - beginTime) / 1000.0; log.info("自动查询结束(" + time + "s)."); } catch (Exception ex) { log.error(ex.getMessage(), ex); } } /** * 查询数据表 */ private void queryTable(String name) { try { BasicMapper baseMapper = ClassHelper.getBasicMapper(name); if (null == baseMapper) { log.error("查询对象不存在:" + name); return; } Page page = new Page<>(1, 10); page.addOrder(OrderItem.desc("gid")); QueryWrapper wrapper = new QueryWrapper(); IPage paged = baseMapper.selectPage(page, wrapper); long count = paged.getTotal(); List list = paged.getRecords(); } catch (Exception ex) { log.error("查询出错:" + name + "\r\n" + ex.getMessage()); } } }