create space model

This commit is contained in:
hannathkadher
2025-01-08 19:04:08 +04:00
parent 08f322165e
commit 6b79254a89
18 changed files with 477 additions and 150 deletions

View File

@ -1,3 +1,5 @@
import 'dart:convert';
import 'package:dio/dio.dart';
import 'package:syncrow_web/services/api/http_interceptor.dart';
import 'package:syncrow_web/services/locator.dart';
@ -42,22 +44,30 @@ class HTTPService {
}
}
Future<T> post<T>(
{required String path,
Map<String, dynamic>? queryParameters,
Options? options,
dynamic body,
bool showServerMessage = true,
required T Function(dynamic) expectedResponseModel}) async {
Future<T> post<T>({
required String path,
Map<String, dynamic>? queryParameters,
Options? options,
dynamic body,
bool showServerMessage = true,
required T Function(dynamic) expectedResponseModel,
}) async {
try {
final bodyString = body is Map || body is List
? jsonEncode(body)
: body?.toString() ?? 'null';
print("POST Request: $path, Body: $bodyString, Query: $queryParameters");
final response = await client.post(
path,
data: body,
queryParameters: queryParameters,
options: options,
);
print("POST Response: ${response.data.toString()}");
return expectedResponseModel(response.data);
} catch (error) {
print("POST Error: $error");
rethrow;
}
}