feat: 결재·마스터 실연동 업데이트

This commit is contained in:
JiWoong Sul
2025-10-14 18:10:24 +09:00
parent 1325109fba
commit 8067416c09
66 changed files with 2129 additions and 222 deletions

View File

@@ -0,0 +1,14 @@
/// 결재 진행 가능 여부(can-proceed) 응답 엔티티.
///
/// - 백엔드 `GET /approvals/{id}/can-proceed` 결과를 표현한다.
class ApprovalProceedStatus {
const ApprovalProceedStatus({
required this.approvalId,
required this.canProceed,
this.reason,
});
final int approvalId;
final bool canProceed;
final String? reason;
}

View File

@@ -1,6 +1,7 @@
import 'package:superport_v2/core/common/models/paginated_result.dart';
import '../entities/approval.dart';
import '../entities/approval_proceed_status.dart';
/// 결재 도메인에서 사용하는 저장소 인터페이스.
///
@@ -34,6 +35,9 @@ abstract class ApprovalRepository {
/// 결재 단계 일괄 생성/재배치
Future<Approval> assignSteps(ApprovalStepAssignmentInput input);
/// 결재가 다음 단계로 진행 가능한지 여부를 확인한다.
Future<ApprovalProceedStatus> canProceed(int id);
/// 결재를 생성한다.
Future<Approval> create(ApprovalInput input);