Implement tender workflows and dashboard integration
continuous-integration/drone/push Build encountered an error

This commit is contained in:
AmirReza Jamali
2026-07-14 11:12:09 +03:30
parent ce170f9bc8
commit 72881df210
29 changed files with 1820 additions and 159 deletions
@@ -4,17 +4,22 @@ import 'package:tm_app/data/services/model/liked_tenders_response/liked_tenders_
import 'package:tm_app/data/services/model/request_models/get_tenders_request_model/get_tenders_request_model.dart';
import 'package:tm_app/data/services/model/tender_approvals_response/tender_approvals_response.dart';
import 'package:tm_app/data/services/your_tenders_service.dart';
import 'package:tm_app/data/services/tender_submissions_service.dart';
import 'package:tm_app/data/services/model/tender_submission/tender_submission.dart';
import '../services/model/request_models/tender_feedback_request_model/tender_feedback_request_model.dart';
class YourTendersRepository {
final YourTendersService _yourTendersService;
final LikedTendersService _likedTendersService;
final TenderSubmissionsService _tenderSubmissionsService;
YourTendersRepository({
required YourTendersService yourTendersService,
required LikedTendersService likedTendersService,
required TenderSubmissionsService tenderSubmissionsService,
}) : _yourTendersService = yourTendersService,
_likedTendersService = likedTendersService;
_likedTendersService = likedTendersService,
_tenderSubmissionsService = tenderSubmissionsService;
Future<Result<TenderApprovalsResponse>> getTenders({
required GetTendersRequestModel requestModel,
@@ -27,4 +32,41 @@ class YourTendersRepository {
}) {
return _likedTendersService.getLikedTenders(requestModel: requestModel);
}
Future<Result<TenderSubmissionsResponse>> getSubmissions({
required String stage,
int limit = 20,
int offset = 0,
}) => _tenderSubmissionsService.getSubmissions(
stages: [stage],
limit: limit,
offset: offset,
);
Future<Result<TenderSubmissionResponse>> getSubmissionById(String id) =>
_tenderSubmissionsService.getById(id);
Future<Result<TenderSubmissionResponse>> getSubmissionByTender(
String tenderId,
) => _tenderSubmissionsService.getByTender(tenderId);
Future<Result<TenderSubmissionResponse>> ensureSubmission(
String tenderId, {
String? companyId,
}) => _tenderSubmissionsService.ensure(tenderId, companyId: companyId);
Future<Result<TenderSubmissionResponse>> updateSubmissionStatus({
required String id,
required String status,
String? reason,
String? description,
}) => _tenderSubmissionsService.updateStatus(
id: id,
status: status,
reason: reason,
description: description,
);
Future<Result<TenderSubmissionStatsResponse>> getSubmissionStats() =>
_tenderSubmissionsService.getStats();
}