吉安感知网项目-后端
linwei
2026-01-27 e7e920b15e7cb9cf28e380a445ce87b9937c675a
drone-service/drone-fw/src/main/java/org/sxkj/fw/cockpit/service/impl/CockpitServiceImpl.java
@@ -1,6 +1,7 @@
package org.sxkj.fw.cockpit.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springframework.stereotype.Service;
import org.sxkj.fw.cockpit.service.ICockpitService;
import org.sxkj.fw.cockpit.vo.AlarmStatisticsVO;
@@ -19,18 +20,19 @@
import javax.annotation.Resource;
import java.util.List;
import java.util.Optional;
@Service
public class CockpitServiceImpl implements ICockpitService {
   @Resource
   private  IFwDroneAlarmRecordService fwDroneAlarmRecordService;
   private IFwDroneAlarmRecordService fwDroneAlarmRecordService;
   @Resource
   private  IFwDeviceService fwDeviceService;
   private IFwDeviceService fwDeviceService;
   @Resource
   private  IFwEffectEvalService fwEffectEvalService;
   private IFwEffectEvalService fwEffectEvalService;
   @Override
@@ -50,9 +52,14 @@
   @Override
   public boolean interferenceAndExpulsion(FwEffectEvalParam fwEffectEvalParam) {
      // 告警记录
      FwDroneAlarmRecordEntity alarmRecordEntity = fwDroneAlarmRecordService.getById(fwEffectEvalParam.getAlarmRecordId());
      // 设备信息
      FwDeviceEntity device = fwDeviceService.getById(alarmRecordEntity.getDeviceId());
      FwEffectEvalEntity fwEffectEvalEntity = new FwEffectEvalEntity();
      // 反制效果
      FwEffectEvalEntity one = fwEffectEvalService.getOne(Wrappers.<FwEffectEvalEntity>lambdaQuery().eq(FwEffectEvalEntity::getAlarmRecordId, fwEffectEvalParam.getAlarmRecordId()));
      FwEffectEvalEntity fwEffectEvalEntity = Optional.ofNullable(one)
         .orElse(new FwEffectEvalEntity());
      // 告警记录相关字段
      fwEffectEvalEntity.setAlarmRecordId(fwEffectEvalParam.getAlarmRecordId());
@@ -75,9 +82,9 @@
      fwEffectEvalEntity.setAreaCode(device.getAreaCode());
      // 反制效果及工作模式(从参数获取,否则使用默认值)
      fwEffectEvalEntity.setCounterEffect( "1"); // 1.success/2.fail
      fwEffectEvalEntity.setCounterEffect("1"); // 1.success/2.fail
      fwEffectEvalEntity.setCoverRadiusM(2500); // 覆盖范围(米)
      fwEffectEvalEntity.setWorkMode( "1"); // 1.机动/2.固定
      fwEffectEvalEntity.setWorkMode("1"); // 1.机动/2.固定
      fwDroneAlarmRecordService.updateById(alarmRecordEntity);
      return fwEffectEvalService.saveOrUpdate(fwEffectEvalEntity);
   }
@@ -87,7 +94,7 @@
      // 设备统计
      AlarmStatisticsVO alarmStatisticsVO = fwDeviceService.statisticalDeviceAtt();
      // 告警统计
      AlarmStatisticsVO alarmStatistics =  fwDroneAlarmRecordService.alarmTypeStatistics();
      AlarmStatisticsVO alarmStatistics = fwDroneAlarmRecordService.alarmTypeStatistics();
      alarmStatisticsVO.setHistoryAlarmCount(alarmStatistics.getHistoryAlarmCount());
      alarmStatisticsVO.setRealTimeAlarmCount(alarmStatistics.getRealTimeAlarmCount());
      return alarmStatisticsVO;