mirror of
https://git.meshkee.com/cssd/cssd-back.git
synced 2026-10-10 19:41:07 +03:30
Publish Role
This commit is contained in:
@@ -26,9 +26,9 @@ class TestResultController extends Controller
|
||||
return $query->where('verified', $request->verified);
|
||||
})
|
||||
->when($user->hasRole('Supervisor') , function($query) {
|
||||
return $query->with(['user' => function($query) use ($user) {
|
||||
return $query->whereHas('user', function($query) use ($user) {
|
||||
$query->where('medical_center_id', $user->medical_center_id);
|
||||
}]);
|
||||
});
|
||||
})
|
||||
->when($user->hasRole('User') || ( !$user->hasRole('Admin') && !$user->hasRole('Supervisor')), function($query) use ($user) {
|
||||
return $query->where('user_id', $user->id);
|
||||
@@ -36,7 +36,6 @@ class TestResultController extends Controller
|
||||
->paginate(10);
|
||||
|
||||
return \MessageResponse::data($TestResult);
|
||||
|
||||
}
|
||||
|
||||
public function create()
|
||||
@@ -74,7 +73,7 @@ class TestResultController extends Controller
|
||||
$TestResultObj = TestResult::create($TestResult);
|
||||
$TestResultInfo = $request->all();
|
||||
|
||||
$Inputs = Input::with('options','children','children.children')->whereNull('parent_id')->where('test_type_id',$request->test_type_id)->get();
|
||||
$Inputs = Input::with('options','children','children.options')->whereNull('parent_id')->where('test_type_id',$request->test_type_id)->get();
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////Inputs
|
||||
foreach ($Inputs as $Input) {
|
||||
@@ -225,9 +224,7 @@ class TestResultController extends Controller
|
||||
|
||||
public function update(StoreTestResultRequest $request, TestResult $TestResult)
|
||||
{
|
||||
// dd($request->all());
|
||||
$TestResultData = [
|
||||
'user_id' => auth('api')->user()->id,
|
||||
'autoclave_id' => $request->autoclave_id,
|
||||
'test_type_id' => $request->test_type_id,
|
||||
'result' => $request->result,
|
||||
@@ -334,7 +331,7 @@ class TestResultController extends Controller
|
||||
|
||||
public function verifyTestResult(TestResult $TestResult)
|
||||
{
|
||||
if (!auth('api')->user()->can('verifyTestResult', $TestResult)) {
|
||||
if (auth('api')->user()->cant('verifyTestResult', $TestResult)) {
|
||||
return \MessageResponse::error(trans('You dont have permission or this test result belongs to another medical center'));
|
||||
}
|
||||
if ($TestResult->verified == 'Verified') {
|
||||
@@ -347,10 +344,13 @@ class TestResultController extends Controller
|
||||
return \MessageResponse::success(trans('messages.success'), null, $TestResult);
|
||||
}
|
||||
|
||||
// TODO: Policy And Check Role
|
||||
public function listFilterItems()
|
||||
{
|
||||
$MedicalCenter = MedicalCenter::select('name', 'id')->get()->toArray();
|
||||
$user = auth('api')->user();
|
||||
$MedicalCenter = MedicalCenter::when(!$user->hasRole('Admin'), function ($query) use ($user)
|
||||
{
|
||||
$query->where('id', $user->medical_center_id);
|
||||
})->select('name', 'id')->get()->toArray();
|
||||
$TestType = TestType::select('name', 'id')->get()->toArray();
|
||||
return \MessageResponse::data([
|
||||
'MedicalCenters' => $MedicalCenter,
|
||||
@@ -360,15 +360,30 @@ class TestResultController extends Controller
|
||||
|
||||
public function chart(Request $request)
|
||||
{
|
||||
$user = auth('api')->user();
|
||||
if ($user->hasRole('User')) {
|
||||
$userId = $user->id;
|
||||
} elseif($request->has('userId') && $request->userId) {
|
||||
$userId = $request->userId;
|
||||
} else {
|
||||
$userId = null;
|
||||
}
|
||||
if ($user->hasRole('Admin') && $request->has('medicalCenterId') && $request->medicalCenterId) {
|
||||
$medicalCenterId = $request->medicalCenterId;
|
||||
} else {
|
||||
$medicalCenterId = $user->medical_center_id;
|
||||
}
|
||||
|
||||
|
||||
$TestResults = TestResult::
|
||||
when($request->has('userId') && $request->userId, function ($query) use ($request)
|
||||
when($userId, function ($query) use ($userId)
|
||||
{
|
||||
$query->where('user_id', $request->userId);
|
||||
$query->where('user_id', $userId);
|
||||
})
|
||||
->when($request->has('medicalCenterId') && $request->medicalCenterId, function ($query) use ($request)
|
||||
->when($medicalCenterId, function ($query) use ($medicalCenterId)
|
||||
{
|
||||
$query->whereHas('user', function($query) use ($request) {
|
||||
$query->where('medical_center_id', $request->medicalCenterId);
|
||||
$query->whereHas('user', function($query) use ($medicalCenterId) {
|
||||
$query->where('medical_center_id', $medicalCenterId);
|
||||
});
|
||||
})
|
||||
->when($request->has('testTypeId') && $request->testTypeId, function ($query) use ($request)
|
||||
@@ -392,6 +407,7 @@ class TestResultController extends Controller
|
||||
$AcceptCount = (isset($TestResults['Accept'])) ? $TestResults['Accept']->count() : 0;
|
||||
$RejectCount = (isset($TestResults['Reject'])) ? $TestResults['Reject']->count() : 0;
|
||||
|
||||
|
||||
return \MessageResponse::data(['labels' => ['Number Of Accepted Test Results', 'Number Of Rejected Test Results'], 'data' => [$AcceptCount,$RejectCount]]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user