吉安感知网项目-后端
linwei
2026-04-02 b954d7a119eb635394bf4ff3619a9ab4b4978e48
drone-service/drone-fw/src/main/java/org/sxkj/fw/record/service/impl/FwDroneAlarmRecordServiceImpl.java
@@ -16,15 +16,26 @@
 */
package org.sxkj.fw.record.service.impl;
import org.springblade.core.secure.utils.AuthUtil;
import org.sxkj.common.utils.HeaderUtils;
import org.sxkj.fw.cockpit.vo.AlarmStatisticsVO;
import org.sxkj.fw.record.dto.FwDroneAlarmRecordDTO;
import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
import org.sxkj.fw.record.param.FwDroneAlarmRecordExportParam;
import org.sxkj.fw.record.vo.FwDroneAlarmRecordVO;
import org.sxkj.fw.record.excel.FwDroneAlarmRecordExcel;
import org.sxkj.fw.record.mapper.FwDroneAlarmRecordMapper;
import org.sxkj.fw.record.service.IFwDroneAlarmRecordService;
import org.springframework.stereotype.Service;
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.fw.device.mapper.FwDevicePerShareMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.sxkj.system.entity.Dept;
import org.sxkj.system.entity.Region;
import java.util.List;
/**
@@ -36,19 +47,40 @@
@Service
public class FwDroneAlarmRecordServiceImpl extends BaseServiceImpl<FwDroneAlarmRecordMapper, FwDroneAlarmRecordEntity> implements IFwDroneAlarmRecordService {
   @Autowired
   private FwDevicePerShareMapper fwDevicePerShareMapper;
   @Override
   public IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordVO fwDroneAlarmRecord) {
   public IPage<FwDroneAlarmRecordVO> selectFwDroneAlarmRecordPage(IPage<FwDroneAlarmRecordVO> page, FwDroneAlarmRecordDTO fwDroneAlarmRecord) {
      // 设置当前用户ID
      fwDroneAlarmRecord.setCurrentUserId(AuthUtil.getUserId());
      Dept dept = SysCache.getDept(Long.valueOf(AuthUtil.getDeptId()));
      // 3. 查询不在这些部门区域内的设备
      Region byCode = RegionCache.getByCode(dept.getAreaCode());
      fwDroneAlarmRecord.setRegionName(byCode.getName());
      fwDroneAlarmRecord.setCurrentDeptId(AuthUtil.getDeptId());
      fwDroneAlarmRecord.setRegionCode(HeaderUtils.formatAreaCode(byCode.getCode()));
      return page.setRecords(baseMapper.selectFwDroneAlarmRecordPage(page, fwDroneAlarmRecord));
   }
   @Override
   public List<FwDroneAlarmRecordExcel> exportFwDroneAlarmRecord(Wrapper<FwDroneAlarmRecordEntity> queryWrapper) {
      List<FwDroneAlarmRecordExcel> fwDroneAlarmRecordList = baseMapper.exportFwDroneAlarmRecord(queryWrapper);
      //fwDroneAlarmRecordList.forEach(fwDroneAlarmRecord -> {
      //   fwDroneAlarmRecord.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDroneAlarmRecord.getType()));
      //});
   public List<FwDroneAlarmRecordExcel> exportFwDroneAlarmRecord(FwDroneAlarmRecordExportParam fwDroneAlarmRecord) {
      Dept dept = SysCache.getDept(Long.valueOf(AuthUtil.getDeptId()));
      Region byCode = RegionCache.getByCode(dept.getAreaCode());
      fwDroneAlarmRecord.setRegionCode(HeaderUtils.formatAreaCode(byCode.getCode()));
      fwDroneAlarmRecord.setCurrentDeptId(AuthUtil.getDeptId());
      List<FwDroneAlarmRecordExcel> fwDroneAlarmRecordList = baseMapper.exportFwDroneAlarmRecord(fwDroneAlarmRecord);
      return fwDroneAlarmRecordList;
   }
   /**
    * 告警类型统计
    *
    * @return
    */
   @Override
   public AlarmStatisticsVO alarmTypeStatistics(String regionCode, String currentDeptId) {
      return baseMapper.alarmTypeStatistics(regionCode, currentDeptId);
   }
}