refactor: removed some functions and added toggleStatus to checklistitem
This commit is contained in:
@@ -3,9 +3,6 @@ import { CheckListItemRepository } from '../repositories/check-list-item.reposit
|
||||
import { TMCheckListItem } from '../entities/check-list-item.entity';
|
||||
import { CreateCheckListItemDto } from '../dto/check-list-item/create-check-list-item.dto';
|
||||
import { UpdateCheckListItemDto } from '../dto/check-list-item/update-check-list-item.dto';
|
||||
import { CursorPaginationDto } from '../../../common/DTO/cursor-pagination.dto';
|
||||
import { CursorPaginatedResult } from '../../../common/interfaces/cursor-paginated-result.interface';
|
||||
import { buildCursorPageFormat } from '../../../common/helpers/cursor-paginated.helper';
|
||||
import { checkListItemMessage } from '../../../common/enums/message.enum';
|
||||
import { TaskService } from './task.service';
|
||||
|
||||
@@ -16,27 +13,6 @@ export class CheckListItemService {
|
||||
private readonly taskService: TaskService,
|
||||
) {}
|
||||
|
||||
async findAll(pagination: CursorPaginationDto): Promise<CursorPaginatedResult<TMCheckListItem>> {
|
||||
const limit = pagination.limit ?? 10;
|
||||
const cursorDate = pagination.cursor ? new Date(pagination.cursor) : undefined;
|
||||
|
||||
const [data] = await this.checkListItemRepository.findAllItems(limit, cursorDate);
|
||||
|
||||
return buildCursorPageFormat(data, limit, cursorDate);
|
||||
}
|
||||
|
||||
async findByTask(
|
||||
taskId: string,
|
||||
pagination: CursorPaginationDto,
|
||||
): Promise<CursorPaginatedResult<TMCheckListItem>> {
|
||||
const limit = pagination.limit ?? 10;
|
||||
const cursorDate = pagination.cursor ? new Date(pagination.cursor) : undefined;
|
||||
|
||||
const [data] = await this.checkListItemRepository.findByTask(taskId, limit, cursorDate);
|
||||
|
||||
return buildCursorPageFormat(data, limit, cursorDate);
|
||||
}
|
||||
|
||||
async findOneOrFail(id: string): Promise<TMCheckListItem> {
|
||||
const checkListItem = await this.checkListItemRepository.findOneById(id);
|
||||
if (!checkListItem) throw new NotFoundException(checkListItemMessage.CHECKLISTITEM_NOT_FOUND);
|
||||
@@ -66,4 +42,13 @@ export class CheckListItemService {
|
||||
await this.checkListItemRepository.delete(id);
|
||||
return checkListItem;
|
||||
}
|
||||
|
||||
async toggleStatus(id: string) : Promise<TMCheckListItem> {
|
||||
const checkListItem = await this.findOneOrFail(id);
|
||||
const isDone = checkListItem.isDone;
|
||||
checkListItem.isDone = !isDone;
|
||||
await this.checkListItemRepository.save(checkListItem);
|
||||
|
||||
return checkListItem;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user