checkPermission method
Implementation
bool checkPermission({List<String>? permissions, String? permission, String logicalOp = 'AND'})
{
UserModel user = userConnected;
List<String> currentPermissions = user.permissions;
if (user.role == Constant.GS_DEV) {
return true;
}
if (currentPermissions.isEmpty) {
return false;
}
if (permissions==null && permission==null) {
return false;
}
bool hasPermission = false;
if (permissions!=null && permissions.isNotEmpty) {
for (final permission in permissions) {
bool permissionFound = currentPermissions.contains(permission);
if (permissionFound) {
hasPermission = true;
if (logicalOp == 'OR') {
break;
}
} else {
hasPermission = false;
if (logicalOp == 'AND') {
break;
}
}
}
return hasPermission;
}
if (permission!=null && permission.isNotEmpty) {
return currentPermissions.contains(permission);
}
return hasPermission;
}