55 lines
1.3 KiB
TypeScript
55 lines
1.3 KiB
TypeScript
import { Field } from '@nestjs/graphql';
|
|
import { ObjectType } from '@nestjs/graphql';
|
|
import { ID } from '@nestjs/graphql';
|
|
import { Int } from '@nestjs/graphql';
|
|
import { User } from '../user/user.model';
|
|
import { Person } from '../person/person.model';
|
|
import { Workspace } from '../workspace/workspace.model';
|
|
import { CompanyCount } from './company-count.output';
|
|
|
|
@ObjectType()
|
|
export class Company {
|
|
|
|
@Field(() => ID, {nullable:false})
|
|
id!: string;
|
|
|
|
@Field(() => Date, {nullable:false})
|
|
createdAt!: Date;
|
|
|
|
@Field(() => Date, {nullable:false})
|
|
updatedAt!: Date;
|
|
|
|
@Field(() => Date, {nullable:true})
|
|
deletedAt!: Date | null;
|
|
|
|
@Field(() => String, {nullable:false})
|
|
name!: string;
|
|
|
|
@Field(() => String, {nullable:false})
|
|
domainName!: string;
|
|
|
|
@Field(() => String, {nullable:false})
|
|
address!: string;
|
|
|
|
@Field(() => Int, {nullable:true})
|
|
employees!: number | null;
|
|
|
|
@Field(() => String, {nullable:true})
|
|
accountOwnerId!: string | null;
|
|
|
|
@Field(() => String, {nullable:false})
|
|
workspaceId!: string;
|
|
|
|
@Field(() => User, {nullable:true})
|
|
accountOwner?: User | null;
|
|
|
|
@Field(() => [Person], {nullable:true})
|
|
people?: Array<Person>;
|
|
|
|
@Field(() => Workspace, {nullable:false})
|
|
workspace?: Workspace;
|
|
|
|
@Field(() => CompanyCount, {nullable:false})
|
|
_count?: CompanyCount;
|
|
}
|