diff --git a/packages/ui/certd-server/src/modules/cert/entity/domain.ts b/packages/ui/certd-server/src/modules/cert/entity/domain.ts new file mode 100644 index 00000000..5bfb8b5b --- /dev/null +++ b/packages/ui/certd-server/src/modules/cert/entity/domain.ts @@ -0,0 +1,50 @@ +import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm'; +/** + * 域名管理 + */ +@Entity('cd_domain') +export class DomainEntity { + @PrimaryGeneratedColumn() + id: number; + + @Column({ comment: '用户ID', name: 'user_id' }) + userId: number; + + @Column({ comment: '主域名', length: 100 }) + domain: string; + + @Column({ comment: '校验类型', name: 'challenge_type', length: 100 }) + challengeType : string; + + @Column({ comment: 'DNS提供商', name: 'dns_provider_type', length: 100 }) + dnsProviderType: string; + + @Column({ comment: 'DNS提供商授权', name: 'dns_provider_access', length: 200 }) + dnsProviderAccess: number; + + @Column({ comment: '是否禁用', name: 'disabled' }) + disabled: boolean; + + + @Column({ comment: 'http上传类型', name: 'http_uploader_type', length: 200 }) + httpUploaderType: string; + + @Column({ comment: 'http上传授权', name: 'http_uploader_access', length: 200 }) + httpUploaderAccess: number; + + @Column({ comment: 'http上传根目录', name: 'http_upload_root_dir', length: 200 }) + httpUploadRootDir: string; + + @Column({ + comment: '创建时间', + name: 'create_time', + default: () => 'CURRENT_TIMESTAMP', + }) + createTime: Date; + @Column({ + comment: '修改时间', + name: 'update_time', + default: () => 'CURRENT_TIMESTAMP', + }) + updateTime: Date; +} diff --git a/packages/ui/certd-server/src/modules/cert/service/domain-service.ts b/packages/ui/certd-server/src/modules/cert/service/domain-service.ts new file mode 100644 index 00000000..f6f6bbce --- /dev/null +++ b/packages/ui/certd-server/src/modules/cert/service/domain-service.ts @@ -0,0 +1,25 @@ +import {Inject, Provide, Scope, ScopeEnum} from '@midwayjs/core'; +import {InjectEntityModel} from '@midwayjs/typeorm'; +import {Repository} from 'typeorm'; +import {AccessService, BaseService} from '@certd/lib-server'; +import {DomainEntity} from '../entity/domain.js'; + + +/** + * + */ +@Provide() +@Scope(ScopeEnum.Request, {allowDowngrade: true}) +export class DomainService extends BaseService { + @InjectEntityModel(DomainEntity) + repository: Repository; + + @Inject() + accessService: AccessService; + + //@ts-ignore + getRepository() { + return this.repository; + } + +}