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:
2026-07-02 15:05:12 +08:00
parent 4704adcba1
commit 46a817503e
137 changed files with 52 additions and 0 deletions

View 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 }[];
}