new correction on access

This commit is contained in:
Fateme
2020-07-23 19:49:14 +04:30
parent 8a8d00567f
commit 73d0169ca3
14 changed files with 92 additions and 37 deletions
+2 -2
View File
@@ -14,7 +14,7 @@ class CycleController extends Controller
$user = auth('api')->user();
$Cycles = Cycle::
when($user->cant('showAll'), function($query) use ($user) {
when($user->cant('showAll', Cycle::class), function($query) use ($user) {
if ($user->hasRole('Supervisor')) {
$query->whereHas('user', function($query) use ($user) {
$query->where('medical_center_id', $user->medical_center_id);
@@ -36,7 +36,7 @@ class CycleController extends Controller
->when($request->has('cycle_number') && $request->cycle_number != '', function($query) use($request){
$query->where('cycle_number', $request->cycle_number);
})
->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){
->when($request->has('medical_center_id') && $request->medical_center_id != '' && $request->medical_center_id != 'undefined', function($query) use($request){
$query->whereHas('user', function($query) use ($request) {
$query->where('medical_center_id', $request->medical_center_id);
});
+3 -3
View File
@@ -17,7 +17,7 @@ class ItemController extends Controller
return \MessageResponse::error('You dont have access to this section!');
}
$Items = Item::when($user->cant('showAll'), function($query) use ($user) {
$Items = Item::when($user->cant('showAll', Item::class), function($query) use ($user) {
if ($user->hasRole('Supervisor')) {
$query->whereHas('user', function($query) use ($user) {
$query->where('medical_center_id', $user->medical_center_id);
@@ -36,7 +36,7 @@ class ItemController extends Controller
->when($request->has('specific') && $request->specific != '', function($query) use($request){
$query->where('specific', $request->specific);
})
->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){
->when($request->has('medical_center_id') && $request->medical_center_id != '' && $request->medical_center_id != 'undefined', function($query) use($request){
$query->whereHas('user', function($query) use ($request) {
$query->where('medical_center_id', $request->medical_center_id);
});
@@ -109,7 +109,7 @@ class ItemController extends Controller
return \MessageResponse::data([]);
}
$Items = Item::when($user->cant('showAll'), function($query) use ($user) {
$Items = Item::when($user->cant('showAll', Item::class), function($query) use ($user) {
if ($user->hasRole('Supervisor')) {
$query->whereHas('user', function($query) use ($user) {
$query->where('medical_center_id', $user->medical_center_id);
+4 -6
View File
@@ -13,13 +13,11 @@ class LabelController extends Controller
public function index(Request $request)
{
$user = auth('api')->user();
$admin_users = User::role('Admin')->get()->pluck('id')->toArray();
$admin_users[] = $user->id;
$Labels = Label::
when($user->cant('showAll'), function($query) use ($user, $admin_users) {
when($user->cant('showAll', Label::class), function($query) use ($user) {
if ($user->hasRole('Supervisor')) {
$query->whereHas('user', function($query) use ($user, $admin_users) {
$query->whereHas('user', function($query) use ($user) {
$query->where('medical_center_id', $user->medical_center_id);
});
}
@@ -39,7 +37,7 @@ class LabelController extends Controller
->when($request->has('label_id') && $request->label_id != '', function($query) use($request){
$query->where('id', $request->label_id);
})
->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){
->when($request->has('medical_center_id') && $request->medical_center_id != '' && $request->medical_center_id != 'undefined', function($query) use($request){
$query->whereHas('user', function($query) use ($request) {
$query->where('medical_center_id', $request->medical_center_id);
});
@@ -117,7 +115,7 @@ class LabelController extends Controller
// $admin_users[] = $user->id;
$Labels = Label::
when($user->cant('showAll'), function($query) use ($user) {
when($user->cant('showAll', Label::class), function($query) use ($user) {
if ($user->hasRole('Supervisor|User')) {
$query->whereHas('user', function($query) use ($user) {
$query->where('medical_center_id', $user->medical_center_id);
+3 -5
View File
@@ -18,7 +18,7 @@ class PackageController extends Controller
}
$Packages = Package::
when($user->cant('showAll'), function($query) use ($user) {
when($user->cant('showAll', Package::class), function($query) use ($user) {
if ($user->hasRole('Supervisor')) {
$query->whereHas('user', function($query) use ($user) {
$query->where('medical_center_id', $user->medical_center_id);
@@ -31,7 +31,7 @@ class PackageController extends Controller
->when($request->has('package_id') && $request->package_id != '', function($query) use($request){
$query->where('id', $request->package_id);
})
->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){
->when($request->has('medical_center_id') && $request->medical_center_id != '' && $request->medical_center_id != 'undefined', function($query) use($request){
$query->whereHas('user', function($query) use ($request) {
$query->where('medical_center_id', $request->medical_center_id);
});
@@ -159,11 +159,9 @@ class PackageController extends Controller
public function getPackages()
{
$user = auth('api')->user();
// $admin_users = User::role('Admin')->get()->pluck('id')->toArray();
// $admin_users[] = $user->id;
$Packages = Package::
when($user->cant('showAll'), function($query) use ($user) {
when($user->cant('showAll', Package::class), function($query) use ($user) {
if ($user->hasRole('Supervisor|User')) {
$query->whereHas('user', function($query) use ($user) {
$query->where('medical_center_id', $user->medical_center_id);
@@ -41,7 +41,7 @@ class TestResultController extends Controller
if ($user->hasRole('Supervisor|User')) {
$medical_center_id = $user->medical_center_id;
}
elseif($request->has('medicalCenter_id') && $request->medicalCenter_id) {
elseif($request->has('medicalCenter_id') && $request->medicalCenter_id != '' && $request->medicalCenter_id != 'undefined' ) {
$medical_center_id = $request->medicalCenter_id;
} else {
$medical_center_id = null;
@@ -20,7 +20,12 @@
<v-flex xs12 md12 sm12>
<div class>
<span class="title CSSD-font">Result :</span>
<v-icon class="green--text ml-2 caption">fas fa-check</v-icon>
<span v-if="data.result == 'Reject'" class="NotVerified">
<v-icon class="caption fa fa-times NotVerified"></v-icon>
</span>
<span v-if="data.result == 'Accept'" class="">
<v-icon class="caption fa fa-check Verified"></v-icon>
</span>
<span
class="headline ml-1 CSSD-font"
style="letter-spacing:0 !important"
@@ -30,7 +35,12 @@
<v-flex xs12 md12 sm12>
<div class>
<span class="title CSSD-font">verify :</span>
<v-icon class="pink--text ml-2 caption">fas fa-times</v-icon>
<span v-if="data.verified == 'NotVerified'" class="NotVerified">
<v-icon class="caption fa fa-times NotVerified"></v-icon>
</span>
<span v-if="data.verified == 'Verified'" class="">
<v-icon class="caption fa fa-check Verified"></v-icon>
</span>
<span
class="headline ml-1"
style="letter-spacing:0 !important"
+3 -2
View File
@@ -146,7 +146,8 @@ export default {
watch: {
'$route' (val) {
this.title = val.name
// this.title = val.name
this.title = val.name.replace(/([A-Z])/g, ' $1').trim()
}
},
@@ -192,4 +193,4 @@ export default {
.Pointer {
cursor: pointer;
}
</style>
</style>
@@ -20,7 +20,12 @@
<v-flex xs3 md3 sm3>
<div class>
<span class="subtitle-1">Result :</span>
<v-icon class="green--text ml-2 caption">fas fa-check</v-icon>
<span v-if="data.result == 'Reject'" class="NotVerified">
<v-icon class="caption fa fa-times NotVerified"></v-icon>
</span>
<span v-if="data.result == 'Accept'" class="">
<v-icon class="caption fa fa-check Verified"></v-icon>
</span>
<span
class="title font-weight-bold ml-1"
style="letter-spacing:0 !important"
@@ -30,7 +35,17 @@
<v-flex xs3 md3 sm3>
<div class>
<span class="subtitle-1">verify :</span>
<v-icon class="pink--text ml-2 caption">fas fa-times</v-icon>
<!-- <v-icon class="pink--text ml-2 caption">fas fa-times</v-icon> -->
<!-- <span
class="title font-weight-bold ml-1"
style="letter-spacing:0 !important"
>{{ data.verified }}</span> -->
<span v-if="data.verified == 'NotVerified'" class="NotVerified">
<v-icon class="caption fa fa-times NotVerified"></v-icon>
</span>
<span v-if="data.verified == 'Verified'" class="">
<v-icon class="caption fa fa-check Verified"></v-icon>
</span>
<span
class="title font-weight-bold ml-1"
style="letter-spacing:0 !important"
@@ -148,7 +163,7 @@
</v-flex>
<v-layout row wrap class="ml-4">
<!-- <LightBox :media="data.images.map(img => ({thumb: img.path, src: img.path}))" style="width: 20%"></LightBox> -->
<v-flex xs6 md2 sm2 v-for="(file, key) in data.files" :key="key">
<v-flex xs6 md2 sm2 v-for="(file, key) in data.files" :key="key">
<template v-if="file.file_type == 'document'">
<a target="_blank" :href="'/'+file.path"><v-icon class="mr-2 caption">fas fa-check</v-icon>{{ file.file_name }}</a>
</template>
@@ -175,7 +190,7 @@
<span class="white--text">Verify</span>
</v-btn>
</v-flex>
<v-flex class="WM-Align-R" xs6 md3 sm3 v-else>
<v-flex class="WM-Align-R" xs6 md3 sm3 v-else-if="$hasRole('Admin')">
<v-btn
class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Gray"
@click="verify(data.id)"
+12 -3
View File
@@ -40,6 +40,7 @@
label="Hospital"
color="black"
:items="medicalCenters"
:clearable="true"
></v-autocomplete>
</v-flex>
<v-flex xs12 sm2 md2 class="WM-FlexCenter pl-3">
@@ -97,6 +98,9 @@
</template>
<template slot="items" slot-scope="{ item }">
<td class="headline font-weight-light">{{ item.id }}</td>
<td
class="title font-weight-light"
>{{ (item.user && item.user.medical_center) ? item.user.medical_center.name : '' }}</td>
<td class="title font-weight-light">{{ item.sterilizer_id }}</td>
<td class="title font-weight-light">{{ item.cycle_number }}</td>
<td class="title font-weight-light">{{ item.date }}</td>
@@ -142,9 +146,9 @@
</v-tooltip>
<v-tooltip bottom open-on-hover>
<template v-slot:activator="{ on, attrs }">
<v-btn
v-bind="attrs" v-on="on"
color="orange darken-1"
<v-btn
v-bind="attrs" v-on="on"
color="orange darken-1"
@click="generateBarcode(item.id, 'Cycle')">
<v-icon class="white--text mr-1 caption">fas fa-barcode</v-icon>
<span>Generate Barcode</span>
@@ -186,6 +190,11 @@ export default {
text: "Cycle ID",
value: "Cycle ID"
},
{
sortable: true,
text: "Hospital",
value: "Hospital"
},
{
sortable: true,
text: "Sterilizer ID",
+10 -1
View File
@@ -1,7 +1,7 @@
<template>
<div class>
<v-container fluid>
<material-card class color="black" title="All Instrument" text>
<material-card class color="black" title="All Items" text>
<v-layout align-center wrap class="my-3 px-5">
<v-flex xs12 md3 sm3 class="WM-FlexCenter">
<v-icon class="fas fa-sort-numeric-up mr-2 WM-Margin-B-8"></v-icon>
@@ -31,6 +31,7 @@
label="Hospital"
color="black"
:items="medicalCenters"
:clearable="true"
></v-autocomplete>
</v-flex>
<v-flex xs12 md3 sm3 class="WM-FlexCenter pl-3">
@@ -74,6 +75,9 @@
<td class="title font-weight-light">{{ item.id }}</td>
<!-- <td class="title font-weight-light">{{ item.unique_id }}</td> -->
<td class="title font-weight-light">{{ item.name }}</td>
<td
class="title font-weight-light"
>{{ (item.user && item.user.medical_center) ? item.user.medical_center.name : '' }}</td>
<td class="title font-weight-light">{{ item.size }}</td>
<td class="text-xs-right FlexBtn Height-MD-60">
<v-tooltip bottom open-on-hover>
@@ -167,6 +171,11 @@ export default {
text: "Name",
value: "name"
},
{
sortable: true,
text: "Hospital",
value: "Hospital"
},
{
sortable: false,
text: "Size",
+1
View File
@@ -19,6 +19,7 @@
label="Hospital"
color="black"
:items="medicalCenters"
:clearable="true"
></v-autocomplete>
</v-flex>
<v-flex xs12 md3 sm3 class="WM-FlexCenter pl-3">
+11 -2
View File
@@ -31,6 +31,7 @@
label="Hospital"
color="black"
:items="medicalCenters"
:clearable="true"
></v-autocomplete>
</v-flex>
<!-- <v-flex class xs12 md2 sm3>
@@ -41,7 +42,7 @@
</v-flex>
<v-spacer></v-spacer> -->
<!-- <v-spacer></v-spacer> -->
</v-layout>
<v-layout align-center wrap class="mb-3 px-5">
<v-flex class xs12 md2 sm3>
@@ -76,6 +77,9 @@
<td class="title font-weight-light">{{ item.id }}</td>
<!-- <td class="title font-weight-light">{{ item.unique_id }}</td> -->
<td class="title font-weight-light">{{ item.name }}</td>
<td
class="title font-weight-light"
>{{ (item.user && item.user.medical_center) ? item.user.medical_center.name : '' }}</td>
<td class="title font-weight-light">{{ item.user ? item.user.name : '' }}</td>
<td class="title font-weight-light">{{ item.description }}</td>
<td class="text-xs-right FlexBtn Height-MD-60">
@@ -105,7 +109,7 @@
</v-tooltip>
<v-tooltip bottom open-on-hover>
<template v-slot:activator="{ on, attrs }">
<v-btn
<v-btn
v-bind="attrs" v-on="on"
color="pink"
class="WM-ActionButton mr-2"
@@ -171,6 +175,11 @@ export default {
text: "Name",
value: "name"
},
{
sortable: true,
text: "Hospital",
value: "Hospital"
},
{
sortable: true,
text: "User",
+9 -5
View File
@@ -47,6 +47,7 @@
:items="medicalCenters"
item-text="name"
item-value="id"
:clearable="true"
></v-autocomplete>
</v-flex>
<v-flex xs12 md2 sm3 class="WM-FlexCenter">
@@ -203,8 +204,10 @@
</v-tooltip>
<v-tooltip bottom open-on-hover>
<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') || item.user_id == $store.state.user.id"
v-if="$hasRole('Admin')"
:to="{name: 'EditTestResult', params: {testResult: item.id}}"
>
<v-btn color="orange" class="mr-2" v-bind="attrs"
@@ -218,11 +221,12 @@
</v-tooltip>
<v-tooltip bottom open-on-hover>
<template v-slot:activator="{ on, attrs }">
<!-- v-if="$hasRole('Admin') || item.user_id == $store.state.user.id" -->
<v-btn
color="pink"
class="WM-ActionButton"
@click="remove(item.id)"
v-if="$hasRole('Admin') || item.user_id == $store.state.user.id"
v-if="$hasRole('Admin')"
v-bind="attrs"
v-on="on"
>
@@ -456,7 +460,7 @@ td.FlexBtn .theme--light.v-btn {
}
td.FlexBtn a.LinkBtn .theme--light.v-btn {
padding: 12px 10px;
}
}
@media screen and (max-width:1536px) {
.FlexBtn {
padding: 30px 8px !important;
@@ -468,8 +472,8 @@ td.FlexBtn .theme--light.v-btn {
min-width: 30px;
padding: 15px 10px;
margin-right: 1 !important;
}
}
td.FlexBtn a.LinkBtn .theme--light.v-btn {
padding: 9px 10px;
}
+2 -1
View File
@@ -152,7 +152,8 @@
</template>
</v-btn>
</template>
<span>Active</span>
<span v-if="item.status == 'Active'">Susspended</span>
<span v-else>Active</span>
</v-tooltip>
<v-tooltip bottom open-on-hover>
<template v-slot:activator="{ on, attrs }">