What you have should work you might have spelling issue or maybe an evaluation issue. I’d recommend using constants to define the values to help spelling and other issues from having to type it over and over. I’d also recommend a switch case for your evaluation function. I believe in your case it would be easier to read and maintain
'rowOptions' => function ($model) {
switch ($model->request_status) {
case 'Done':
$class = 'success';
break;
case 'On Going':
$class = 'info';
break;
case 'Cancelled':
$class = 'danger';
break;
case 'High Priority':
$class = 'warning';
break;
default:
$class = '';
}
return ['class' => $class];
},