chore: add company request

This commit is contained in:
Mahyargdz
2025-05-19 14:22:41 +03:30
parent 7d0abbeac0
commit f755a3343a
27 changed files with 480 additions and 105 deletions
@@ -6,6 +6,7 @@ import {
IsBoolean,
IsDateString,
IsEmail,
IsEnum,
IsNotEmpty,
IsOptional,
IsString,
@@ -19,6 +20,7 @@ import { CreateCompanyProductDto } from "./create-company-product.dto";
import { CreateCompanyServiceDto } from "./create-company-service.dto";
import { CompanyMessage } from "../../../common/enums/message.enum";
import { CompleteRegistrationDto } from "../../auth/DTO/complete-register.dto";
import { CompanyRequestStatus } from "../enums/company-request-status.enum";
export class CreateCompanyDto extends PickType(CompleteRegistrationDto, ["phone", "firstName", "lastName", "password", "nationalCode"]) {
@IsNotEmpty({ message: CompanyMessage.NAME_REQUIRED })
@@ -99,3 +101,36 @@ export class CreateCompanyDto extends PickType(CompleteRegistrationDto, ["phone"
@ApiProperty({ description: "خدمات شرکت", type: [CreateCompanyServiceDto], required: false })
services: CreateCompanyServiceDto[];
}
export class CreateCompanyRequestDto extends PickType(CreateCompanyDto, [
"name",
"email",
"phone",
"identificationNumber",
"dateOfEstablishment",
"address",
"mapAddressLink",
"description",
"websiteUrl",
"profileImageUrl",
"coverImageUrl",
"industryId",
"products",
"services",
]) {
@IsNotEmpty({ message: CompanyMessage.CHIEF_EXECUTIVE_REQUIRED })
@IsString({ message: CompanyMessage.CHIEF_EXECUTIVE_MUST_BE_STRING })
@Length(3, 255, { message: CompanyMessage.CHIEF_EXECUTIVE_MUST_BE_STRING })
@ApiProperty({ description: "نام مدیر عامل", example: "محمد حسین حسینی" })
chiefExecutiveOfficer: string;
}
export class ApproveCompanyRequestDto {
@IsNotEmpty({ message: CompanyMessage.COMPANY_REQUEST_STATUS_REQUIRED })
@IsEnum(CompanyRequestStatus)
@ApiProperty({ enum: CompanyRequestStatus, description: "وضعیت درخواست" })
requestStatus: CompanyRequestStatus;
@ApiProperty({ required: false, description: "دلیل رد درخواست" })
rejectReason?: string;
}