2025-07-17 10:28:32 +00:00
< ? php
use common\models\CaseNonGyn ;
use common\models\CytoNonGynDiagnosis ;
use yii\helpers\Html ;
use yii\grid\GridView ;
/* @var $this yii\web\View */
/* @var $searchModel frontend\modules\pathologist\models\CytoNonGynConsultSearch */
/* @var $dataProvider yii\data\ActiveDataProvider */
$this -> title = 'Cyto Non Gyn Consults' ;
$this -> params [ 'breadcrumbs' ][] = $this -> title ;
?>
< div class = " card " >
< div class = " card-header " >
< h5 class = " card-title " >< ? = Html :: encode ( $this -> title ) ?> </h5>
</ div >
< div class = " card-body " >
< ? php // echo $this->render('_search', ['model' => $searchModel]);
?>
< ? = GridView :: widget ([
'dataProvider' => $dataProvider ,
'filterModel' => $searchModel ,
2025-07-18 02:15:31 +00:00
'tableOptions' => [ 'class' => 'table align-middle table-hover m-0 truncate' ],
'layout' => " { summary}<div class='table-outer'><div class='table-responsive'> \n { items} \n </div></div><div class='d-flex justify-content-between align-items-center mt-4'> { pager}</div> " ,
2025-07-17 10:28:32 +00:00
'columns' => [
[ 'class' => 'yii\grid\SerialColumn' ],
//'id',
'id_case' ,
[
'attribute' => 'patient_name' ,
'value' => function ( $model ) {
$case = CaseNonGyn :: findOne ([ 'id_case' => $model -> id_case ]);
return isset ( $case ) ? $case -> getFullname () : '' ;
}
],
//'remark:ntext',
//'pathologist1_id',
//'pathologist2_id',
//'diagnosis_by',
/* [
'attribute' => 'status' ,
'format' => 'raw' ,
'options' => [ 'style' => 'width:130px;' ],
'filter' => [ 1 => 'Request consult' , 2 => 'Send consult' , 3 => 'Pathologist approved' ],
'value' => function ( $model ) {
$arr = [ 1 => '<span class="badge badge-danger">Request consult</span>' , 2 => '<span class="badge badge-primary">Send consult</span>' , 3 => '<span class="badge badge-warning">Pathologist approved</span>' ];
return isset ( $arr [ $model -> status ]) ? $arr [ $model -> status ] : null ;
}
], */
[
'label' => 'Authorized At' ,
'value' => function ( $model ) {
$diag = CytoNonGynDiagnosis :: findOne ([
'id_case' => $model -> id_case ,
'id' => $model -> cyto_non_gyn_diagnosis_id ,
]);
return isset ( $diag ) && $diag -> status_id > 3 && ! empty ( $diag -> pathologist_at ) ? Html :: encode ( $diag -> pathologist_at ) : null ;
}
],
[
'class' => 'yii\grid\ActionColumn' ,
'template' => '{transfer} {do-task} {view-report}' ,
'visibleButtons' => [
'transfer' => function ( $model ) {
return isset ( $model -> cytoNonGynDiagnosis ) ? $model -> cytoNonGynDiagnosis -> status_id <= 3 : false ;
},
],
'buttons' => [
'do-task' => function ( $url , $model ) {
if ( $model -> status <= 2 ) {
return Html :: a ( '<i class="ri-file-text-line"></i> Diagnosis Case' , [ '/pathologist/do/non-gyn-consult-consult' , 'id_case' => $model -> id_case , 'id' => $model -> cyto_non_gyn_diagnosis_id , 'type' => 'consult' ], [ 'class' => 'btn btn-block btn-primary' ]) . ' ' ;
}
},
'transfer' => function ( $url , $model ) {
if ( $model -> status == 1 ) {
return Html :: a ( '<i class="ri-repeat-fill"></i> Transfer' , [ '/pathologist/order/refer' , 'id_case' => $model -> id_case ], [ 'class' => 'btn btn-block btn-warning' , 'data' => [ 'confirm' => 'ต้องการ Transfer Case นี้?' ]]);
}
},
'view-report' => function ( $url , $model ) {
if ( $model -> status == 4 ) {
return Html :: a ( '<i class="ri-file-pdf-2-line"></i> View Report' , [ '/report/case/view' , 'id_case' => $model [ 'id_case' ], 'mode' => 'final' ], [ 'class' => 'btn btn-info' , 'target' => '_blank' ]) . ' ' ;
}
}
]
],
]
]); ?>
</ div >
</ div >