backup: 사용하지 않는 파일 삭제 전 복구 지점

- 전체 371개 파일 중 82개 미사용 파일 식별
- Phase 1: 33개 파일 삭제 예정 (100% 안전)
- Phase 2: 30개 파일 삭제 검토 예정
- Phase 3: 19개 파일 수동 검토 예정

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
JiWoong Sul
2025-09-02 19:51:40 +09:00
parent 650cd4be55
commit c419f8f458
149 changed files with 12934 additions and 3644 deletions

View File

@@ -0,0 +1,17 @@
import 'package:dartz/dartz.dart';
import '../../repositories/model_repository.dart';
import '../../../data/models/model/model_dto.dart';
import '../../../core/errors/failures.dart';
import '../base_usecase.dart';
/// 모델 생성 UseCase
class CreateModelUseCase extends UseCase<ModelDto, CreateModelRequest> {
final ModelRepository _modelRepository;
CreateModelUseCase(this._modelRepository);
@override
Future<Either<Failure, ModelDto>> call(CreateModelRequest request) async {
return await _modelRepository.createModel(request);
}
}

View File

@@ -0,0 +1,16 @@
import 'package:dartz/dartz.dart';
import '../../repositories/model_repository.dart';
import '../../../core/errors/failures.dart';
import '../base_usecase.dart';
/// 모델 삭제 UseCase
class DeleteModelUseCase extends UseCase<void, int> {
final ModelRepository _modelRepository;
DeleteModelUseCase(this._modelRepository);
@override
Future<Either<Failure, void>> call(int id) async {
return await _modelRepository.deleteModel(id);
}
}

View File

@@ -0,0 +1,17 @@
import 'package:dartz/dartz.dart';
import '../../repositories/model_repository.dart';
import '../../../data/models/model/model_dto.dart';
import '../../../core/errors/failures.dart';
import '../base_usecase.dart';
/// 모델 상세 조회 UseCase
class GetModelDetailUseCase extends UseCase<ModelDto, int> {
final ModelRepository _modelRepository;
GetModelDetailUseCase(this._modelRepository);
@override
Future<Either<Failure, ModelDto>> call(int id) async {
return await _modelRepository.getModelDetail(id);
}
}

View File

@@ -0,0 +1,17 @@
import 'package:dartz/dartz.dart';
import '../../repositories/model_repository.dart';
import '../../../data/models/model/model_dto.dart';
import '../../../core/errors/failures.dart';
import '../base_usecase.dart';
/// 제조사별 모델 조회 UseCase
class GetModelsByVendorUseCase extends UseCase<List<ModelDto>, int> {
final ModelRepository _modelRepository;
GetModelsByVendorUseCase(this._modelRepository);
@override
Future<Either<Failure, List<ModelDto>>> call(int vendorId) async {
return await _modelRepository.getModelsByVendor(vendorId);
}
}

View File

@@ -0,0 +1,40 @@
import 'package:dartz/dartz.dart';
import '../../repositories/model_repository.dart';
import '../../../data/models/model/model_dto.dart';
import '../../../core/errors/failures.dart';
import '../base_usecase.dart';
/// 모델 목록 조회 파라미터
class GetModelsParams {
final int page;
final int perPage;
final String? search;
final int? vendorId;
final bool? includeDeleted;
const GetModelsParams({
this.page = 1,
this.perPage = 10,
this.search,
this.vendorId,
this.includeDeleted,
});
}
/// 모델 목록 조회 UseCase
class GetModelsUseCase extends UseCase<ModelListDto, GetModelsParams> {
final ModelRepository _modelRepository;
GetModelsUseCase(this._modelRepository);
@override
Future<Either<Failure, ModelListDto>> call(GetModelsParams params) async {
return await _modelRepository.getModels(
page: params.page,
perPage: params.perPage,
search: params.search,
vendorId: params.vendorId,
includeDeleted: params.includeDeleted,
);
}
}

View File

@@ -0,0 +1,17 @@
import 'package:dartz/dartz.dart';
import '../../repositories/model_repository.dart';
import '../../../data/models/model/model_dto.dart';
import '../../../core/errors/failures.dart';
import '../base_usecase.dart';
/// 모델 복구 UseCase
class RestoreModelUseCase extends UseCase<ModelDto, int> {
final ModelRepository _modelRepository;
RestoreModelUseCase(this._modelRepository);
@override
Future<Either<Failure, ModelDto>> call(int id) async {
return await _modelRepository.restoreModel(id);
}
}

View File

@@ -0,0 +1,28 @@
import 'package:dartz/dartz.dart';
import '../../repositories/model_repository.dart';
import '../../../data/models/model/model_dto.dart';
import '../../../core/errors/failures.dart';
import '../base_usecase.dart';
/// 모델 수정 파라미터
class UpdateModelParams {
final int id;
final UpdateModelRequest request;
const UpdateModelParams({
required this.id,
required this.request,
});
}
/// 모델 수정 UseCase
class UpdateModelUseCase extends UseCase<ModelDto, UpdateModelParams> {
final ModelRepository _modelRepository;
UpdateModelUseCase(this._modelRepository);
@override
Future<Either<Failure, ModelDto>> call(UpdateModelParams params) async {
return await _modelRepository.updateModel(params.id, params.request);
}
}