Update: 2026-07-12 18:53:59
This commit is contained in:
@@ -136,4 +136,56 @@ class TransitAdminService {
|
||||
if (res is Map && res['status'] == 'success') return TransitApiResult(true, null, 'ok');
|
||||
return TransitApiResult(false, null, _errMsg(res));
|
||||
}
|
||||
|
||||
// ── اعتماد الخطوط ──────────────────────────────────────────────
|
||||
|
||||
static Future<TransitApiResult<List<Map<String, dynamic>>>> listPendingRoutes({
|
||||
int? orgId,
|
||||
}) async {
|
||||
final payload = <String, dynamic>{};
|
||||
if (orgId != null) payload['org_id'] = orgId.toString();
|
||||
|
||||
final res =
|
||||
await CRUD().post(link: '$_base/route/pending.php', payload: payload);
|
||||
if (res is Map && res['status'] == 'success' && res['message'] is Map) {
|
||||
final msg = res['message'] as Map;
|
||||
final list = (msg['routes'] is List)
|
||||
? (msg['routes'] as List)
|
||||
.map((r) => Map<String, dynamic>.from(r))
|
||||
.toList()
|
||||
: <Map<String, dynamic>>[];
|
||||
return TransitApiResult(true, list, 'ok');
|
||||
}
|
||||
return TransitApiResult(false, null, _errMsg(res));
|
||||
}
|
||||
|
||||
static Future<TransitApiResult<Map<String, dynamic>>> updateContractStatus({
|
||||
required int orgId,
|
||||
required String contractStatus, // active | trial | suspended | terminated
|
||||
}) async {
|
||||
final res = await CRUD().post(link: '$_base/org/update.php', payload: {
|
||||
'org_id': orgId.toString(),
|
||||
'contract_status': contractStatus,
|
||||
});
|
||||
if (res is Map && res['status'] == 'success') {
|
||||
return TransitApiResult(
|
||||
true, Map<String, dynamic>.from(res['message'] ?? {}), 'ok');
|
||||
}
|
||||
return TransitApiResult(false, null, _errMsg(res));
|
||||
}
|
||||
|
||||
static Future<TransitApiResult<Map<String, dynamic>>> approveRoute({
|
||||
required int routeId,
|
||||
required String action, // approve | suspend | reject
|
||||
}) async {
|
||||
final res = await CRUD().post(link: '$_base/route/approve.php', payload: {
|
||||
'route_id': routeId.toString(),
|
||||
'action': action,
|
||||
});
|
||||
if (res is Map && res['status'] == 'success') {
|
||||
return TransitApiResult(
|
||||
true, Map<String, dynamic>.from(res['message'] ?? {}), 'ok');
|
||||
}
|
||||
return TransitApiResult(false, null, _errMsg(res));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user