feat(task1): restructure directories for turborepo monorepo
- Move backend/ to apps/server/ via git mv - Move frontend/ to apps/admin/ via git mv - Create packages/typescript-config/ with base, nestjs, and react-vite presets
This commit is contained in:
54
apps/server/src/expenses/dto/expense.dto.ts
Normal file
54
apps/server/src/expenses/dto/expense.dto.ts
Normal file
@@ -0,0 +1,54 @@
|
||||
import { IsInt, IsString, IsNumber, IsOptional, IsEnum } from 'class-validator';
|
||||
|
||||
export class CreateRoomExpenseDto {
|
||||
@IsInt()
|
||||
roomId: number;
|
||||
|
||||
@IsEnum(['water', 'electricity', 'cleaning', 'damage', 'other'])
|
||||
expenseType: string;
|
||||
|
||||
@IsNumber()
|
||||
amount: number;
|
||||
|
||||
@IsString()
|
||||
periodStart: string;
|
||||
|
||||
@IsString()
|
||||
periodEnd: string;
|
||||
|
||||
@IsOptional()
|
||||
@IsString()
|
||||
description?: string;
|
||||
}
|
||||
|
||||
export class CreatePersonalExpenseDto {
|
||||
@IsInt()
|
||||
studentId: number;
|
||||
|
||||
@IsOptional()
|
||||
@IsInt()
|
||||
roomId?: number;
|
||||
|
||||
@IsEnum(['damage', 'cleaning', 'penalty', 'key', 'remote', 'deposit_deduction', 'other'])
|
||||
expenseType: string;
|
||||
|
||||
@IsNumber()
|
||||
amount: number;
|
||||
|
||||
@IsString()
|
||||
expenseDate: string;
|
||||
|
||||
@IsOptional()
|
||||
@IsString()
|
||||
description?: string;
|
||||
}
|
||||
|
||||
export class BatchRoomExpenseDto {
|
||||
@IsString()
|
||||
periodStart: string;
|
||||
|
||||
@IsString()
|
||||
periodEnd: string;
|
||||
|
||||
expenses: { roomId: number; expenseType: string; amount: number; description?: string }[];
|
||||
}
|
||||
Reference in New Issue
Block a user