|
|
import { createCURD } from '@/service/base.ts' import { WebSite } from '@/types' import request from '@/request.ts' import { IWebsiteDomain, INameServer } from '@/types/website/domain' import { IWebsiteDnsRecords } from '@/types/website/record' import { IWebsiteDnsAccount } from '@/types/website/dns_account'
const websitesServ = { ssl: { ...createCURD<any, WebSite.ISSL>('/website/ssl'), upload: async (params: WebSite.SSLUploadDto) => { return request.post<any, WebSite.SSLUploadDto>('/website/ssl/upload', params) }, download: async (params: any) => { return request.download('/website/ssl/download', params) }, }, acme: { ...createCURD<any, WebSite.IAcmeAccount>('/website/acme') }, dns: { ...createCURD<any, WebSite.IDnsAccount>('/website/dns_account'), sync: async (id: any) => { return request.post<any, WebSite.IDnsAccount>('/website/dns_account/sync', { id: id }) } }, ca: { ...createCURD<any, WebSite.ICA>('/website/ca'), obtainSsl: async (params: WebSite.ISSLObtainByCA) => { return request.post<any, WebSite.ISSLObtainByCA>('/website/ca/obtain_ssl', params) }, }, domain: { ...createCURD<any, IWebsiteDomain>('/website/domain'), //remark
remark: async (params: { id: string, remark: string }) => { return request.post<any, any>('/website/domain/remark', params) }, //tag
tag: async (params: { id: string, tags: string}) => { return request.post<any, any>('/website/domain/tag', params) }, //binding
binding: async (params: { id:string , user_id: string }) => { return request.post<any, any>('/website/domain/binding', params) }, //group
group: async (params: { id: string[], group_id: string }) => { return request.post<any, any>('/website/domain/group', params) }, describeDomainNS: async (params: { id: number }) => { return request.post<INameServer, any>('/website/domain/describe_domain_ns', params) },
}, record: { ...createCURD<any, IWebsiteDnsRecords>('/website/dns_records'), //
}, dnsAccount: { ...createCURD<any, IWebsiteDnsAccount>('/website/dns_account'), sync: async (params: IWebsiteDnsAccount) => { return request.post<any, IWebsiteDnsAccount>('/website/dns_account/sync', params) } }, }
export default websitesServ
|