From 51a551a7f8eae7654f973d45cd2fa2952774673d Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Fri, 07 Aug 2026 10:56:55 +0800
Subject: [PATCH] perf(task): 优化巡查任务审核性能并添加详细日志记录
---
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java | 35 +++++++++++++++++++++++++++--------
1 files changed, 27 insertions(+), 8 deletions(-)
diff --git a/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java b/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java
index 23b99d2..cb3e59d 100644
--- a/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java
+++ b/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java
@@ -16,7 +16,11 @@
*/
package org.sxkj.fw.record.service.impl;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.sxkj.common.utils.HeaderUtils;
+import org.sxkj.fw.record.dto.FwDroneFlightRecordDTO;
import org.sxkj.fw.record.entity.FwDroneFlightRecordEntity;
+import org.sxkj.fw.record.param.FwDroneFlightRecordExportParam;
import org.sxkj.fw.record.vo.FwDroneFlightRecordVO;
import org.sxkj.fw.record.excel.FwDroneFlightRecordExcel;
import org.sxkj.fw.record.mapper.FwDroneFlightRecordMapper;
@@ -25,30 +29,45 @@
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
+import org.sxkj.system.cache.RegionCache;
+import org.sxkj.system.cache.SysCache;
+import org.sxkj.system.entity.Dept;
+import org.sxkj.system.entity.Region;
+
import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
/**
* 无人机飞行记录表 服务实现类
*
* @author lw
- * @since 2026-01-07
+ * @since 2026-01-08
*/
@Service
public class FwDroneFlightRecordServiceImpl extends BaseServiceImpl<FwDroneFlightRecordMapper, FwDroneFlightRecordEntity> implements IFwDroneFlightRecordService {
@Override
- public IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordVO fwDroneFlightRecord) {
+ public IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordDTO fwDroneFlightRecord) {
+ Dept dept = SysCache.getDept(Long.valueOf(AuthUtil.getDeptId()));
+ Region byCode = RegionCache.getByCode(dept.getAreaCode());
+ fwDroneFlightRecord.setRegionCode(HeaderUtils.formatAreaCode(byCode.getCode()));
+ fwDroneFlightRecord.setCurrentDeptId(AuthUtil.getDeptId());
return page.setRecords(baseMapper.selectFwDroneFlightRecordPage(page, fwDroneFlightRecord));
}
@Override
- public List<FwDroneFlightRecordExcel> exportFwDroneFlightRecord(Wrapper<FwDroneFlightRecordEntity> queryWrapper) {
- List<FwDroneFlightRecordExcel> fwDroneFlightRecordList = baseMapper.exportFwDroneFlightRecord(queryWrapper);
- //fwDroneFlightRecordList.forEach(fwDroneFlightRecord -> {
- // fwDroneFlightRecord.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDroneFlightRecord.getType()));
- //});
- return fwDroneFlightRecordList;
+ public Map<String, List<FwDroneFlightRecordExcel>> exportFwDroneFlightRecord(FwDroneFlightRecordExportParam fwDroneFlightRecord) {
+ Dept dept = SysCache.getDept(Long.valueOf(AuthUtil.getDeptId()));
+ Region byCode = RegionCache.getByCode(dept.getAreaCode());
+ fwDroneFlightRecord.setRegionCode(HeaderUtils.formatAreaCode(byCode.getCode()));
+ fwDroneFlightRecord.setCurrentDeptId(AuthUtil.getDeptId());
+ List<FwDroneFlightRecordExcel> fwDroneFlightRecordList = baseMapper.exportFwDroneFlightRecord(fwDroneFlightRecord);
+ // 按照 无人机名称 和 序列号 组合进行分组,键格式为 "id_serialNo"
+ Map<String, List<FwDroneFlightRecordExcel>> groupedMap = fwDroneFlightRecordList.stream()
+ .collect(Collectors.groupingBy(item -> item.getDroneName() + "_" + item.getSerialNo()));
+ return groupedMap;
}
}
--
Gitblit v1.9.3