mirror of
https://github.com/certd/certd.git
synced 2026-05-16 21:27:34 +08:00
fix: cnameProvider域名支持设置子域名托管
This commit is contained in:
@@ -1,22 +1,30 @@
|
||||
import { ISubDomainsGetter } from "@certd/plugin-cert";
|
||||
import { SubDomainService } from "../sub-domain-service.js";
|
||||
import { DomainService } from "../../../cert/service/domain-service.js";
|
||||
import { CnameProviderService } from "../../../cname/service/cname-provider-service.js";
|
||||
|
||||
export class SubDomainsGetter implements ISubDomainsGetter {
|
||||
userId: number;
|
||||
projectId: number;
|
||||
subDomainService: SubDomainService;
|
||||
domainService: DomainService;
|
||||
cnameProviderService: CnameProviderService;
|
||||
|
||||
constructor(userId: number, projectId: number, subDomainService: SubDomainService, domainService: DomainService) {
|
||||
constructor(userId: number, projectId: number, subDomainService: SubDomainService, domainService: DomainService, cnameProviderService: CnameProviderService) {
|
||||
this.userId = userId;
|
||||
this.projectId = projectId;
|
||||
this.subDomainService = subDomainService;
|
||||
this.domainService = domainService;
|
||||
this.cnameProviderService = cnameProviderService;
|
||||
}
|
||||
|
||||
async getSubDomains() {
|
||||
return await this.subDomainService.getListByUserId(this.userId, this.projectId)
|
||||
const projectSubDomains = await this.subDomainService.getListByUserId(this.userId, this.projectId) || [];
|
||||
const cnameProviderSubDomains = await this.cnameProviderService.getSubDomains();
|
||||
return [...projectSubDomains, ...cnameProviderSubDomains]
|
||||
.map(item => item?.trim())
|
||||
.filter((item): item is string => !!item)
|
||||
.sort((a, b) => b.length - a.length);
|
||||
}
|
||||
|
||||
async hasSubDomain(fullDomain: string) {
|
||||
|
||||
Reference in New Issue
Block a user