add extra validation for rent

This commit is contained in:
2026-03-16 09:48:16 +03:30
parent cec2d85801
commit 76a0862264
3 changed files with 15 additions and 0 deletions
+2
View File
@@ -530,6 +530,8 @@ export const enum IndustryMessage {
}
export const enum CompanyMessage {
RENT_CONTRACT_IMAGE_IS_REQUIRED="تصویر اجاره نامه الزامی است",
RENT_END_IS_REQUIRED="تاریخ پایان قرارداد الزامی است",
ADDRESS_MUST_BE_STRING = "آدرس شرکت باید یک رشته باشد",
ADDRESS_REQUIRED = "آدرس شرکت مورد نیاز است",
CHIEF_EXECUTIVE_MUST_BE_STRING = "نام مدیرعامل باید یک رشته باشد",
@@ -141,6 +141,9 @@ export class CreateCompanyRequestDto extends PickType(CreateCompanyDto, [
"products",
"services",
"metrage",
"isRented",
"rentContractImages",
"rentEndAt"
]) {
@IsNotEmpty({ message: CompanyMessage.CHIEF_EXECUTIVE_REQUIRED })
@IsString({ message: CompanyMessage.CHIEF_EXECUTIVE_MUST_BE_STRING })
@@ -413,6 +413,16 @@ export class CompaniesService {
//-----------------------------------
private async createCompany(createDto: CreateCompanyDto | CreateCompanyRequestDto, user: User, business: Business, em: EntityManager) {
if (createDto.isRented) {
if (!createDto.rentEndAt) {
throw new BadRequestException(CompanyMessage.RENT_END_IS_REQUIRED)
}
if (!createDto.rentContractImages?.length) {
throw new BadRequestException(CompanyMessage.RENT_CONTRACT_IMAGE_IS_REQUIRED)
}
}
const industry = await em.findOne(Industry, { id: createDto.industryId, deletedAt: null });
if (!industry) throw new BadRequestException(IndustryMessage.INDUSTRY_NOT_FOUND);