k94314517
2025-07-02 095d19dff25e37c8abf3cf197a4bdac6a2b3ecd5
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/FightingAdminController.java
@@ -1,25 +1,21 @@
package com.doumee.cloud.board;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.doumee.api.BaseController;
import com.doumee.config.annotation.LoginNoRequired;
import com.doumee.core.model.ApiResponse;
import com.doumee.dao.admin.response.PCWorkPlatformDataVO;
import com.doumee.service.business.VisitsService;
import com.doumee.service.business.third.model.ApiResponse;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.PlatformLogMapper;
import com.doumee.dao.business.model.PlatformLog;
import com.doumee.dao.web.response.platformReport.*;
import com.doumee.service.business.third.BoardService;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
/**
 * Created by IntelliJ IDEA.
@@ -33,94 +29,82 @@
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/fightingAdmin")
public class FightingAdminController extends BaseController {
    @Autowired
    private BoardService boardService;
    @Autowired
    private VisitsService visitsService;
    @LoginNoRequired
    @ApiOperation("中心数据")
    @GetMapping("/centerData")
    public ApiResponse<FightingAdminBoardVO> centerData() {
        FightingAdminBoardVO data = new FightingAdminBoardVO();
        Random random = new Random();
        data.setOfflineDeviceNum(random.nextInt(20));
        data.setOnlineDeviceNum(random.nextInt(20));
        data.setErrDeviceNum(random.nextInt(20));
        data.setShieldDeviceNum(random.nextInt(20));
        data.setTodayDangerNum(random.nextInt(20));
        data.setDealDangerNum(random.nextInt(20));
    public ApiResponse<FightingAdminCenterDataVO> centerData() {
        FightingAdminCenterDataVO data = boardService.centerFightingAdminData();
        return ApiResponse.success(data);
    }
    @LoginNoRequired
    @ApiOperation("今日各系统设备状态及告警数量")
    @GetMapping("/deviceAlarmData")
    public ApiResponse<List<DeviceAlarmDataVO>> deviceAlarmData() {
        List<DeviceAlarmDataVO> deviceAlarmDataVOList = new ArrayList<>();
        Random random = new Random();
        for (int i = 1; i <= 5; i++) {
            DeviceAlarmDataVO deviceAlarmDataVO = new DeviceAlarmDataVO();
            deviceAlarmDataVO.setDeviceTypeName("设备名称_"+i);
            deviceAlarmDataVO.setAlarmNum(random.nextInt(20));
            deviceAlarmDataVO.setErrNum(random.nextInt(20));
            deviceAlarmDataVO.setOfflineNum(random.nextInt(20));
            deviceAlarmDataVO.setShieldNum(random.nextInt(20));
            deviceAlarmDataVO.setStatusTotal(deviceAlarmDataVO.getAlarmNum() + deviceAlarmDataVO.getErrNum() + deviceAlarmDataVO.getOfflineNum() + deviceAlarmDataVO.getShieldNum());
            deviceAlarmDataVOList.add(deviceAlarmDataVO);
        }
        return ApiResponse.success(deviceAlarmDataVOList);
    }
    /**
     *
     * @param type 0/null  = 当天;1=当月;2=当年
     * @return
     */
    @LoginNoRequired
    @ApiOperation("报警信息")
    @GetMapping("/alarmData")
    public ApiResponse<AlarmDataVO> alarmData() {
        AlarmDataVO alarmDataVO = new AlarmDataVO();
        Random random = new Random();
        alarmDataVO.setTotalNum(random.nextInt(30));
        alarmDataVO.setRealNum(random.nextInt(alarmDataVO.getTotalNum()));
        alarmDataVO.setErrNum(random.nextInt(alarmDataVO.getRealNum()));
        alarmDataVO.setLiftNum(random.nextInt(alarmDataVO.getErrNum()));
        alarmDataVO.setProcessingNum(random.nextInt(alarmDataVO.getErrNum()));
    public ApiResponse<AlarmDataVO> alarmDataSumByCate(Integer type) {
        AlarmDataVO alarmDataVO = boardService.alarmDataSumByCate(type);
        return ApiResponse.success(alarmDataVO);
    }
    @LoginNoRequired
    @ApiOperation("告警信息集合")
    @GetMapping("/alarmDataList")
    public ApiResponse<List<AlarmEventDataVO>> alarmDataList() {
        List<AlarmEventDataVO> data  = boardService.fightingAdminAlertList();
        return ApiResponse.success(data);
    }
    @LoginNoRequired
    @ApiOperation("告警处理分析")
    @GetMapping("/alarmHandleData")
    public ApiResponse<List<AlarmHandleDataVO>> alarmHandleData(@RequestParam Integer type) {
        List<AlarmHandleDataVO> alarmHandleDataVOList = new ArrayList<>();
        Random random = new Random();
        for (int i = 1; i <= 12; i++) {
            AlarmHandleDataVO alarmHandleDataVO = new AlarmHandleDataVO();
            alarmHandleDataVO.setMonthStr(i+"月");
            alarmHandleDataVO.setAlarmNum(random.nextInt(20));
            alarmHandleDataVO.setErrNum(random.nextInt(20));
            alarmHandleDataVO.setLiftNum(random.nextInt(20));
            alarmHandleDataVO.setProcessingNum(random.nextInt(20));
            alarmHandleDataVOList.add(alarmHandleDataVO);
        }
        return ApiResponse.success(alarmHandleDataVOList);
    @ApiOperation("检测数据集合")
    @GetMapping("/monitorDataList")
    public ApiResponse<List<MonitorDataVO>> monitorDataList() {
        List<MonitorDataVO> data  = boardService.monitorDataList();
        return ApiResponse.success(data);
    }
    @LoginNoRequired
    @ApiOperation("本年消防设备/设施维护情况")
    @ApiOperation("告警处理分析集合")
    @GetMapping("/alarmHandleData")
    public ApiResponse<List<AlarmDataVO>> alarmHandleData() {
        List<AlarmDataVO> alarmHandleDataVOList = boardService.fightingAlarmHandleData();
        return ApiResponse.success(alarmHandleDataVOList);
    }
    @LoginNoRequired
    @ApiOperation("本年和本月新增消防设备/设施维护情况")
    @GetMapping("/yearDeviceData")
    public ApiResponse<YearDeviceDataVO> yearDeviceData() {
        Random random = new Random();
        YearDeviceDataVO yearDeviceDataVO = new YearDeviceDataVO();
        yearDeviceDataVO.setMonthAddNum(random.nextInt(100));
        yearDeviceDataVO.setPlanProtectTotal(random.nextInt(1000));
        yearDeviceDataVO.setProtectNum(yearDeviceDataVO.getPlanProtectTotal());
        YearDeviceDataVO yearDeviceDataVO = boardService.yearFightingAdminDeviceData();
        return ApiResponse.success(yearDeviceDataVO);
    }
    @LoginNoRequired
    @ApiOperation("温湿度数据")
    @GetMapping("/getTemperatureHumidityData")
    public ApiResponse<List<TemperatureHumidityDataVO>> getTemperatureHumidityData() {
        List<TemperatureHumidityDataVO> list = boardService.getTemperatureHumidityData();
        return ApiResponse.success(list);
    }
    @LoginNoRequired
    @ApiOperation("实时在场人员分布")
    @GetMapping("/inParkUser")
    public ApiResponse<PCWorkPlatformDataVO> inParkUser() {
        PCWorkPlatformDataVO pcWorkPlatformDataVO = visitsService.getPcWorkPlatformData(Constants.ONE,null);
        return ApiResponse.success(pcWorkPlatformDataVO);
    }
}