chore: add crude for admin

This commit is contained in:
mahyargdz
2025-04-22 12:28:11 +03:30
parent 368ab0b40a
commit 5ef5edc44b
41 changed files with 2996 additions and 2378 deletions
+1 -1
View File
@@ -3,7 +3,7 @@ import { IsBoolean, IsNotEmpty, IsString, IsUrl, MaxLength } from "class-validat
import { BlogMessage } from "../../../common/enums/message.enum";
export class CreateCategoryDto {
export class CreateBlogCategoryDto {
@IsNotEmpty({ message: BlogMessage.TITLE_REQUIRED })
@IsString({ message: BlogMessage.TITLE_STRING })
@MaxLength(100, { message: BlogMessage.TITLE_MAX_LENGTH })
+2 -2
View File
@@ -1,5 +1,5 @@
import { PartialType } from "@nestjs/swagger";
import { CreateCategoryDto } from "./create-category.dto";
import { CreateBlogCategoryDto } from "./create-category.dto";
export class UpdateCategoryDto extends PartialType(CreateCategoryDto) {}
export class UpdateBlogCategoryDto extends PartialType(CreateBlogCategoryDto) {}
@@ -11,12 +11,12 @@ import { ParamDto } from "../../../common/DTO/param.dto";
import { CategoryListSearchQueryDto } from "../../danak-services/DTO/category-search-query.dto";
import { PermissionEnum } from "../../users/enums/permission.enum";
import { CreateBlogDto } from "../DTO/create-blog.dto";
import { CreateCategoryDto } from "../DTO/create-category.dto";
import { CreateBlogCategoryDto } from "../DTO/create-category.dto";
import { CreateCommentDto } from "../DTO/create-comment.dto";
import { BlogSlugDto } from "../DTO/get-blog-by-slug.dto";
import { BlogListSearchQueryDto, BlogSearchQueryDto } from "../DTO/search-blog-query.dto";
import { UpdateBlogDto } from "../DTO/update-blog.dto";
import { UpdateCategoryDto } from "../DTO/update-category.dto";
import { UpdateBlogCategoryDto } from "../DTO/update-category.dto";
import { UpdateCommentStatusDto } from "../DTO/update-comment-status.dto";
import { BlogsService } from "../providers/blogs.service";
@@ -165,7 +165,7 @@ export class BlogsController {
@Post("categories")
@AdminRoute()
@PermissionsDec(PermissionEnum.BLOGS)
createCategory(@Body() createCategoryDto: CreateCategoryDto) {
createCategory(@Body() createCategoryDto: CreateBlogCategoryDto) {
return this.blogsService.createCategory(createCategoryDto);
}
@@ -173,7 +173,7 @@ export class BlogsController {
@Patch("categories/:id")
@AdminRoute()
@PermissionsDec(PermissionEnum.BLOGS)
updateCategory(@Param() paramDto: ParamDto, @Body() updateCategoryDto: UpdateCategoryDto) {
updateCategory(@Param() paramDto: ParamDto, @Body() updateCategoryDto: UpdateBlogCategoryDto) {
return this.blogsService.updateCategory(paramDto.id, updateCategoryDto);
}
+4 -4
View File
@@ -5,11 +5,11 @@ import { BlogMessage, CommonMessage } from "../../../common/enums/message.enum";
import { CategoryListSearchQueryDto } from "../../danak-services/DTO/category-search-query.dto";
import { UsersService } from "../../users/providers/users.service";
import { CreateBlogDto } from "../DTO/create-blog.dto";
import { CreateCategoryDto } from "../DTO/create-category.dto";
import { CreateBlogCategoryDto } from "../DTO/create-category.dto";
import { CreateCommentDto } from "../DTO/create-comment.dto";
import { BlogListSearchQueryDto, BlogSearchQueryDto } from "../DTO/search-blog-query.dto";
import { UpdateBlogDto } from "../DTO/update-blog.dto";
import { UpdateCategoryDto } from "../DTO/update-category.dto";
import { UpdateBlogCategoryDto } from "../DTO/update-category.dto";
import { UpdateCommentStatusDto } from "../DTO/update-comment-status.dto";
import { CommentStatus } from "../enums/comment-status.enum";
import { BlogCategoriesRepository } from "../repositories/blog-categories.repository";
@@ -25,7 +25,7 @@ export class BlogsService {
) {}
//*********************************** */
async createCategory(createCategoryDto: CreateCategoryDto) {
async createCategory(createCategoryDto: CreateBlogCategoryDto) {
const existingCategory = await this.blogCategoriesRepository.findOneBy({ title: createCategoryDto.title });
if (existingCategory) throw new BadRequestException(BlogMessage.CATEGORY_ALREADY_EXISTS);
@@ -38,7 +38,7 @@ export class BlogsService {
}
//*********************************** */
async updateCategory(id: string, updateCategoryDto: UpdateCategoryDto) {
async updateCategory(id: string, updateCategoryDto: UpdateBlogCategoryDto) {
const category = await this.findCategoryById(id);
if (updateCategoryDto.title) {
@@ -4,7 +4,7 @@ import { IsNull, Repository } from "typeorm";
import { CategoryListSearchQueryDto } from "../../danak-services/DTO/category-search-query.dto";
import { PaginationUtils } from "../../utils/providers/pagination.utils";
import { CreateCategoryDto } from "../DTO/create-category.dto";
import { CreateBlogCategoryDto } from "../DTO/create-category.dto";
import { BlogCategory } from "../entities/blog-category.entity";
@Injectable()
@@ -44,7 +44,7 @@ export class BlogCategoriesRepository extends Repository<BlogCategory> {
return query.getManyAndCount();
}
async createCategory(createBlogCategoryDto: CreateCategoryDto) {
async createCategory(createBlogCategoryDto: CreateBlogCategoryDto) {
const { title, description, iconUrl, isActive } = createBlogCategoryDto;
const blogCategory = this.create({ title, description, iconUrl, isActive });