added permission for create payment request button

This commit is contained in:
Vaibhav Surve 2025-11-11 14:38:05 +05:30
parent 77a6d50571
commit 034de5a601

View File

@ -10,6 +10,8 @@ import 'package:marco/model/finance/add_payment_request_bottom_sheet.dart';
import 'package:marco/helpers/utils/date_time_utils.dart';
import 'package:marco/view/finance/payment_request_detail_screen.dart';
import 'package:marco/helpers/widgets/my_custom_skeleton.dart';
import 'package:marco/controller/permission_controller.dart';
import 'package:marco/helpers/utils/permission_constants.dart';
class PaymentRequestMainScreen extends StatefulWidget {
const PaymentRequestMainScreen({super.key});
@ -25,6 +27,7 @@ class _PaymentRequestMainScreenState extends State<PaymentRequestMainScreen>
final searchController = TextEditingController();
final paymentController = Get.put(PaymentRequestController());
final projectController = Get.find<ProjectController>();
final permissionController = Get.put(PermissionController());
@override
void initState() {
@ -122,14 +125,26 @@ class _PaymentRequestMainScreenState extends State<PaymentRequestMainScreen>
),
],
),
floatingActionButton: FloatingActionButton.extended(
onPressed: () {
showPaymentRequestBottomSheet();
},
floatingActionButton: Obx(() {
if (permissionController.permissions.isEmpty) {
return const SizedBox.shrink();
}
final canCreate =
permissionController.hasPermission(Permissions.expenseUpload);
return canCreate
? FloatingActionButton.extended(
backgroundColor: contentTheme.primary,
icon: const Icon(Icons.add),
label: const Text("Create Payment Request"),
onPressed: showPaymentRequestBottomSheet,
icon: const Icon(Icons.add, color: Colors.white),
label: const Text(
"Create Payment Request",
style: TextStyle(color: Colors.white, fontSize: 16),
),
)
: const SizedBox.shrink();
}),
);
}