62 lines
2.0 KiB
Dart
62 lines
2.0 KiB
Dart
import 'package:satu/core/base/base_service.dart';
|
|
import 'package:satu/core/models/but_item/buy_item_response.dart';
|
|
import 'package:satu/core/services/api_service.dart';
|
|
import 'package:satu/core/utils/locator.dart';
|
|
|
|
import '../models/buy_invoice/buy_invoice_response.dart';
|
|
import '../models/response/response_entity.dart';
|
|
|
|
class BuyService extends BaseService {
|
|
final ApiService _api = locator<ApiService>();
|
|
Future<List<BuyInvoiceResponse>> getList(
|
|
{required int page, required int perpage, dynamic filter}) async {
|
|
List<BuyInvoiceResponse> list = [];
|
|
try {
|
|
final Map<String, dynamic> requestBody = <String, dynamic>{
|
|
'page': page,
|
|
'perpage': perpage,
|
|
};
|
|
|
|
ResponseEntity categories = await _api.postRequest('/general_purchases_get',
|
|
requestBody: requestBody);
|
|
if (categories.original.data != null &&
|
|
categories.original.data!.isNotEmpty) {
|
|
for (final dynamic map in categories.original.data!) {
|
|
final BuyInvoiceResponse item =
|
|
BuyInvoiceResponse.fromJson(map);
|
|
list.add(item);
|
|
}
|
|
}
|
|
} catch (e, stack) {
|
|
log.e('getList', e, stack);
|
|
}
|
|
return list;
|
|
}
|
|
|
|
Future<List<BuyItemResponse>> getItemList(int id,
|
|
{required int page, required int perpage, dynamic filter}) async {
|
|
List<BuyItemResponse> list = [];
|
|
try {
|
|
final Map<String, dynamic> requestBody = <String, dynamic>{
|
|
'page': page,
|
|
'perpage': perpage,
|
|
'id': id
|
|
};
|
|
log.i(requestBody);
|
|
|
|
ResponseEntity categories = await _api.postRequest('/general_purchases_get_items',
|
|
requestBody: requestBody);
|
|
if (categories.original.items != null &&
|
|
categories.original.items!.isNotEmpty) {
|
|
for (final dynamic map in categories.original.items!) {
|
|
final BuyItemResponse item =
|
|
BuyItemResponse.fromJson(map);
|
|
list.add(item);
|
|
}
|
|
}
|
|
} catch (e, stack) {
|
|
log.e('getList', e, stack);
|
|
}
|
|
return list;
|
|
}
|
|
} |