tag chang to patch delete

This commit is contained in:
liuyi 2025-05-31 19:02:53 +08:00
parent b7bb509b70
commit 87aba1d0eb
3 changed files with 13 additions and 7 deletions

View File

@ -11,6 +11,8 @@ import {
SerializeOptions, SerializeOptions,
} from '@nestjs/common'; } from '@nestjs/common';
import { DeleteDto } from '@/modules/content/dtos/delete.dto';
import { CreateTagDto, QueryTagDto, UpdateTagDto } from '../dtos/tag.dto'; import { CreateTagDto, QueryTagDto, UpdateTagDto } from '../dtos/tag.dto';
import { TagService } from '../services'; import { TagService } from '../services';
@ -51,9 +53,9 @@ export class TagController {
return this.service.update(date); return this.service.update(date);
} }
@Delete(':id') @Delete()
@SerializeOptions({}) @SerializeOptions({})
async delete(@Param('id', new ParseUUIDPipe()) id: string) { async delete(@Body() data: DeleteDto) {
return this.service.delete(id); return this.service.delete(data.ids);
} }
} }

View File

@ -95,7 +95,7 @@ export class PostService {
.where('post.id IN (:...ids)', { ids }) .where('post.id IN (:...ids)', { ids })
.withDeleted() .withDeleted()
.getMany(); .getMany();
let result: PostEntity[] = []; let result: PostEntity[];
if (trash) { if (trash) {
const directs = items.filter((item) => !isNil(item.deleteAt)); const directs = items.filter((item) => !isNil(item.deleteAt));
const softs = items.filter((item) => isNil(item.deleteAt)); const softs = items.filter((item) => isNil(item.deleteAt));

View File

@ -1,6 +1,8 @@
import { Injectable } from '@nestjs/common'; import { Injectable } from '@nestjs/common';
import { omit } from 'lodash'; import { omit } from 'lodash';
import { In } from 'typeorm';
import { CreateTagDto, QueryTagDto, UpdateTagDto } from '@/modules/content/dtos/tag.dto'; import { CreateTagDto, QueryTagDto, UpdateTagDto } from '@/modules/content/dtos/tag.dto';
import { TagRepository } from '@/modules/content/repositories/tag.repository'; import { TagRepository } from '@/modules/content/repositories/tag.repository';
import { paginate } from '@/modules/database/utils'; import { paginate } from '@/modules/database/utils';
@ -30,8 +32,10 @@ export class TagService {
return this.detail(data.id); return this.detail(data.id);
} }
async delete(id: string) { async delete(ids: string[]) {
const item = await this.repository.findOneByOrFail({ id }); const items = await this.repository.find({
return this.repository.remove(item); where: { id: In(ids) },
});
return this.repository.remove(items);
} }
} }