Commit 07a487b8 authored by tianbo's avatar tianbo

feat(module-jg): 优化特种设备使用登记列表查询性能

- 新增 getListPage1 和 getListPageCount 方法,用于分页查询和统计总数 - 优化查询条件,使用索引提高查询效率- 添加日志记录,监控查询性能
parent 62e2ffcf
...@@ -29,6 +29,19 @@ public interface JgUseRegistrationMapper extends BaseMapper<JgUseRegistration> { ...@@ -29,6 +29,19 @@ public interface JgUseRegistrationMapper extends BaseMapper<JgUseRegistration> {
@Param("roleIds") List<String> roleIds, @Param("roleIds") List<String> roleIds,
@Param("client") String client); @Param("client") String client);
List<Map<String, Object>> getListPage1(
@Param("size") Long size,
@Param("offset") Long offset,
@Param("sort") SortVo sortMap,
@Param("dto") JgUseRegistrationDto dto,
@Param("roleIds") List<String> roleIds,
@Param("client") String client);
Long getListPageCount(@Param("sort") SortVo sortMap,
@Param("dto") JgUseRegistrationDto dto,
@Param("roleIds") List<String> roleIds,
@Param("client") String client);
List<RegistrationVo> queryRegistrationInIds(@Param("dto") JgUseRegistrationDto dto, List<RegistrationVo> queryRegistrationInIds(@Param("dto") JgUseRegistrationDto dto,
@Param("client") String client); @Param("client") String client);
......
...@@ -78,6 +78,8 @@ import lombok.extern.slf4j.Slf4j; ...@@ -78,6 +78,8 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.compress.utils.Lists; import org.apache.commons.compress.utils.Lists;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.redisson.api.RLock; import org.redisson.api.RLock;
import org.redisson.api.RedissonClient; import org.redisson.api.RedissonClient;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
...@@ -139,6 +141,8 @@ import static java.util.stream.Collectors.toSet; ...@@ -139,6 +141,8 @@ import static java.util.stream.Collectors.toSet;
@Getter @Getter
public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationDto, JgUseRegistration, JgUseRegistrationMapper> implements IJgUseRegistrationService, ICompensateFlowDataOfRedis<JgUseRegistration>, ApplicationContextAware { public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationDto, JgUseRegistration, JgUseRegistrationMapper> implements IJgUseRegistrationService, ICompensateFlowDataOfRedis<JgUseRegistration>, ApplicationContextAware {
private static final Logger logger = LogManager.getLogger(JgUseRegistrationServiceImpl.class);
private static final String DEFINITION_KEY = "useRegistration"; private static final String DEFINITION_KEY = "useRegistration";
private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");; private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");;
private final List<String> NOT_FLOWING_STATE = Arrays.asList("使用单位待提交", "一级受理已驳回", "使用单位已撤回", "已作废"); private final List<String> NOT_FLOWING_STATE = Arrays.asList("使用单位待提交", "一级受理已驳回", "使用单位已撤回", "已作废");
...@@ -349,7 +353,14 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -349,7 +353,14 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
public Page<Map<String, Object>> getList(JgUseRegistrationDto dto, String sort, Page<Map<String, Object>> page, List<String> roleIds, String client) { public Page<Map<String, Object>> getList(JgUseRegistrationDto dto, String sort, Page<Map<String, Object>> page, List<String> roleIds, String client) {
SortVo sortMap = commonServiceImpl.sortFieldConversionNoToUnderline(sort); SortVo sortMap = commonServiceImpl.sortFieldConversionNoToUnderline(sort);
return this.baseMapper.getListPage(page, sortMap, dto, roleIds, client); // 统计查询时间
long startTime = System.currentTimeMillis();
List<Map<String, Object>> resultRecords = this.baseMapper.getListPage1(page.getSize(), page.getSize() * (page.getCurrent() - 1), sortMap, dto, roleIds, client);
page.setRecords(resultRecords);
logger.info("开始执行查询列表总数");
page.setTotal(this.baseMapper.getListPageCount(sortMap, dto, roleIds, client));
logger.info("结束执行查询列表总数,耗时:{}毫秒", (System.currentTimeMillis() - startTime));
return page;
} }
public Page<Map<String, Object>> getEquipList(Page<Map<String, Object>> page, String factoryNum, String equList, String equCategory) { public Page<Map<String, Object>> getEquipList(Page<Map<String, Object>> page, String factoryNum, String equList, String equCategory) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment