30 lines
830 B
TypeScript
30 lines
830 B
TypeScript
import { Injectable } from '@nestjs/common';
|
|
import { UserAccount } from './user-account.aggregate';
|
|
import { AccountSequence, PhoneNumber, ProvinceCode, CityCode } from '@/domain/value-objects';
|
|
|
|
@Injectable()
|
|
export class UserAccountFactory {
|
|
createAutomatic(params: {
|
|
accountSequence: AccountSequence;
|
|
initialDeviceId: string;
|
|
deviceName?: string;
|
|
inviterSequence: AccountSequence | null;
|
|
province: ProvinceCode;
|
|
city: CityCode;
|
|
}): UserAccount {
|
|
return UserAccount.createAutomatic(params);
|
|
}
|
|
|
|
create(params: {
|
|
accountSequence: AccountSequence;
|
|
phoneNumber: PhoneNumber;
|
|
initialDeviceId: string;
|
|
deviceName?: string;
|
|
inviterSequence: AccountSequence | null;
|
|
province: ProvinceCode;
|
|
city: CityCode;
|
|
}): UserAccount {
|
|
return UserAccount.create(params);
|
|
}
|
|
}
|