update: add new field for subscription of user when purchased
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { ApiProperty } from "@nestjs/swagger";
|
||||
import { IsNotEmpty, IsOptional, IsString } from "class-validator";
|
||||
import { IsNotEmpty, IsOptional, IsString, IsUrl } from "class-validator";
|
||||
|
||||
import { CriticismMessage } from "../../../common/enums/message.enum";
|
||||
|
||||
@@ -15,8 +15,8 @@ export class CreateCriticismDto {
|
||||
content: string;
|
||||
|
||||
@IsOptional()
|
||||
@IsNotEmpty()
|
||||
@IsString({ each: true })
|
||||
@IsNotEmpty({ message: CriticismMessage.FILES_IS_REQUIRED })
|
||||
@IsUrl({ protocols: ["http", "https"], require_protocol: true }, { message: CriticismMessage.FILES_SHOULD_BE_URL, each: true })
|
||||
@ApiProperty({
|
||||
description: "The ulr of the criticism files",
|
||||
example: ["https://example.com/image1.png", "https://example.com/image2.png"],
|
||||
|
||||
@@ -8,7 +8,6 @@ import { AuthGuards } from "../../common/decorators/auth-guard.decorator";
|
||||
import { PermissionsDec } from "../../common/decorators/permission.decorator";
|
||||
import { UserDec } from "../../common/decorators/user.decorator";
|
||||
import { ParamDto } from "../../common/DTO/param.dto";
|
||||
import { User } from "../users/entities/user.entity";
|
||||
import { PermissionEnum } from "../users/enums/permission.enum";
|
||||
|
||||
@Controller("criticisms")
|
||||
@@ -19,8 +18,8 @@ export class CriticismController {
|
||||
@AuthGuards()
|
||||
@ApiOperation({ summary: "Create a new criticism" })
|
||||
@Post()
|
||||
create(@Body() createDto: CreateCriticismDto, @UserDec() user: User) {
|
||||
return this.criticismService.create(createDto, user.id);
|
||||
create(@Body() createDto: CreateCriticismDto, @UserDec("id") userId: string) {
|
||||
return this.criticismService.create(createDto, userId);
|
||||
}
|
||||
|
||||
@AuthGuards()
|
||||
|
||||
@@ -16,9 +16,10 @@ export class CriticismsService {
|
||||
|
||||
async create(createDto: CreateCriticismDto, userId: string) {
|
||||
const { user } = await this.usersService.findOneById(userId);
|
||||
const files = createDto.files.map((file) => {
|
||||
return { fileUrl: file };
|
||||
});
|
||||
const files =
|
||||
createDto.files?.map((file) => {
|
||||
return { fileUrl: file };
|
||||
}) || [];
|
||||
const criticism = this.criticismRepository.create({
|
||||
...createDto,
|
||||
user,
|
||||
|
||||
Reference in New Issue
Block a user