material.ts 917 Bytes
import { AnyObject, QueryForParams, ServiceResponse } from '@/types/global';
import { Banner } from '@/utils/model';
import axios from 'axios';

export default class useMaterialApi {
  static typeOption = [
    { value: 1, label: '用户主页背景' },
    { value: 2, label: '厂牌主页背景' },
    { value: 3, label: '音视频封面' },
  ];

  static get(params?: QueryForParams): Promise<ServiceResponse> {
    return axios.get('system/materials', { params });
  }

  static async create(data: AnyObject) {
    return axios.post(`system/materials`, data).then((res) => Promise.resolve(res.data));
  }

  static async update(id: number, data: AnyObject): Promise<Banner> {
    return axios.put(`system/materials/${id}`, data).then((res) => Promise.resolve(res.data));
  }

  static async destroy(id: number) {
    return axios.delete(`system/materials/${id}`).then((res) => Promise.resolve(res.data));
  }
}