吉安感知网项目-后端
xiebin
2026-01-28 74756c657109a4e48dd6c0b4d8959cdab89b33a9
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneFlightRecordServiceImpl.java
@@ -16,8 +16,10 @@
 */
package org.sxkj.fw.record.service.impl;
import org.springblade.core.secure.utils.AuthUtil;
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;
@@ -26,7 +28,11 @@
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.SysCache;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * 无人机飞行记录表 服务实现类
@@ -39,17 +45,19 @@
   @Override
   public IPage<FwDroneFlightRecordVO> selectFwDroneFlightRecordPage(IPage<FwDroneFlightRecordVO> page, FwDroneFlightRecordDTO fwDroneFlightRecord) {
      List<Long> deptList = SysCache.getDeptChildIds(Long.valueOf(AuthUtil.getDeptId()));
      fwDroneFlightRecord.setDeptList(deptList);
      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) {
      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;
   }
}