import 'package:dio/dio.dart'; import '../core/api_client.dart'; import '../models/cash_register.dart'; class CashRegisterService { final ApiClient _client; CashRegisterService({ApiClient? client}) : _client = client ?? ApiClient(); Future> list({required int businessId, required Map queryInfo}) async { final res = await _client.post>( '/api/v1/cash-registers/businesses/$businessId/cash-registers', data: queryInfo, ); return (res.data ?? {}); } Future create({required int businessId, required Map payload}) async { final res = await _client.post>( '/api/v1/cash-registers/businesses/$businessId/cash-registers/create', data: payload, ); final data = (res.data?['data'] as Map? ?? {}); return CashRegister.fromJson(data); } Future getById(int id) async { final res = await _client.get>('/api/v1/cash-registers/cash-registers/$id'); final data = (res.data?['data'] as Map? ?? {}); return CashRegister.fromJson(data); } Future update({required int id, required Map payload}) async { final res = await _client.put>('/api/v1/cash-registers/cash-registers/$id', data: payload); final data = (res.data?['data'] as Map? ?? {}); return CashRegister.fromJson(data); } Future delete(int id) async { await _client.delete>('/api/v1/cash-registers/cash-registers/$id'); } Future>> exportExcel({required int businessId, required Map body}) async { return _client.post>( '/api/v1/cash-registers/businesses/$businessId/cash-registers/export/excel', data: body, responseType: ResponseType.bytes, ); } Future>> exportPdf({required int businessId, required Map body}) async { return _client.post>( '/api/v1/cash-registers/businesses/$businessId/cash-registers/export/pdf', data: body, responseType: ResponseType.bytes, ); } }