showRoleSelectionDialog method
Implementation
void showRoleSelectionDialog(
LoginModel userData,
List<OrganizationHierarchyData> roles,
) {
final Rx<OrganizationHierarchyData?> selectedRole = Rx<OrganizationHierarchyData?>(null);
Get.dialog(
barrierDismissible: false,
GenericDialogBox(
isShowTopCloseButton: false,
headerText: 'Select Role',
content: Obx(() => Column(
children: roles.map((role) {
return RadioListTile<OrganizationHierarchyData>(
value: role,
groupValue: selectedRole.value,
title: AppText(role.nameAclPositionMapping ?? '', style: TextStyles.normal(Get.context!)),
onChanged: (value) {
selectedRole.value = value;
},
);
}).toList(),
)),
onSecondaryButtonPressed: () => Get.back(),
onPrimaryButtonPressed: () async {
if (selectedRole.value == null) {
AppUtils.showSnackBar('Please select a role');
return;
}
await saveUserDetailsNew(userData, selectedRole.value!);
Get.back(); // close dialog
navigationToModuleDashboard();
},
secondaryButtonText: AppStrings.close,
primaryButtonText: 'Confirm'),
);
}