content.ts 1.94 KB
import { defHttp } from '@/utils/external/http/axios'
import { BaseSaveContentParams, BaseUpdateContentParams } from './model/contentModel'

import type { ErrorMessageMode } from '/#/external/axios'

enum Api {
  //大屏设计器
  DATA_VIEW_CONTENT = '/data_view/content',
  //大屏内容
  DATA_VIEW = '/data_view',
  FILE_UPLOAD = '/oss/upload'
}

/**
 * @description: 大屏设计器 update api
 */
export function contentUpdateApi(params: BaseUpdateContentParams, mode: ErrorMessageMode = 'modal') {
  return defHttp.put<BaseUpdateContentParams>(
    {
      url: Api.DATA_VIEW_CONTENT,
      params
    },
    {
      errorMessageMode: mode
    }
  )
}

/**
 * @description: 大屏设计器 save api
 */
export function contentSaveApi(params: object, mode: ErrorMessageMode = 'modal') {
  return defHttp.post<BaseSaveContentParams>(
    {
      url: Api.DATA_VIEW_CONTENT,
      params
    },
    {
      errorMessageMode: mode
    }
  )
}

/**
 * @description: 大屏设计器 delete api
 */
export function contentDeleteApi(data: [string], mode: ErrorMessageMode = 'modal') {
  return defHttp.delete(
    {
      url: Api.DATA_VIEW_CONTENT,
      data
    },
    {
      errorMessageMode: mode
    }
  )
}

/**
 * @description:大屏内容 content get api
 */

export const getDataView = (id: string) => {
  return defHttp.get({
    url: `${Api.DATA_VIEW}/get_configuration_info/${id}`
  })
}

/**
 * @description:  大屏内容 get api
 */

export const getDataViewList = (params: object) => {
  return defHttp.get({
    url: `${Api.DATA_VIEW}`,
    params
  })
}
/**
 * @description:  大屏内容 保存 api
 */

export const saveDataViewList = (data: object) => {
  return defHttp.put({
    url: `${Api.DATA_VIEW}`,
    data
  })
}

/**
 * @description: file Upload
 */
export const uploadFile = async (file: FormData, mode: ErrorMessageMode = 'modal') => {
  return defHttp.post(
    { url: Api.FILE_UPLOAD, params: file },
    {
      errorMessageMode: mode
    }
  )
}