| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- // API List
- // /sitesMonitor/manage/nameList - GET
- // /sitesMonitor/manage/config/{name} - GET & POST & DELETE
- // /sitesMonitor/manage/pageConfig/{name} - POST
- // /sitesMonitor/manage/config - GET & POST
- // /sitesMonitor/site/infoList - POST 批量获取站点信息表
- // /sitesMonitor/site/{site}/info - GET 获取单个站点信息
- // /sitesMonitor/site/{site}/modeInfo - GET 获取站点工作模式信息
- // /sitesMonitor/site/{site}/powerFlow/{day} - GET 获取单个站点功率流
- // /sitesMonitor/site/{site}/alarmList - GET 获取单个站点告警列表
- import http from '@/service/serverReq'
- import type {
- ApiMonitorInfo,
- MonitorPageConfig,
- SiteInfoResponse,
- SiteModeInfoResponse,
- SitePowerFlowResponse,
- SiteAlarmListResponse,
- } from './interface'
- import { TaskQueue } from '@/service/taskQueue'
- const API_List = {
- manageList: '/sitesMonitor/manage/nameList',
- manageConfigAndName: '/sitesMonitor/manage/config/{name}',
- managePageConfig: '/sitesMonitor/manage/pageConfig/{name}',
- manageConfig: '/sitesMonitor/manage/config',
- siteInfoList: '/sitesMonitor/site/infoList',
- siteInfo: '/sitesMonitor/site/{site}/info',
- siteModeInfo: '/sitesMonitor/site/{site}/modeInfo',
- sitePowerFlow: '/sitesMonitor/site/{site}/powerFlow/{day}',
- siteAlarmList: '/sitesMonitor/site/{site}/alarmList',
- }
- // GET 监控管理表
- export const getManageList = async (): Promise<string[]> => {
- const res = await http.get<string[]>(API_List.manageList)
- return res
- }
- // GET 监控管理表配置
- export const getManageConfig = async (name: string): Promise<ApiMonitorInfo> => {
- const url = API_List.manageConfigAndName.replace('{name}', encodeURIComponent(name))
- const res = await http.get<ApiMonitorInfo>(url)
- return res
- }
- // POST 监控管理表配置
- export const updateManageConfig = async (name: string, data: ApiMonitorInfo) => {
- const url = API_List.manageConfigAndName.replace('{name}', encodeURIComponent(name))
- const res = await http.post(url, data)
- }
- // POST 监控管理表配置
- export const updateManagePageConfig = async (name: string, data: MonitorPageConfig) => {
- const url = API_List.managePageConfig.replace('{name}', encodeURIComponent(name))
- const res = await http.post(url, data)
- }
- // POST 监控管理表配置
- export const createManageConfig = async (data: ApiMonitorInfo) => {
- const url = API_List.manageConfig
- const res = await http.post(url, data)
- }
- // DELETE 监控管理表配置
- export const deleteManageConfig = async (name: string) => {
- const url = API_List.manageConfigAndName.replace('{name}', encodeURIComponent(name))
- const res = await http.delete(url)
- }
- // POST 批量获取站点信息表
- export const getSiteInfoList = async (siteList: string[], pageSize: number, pageNum: number) => {
- const url = API_List.siteInfoList
- const res = await http.post<SiteInfoResponse>(url, {
- siteList,
- pageSize,
- pageNum,
- })
- if (res.code === 0 || res.code === 200) {
- return res.result
- }
- }
- const siteInfoQueue = new TaskQueue(1) // 队列最大执行数为1
- // GET 获取单个站点信息
- export const getSiteInfo = async (sn: string) => {
- const url = API_List.siteInfo.replace('{site}', encodeURIComponent(sn))
- const res = await http.get<SiteInfoResponse>(url, { queue: siteInfoQueue, key: `${sn}` })
- if (res.code === 0 || res.code === 200) {
- return res.result
- }
- }
- const siteModeInfoQueue = new TaskQueue(1) // 队列最大执行数为1
- // GET 获取站点工作模式信息
- export const getSiteModeInfo = async (sn: string) => {
- const url = API_List.siteModeInfo.replace('{site}', encodeURIComponent(sn))
- const res = await http.get<SiteModeInfoResponse>(url, { queue: siteModeInfoQueue, key: `${sn}` })
- if (res.code === 0 || res.code === 200) {
- return res.result
- }
- }
- const sitePowerQueue = new TaskQueue(1) // 队列最大执行数为1
- // GET 获取单个站点功率流
- export const getSitePowerFlow = async (sn: string, day: string) => {
- const url = API_List.sitePowerFlow
- .replace('{site}', encodeURIComponent(sn))
- .replace('{day}', encodeURIComponent(day))
- const res = await http.get<SitePowerFlowResponse>(url, {
- queue: sitePowerQueue,
- key: `${sn}-${day}`,
- })
- console.log(res)
- if (res.code === 0 || res.code === 200) {
- return res.result
- }
- }
- const siteAlarmQueue = new TaskQueue(1) // 队列最大执行数为1
- // GET 获取单个站点功率流
- export const getSiteAlarmList = async (sn: string) => {
- const url = API_List.siteAlarmList.replace('{site}', encodeURIComponent(sn))
- const res = await http.get<SiteAlarmListResponse>(url, {
- queue: siteAlarmQueue,
- key: `${sn}`,
- })
- console.log(res)
- if (res.code === 0 || res.code === 200) {
- return res.result
- }
- }
- export const clearSitesMonitorQueue = () => {
- siteInfoQueue.clear()
- siteModeInfoQueue.clear()
- sitePowerQueue.clear()
- siteAlarmQueue.clear()
- }
- export const clearSitesMonitorQueueCache = () => {
- siteInfoQueue.clearCache()
- siteModeInfoQueue.clearCache()
- sitePowerQueue.clearCache()
- siteAlarmQueue.clearCache()
- }
|