| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414 |
- import { http } from '@/utils/http/axios';
- /**
- * @description: 查询未读消息列表
- */
- export interface UnReadNoticeInfo {
- id: number; // 消息通知id
- notifierUserId: number; // 被通知人用户id
- infoType: number; // 消息类型:1-灾害预警 2-防御通知 3-预防检查任务 4-灾害处置上报任务 5-灾害处置整改任务
- infoOutline: string; // 消息概要
- infoStatus: number; // 消息状态:1-已处理、2-未处理、3-忽略
- pushChannel: number; // 推送渠道:1-首页
- detail: string; // 详情(JSON)
- sourceId: number; // 消息来源id
- createdAt: string; // 创建时间
- updatedAt: string; // 更新时间
- isDeleted: number; // 0-未删除,大于0-已删除
- }
- export const getUnReadNoticeInfoList = () => {
- return http.request<UnReadNoticeInfo[]>({
- url: '/noticeInfo/queryUnReadNoticeInfoList',
- method: 'get',
- });
- };
- /**
- * @description: 更新消息通知状态
- */
- export interface UpdateUnReadNoticeInfoStatusParams {
- id: number; // 消息通知id
- status: number; // 修改状态:1-已读 2-未读 3-忽略
- }
- export const updateUnReadNoticeInfoStatus = (params: UpdateUnReadNoticeInfoStatusParams) => {
- return http.request({
- url: '/noticeInfo/updateNoticeInfoStatus',
- method: 'post',
- params,
- });
- };
- /**
- * @description: 灾害预警记录(timespan: 1-本周,2-本月,3-季度,4-年度)
- */
- export interface WarnRecord {
- disasterType: string; // 灾害类型
- warnTime: string; // 预警时间
- source: string; // 信息来源
- content: string; // 发布内容
- }
- export interface DisasterWarningRecordsRes {
- warnCount: number; // 预警数量
- warnRecord: WarnRecord[]; // 预警记录
- }
- export const getDisasterWarningRecords = (duration: number) => {
- return http.request<DisasterWarningRecordsRes[]>({
- url: `/overview/queryOverviewDisasterWarn?timespan=${duration}`,
- method: 'get',
- });
- };
- /**
- * @description: 预防检查
- */
- export interface QueryCheckingListsParams {
- pageNumber?: number;
- pageSize?: number;
- queryParam?: {};
- }
- export interface TaskRecord {
- id: number; // 任务id
- inspectType: number; // 检查类型:1-台汛前期检查,2-台汛中期检查,3-台汛后期检查
- deptName: string; // 被检查单位名称
- updatedAt: string; // 更新时间
- taskState: number; // 任务状态:1-待发布,2-待检查,3-待审批,4-已完成
- hasHazard: boolean; // 检查结果:false-不存在隐患,true-存在隐患
- }
- export interface PreventInspectInfoRes {
- totalTask: number; // 总任务数
- submittedTask: number; // 待签字任务数
- signedTask: number; // 已签字任务数
- passTask: number; // 通过任务数
- dangerTask: number; // 隐患任务数
- taskRecord: TaskRecord[]; // 检查任务记录
- pageNumber: number;
- pageSize: number;
- totalPage: number;
- totalRow: number;
- }
- export const getPreventInspect = (params: QueryCheckingListsParams) => {
- return http.request<PreventInspectInfoRes>({
- url: '/overview/queryOverviewPreventInspect',
- method: 'post',
- params,
- });
- };
- /**
- * @description: 灾害处置
- */
- export interface DisasterHandleInfoRecord {
- affectedItems: string; // 受灾物品
- deptId: number; // 损失部门id
- deptName: string; // 损失部门
- affectedLocation: string; // 受灾地点
- fixStatus: number; // 整改进度:1-待整改 2-已响应 3-已更新 4-已完成 5-暂时关闭
- fixerId: number; // 整改人员id
- fixerName: string; // 整改人员名称
- fixerStaffNo: string; // 整改人员工号
- }
- export interface QueryDisasterHandleOverviewRes {
- dueReportDeptCount: number; // 应上报部门数量
- completeReportDeptCount: number; // 已上报部门数量
- existLossDeptCount: number; // 存在损失部门数量
- lossRecordCount: number; // 损失记录数量
- completeHandleCount: number; // 处置完成数量
- disasterHandleInfoList: DisasterHandleInfoRecord[];
- pageNumber: number;
- pageSize: number;
- totalPage: number;
- totalRow: number;
- }
- export const getDisasterHandleOverview = (params: QueryCheckingListsParams) => {
- return http.request<QueryDisasterHandleOverviewRes>({
- url: '/disasterHandle/queryDisasterHandleOverview',
- method: 'post',
- params,
- });
- };
- /**
- * @description: 通知与管理规定(防御通知)
- */
- export interface NoticeAndRulesRes {
- id: number; // 通知id
- title: string; // 通知标题
- createdBy: number; // 创建人id
- createdName: string; // 创建人姓名
- pushTime: string; // 发布时间
- }
- export const getNoticeAndRules = () => {
- return http.request<NoticeAndRulesRes[]>({
- url: '/overview/queryOverviewDefenseNotice',
- method: 'get',
- });
- };
- /**
- * @description: 重点监测区域:查看相机分组列表
- */
- export interface GetCameraGroupListRes {
- id: number; // 分组id
- groupName: string; // 分组名称
- isDefault: number;
- playIntervalSec: number; // 轮播间隔
- isPaused: number; // 是否暂停播放
- children: CameraInfo[]; // 分组相机列表
- }
- export interface CameraInfo {
- networkingState: number; // 联网状态: 0-启用, 1-禁用
- integrationState: number; // 接入状态: 0-启用, 1-禁用
- render: string; // 渲染选择,无渲染/某个算法
- version: number; // 版本
- extra: string; // 扩展数据
- pushStreamDTO: {
- videoUrls: {
- pushstreamIp: string; // 推流地址(前端播放的地址)
- pushstreamRenderUrl: string; // 渲染推流地址(前端播放的渲染地址)
- m3u8PushstreamIp: string; // ios推流地址(前端播放的地址)
- m3u8PushstreamRenderIp: string; // ios推流地址(前端播放的地址)
- pushstreamIpAbs: string; // 推流地址(前端播放的地址)
- pushstreamRenderUrlAbs: string; // 渲染推流地址(前端播放的渲染地址)
- m3u8PushstreamIpAbs: string; // ios推流地址(前端播放的地址)
- m3u8PushstreamRenderIpAbs: string; // ios推流地址(前端播放的地址)
- };
- imageUrl: string; // 摄像头实时记录的画面
- };
- id: number; // 自增主键
- workshopId: number; // 车间id
- workspaceId: number; // 工位id
- name: string; // 相机名称
- code: string; // 相机编号
- cameraIp: string; // 相机IP
- cameraPort: string; // 相机端口
- cameraType: string; // 相机类型: haikang/dahua/anxus/huawei
- remark: string; // 描述
- sourceType: string; // 添加方式: IP,NVR,RTSP
- rtspUrl: string; // rtsp地址
- nvrId: number; // NVR id
- nvrChannel: string; // NVR通道号
- videoStandard: string; // 视频编码标准,H264, H265
- videoServiceType: string; // 视频服务类型,TCP, UDP, AUTO
- isDisabled: number; // 状态: 0-启用, 1-禁用
- }
- export const getMonitorCameraLists = () => {
- return http.request({
- url: '/cameraGroup/queryCameraGroupList?type=1',
- method: 'get',
- });
- };
- /**
- * @description: 重点监测区域:根据用户查询相机树
- */
- export interface QueryAllOwnedCameraTreeRes {
- nodeType: string; // 节点类型
- id: number; // 公司id
- parentId?: number; // 上级公司Id, 无上级为0
- name: string; // 公司名称
- code: string; // 公司编号
- remark: string; // 描述
- orderNum: number; // 排序序号
- longitude?: Record<string, unknown>; // 经度
- latitude?: Record<string, unknown>; // 纬度
- regionCode?: string; // 区域编码(标识)
- isDisabled: number; // 状态: 0-启用, 1-禁用
- createdBy: number; // 创建人
- updatedBy: number; // 更新人
- createdAt: Record<string, unknown>; // 创建时间
- updatedAt: Record<string, unknown>; // 更新时间
- tenantId: number; // 租户ID
- thumbnail?: string; // 公司缩略图
- // 车间-工位-相机信息
- children: {
- nodeType: string; // 节点类型
- id: number; // 车间id
- companyId: number; // 公司id
- name: string; // 车间名称
- code: string; // 车间编号
- orderNum: number; // 排序序号
- remark: string; // 描述
- isDisabled: number; // 状态: 0-启用, 1-禁用
- createdBy: number; // 创建人
- updatedBy: number; // 更新人
- createdAt: Record<string, unknown>; // 创建时间
- updatedAt: Record<string, unknown>; // 修改时间
- tenantId: number; // 租户ID
- // 工位-相机信息
- children: {
- nodeType: string; // 节点类型
- id: number; // 工位id
- workshopId: number; // 车间id
- name: string; // 工位名称
- code: string; // 工位编号
- remark: string; // 描述
- orderNum: number; // 排序序号
- principalName: string; // 工位负责人
- principalId: number; // 工位负责人id
- isDisabled: number; // 状态: 0-启用, 1-禁用
- createdBy: number; // 创建人
- updatedBy: number; // 更新人
- createdAt: Record<string, unknown>; // 创建时间
- updatedAt: Record<string, unknown>; // 更新时间
- tenantId: number; // 租户ID
- // 相机信息
- children: CameraInTree[];
- }[];
- }[];
- }
- export interface CameraInTree { "data": [
- {
- "dataTime": "",
- "minTemperature": "",
- "maxTemperature": "",
- "minWindVelocity": 0,
- "maxWindVelocity": 0,
- "avgWindVelocity": 0
- }
- ]
- networkingState: number; // 联网状态: 0-启用, 1-禁用
- integrationState: number; // 接入状态: 0-启用, 1-禁用
- render: string; // 渲染选择,无渲染/某个算法
- version: number; // 版本
- extra: string; // 扩展数据
- pushStreamDTO: {
- videoUrls: {
- pushstreamIp: string; // 推流地址(前端播放的地址)
- pushstreamRenderUrl: string; // 渲染推流地址(前端播放的渲染地址)
- m3u8PushstreamIp: string; // ios推流地址(前端播放的地址)
- m3u8PushstreamRenderIp: string; // ios推流地址(前端播放的地址)
- pushstreamIpAbs: string; // 推流地址(前端播放的地址)
- pushstreamRenderUrlAbs: string; // 渲染推流地址(前端播放的渲染地址)
- m3u8PushstreamIpAbs: string; // ios推流地址(前端播放的地址)
- m3u8PushstreamRenderIpAbs: string; // ios推流地址(前端播放的地址)
- };
- imageUrl: string; // 摄像头实时记录的画面
- };
- id: number; // 自增主键
- workshopId: number; // 车间id
- workspaceId: number; // 工位id
- name: string; // 相机名称
- code: string; // 相机编号
- cameraIp: string; // 相机IP
- cameraPort: string; // 相机端口
- cameraType: string; // 相机类型: haikang/dahua/anxus/huawei
- remark: string; // 描述
- sourceType: string; // 添加方式: IP,NVR,RTSP
- rtspUrl: string; // rtsp地址
- nvrId: number; // NVR id
- nvrChannel: string; // NVR通道号
- videoStandard: string; // 视频编码标准,H264, H265
- videoServiceType: string; // 视频服务类型,TCP, UDP, AUTO
- isDisabled: number; // 状态: 0-启用, 1-禁用
- nodeType: string; // 节点类型
- }
- export const getCameraTreeList = () => {
- return http.request({
- url: '/camera/queryAllOwnedCameraTree',
- method: 'get',
- });
- };
- /**
- * @description: 重点监测区域:批量编辑分组内相机
- */
- export const updateCameraToOverviewGroup = (params: { groupId: number | undefined; cameraIdList: number[] }) => {
- return http.request({
- url: '/cameraGroup/updateCameraInGroup',
- method: 'post',
- params,
- });
- };
- /**
- * @description: 获取实时天气数据
- */
- export interface RealTimeWeatherDataRes {
- time: string; // 时间
- temperature: string; // 温度℃
- windVelocity: number; // 风速m/s * 3.6 = km/h
- }
- export const getRealTimeWeatherData = () => {
- return http.request<RealTimeWeatherDataRes>({
- url: '/weatherData/queryWeatherData',
- method: 'get',
- });
- };
- /**
- * @description: 获取历史气温数据
- */
- export interface HistoryTemperatureInfo{
- dataTime : string;
- minTemperature : string;
- maxTemperature : string;
- minWindVelocity : number;
- maxWindVelocity : number;
- avgWindVelocity : number;
- }
- export const getHistoryTemperatureList = ()=>{
- return http.request<HistoryTemperatureInfo[]>({
- url: '/weatherData/queryRecentYearWeatherData',
- method: 'get',
- });
-
- }
- /**
- * @description: 获取一年高温天气天数
- */
- export const getHighTemperatureDays = ()=>{
- return http.request<number>({
- url: '/weatherData/countHotDaysInYear',
- method: 'get',
- });
- }
-
- /**
- * @description: 获取当日发布的灾害预警信息列表
- */
- export interface TodayDisasterWarnInfoType {
- id: number; // 自增主键
- disasterType: string; // 灾害类型
- disasterLevel: string; // 灾害等级
- warnTime: string; // 预警时间
- source: string; // 信息来源
- content: string; // 发布内容
- effectState: number; // 生效状态:1-未生效,2-生效
- createSource: number; // 创建来源:1-人工创建 2-接口数据获取
- isPush: number; // 是否推送:0-不推送 1-推送
- pushTime: string; // 发布时间
- userGroupList: string; // 用户分组列表
- createdBy: number; // 创建人
- createdAt: string; // 创建时间
- updatedAt: string; // 更新时间
- isDeleted: number; // 0-未删除,大于0(时间戳)-已删除
- tenantId: number; // 租户id
- }
- export const getTodayDisasterWarnInfoList = () => {
- return http.request<TodayDisasterWarnInfoType[]>({
- url: '/disasterWarn/queryTodayDisasterWarnInfoList',
- method: 'get',
- });
- };
- /**
- * @description: 查询安全态势应急管理统计
- */
- export interface DisasterPreventionInfoRes {
- monthDisasterCount: number; // 本月气象灾害预警数
- preventiveInspectRatio: string; // 预防检查覆盖
- }
- export const getDisasterPreventionInfo = () => {
- return http.request<DisasterPreventionInfoRes>({
- url: '/overview/queryDisasterPreventionStatistics',
- method: 'get',
- });
- };
|