mirror of
https://git.meshkee.com/cssd/cssd-back.git
synced 2026-10-10 19:41:07 +03:30
update verify access for test result
This commit is contained in:
@@ -374,16 +374,13 @@ class TestResultController extends Controller
|
||||
return \MessageResponse::success(null, trans('messages.success'));
|
||||
}
|
||||
|
||||
public function verifyTestResult(TestResult $TestResult)
|
||||
public function verifyTestResult(TestResult $TestResult, $Value)
|
||||
{
|
||||
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') {
|
||||
$TestResult->verified = 'NotVerified';
|
||||
} else {
|
||||
$TestResult->verified = 'Verified';
|
||||
}
|
||||
|
||||
$TestResult->verified = $Value;
|
||||
$TestResult->save();
|
||||
$TestResult = $TestResult->load('user.medical_center');
|
||||
return \MessageResponse::success(trans('messages.success'), null, $TestResult);
|
||||
|
||||
@@ -30,7 +30,7 @@ class TestResultPolicy
|
||||
$TR_MID = $TestResult->user->medical_center_id;
|
||||
$User_MID = $User->medical_center_id;
|
||||
|
||||
if($User->hasRole('Admin') || ( $User->hasRole('Supervisor') && $TR_MID == $User_MID))
|
||||
if($User->hasRole('Admin') || ( $User->hasRole('Supervisor') && $TR_MID == $User_MID && $TestResult->verified == 'None'))
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,18 +182,18 @@
|
||||
xs12
|
||||
md3
|
||||
sm3
|
||||
v-if="data.verified == 'NotVerified'"
|
||||
@click="verify(data.id)"
|
||||
v-if="data.verified == 'None' || (data.verified == 'NotVerified' && $hasRole('Admin'))"
|
||||
@click="verify(data.id, 'Verified')"
|
||||
>
|
||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 60px">
|
||||
<v-icon class="white--text mr-2 caption">fas fa-check</v-icon>
|
||||
<span class="white--text">Verify</span>
|
||||
</v-btn>
|
||||
</v-flex>
|
||||
<v-flex class="WM-Align-R" xs6 md3 sm3 v-else-if="$hasRole('Admin')">
|
||||
<v-flex class="WM-Align-R" xs6 md3 sm3 v-if="data.verified == 'None' || (data.verified == 'Verified' && $hasRole('Admin'))">
|
||||
<v-btn
|
||||
class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Gray"
|
||||
@click="verify(data.id)"
|
||||
@click="verify(data.id, 'NotVerified')"
|
||||
>
|
||||
<v-icon class="black--text mr-2 caption">fas fa-check</v-icon>
|
||||
<span class="black--text">UnVerify</span>
|
||||
@@ -242,8 +242,8 @@ export default {
|
||||
data: () => ({}),
|
||||
methods: {
|
||||
...mapMutations("modal", ["closeModal", "setResultModal"]),
|
||||
async verify(id) {
|
||||
const result = await ApiService.post(urls.verifyTestResult(id));
|
||||
async verify(id, value) {
|
||||
const result = await ApiService.post(urls.verifyTestResult(id, value));
|
||||
if (result && result.status == 200) {
|
||||
this.setResultModal(result.data.data);
|
||||
this.closeModal();
|
||||
|
||||
Vendored
+2
-2
@@ -53,8 +53,8 @@ const urls = {
|
||||
listTestResult: function(filter) {
|
||||
return "/TestResults" + filter;
|
||||
},
|
||||
verifyTestResult: function(id) {
|
||||
return `/TestResults/Verify/${id}`;
|
||||
verifyTestResult: function(id, value) {
|
||||
return `/TestResults/Verify/${id}/${value}`;
|
||||
},
|
||||
editTestResult: function(id) {
|
||||
return `/TestResults/${id}/edit`;
|
||||
|
||||
@@ -206,7 +206,7 @@
|
||||
<template v-slot:activator="{ on, attrs }">
|
||||
<!-- v-if="$hasRole('Admin') || item.user_id == $store.state.user.id" -->
|
||||
<router-link class="LinkBtn"
|
||||
v-if="$hasRole('Admin')"
|
||||
v-if="$hasRole('Admin') || (item.user_id == $store.state.user.id && item.verified == 'None')"
|
||||
|
||||
:to="{name: 'EditTestResult', params: {testResult: item.id}}"
|
||||
>
|
||||
@@ -226,7 +226,7 @@
|
||||
color="pink"
|
||||
class="WM-ActionButton"
|
||||
@click="remove(item.id)"
|
||||
v-if="$hasRole('Admin')"
|
||||
v-if="$hasRole('Admin') || (item.user_id == $store.state.user.id && item.verified == 'None')"
|
||||
v-bind="attrs"
|
||||
v-on="on"
|
||||
>
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ Route::middleware('auth:api')->group(function () {
|
||||
|
||||
|
||||
Route::get('/TestResults/ListFilterItems', 'TestResultController@listFilterItems');
|
||||
Route::post('/TestResults/Verify/{TestResult}', 'TestResultController@verifyTestResult');
|
||||
Route::post('/TestResults/Verify/{TestResult}/{Value}', 'TestResultController@verifyTestResult');
|
||||
Route::get('TestTypes/ListNames', 'TestTypeController@listNames');
|
||||
Route::post('/TestTypes/Barcode/{TestType}', 'TestTypeController@generateBarcode');
|
||||
Route::resource('TestTypes', 'TestTypeController');
|
||||
|
||||
Reference in New Issue
Block a user