forked from Yara724/api
Added expert field mirror flow
This commit is contained in:
45
src/request-management/dto/party-otp.dto.ts
Normal file
45
src/request-management/dto/party-otp.dto.ts
Normal file
@@ -0,0 +1,45 @@
|
||||
import { ApiProperty, ApiPropertyOptional } from "@nestjs/swagger";
|
||||
import { IsIn, IsNotEmpty, IsOptional, IsString } from "class-validator";
|
||||
|
||||
/**
|
||||
* One-at-a-time OTP send for the expert-initiated IN_PERSON flow.
|
||||
* The expert sends an OTP to a single party's phone, collects the code, then
|
||||
* verifies. Repeat for the second party (no invite link is used).
|
||||
*/
|
||||
export class SendPartyOtpDto {
|
||||
@ApiProperty({
|
||||
description: "Phone number of the party to send the OTP to.",
|
||||
example: "09123456789",
|
||||
})
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
phoneNumber: string;
|
||||
}
|
||||
|
||||
export class VerifyPartyOtpDto {
|
||||
@ApiProperty({
|
||||
description: "Phone number the OTP was sent to.",
|
||||
example: "09123456789",
|
||||
})
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
phoneNumber: string;
|
||||
|
||||
@ApiProperty({
|
||||
description: "OTP code collected from the party.",
|
||||
example: "123456",
|
||||
})
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
otp: string;
|
||||
|
||||
@ApiPropertyOptional({
|
||||
description:
|
||||
"Which party this phone belongs to. Optional: when omitted, FIRST is bound if it has no user yet, otherwise SECOND (created if missing).",
|
||||
enum: ["FIRST", "SECOND"],
|
||||
example: "FIRST",
|
||||
})
|
||||
@IsOptional()
|
||||
@IsIn(["FIRST", "SECOND"])
|
||||
partyRole?: "FIRST" | "SECOND";
|
||||
}
|
||||
Reference in New Issue
Block a user