trello 프로젝트중 Card에 상태를 STANBY, DOING, DONE으로 설정할 있는 코드를 작성해 보았다.
먼저 Card 폴더 안에 Types란 폴더를 만들고 그 안에 Card의 상태를 설정할 수 있는 코드를 만든다.
export enum CardStatus {
STANDBY = 'STANDBY',
DOING = 'DOING',
DONE = 'DONE',
}
enum CardStatus를 만들고 entity와 Dto에도 로직을 추가해준다
@Column({ type: 'enum', enum: CardStatus, default: CardStatus.STANDBY })
status: CardStatus;
타입을 enum으로 설정해주고 디폴트 값을 STANBY로 준다
Dto값도 마찬가지로 status를 추가해 주고
export class UpdateCardDto {
@IsString()
@IsNotEmpty({ message: '제목을 적어주세요.' })
name: string;
@IsString()
@MaxLength(100)
@IsNotEmpty({ message: '내용을 적어주세요.' })
description: string;
@IsDateString()
@IsNotEmpty({ message: '마감일을 입력해주세요.' })
endDate: string;
@IsEnum(ColorStatus)
color: ColorStatus;
@IsEnum(CardStatus)
status: CardStatus;
}
Body에 status를 추가해주면 정상적으로 card의 상태를 할당하고 수정할 수 있다!
{
"name": "카드 제목 수정",
"description": "카드 내용 수정입니다.",
"endDate": "2024-03-25",
"status": "STANBY",
"color": "RED"
}