37 lines
964 B
Dart
37 lines
964 B
Dart
import 'package:flutter/material.dart';
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
import 'package:pshared/provider/organizations.dart';
|
|
import 'package:pshared/service/payment/documents.dart';
|
|
|
|
import 'package:pweb/utils/download.dart';
|
|
import 'package:pweb/utils/error/snackbar.dart';
|
|
|
|
import 'package:pweb/generated/i18n/app_localizations.dart';
|
|
|
|
|
|
Future<void> downloadPaymentAct(BuildContext context, String paymentRef) async {
|
|
final organizations = context.read<OrganizationsProvider>();
|
|
if (!organizations.isOrganizationSet) {
|
|
return;
|
|
}
|
|
final trimmed = paymentRef.trim();
|
|
if (trimmed.isEmpty) {
|
|
return;
|
|
}
|
|
|
|
final loc = AppLocalizations.of(context)!;
|
|
await executeActionWithNotification(
|
|
context: context,
|
|
action: () async {
|
|
final file = await PaymentDocumentsService.getAct(
|
|
organizations.current.id,
|
|
trimmed,
|
|
);
|
|
await downloadFile(file);
|
|
},
|
|
errorMessage: loc.downloadActError,
|
|
);
|
|
}
|