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.core.utils.Constants; import com.doumee.dao.business.PlatformLogMapper; import com.doumee.dao.business.model.PlatformLog; import com.doumee.dao.web.response.platformReport.*; 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. * * @Author : Rk * @create 2024/10/28 13:42 */ @Api(tags = "消防管控大屏") @RestController @Slf4j @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/fightingAdmin") public class FightingAdminController extends BaseController { @LoginNoRequired @ApiOperation("中心数据") @GetMapping("/centerData") public ApiResponse 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)); return ApiResponse.success(data); } @LoginNoRequired @ApiOperation("今日各系统设备状态及告警数量") @GetMapping("/deviceAlarmData") public ApiResponse> deviceAlarmData() { List 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); } @LoginNoRequired @ApiOperation("报警信息") @GetMapping("/alarmData") public ApiResponse 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())); return ApiResponse.success(alarmDataVO); } @LoginNoRequired @ApiOperation("告警处理分析") @GetMapping("/alarmHandleData") public ApiResponse> alarmHandleData(@RequestParam Integer type) { List 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); } @LoginNoRequired @ApiOperation("本年消防设备/设施维护情况") @GetMapping("/yearDeviceData") public ApiResponse yearDeviceData() { Random random = new Random(); YearDeviceDataVO yearDeviceDataVO = new YearDeviceDataVO(); yearDeviceDataVO.setMonthAddNum(random.nextInt(100)); yearDeviceDataVO.setPlanProtectTotal(random.nextInt(1000)); yearDeviceDataVO.setProtectNum(yearDeviceDataVO.getPlanProtectTotal()); return ApiResponse.success(yearDeviceDataVO); } }