mirror of
https://git.meshkee.com/cssd/cssd-front.git
synced 2026-10-13 18:43:17 +03:30
fix : style
This commit is contained in:
+186
-169
@@ -1,192 +1,209 @@
|
|||||||
<template>
|
<template>
|
||||||
<v-navigation-drawer id="app-drawer" v-model="inputValue" app absolute dark floating persistent mobile-break-point="991"
|
<v-navigation-drawer id="app-drawer" v-model="inputValue" app absolute dark floating persistent
|
||||||
width="260">
|
mobile-break-point="991"
|
||||||
<v-img :src="image" height="100%">
|
width="260">
|
||||||
<v-layout class="fill-height" tag="v-list" column>
|
<v-img :src="image" height="100%">
|
||||||
<v-list-tile avatar>
|
<v-layout class="fill-height" tag="v-list" column>
|
||||||
<v-list-tile-avatar color="white">
|
<v-list-tile avatar>
|
||||||
<!-- <v-img
|
<v-list-tile-avatar color="white">
|
||||||
:src="logo"
|
<!-- <v-img
|
||||||
height="34"
|
:src="logo"
|
||||||
contain
|
height="34"
|
||||||
/> -->
|
contain
|
||||||
</v-list-tile-avatar>
|
/> -->
|
||||||
<v-list-tile-title class="title">
|
</v-list-tile-avatar>
|
||||||
{{ $store.state.user.name }}
|
<v-list-tile-title class="title">
|
||||||
<br />
|
{{ $store.state.user.name }}
|
||||||
{{ $store.state.user.medical_center?.name }}
|
<br/>
|
||||||
</v-list-tile-title>
|
{{ $store.state.user.medical_center?.name }}
|
||||||
|
<v-chip small class="user-role" color="#3a3a3a" text-color="#c3c3c3">
|
||||||
|
{{ $store.state.roles[0] }}
|
||||||
|
</v-chip>
|
||||||
|
</v-list-tile-title>
|
||||||
|
|
||||||
</v-list-tile>
|
</v-list-tile>
|
||||||
<v-divider />
|
<v-divider/>
|
||||||
<v-list-tile v-if="responsive">
|
<v-list-tile v-if="responsive">
|
||||||
<v-text-field class="purple-input search-input" label="Search..." color="purple" />
|
<v-text-field class="purple-input search-input" label="Search..." color="purple"/>
|
||||||
</v-list-tile>
|
</v-list-tile>
|
||||||
<template v-for="(link, i) in links">
|
<template v-for="(link, i) in links">
|
||||||
<v-list-tile v-if="!link.role || $hasRole(link.role)" :key="i" :to="link.to" :active-class="color" avatar
|
<v-list-tile v-if="!link.role || $hasRole(link.role)" :key="i" :to="link.to" :active-class="color"
|
||||||
class="v-list-item">
|
avatar
|
||||||
<v-list-tile-action>
|
class="v-list-item">
|
||||||
<v-icon>{{ link.icon }}</v-icon>
|
<v-list-tile-action>
|
||||||
</v-list-tile-action>
|
<v-icon>{{ link.icon }}</v-icon>
|
||||||
<v-list-tile-title v-text="link.text" />
|
</v-list-tile-action>
|
||||||
</v-list-tile>
|
<v-list-tile-title v-text="link.text"/>
|
||||||
</template>
|
</v-list-tile>
|
||||||
<!-- <v-list-tile
|
</template>
|
||||||
disabled
|
<!-- <v-list-tile
|
||||||
active-class="primary"
|
disabled
|
||||||
class="v-list-item v-list__tile--buy"
|
active-class="primary"
|
||||||
to="/upgrade"
|
class="v-list-item v-list__tile--buy"
|
||||||
>
|
to="/upgrade"
|
||||||
<v-list-tile-action>
|
>
|
||||||
<v-icon>mdi-package-up</v-icon>
|
<v-list-tile-action>
|
||||||
</v-list-tile-action>
|
<v-icon>mdi-package-up</v-icon>
|
||||||
<v-list-tile-title class="font-weight-light">
|
</v-list-tile-action>
|
||||||
Upgrade To PRO
|
<v-list-tile-title class="font-weight-light">
|
||||||
</v-list-tile-title>
|
Upgrade To PRO
|
||||||
</v-list-tile> -->
|
</v-list-tile-title>
|
||||||
</v-layout>
|
</v-list-tile> -->
|
||||||
</v-img>
|
</v-layout>
|
||||||
</v-navigation-drawer>
|
</v-img>
|
||||||
|
</v-navigation-drawer>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// Utilities
|
// Utilities
|
||||||
import {
|
import {
|
||||||
mapMutations,
|
mapMutations,
|
||||||
mapState
|
mapState
|
||||||
} from 'vuex'
|
} from 'vuex'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data: () => ({
|
data: () => ({
|
||||||
logo: './img/vuetifylogo.png',
|
logo: './img/vuetifylogo.png',
|
||||||
links: [
|
links: [
|
||||||
{
|
{
|
||||||
to: { name: 'Dashboard' },
|
to: {name: 'Dashboard'},
|
||||||
icon: 'mdi-view-dashboard',
|
icon: 'mdi-view-dashboard',
|
||||||
text: 'Dashboard'
|
text: 'Dashboard'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'MyInfo' },
|
to: {name: 'MyInfo'},
|
||||||
icon: 'mdi-account',
|
icon: 'mdi-account',
|
||||||
text: 'My Info'
|
text: 'My Info'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'SubmitTestResult' },
|
to: {name: 'SubmitTestResult'},
|
||||||
icon: 'fas fa-vial',
|
icon: 'fas fa-vial',
|
||||||
text: 'Add a Test Result'
|
text: 'Add a Test Result'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'AllResultTest' },
|
to: {name: 'AllResultTest'},
|
||||||
icon: 'description',
|
icon: 'description',
|
||||||
text: 'All Test Result'
|
text: 'All Test Result'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'ManageMedicalCenter' },
|
to: {name: 'ManageMedicalCenter'},
|
||||||
icon: 'far fa-building',
|
icon: 'far fa-building',
|
||||||
text: 'Manage Medical Center',
|
text: 'Manage Medical Center',
|
||||||
role: 'Admin',
|
role: 'Admin',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'ManageUsers' },
|
to: {name: 'ManageUsers'},
|
||||||
icon: 'far fa-address-book',
|
icon: 'far fa-address-book',
|
||||||
text: 'Manage Users',
|
text: 'Manage Users',
|
||||||
role: 'Admin',
|
role: 'Admin',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'ListTestType' },
|
to: {name: 'ListTestType'},
|
||||||
icon: 'fas fa-vial',
|
icon: 'fas fa-vial',
|
||||||
text: 'List Test Type',
|
text: 'List Test Type',
|
||||||
role: 'Admin'
|
role: 'Admin'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'AllItem' },
|
to: {name: 'AllItem'},
|
||||||
icon: 'far fa-clone',
|
icon: 'far fa-clone',
|
||||||
text: 'Items',
|
text: 'Items',
|
||||||
role: 'Admin|Supervisor|User'
|
role: 'Admin|Supervisor|User'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'AllPackage' },
|
to: {name: 'AllPackage'},
|
||||||
icon: 'fas fa-archive',
|
icon: 'fas fa-archive',
|
||||||
text: 'Packages',
|
text: 'Packages',
|
||||||
role: 'Admin|Supervisor|User'
|
role: 'Admin|Supervisor|User'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'AllLabels' },
|
to: {name: 'AllLabels'},
|
||||||
icon: 'fas fa-inbox',
|
icon: 'fas fa-inbox',
|
||||||
text: 'Labels'
|
text: 'Labels'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'AllCycle' },
|
to: {name: 'AllCycle'},
|
||||||
icon: 'cached',
|
icon: 'cached',
|
||||||
text: 'Cycles'
|
text: 'Cycles'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'Statistics' },
|
to: {name: 'Statistics'},
|
||||||
icon: 'fas fa-chart-bar',
|
icon: 'fas fa-chart-bar',
|
||||||
text: 'Statistics',
|
text: 'Statistics',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
to: { name: 'Tickets' },
|
to: {name: 'Tickets'},
|
||||||
icon: 'style',
|
icon: 'style',
|
||||||
text: 'Tickets',
|
text: 'Tickets',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
responsive: false
|
responsive: false
|
||||||
}),
|
}),
|
||||||
computed: {
|
computed: {
|
||||||
...mapState('app', ['image', 'color']),
|
...mapState('app', ['image', 'color']),
|
||||||
inputValue: {
|
inputValue: {
|
||||||
get() {
|
get() {
|
||||||
return this.$store.state.app.drawer
|
return this.$store.state.app.drawer
|
||||||
},
|
},
|
||||||
set(val) {
|
set(val) {
|
||||||
this.setDrawer(val)
|
this.setDrawer(val)
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
items() {
|
||||||
|
return this.$t('Layout.View.items')
|
||||||
|
}
|
||||||
},
|
},
|
||||||
items() {
|
mounted() {
|
||||||
return this.$t('Layout.View.items')
|
this.onResponsiveInverted()
|
||||||
|
window.addEventListener('resize', this.onResponsiveInverted)
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
window.removeEventListener('resize', this.onResponsiveInverted)
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
...mapMutations('app', ['setDrawer', 'toggleDrawer']),
|
||||||
|
onResponsiveInverted() {
|
||||||
|
if (window.innerWidth < 991) {
|
||||||
|
this.responsive = true
|
||||||
|
} else {
|
||||||
|
this.responsive = false
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.onResponsiveInverted()
|
|
||||||
window.addEventListener('resize', this.onResponsiveInverted)
|
|
||||||
},
|
|
||||||
beforeDestroy() {
|
|
||||||
window.removeEventListener('resize', this.onResponsiveInverted)
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
...mapMutations('app', ['setDrawer', 'toggleDrawer']),
|
|
||||||
onResponsiveInverted() {
|
|
||||||
if (window.innerWidth < 991) {
|
|
||||||
this.responsive = true
|
|
||||||
} else {
|
|
||||||
this.responsive = false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
#app-drawer {
|
#app-drawer {
|
||||||
.v-list__tile {
|
.v-list__tile {
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
|
|
||||||
&--buy {
|
&--buy {
|
||||||
margin-top: auto;
|
margin-top: auto;
|
||||||
margin-bottom: 17px;
|
margin-bottom: 17px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.v-image__image--contain {
|
.v-chip.user-role {
|
||||||
top: 9px;
|
border-radius: 4px;
|
||||||
height: 60%;
|
height: 20px !important;
|
||||||
}
|
line-height: 20px;
|
||||||
|
font-size: 11px;
|
||||||
|
letter-spacing: 1px;
|
||||||
|
|
||||||
.search-input {
|
.v-chip__content {
|
||||||
margin-bottom: 30px !important;
|
padding: 0 5px;
|
||||||
padding-left: 15px;
|
}
|
||||||
padding-right: 15px;
|
}
|
||||||
}
|
|
||||||
|
.v-image__image--contain {
|
||||||
|
top: 9px;
|
||||||
|
height: 60%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-input {
|
||||||
|
margin-bottom: 30px !important;
|
||||||
|
padding-left: 15px;
|
||||||
|
padding-right: 15px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<v-container grid-list-xs>
|
<v-container grid-list-xs>
|
||||||
<material-card color="black" title="Show Item">
|
<material-card color="black" title="Show Item">
|
||||||
@@ -29,15 +28,15 @@
|
|||||||
<v-flex xs12 md6 sm6>
|
<v-flex xs12 md6 sm6>
|
||||||
<div class>
|
<div class>
|
||||||
<span class="title CSSD-font">Specific :</span>
|
<span class="title CSSD-font">Specific :</span>
|
||||||
<span class="headline ml-1 CSSD-font" style="letter-spacing:0 !important">{{ data.specific
|
<span class="headline ml-1 CSSD-font" style="letter-spacing:0 !important">{{ data.specific}}</span>
|
||||||
}}</span>
|
|
||||||
</div>
|
</div>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md6 sm6>
|
<v-flex xs12 md6 sm6>
|
||||||
<div class>
|
<div class>
|
||||||
<span class="title CSSD-font">Register User :</span>
|
<span class="title CSSD-font">Register User :</span>
|
||||||
<span class="headline ml-2 CSSD-font" style="letter-spacing:0 !important">{{ (typeof data.user
|
<span class="headline ml-2 CSSD-font" style="letter-spacing:0 !important">
|
||||||
!= 'undefined') ? data.user.name : '' }}</span>
|
{{ (typeof data.user != 'undefined') ? data.user.name : '' }}
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md6 sm6>
|
<v-flex xs12 md6 sm6>
|
||||||
@@ -61,8 +60,9 @@
|
|||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout row wrap class="ml-4">
|
<v-layout row wrap class="ml-4">
|
||||||
<v-flex xs12 md6 sm6 v-if="QRCodeimg">
|
<v-flex xs12 md6 sm6 v-if="QRCodeimg">
|
||||||
<a :href="'/Show/Item/' + data.id + ''" target="_blank"><img :src="QRCodeimg"
|
<a :href="'/Show/Item/' + data.id + ''" target="_blank">
|
||||||
class="WM-Width-150"></a>
|
<img :src="QRCodeimg" class="WM-Width-150">
|
||||||
|
</a>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
@@ -75,10 +75,8 @@
|
|||||||
<span class="white--text CSSD-font">Print</span>
|
<span class="white--text CSSD-font">Print</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex class xs12 md2 sm2 @click="changeCurrentModal({
|
<v-flex class xs12 md2 sm2
|
||||||
modal: 'modal-user-list',
|
@click="changeCurrentModal({modal: 'modal-user-list', properties: { data }})">
|
||||||
properties: { data }
|
|
||||||
})">
|
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 60px">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 60px">
|
||||||
<!-- <v-icon class="white--text mr-2 caption">fas fa-print</v-icon> -->
|
<!-- <v-icon class="white--text mr-2 caption">fas fa-print</v-icon> -->
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-rocket</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-rocket</v-icon>
|
||||||
|
|||||||
@@ -5,14 +5,18 @@
|
|||||||
<div class="text-center"> Are you sure?</div>
|
<div class="text-center"> Are you sure?</div>
|
||||||
<v-layout row wrap>
|
<v-layout row wrap>
|
||||||
<v-layout align-center justify-center wrap class="px-5 mt-2">
|
<v-layout align-center justify-center wrap class="px-5 mt-2">
|
||||||
<v-btn @click="changeRole" class="WM-CyanBlueGradient-BG" style="padding:10px 60px">
|
<v-flex xs12 sm6 md6 class="text-center">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
<v-btn @click="closeModal" class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black">
|
||||||
<span class="white--text">Confirm</span>
|
<v-icon class="black--text mr-2 caption">fas fa-times</v-icon>
|
||||||
</v-btn>
|
<span class="black--text">Close</span>
|
||||||
<v-btn @click="closeModal" class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black ml-5">
|
</v-btn>
|
||||||
<v-icon class="black--text mr-2 caption">fas fa-times</v-icon>
|
</v-flex>
|
||||||
<span class="black--text">Close</span>
|
<v-flex xs12 sm6 md6 class="text-center">
|
||||||
</v-btn>
|
<v-btn @click="changeRole" class="WM-CyanBlueGradient-BG" style="padding:10px 60px">
|
||||||
|
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
||||||
|
<span class="white--text">Confirm</span>
|
||||||
|
</v-btn>
|
||||||
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</material-card>
|
</material-card>
|
||||||
@@ -20,7 +24,8 @@
|
|||||||
</v-form>
|
</v-form>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapGetters, mapMutations } from "vuex";
|
import {mapGetters, mapMutations} from "vuex";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations("modal", ["closeModal"]),
|
...mapMutations("modal", ["closeModal"]),
|
||||||
|
|||||||
@@ -29,10 +29,10 @@
|
|||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout class="px-4 my-3">
|
<v-layout class="px-4 my-3">
|
||||||
<v-divider></v-divider>
|
<v-divider/>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<div class="text-xs-center mt-2" v-if="lastPage > 1">
|
<div class="text-xs-center mt-2" v-if="lastPage > 1">
|
||||||
<v-pagination color="black" v-model="currentPage" :length="lastPage" :total-visible="6"></v-pagination>
|
<v-pagination color="black" v-model="currentPage" :length="lastPage" :total-visible="6"/>
|
||||||
</div>
|
</div>
|
||||||
<v-layout row wrap align-center justify-strart class="mt-3">
|
<v-layout row wrap align-center justify-strart class="mt-3">
|
||||||
<v-btn type="submit" class="WM-CyanBlueGradient-BG ml-5 px-5">
|
<v-btn type="submit" class="WM-CyanBlueGradient-BG ml-5 px-5">
|
||||||
|
|||||||
@@ -1,56 +1,59 @@
|
|||||||
<template>
|
<template>
|
||||||
<v-form>
|
<v-form>
|
||||||
<v-container grid-list-xs fluid>
|
<v-container grid-list-xs fluid>
|
||||||
<material-card class color="black" title="Role">
|
<material-card class color="black" title="Role">
|
||||||
<v-layout row align-center justify-center wrap class="px-5 mb-3">
|
<v-layout row align-center justify-center wrap class="px-5 mb-3">
|
||||||
<v-flex xs12 md3 sm3>
|
<v-flex xs12 md3 sm3>
|
||||||
<v-select :items="items" v-model="data.roles" label="Roles" color="black"></v-select>
|
<v-select :items="items" v-model="data.roles" label="Roles" color="black"></v-select>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout row wrap>
|
<v-layout row wrap>
|
||||||
<v-layout align-center justify-center wrap class="px-5 mt-2">
|
<v-layout align-center justify-center wrap class="px-5 mt-2">
|
||||||
<v-btn @click="changeRole" class="WM-CyanBlueGradient-BG" style="padding:10px 60px">
|
<v-flex xs12 sm6 md6 lg3 class="text-center">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black"
|
||||||
<span class="white--text">Add</span>
|
@click="closeModal">
|
||||||
</v-btn>
|
<v-icon class="black--text mr-2 caption">fas fa-times</v-icon>
|
||||||
<v-btn
|
<span class="black--text">Close</span>
|
||||||
@click="closeModal"
|
</v-btn>
|
||||||
class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black ml-5"
|
</v-flex>
|
||||||
>
|
<v-flex xs12 sm6 md6 lg3 class="text-center">
|
||||||
<v-icon class="black--text mr-2 caption">fas fa-times</v-icon>
|
<v-btn @click="changeRole" class="WM-CyanBlueGradient-BG" style="padding:10px 60px">
|
||||||
<span class="black--text">Close</span>
|
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
||||||
</v-btn>
|
<span class="white--text">Add</span>
|
||||||
</v-layout>
|
</v-btn>
|
||||||
</v-layout>
|
</v-flex>
|
||||||
</material-card>
|
</v-layout>
|
||||||
</v-container>
|
</v-layout>
|
||||||
</v-form>
|
</material-card>
|
||||||
|
</v-container>
|
||||||
|
</v-form>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapGetters, mapMutations } from "vuex";
|
import {mapGetters, mapMutations} from "vuex";
|
||||||
import { ApiService } from "@/services";
|
import {ApiService} from "@/services";
|
||||||
import { roles } from "@/config/utils";
|
import {roles} from "@/config/utils";
|
||||||
import { urls } from "@/config/urls";
|
import {urls} from "@/config/urls";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data: () => ({
|
data: () => ({
|
||||||
items: roles,
|
items: roles,
|
||||||
data: { roles: "" }
|
data: {roles: ""}
|
||||||
}),
|
}),
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations("modal", ["closeModal", "setResultModal"]),
|
...mapMutations("modal", ["closeModal", "setResultModal"]),
|
||||||
async changeRole() {
|
async changeRole() {
|
||||||
const result = await ApiService.post(
|
const result = await ApiService.post(
|
||||||
urls.changeRoleUser(this.getModalProperties.user.id),
|
urls.changeRoleUser(this.getModalProperties.user.id),
|
||||||
this.data
|
this.data
|
||||||
);
|
);
|
||||||
if (result && result.status == 200) {
|
if (result && result.status == 200) {
|
||||||
this.setResultModal(result.data.data);
|
this.setResultModal(result.data.data);
|
||||||
this.closeModal();
|
this.closeModal();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
...mapGetters("modal", ["getModalProperties"])
|
||||||
}
|
}
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
...mapGetters("modal", ["getModalProperties"])
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
@@ -100,9 +100,9 @@ export default ApiService
|
|||||||
export { ApiService }
|
export { ApiService }
|
||||||
|
|
||||||
axios.interceptors.request.use(request => {
|
axios.interceptors.request.use(request => {
|
||||||
console.log("🔵 API Request:", request.method.toUpperCase(), request.url);
|
// console.log("🔵 API Request:", request.method.toUpperCase(), request.url);
|
||||||
console.log("🔹 Headers:", request.headers);
|
// console.log("🔹 Headers:", request.headers);
|
||||||
console.log("🔹 Data:", request.data);
|
// console.log("🔹 Data:", request.data);
|
||||||
return request;
|
return request;
|
||||||
}, error => {
|
}, error => {
|
||||||
console.error("🔴 Request Error:", error);
|
console.error("🔴 Request Error:", error);
|
||||||
@@ -110,9 +110,9 @@ axios.interceptors.request.use(request => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
axios.interceptors.response.use(response => {
|
axios.interceptors.response.use(response => {
|
||||||
console.log("🟢 API Response:", response.config.url);
|
// console.log("🟢 API Response:", response.config.url);
|
||||||
console.log("🟢 Status:", response.status);
|
// console.log("🟢 Status:", response.status);
|
||||||
console.log("🟢 Data:", response.data);
|
// console.log("🟢 Data:", response.data);
|
||||||
return response;
|
return response;
|
||||||
}, error => {
|
}, error => {
|
||||||
console.error("🔴 API Error:", error.response ? error.response.data : error);
|
console.error("🔴 API Error:", error.response ? error.response.data : error);
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ h3.CSSD-font {
|
|||||||
.v-btn.WM-NoShadow:not(.v-btn--depressed):not(.v-btn--flat) {
|
.v-btn.WM-NoShadow:not(.v-btn--depressed):not(.v-btn--flat) {
|
||||||
-webkit-box-shadow: none !important;
|
-webkit-box-shadow: none !important;
|
||||||
box-shadow: none !important;
|
box-shadow: none !important;
|
||||||
padding: 8px 30px;
|
padding: 10px 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.inputfile {
|
.inputfile {
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
</v-flex>
|
</v-flex>
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex class xs12 sm6 md6 lg2 xl1>
|
<v-flex class xs12 sm6 md6 lg2 xl1>
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load()">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load()">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -63,12 +63,13 @@
|
|||||||
</template>
|
</template>
|
||||||
<template slot="items" slot-scope="{ item }">
|
<template slot="items" slot-scope="{ item }">
|
||||||
<td class="headline font-weight-light">{{ item.id }}</td>
|
<td class="headline font-weight-light">{{ item.id }}</td>
|
||||||
<td class="title font-weight-light">{{ (item.user && item.user.medical_center) ?
|
<td class="title font-weight-light">
|
||||||
item.user.medical_center.name : '' }}</td>
|
{{ (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.sterilizer_id }}</td>
|
||||||
<td class="title font-weight-light">{{ item.cycle_number }}</td>
|
<td class="title font-weight-light">{{ item.cycle_number }}</td>
|
||||||
<td class="title font-weight-light">{{ item.date }}</td>
|
<td class="title font-weight-light">{{ item.date }}</td>
|
||||||
<td class="text-xs-right FlexBtn Height-MD-60">
|
<td class="text-xs-right FlexBtn Height-MD-60 justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2"
|
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2"
|
||||||
|
|||||||
@@ -29,7 +29,7 @@
|
|||||||
<!--btn-->
|
<!--btn-->
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex class xs12 sm6 md6 lg2 xl1>
|
<v-flex class xs12 sm6 md6 lg2 xl1>
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load()">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load()">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -64,7 +64,7 @@
|
|||||||
<td class="title font-weight-light">{{ item.udi | text_20_letter }}</td>
|
<td class="title font-weight-light">{{ item.udi | text_20_letter }}</td>
|
||||||
<td class="title font-weight-light">{{ item.size }}</td>
|
<td class="title font-weight-light">{{ item.size }}</td>
|
||||||
<td class="title font-weight-light">{{ item.status }}</td>
|
<td class="title font-weight-light">{{ item.status }}</td>
|
||||||
<td class="text-xs-right FlexBtn Height-MD-60">
|
<td class="text-xs-right FlexBtn Height-MD-60 justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover v-if="$hasRole('Admin|Supervisor')">
|
<v-tooltip bottom open-on-hover v-if="$hasRole('Admin|Supervisor')">
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn
|
<v-btn
|
||||||
|
|||||||
@@ -35,7 +35,7 @@
|
|||||||
</v-flex>
|
</v-flex>
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex xs12 sm6 md6 lg2 xl1 class="">
|
<v-flex xs12 sm6 md6 lg2 xl1 class="">
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load()">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load()">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -67,7 +67,7 @@
|
|||||||
<td class="title font-weight-light">{{ item.user ? item.user.name : '' }}</td>
|
<td class="title font-weight-light">{{ item.user ? item.user.name : '' }}</td>
|
||||||
<td class="title font-weight-light">{{ item.cycle_number }}</td>
|
<td class="title font-weight-light">{{ item.cycle_number }}</td>
|
||||||
<td class="title font-weight-light">{{ item.sterilizer_id }}</td>
|
<td class="title font-weight-light">{{ item.sterilizer_id }}</td>
|
||||||
<td class="text-xs-right FlexBtn Height-MD-60">
|
<td class="text-xs-right FlexBtn Height-MD-60 justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2"
|
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2"
|
||||||
|
|||||||
+111
-106
@@ -1,118 +1,123 @@
|
|||||||
<template>
|
<template>
|
||||||
<v-form ref="form">
|
<v-form ref="form">
|
||||||
<v-container grid-list-xs>
|
<v-container grid-list-xs>
|
||||||
<material-card class color="black" title="Add Medical Center" text>
|
<material-card class color="black" title="Add Medical Center" text>
|
||||||
<v-layout row wrap class="px-5 mb-3">
|
<v-layout row wrap class="px-5 mb-3">
|
||||||
<v-flex xs12 md3 xs3>
|
<v-flex xs12 sm6 md6 lg3>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model="medicalCenter.name"
|
v-model="medicalCenter.name"
|
||||||
label="Name"
|
label="Name"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
:rules="[rules.required, rules.counter]"
|
:rules="[rules.required, rules.counter]"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 xs3>
|
<v-flex xs12 sm6 md6 lg3>
|
||||||
<v-select
|
<v-select
|
||||||
:items="cities"
|
:items="cities"
|
||||||
item-text="name_en"
|
item-text="name_en"
|
||||||
item-value="id"
|
item-value="id"
|
||||||
v-model="medicalCenter.city_id"
|
v-model="medicalCenter.city_id"
|
||||||
label="Select City"
|
label="Select City"
|
||||||
></v-select>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 xs3>
|
<v-flex xs12 sm6 md6 lg3>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model="medicalCenter.address"
|
v-model="medicalCenter.address"
|
||||||
label="Address"
|
label="Address"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 xs3>
|
<v-flex xs12 sm6 md6 lg3>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model="medicalCenter.phone_number"
|
v-model="medicalCenter.phone_number"
|
||||||
label="Phone Number"
|
label="Phone Number"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout row wrap align-center justify-center class="mt-3">
|
<v-layout row wrap align-center justify-center class="mt-3">
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" @click="AddMedicalCenter" style="padding:10px 60px">
|
<v-flex xs12 sm6 md6 lg3 class="text-center">
|
||||||
<template v-if="$route.params.medicalCenter">
|
<router-link :to="{name:'ManageMedicalCenter'}">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-edit</v-icon>
|
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black">
|
||||||
<span class="white--text">Edit</span>
|
<v-icon class="black--text mr-2 caption">fas fa-chevron-left</v-icon>
|
||||||
</template>
|
<span class="black--text">Back</span>
|
||||||
<template v-else>
|
</v-btn>
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
</router-link>
|
||||||
<span class="white--text">Add</span>
|
</v-flex>
|
||||||
</template>
|
<v-flex xs12 sm6 md6 lg3 class="text-center">
|
||||||
</v-btn>
|
<v-btn class="WM-CyanBlueGradient-BG" @click="AddMedicalCenter" style="padding:10px 60px">
|
||||||
<router-link :to="{name:'ManageMedicalCenter'}">
|
<template v-if="$route.params.medicalCenter">
|
||||||
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black ml-5">
|
<v-icon class="white--text mr-2 caption">fas fa-edit</v-icon>
|
||||||
<v-icon class="black--text mr-2 caption">fas fa-chevron-left</v-icon>
|
<span class="white--text">Edit</span>
|
||||||
<span class="black--text">Back</span>
|
</template>
|
||||||
</v-btn>
|
<template v-else>
|
||||||
</router-link>
|
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
||||||
</v-layout>
|
<span class="white--text">Add</span>
|
||||||
</material-card>
|
</template>
|
||||||
</v-container>
|
</v-btn>
|
||||||
</v-form>
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</material-card>
|
||||||
|
</v-container>
|
||||||
|
</v-form>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { ApiService } from "@/services";
|
import {ApiService} from "@/services";
|
||||||
import { urls } from "@/config/urls";
|
import {urls} from "@/config/urls";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
medicalCenter: {
|
medicalCenter: {
|
||||||
name: "",
|
name: "",
|
||||||
address : "",
|
address: "",
|
||||||
city_id : "",
|
city_id: "",
|
||||||
phone_number : ""
|
phone_number: ""
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
required: value => !!value || "Required.",
|
required: value => !!value || "Required.",
|
||||||
counter: value => value.length <= 30 || "Max 30 characters"
|
counter: value => value.length <= 30 || "Max 30 characters"
|
||||||
|
},
|
||||||
|
cities: []
|
||||||
|
};
|
||||||
},
|
},
|
||||||
cities : []
|
created() {
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
if (this.$route.params.medicalCenter) {
|
|
||||||
this.load(this.$route.params.medicalCenter);
|
|
||||||
}
|
|
||||||
this.loadCities();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
async load(id) {
|
|
||||||
const result = await ApiService.get(urls.editMedicalCenter(id));
|
|
||||||
if (result && result.status == 200) {
|
|
||||||
this.medicalCenter = result.data.data;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
async loadCities() {
|
|
||||||
const result = await ApiService.get(urls.allCities);
|
|
||||||
if (result.status == 200) {
|
|
||||||
this.cities = result.data.data;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
async AddMedicalCenter() {
|
|
||||||
if (this.$refs.form.validate()) {
|
|
||||||
if (this.$route.params.medicalCenter) {
|
if (this.$route.params.medicalCenter) {
|
||||||
var result = await ApiService.put(urls.updateMedicalCenter(this.$route.params.medicalCenter), this.medicalCenter);
|
this.load(this.$route.params.medicalCenter);
|
||||||
} else {
|
|
||||||
var result = await ApiService.post(urls.storeMedicalCenter, this.medicalCenter);
|
|
||||||
}
|
}
|
||||||
if (result && result.status == 200) {
|
this.loadCities();
|
||||||
this.$router.push({name : "ManageMedicalCenter"});
|
},
|
||||||
|
methods: {
|
||||||
|
async load(id) {
|
||||||
|
const result = await ApiService.get(urls.editMedicalCenter(id));
|
||||||
|
if (result && result.status == 200) {
|
||||||
|
this.medicalCenter = result.data.data;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async loadCities() {
|
||||||
|
const result = await ApiService.get(urls.allCities);
|
||||||
|
if (result.status == 200) {
|
||||||
|
this.cities = result.data.data;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async AddMedicalCenter() {
|
||||||
|
if (this.$refs.form.validate()) {
|
||||||
|
if (this.$route.params.medicalCenter) {
|
||||||
|
var result = await ApiService.put(urls.updateMedicalCenter(this.$route.params.medicalCenter), this.medicalCenter);
|
||||||
|
} else {
|
||||||
|
var result = await ApiService.post(urls.storeMedicalCenter, this.medicalCenter);
|
||||||
|
}
|
||||||
|
if (result && result.status == 200) {
|
||||||
|
this.$router.push({name: "ManageMedicalCenter"});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
</v-flex>
|
</v-flex>
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex class xs12 sm6 md6 lg2 xl1>
|
<v-flex class xs12 sm6 md6 lg2 xl1>
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load()">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load()">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout class="px-4 my-3">
|
<v-layout class="px-4 my-3">
|
||||||
<v-divider></v-divider>
|
<v-divider/>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout align-center justify-center wrap class="px-5 mt-3">
|
<v-layout align-center justify-center wrap class="px-5 mt-3">
|
||||||
<v-flex md12>
|
<v-flex md12>
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
<td class="headline font-weight-light WM-NoLetterSpacing">{{ item.name }}</td>
|
<td class="headline font-weight-light WM-NoLetterSpacing">{{ item.name }}</td>
|
||||||
<td class="title font-weight-light">{{ $d(new Date(item.created_at), 'long') }}</td>
|
<td class="title font-weight-light">{{ $d(new Date(item.created_at), 'long') }}</td>
|
||||||
<td class="title font-weight-light">{{ item.users_count }} Operator</td>
|
<td class="title font-weight-light">{{ item.users_count }} Operator</td>
|
||||||
<td class="text-xs-right FlexBtn Height-MD-80 Height-SM-48">
|
<td class="text-xs-right FlexBtn Height-MD-80 Height-SM-48 justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<router-link class="LinkBtn"
|
<router-link class="LinkBtn"
|
||||||
@@ -72,7 +72,7 @@
|
|||||||
</v-data-table>
|
</v-data-table>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-divider></v-divider>
|
<v-divider/>
|
||||||
<div class="text-xs-center mt-2" v-if="lastPage > 1">
|
<div class="text-xs-center mt-2" v-if="lastPage > 1">
|
||||||
<v-pagination color="black" v-model="currentPage" :length="lastPage" :total-visible="6"></v-pagination>
|
<v-pagination color="black" v-model="currentPage" :length="lastPage" :total-visible="6"></v-pagination>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
<v-select :items="roles" name="roles" v-model="filter.role" label="Roles" class="pa-2" color="black"></v-select>
|
<v-select :items="roles" name="roles" v-model="filter.role" label="Roles" class="pa-2" color="black"></v-select>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md2 sm2 class="text-xs-right">
|
<v-flex xs12 md2 sm2 class="text-xs-right">
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" @click="load" style="padding:9px 30px">
|
<v-btn class="WM-CyanBlueGradient-BG" @click="load" style="padding:10px 30px">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
</td>
|
</td>
|
||||||
<td class="title font-weight-light">{{ item.cell_number }}</td>
|
<td class="title font-weight-light">{{ item.cell_number }}</td>
|
||||||
<td class="title font-weight-light">{{ item.status }}</td>
|
<td class="title font-weight-light">{{ item.status }}</td>
|
||||||
<td class="text-xs-right">
|
<td class="text-xs-right justify-self-end">
|
||||||
<v-btn
|
<v-btn
|
||||||
:color="item.status == 'Active' ? 'red' : 'green'"
|
:color="item.status == 'Active' ? 'red' : 'green'"
|
||||||
@click="changeStatus(item.id)"
|
@click="changeStatus(item.id)"
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
<td class="title font-weight-light">{{ item.name }}</td>
|
<td class="title font-weight-light">{{ item.name }}</td>
|
||||||
<td class="title font-weight-light">{{ item.udi }}</td>
|
<td class="title font-weight-light">{{ item.udi }}</td>
|
||||||
<td class="title font-weight-light">{{ item.size }}</td>
|
<td class="title font-weight-light">{{ item.size }}</td>
|
||||||
<td class="text-xs-right FlexBtn Height-MD-60">
|
<td class="text-xs-right FlexBtn Height-MD-60 justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2" @click="show(item.id)">
|
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2" @click="show(item.id)">
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
<td class="title font-weight-light">{{ item.name }}</td>
|
<td class="title font-weight-light">{{ item.name }}</td>
|
||||||
<td class="title font-weight-light">{{ item.udi }}</td>
|
<td class="title font-weight-light">{{ item.udi }}</td>
|
||||||
<td class="title font-weight-light">{{ item.size }}</td>
|
<td class="title font-weight-light">{{ item.size }}</td>
|
||||||
<td class="text-xs-right FlexBtn Height-MD-60">
|
<td class="text-xs-right FlexBtn Height-MD-60 justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2" @click="show(item.id)">
|
<v-btn v-bind="attrs" v-on="on" color="cyan" class="mr-2" @click="show(item.id)">
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
:clearable="true"/>
|
:clearable="true"/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<!-- <v-flex class xs12 md2 sm3>
|
<!-- <v-flex class xs12 md2 sm3>
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load()">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load()">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
<!-- <v-spacer></v-spacer> -->
|
<!-- <v-spacer></v-spacer> -->
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex class xs12 sm6 md6 lg2 xl1>
|
<v-flex class xs12 sm6 md6 lg2 xl1>
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load()">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load()">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -60,14 +60,13 @@
|
|||||||
<td class="title font-weight-light">
|
<td class="title font-weight-light">
|
||||||
{{ (item.user && item.user.medical_center) ? item.user.medical_center.name : '' }}
|
{{ (item.user && item.user.medical_center) ? item.user.medical_center.name : '' }}
|
||||||
</td>
|
</td>
|
||||||
<td class="title font-weight-light">{{
|
<td class="title font-weight-light">
|
||||||
item.user ? item.user.name : '' | text_20_letter
|
{{item.user ? item.user.name : '' | text_20_letter}}
|
||||||
}}
|
|
||||||
</td>
|
</td>
|
||||||
<td class="title font-weight-light">{{ item.udi | text_20_letter }}</td>
|
<td class="title font-weight-light">{{ item.udi | text_20_letter }}</td>
|
||||||
<td class="title font-weight-light">{{ item.description }}</td>
|
<td class="title font-weight-light">{{ item.description }}</td>
|
||||||
<td class="title font-weight-light">{{ item.status }}</td>
|
<td class="title font-weight-light">{{ item.status }}</td>
|
||||||
<td class="text-xs-right FlexBtn Height-MD-60">
|
<td class="text-xs-right FlexBtn Height-MD-60 justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover v-if="$hasRole('Admin|Supervisor')">
|
<v-tooltip bottom open-on-hover v-if="$hasRole('Admin|Supervisor')">
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn :color="!['suspended', 'rejected'].includes(item.status) ? 'red' : 'green'"
|
<v-btn :color="!['suspended', 'rejected'].includes(item.status) ? 'red' : 'green'"
|
||||||
|
|||||||
@@ -53,7 +53,7 @@
|
|||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex class xs12 sm6 md6 lg2 xl1>
|
<v-flex class xs12 sm6 md6 lg2 xl1>
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load(null, null)">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load(null, null)">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -69,7 +69,7 @@
|
|||||||
</v-layout>
|
</v-layout>
|
||||||
<!--<v-layout wrap class="px-5 mb-3 my-3">
|
<!--<v-layout wrap class="px-5 mb-3 my-3">
|
||||||
<v-flex class xs12 md3 sm3 class="WM-XL-Align-L text-lg-left">
|
<v-flex class xs12 md3 sm3 class="WM-XL-Align-L text-lg-left">
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load(null, null)">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load(null, null)">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -113,7 +113,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<!-- {{ item.verified }} -->
|
<!-- {{ item.verified }} -->
|
||||||
</td>
|
</td>
|
||||||
<td class="text-xs-right FlexBtn">
|
<td class="text-xs-right FlexBtn justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn color="cyan" class="mr-2" @click="show(item.id)" v-bind="attrs"
|
<v-btn color="cyan" class="mr-2" @click="show(item.id)" v-bind="attrs"
|
||||||
|
|||||||
+255
-352
@@ -3,30 +3,30 @@
|
|||||||
<v-container grid-list-xs>
|
<v-container grid-list-xs>
|
||||||
<material-card color="black" title="Add a New Test" class>
|
<material-card color="black" title="Add a New Test" class>
|
||||||
<v-layout row wrap class="ma-2">
|
<v-layout row wrap class="ma-2">
|
||||||
<v-flex xs12 md3 sm3 class="WM-FlexCenter">
|
<v-flex xs12 md3 sm3 class="WM-FlexCenter">
|
||||||
<v-icon class="fa fa-align-left mr-2 WM-Margin-B-8"></v-icon>
|
<v-icon class="fa fa-align-left mr-2 WM-Margin-B-8"/>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
name="name"
|
name="name"
|
||||||
v-model="form.name"
|
v-model="form.name"
|
||||||
label="Name"
|
label="Name"
|
||||||
color="black"
|
color="black"
|
||||||
class="py-3 pr-3"
|
class="py-3 pr-3"
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 sm3 class="WM-FlexCenter pl-3">
|
<v-flex xs12 md3 sm3 class="WM-FlexCenter pl-3">
|
||||||
<v-icon class="fas fa-sort-numeric-up mr-2 WM-Margin-B-8"></v-icon>
|
<v-icon class="fas fa-sort-numeric-up mr-2 WM-Margin-B-8"/>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
name="uniquecode"
|
name="uniquecode"
|
||||||
v-model="form.unique_code"
|
v-model="form.unique_code"
|
||||||
label="Unique Code"
|
label="Unique Code"
|
||||||
color="black"
|
color="black"
|
||||||
class="py-3 pr-3"
|
class="py-3 pr-3"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<!-- <v-flex xs12 md3 sm3 class="WM-FlexCenter pl-3">
|
<!-- <v-flex xs12 md3 sm3 class="WM-FlexCenter pl-3">
|
||||||
<v-icon class="fas fa-sort-numeric-up mr-2 WM-Margin-B-8"></v-icon>
|
<v-icon class="fas fa-sort-numeric-up mr-2 WM-Margin-B-8"/>
|
||||||
<v-autocomplete
|
<v-autocomplete
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
:items="deviceLabels"
|
:items="deviceLabels"
|
||||||
@@ -36,341 +36,238 @@
|
|||||||
label="ID Label"
|
label="ID Label"
|
||||||
color="black"
|
color="black"
|
||||||
class="py-3 pr-3"
|
class="py-3 pr-3"
|
||||||
></v-autocomplete>
|
/>
|
||||||
</v-flex> -->
|
</v-flex> -->
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout
|
<v-layout row wrap class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Relative"
|
||||||
row
|
:key="keyForm" v-for="(info, keyForm) in form.info">
|
||||||
wrap
|
|
||||||
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Relative"
|
|
||||||
:key="keyForm"
|
|
||||||
v-for="(info, keyForm) in form.info"
|
|
||||||
>
|
|
||||||
<v-layout row wrap class="ma-2 WM-Width-Full">
|
<v-layout row wrap class="ma-2 WM-Width-Full">
|
||||||
<v-flex xs12 md3 sm3>
|
<v-flex xs12 md3 sm3>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
name="inputname"
|
name="inputname"
|
||||||
v-model="info.name"
|
v-model="info.name"
|
||||||
label="Input Name"
|
label="Input Name"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
prepend-icon="fa fa-align-left"
|
prepend-icon="fa fa-align-left"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 sm3>
|
<v-flex xs12 md3 sm3>
|
||||||
<v-select
|
<v-select
|
||||||
:items="type"
|
:items="type"
|
||||||
item-text="state"
|
item-text="state"
|
||||||
item-value="abbr"
|
item-value="abbr"
|
||||||
label="Type"
|
label="Type"
|
||||||
v-bind="info.id !== 0 ? {disabled: true} : {disabled: false}"
|
v-bind="info.id !== 0 ? {disabled: true} : {disabled: false}"
|
||||||
v-model="info.type"
|
v-model="info.type"
|
||||||
single-line
|
single-line
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
prepend-icon="fa fa-filter"
|
prepend-icon="fa fa-filter"
|
||||||
@change="changeType(keyForm, info.type)"
|
@change="changeType(keyForm, info.type)"
|
||||||
></v-select>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<!-- Text Input Section -->
|
<!-- Text Input Section -->
|
||||||
<v-flex xs12 md3 sm3>
|
<v-flex xs12 md3 sm3>
|
||||||
<v-select
|
<v-select
|
||||||
:items="size"
|
:items="size"
|
||||||
item-text="state"
|
item-text="state"
|
||||||
item-value="abbr"
|
item-value="abbr"
|
||||||
label="Size"
|
label="Size"
|
||||||
v-model="info.size"
|
v-model="info.size"
|
||||||
v-if="info.type !== 'Form'"
|
v-if="info.type !== 'Form'"
|
||||||
single-line
|
single-line
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
prepend-icon="fa fa-sort-numeric-asc"
|
prepend-icon="fa fa-sort-numeric-asc"
|
||||||
></v-select>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 sm3 v-if="info.type == 'Text'">
|
<v-flex xs12 md3 sm3 v-if="info.type == 'Text'">
|
||||||
<v-layout row wrap>
|
<v-layout row wrap>
|
||||||
<v-flex xs12 class="WM-FlexWrap ml-3">
|
<v-flex xs12 class="WM-FlexWrap ml-3">
|
||||||
<v-checkbox
|
<v-checkbox
|
||||||
label="require barcode scanner"
|
label="require barcode scanner"
|
||||||
v-model="info.require_scanner"
|
v-model="info.require_scanner"
|
||||||
></v-checkbox>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
|
|
||||||
|
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<!-- SelectBox Section -->
|
<!-- SelectBox Section -->
|
||||||
<v-layout
|
<v-layout class="ma-3 pa-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full" row wrap
|
||||||
class="ma-3 pa-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full"
|
v-if="info.type === 'Select' || info.type === 'Checkbox' || info.type === 'Radiobutton'">
|
||||||
row
|
<v-layout row wrap class="WM-Relative WM-Width-Full"
|
||||||
wrap
|
v-if="info['options'].length > 0">
|
||||||
v-if="info.type === 'Select' || info.type === 'Checkbox' || info.type === 'Radiobutton'"
|
<v-flex xs12 md3 sm3 v-for="(selectbox , keySelect) in info['options']" :key="keySelect"
|
||||||
>
|
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative">
|
||||||
<v-layout
|
|
||||||
row
|
|
||||||
wrap
|
|
||||||
class="WM-Relative WM-Width-Full"
|
|
||||||
v-if="info['options'].length > 0"
|
|
||||||
>
|
|
||||||
<v-flex
|
|
||||||
xs12
|
|
||||||
md3
|
|
||||||
sm3
|
|
||||||
v-for="(selectbox , keySelect) in info['options']"
|
|
||||||
:key="keySelect"
|
|
||||||
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative"
|
|
||||||
>
|
|
||||||
<v-text-field
|
<v-text-field
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
name="title"
|
name="title"
|
||||||
label="Title"
|
label="Title"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2 Input"
|
class="pa-2 Input"
|
||||||
v-model="selectbox.title"
|
v-model="selectbox.title"
|
||||||
prepend-icon="fa fa-align-left"
|
prepend-icon="fa fa-align-left"
|
||||||
></v-text-field>
|
/>
|
||||||
<v-btn
|
<v-btn absolute small right bottom color="pink" v-if="keySelect >= 1"
|
||||||
absolute
|
@click="removeSelectbox(keyForm, keySelect)">
|
||||||
small
|
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>
|
||||||
right
|
REMOVE
|
||||||
bottom
|
|
||||||
color="pink"
|
|
||||||
v-if="keySelect >= 1"
|
|
||||||
@click="removeSelectbox(keyForm, keySelect)"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>REMOVE
|
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-btn
|
<v-btn absolute right bottom small @click="addSelectbox(keyForm)"
|
||||||
absolute
|
color="black"
|
||||||
right
|
class="mb-2">
|
||||||
bottom
|
|
||||||
small
|
|
||||||
@click="addSelectbox(keyForm)"
|
|
||||||
color="black"
|
|
||||||
class="mb-2"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
||||||
<span class="white--text">Add</span>
|
<span class="white--text">Add</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-layout
|
<v-layout class="ma-3 pa-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full" row wrap
|
||||||
class="ma-3 pa-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full"
|
v-if="info.type === 'Range'">
|
||||||
row
|
<v-layout row wrap class="WM-Relative WM-Width-Full">
|
||||||
wrap
|
<v-flex xs12 md3 sm3
|
||||||
v-if="info.type === 'Range'"
|
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative">
|
||||||
>
|
|
||||||
<v-layout
|
|
||||||
row
|
|
||||||
wrap
|
|
||||||
class="WM-Relative WM-Width-Full"
|
|
||||||
>
|
|
||||||
<v-flex
|
|
||||||
xs12
|
|
||||||
md3
|
|
||||||
sm3
|
|
||||||
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative"
|
|
||||||
>
|
|
||||||
<v-text-field
|
<v-text-field
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
name="from"
|
name="from"
|
||||||
label="From"
|
label="From"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2 Input"
|
class="pa-2 Input"
|
||||||
v-model="info['options'][0].title"
|
v-model="info['options'][0].title"
|
||||||
prepend-icon="fa fa-angle-right"
|
prepend-icon="fa fa-angle-right"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex
|
<v-flex
|
||||||
xs12
|
xs12
|
||||||
md3
|
md3
|
||||||
sm3
|
sm3
|
||||||
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative"
|
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative"
|
||||||
>
|
>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
name="to"
|
name="to"
|
||||||
label="To"
|
label="To"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2 Input"
|
class="pa-2 Input"
|
||||||
v-model="info['options'][1].title"
|
v-model="info['options'][1].title"
|
||||||
prepend-icon="fa fa-angle-right"
|
prepend-icon="fa fa-angle-right"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<!-- Form Section -->
|
<!-- Form Section -->
|
||||||
<v-layout
|
<v-layout
|
||||||
row
|
|
||||||
wrap
|
|
||||||
v-if="info.type === 'Form'"
|
|
||||||
class="pa-3 my-4 mx-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full"
|
|
||||||
>
|
|
||||||
<v-layout
|
|
||||||
row
|
row
|
||||||
wrap
|
wrap
|
||||||
v-for="(children , keychildren) in info.children"
|
v-if="info.type === 'Form'"
|
||||||
:key="keychildren"
|
class="pa-3 my-4 mx-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full"
|
||||||
class="pa-3 my-4 mx-3 WM-Border WM-Border-Gray WM-Color-LightGrey WM-Width-Full WM-Relative Form"
|
>
|
||||||
>
|
<v-layout row wrap v-for="(children , keychildren) in info.children" :key="keychildren"
|
||||||
|
class="pa-3 my-4 mx-3 WM-Border WM-Border-Gray WM-Color-LightGrey WM-Width-Full WM-Relative Form">
|
||||||
<v-flex xs12 md3 sm3>
|
<v-flex xs12 md3 sm3>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
name="name"
|
name="name"
|
||||||
v-model="children.name"
|
v-model="children.name"
|
||||||
label="Input Name"
|
label="Input Name"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
prepend-icon="fa fa-align-left"
|
prepend-icon="fa fa-align-left"
|
||||||
></v-text-field>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 sm3>
|
<v-flex xs12 md3 sm3>
|
||||||
<v-select
|
<v-select
|
||||||
:items="type"
|
:items="type"
|
||||||
item-text="state"
|
item-text="state"
|
||||||
item-value="abbr"
|
item-value="abbr"
|
||||||
label="Type"
|
label="Type"
|
||||||
v-model="children.type"
|
v-model="children.type"
|
||||||
v-bind="children.id !== 0 ? {disabled: true} : {disabled: false}"
|
v-bind="children.id !== 0 ? {disabled: true} : {disabled: false}"
|
||||||
single-line
|
single-line
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
@change="changeTypeForm(keyForm, children.type, keychildren)"
|
@change="changeTypeForm(keyForm, children.type, keychildren)"
|
||||||
prepend-icon="fa fa-filter"
|
prepend-icon="fa fa-filter"
|
||||||
></v-select>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 sm3>
|
<v-flex xs12 md3 sm3>
|
||||||
<v-select
|
<v-select
|
||||||
:items="size"
|
:items="size"
|
||||||
item-text="state"
|
item-text="state"
|
||||||
item-value="abbr"
|
item-value="abbr"
|
||||||
label="Size"
|
label="Size"
|
||||||
v-if="children.type !== 'Form'"
|
v-if="children.type !== 'Form'"
|
||||||
v-model="children.size"
|
v-model="children.size"
|
||||||
single-line
|
single-line
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2"
|
class="pa-2"
|
||||||
prepend-icon="fa fa-sort-numeric-asc"
|
prepend-icon="fa fa-sort-numeric-asc"
|
||||||
></v-select>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<v-flex xs12 md3 sm3 v-if="children.type == 'Text'">
|
<v-flex xs12 md3 sm3 v-if="children.type == 'Text'">
|
||||||
<v-layout row wrap>
|
<v-layout row wrap>
|
||||||
<v-flex xs12 class="WM-FlexWrap ml-3">
|
<v-flex xs12 class="WM-FlexWrap ml-3">
|
||||||
<v-checkbox
|
<v-checkbox
|
||||||
label="require barcode scanner"
|
label="require barcode scanner"
|
||||||
v-model="children.require_scanner"
|
v-model="children.require_scanner"
|
||||||
></v-checkbox>
|
/>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
<!-- Inner Form Selectbox Section -->
|
<!-- Inner Form Selectbox Section -->
|
||||||
<v-layout
|
<v-layout row wrap class="pa-3 mb-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full"
|
||||||
row
|
v-if="children.type === 'Select' || children.type === 'Checkbox' || children.type === 'Radiobutton'">
|
||||||
wrap
|
<v-layout row wrap class="WM-Relative WM-Width-Full"
|
||||||
class="pa-3 mb-3 WM-Border WM-Border-Black WM-Relative WM-Width-Full"
|
v-if="children['options'].length > 0">
|
||||||
v-if="children.type === 'Select' || children.type === 'Checkbox' || children.type === 'Radiobutton'"
|
<v-flex xs12 md3 sm3 v-for="(selectbox , keySelect) in children['options']"
|
||||||
>
|
:key="keySelect"
|
||||||
<v-layout
|
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative">
|
||||||
row
|
|
||||||
wrap
|
|
||||||
class="WM-Relative WM-Width-Full"
|
|
||||||
v-if="children['options'].length > 0"
|
|
||||||
>
|
|
||||||
<v-flex
|
|
||||||
xs12
|
|
||||||
md3
|
|
||||||
sm3
|
|
||||||
v-for="(selectbox , keySelect) in children['options']"
|
|
||||||
:key="keySelect"
|
|
||||||
class="pb-4 ma-2 WM-Border WM-Border-Gray WM-BG-White WM-Width-Full WM-Relative"
|
|
||||||
>
|
|
||||||
<v-text-field
|
<v-text-field
|
||||||
name="title"
|
name="title"
|
||||||
label="Title"
|
label="Title"
|
||||||
color="black"
|
color="black"
|
||||||
class="pa-2 Input"
|
class="pa-2 Input"
|
||||||
v-model="selectbox.title"
|
v-model="selectbox.title"
|
||||||
:rules="[rules.required]"
|
:rules="[rules.required]"
|
||||||
prepend-icon="fa fa-align-left"
|
prepend-icon="fa fa-align-left"
|
||||||
></v-text-field>
|
/>
|
||||||
<v-btn
|
<v-btn absolute small right bottom color="pink"
|
||||||
absolute
|
@click="removeSelectboxForm(keyForm, keySelect, keychildren)"
|
||||||
small
|
v-if="keySelect >= 1">
|
||||||
right
|
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>
|
||||||
bottom
|
REMOVE
|
||||||
color="pink"
|
|
||||||
@click="removeSelectboxForm(keyForm, keySelect, keychildren)"
|
|
||||||
v-if="keySelect >= 1"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>REMOVE
|
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-flex>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-btn
|
<v-btn absolute right bottom small
|
||||||
absolute
|
@click="addSelectboxForm(keyForm, keychildren)" color="black">
|
||||||
right
|
|
||||||
bottom
|
|
||||||
small
|
|
||||||
@click="addSelectboxForm(keyForm, keychildren)"
|
|
||||||
color="black"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
||||||
<span class="white--text">Add</span>
|
<span class="white--text">Add</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-btn
|
<v-btn absolute small right top color="pink"
|
||||||
absolute
|
@click="removeForm(keyForm, keychildren)">
|
||||||
small
|
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>
|
||||||
right
|
REMOVE
|
||||||
top
|
|
||||||
color="pink"
|
|
||||||
@click="removeForm(keyForm, keychildren)"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>REMOVE
|
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-btn
|
<v-btn absolute small right bottom color="cyan"
|
||||||
absolute
|
@click="duplicateForm(keyForm)">
|
||||||
small
|
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
||||||
right
|
ADD
|
||||||
bottom
|
|
||||||
color="cyan"
|
|
||||||
@click="duplicateForm(keyForm)"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>ADD
|
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-btn
|
<v-btn v-if="keyForm > 0 || form.info.length > 1" absolute small right top color="pink"
|
||||||
v-if="keyForm > 0 || form.info.length > 1"
|
@click="removeInput(keyForm)">
|
||||||
absolute
|
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>
|
||||||
small
|
REMOVE
|
||||||
right
|
|
||||||
top
|
|
||||||
color="pink"
|
|
||||||
@click="removeInput(keyForm)"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-times</v-icon>REMOVE
|
|
||||||
</v-btn>
|
</v-btn>
|
||||||
<v-layout
|
<v-layout row wrap align-center justify-center class="mt-4" v-if="(form.info.length -1) == keyForm">
|
||||||
row
|
<v-btn absolute right bottom small @click="addInput" color="pink" class="mb-2">
|
||||||
wrap
|
|
||||||
align-center
|
|
||||||
justify-center
|
|
||||||
class="mt-4"
|
|
||||||
v-if="(form.info.length -1) == keyForm"
|
|
||||||
>
|
|
||||||
<v-btn
|
|
||||||
absolute
|
|
||||||
right
|
|
||||||
bottom
|
|
||||||
small
|
|
||||||
@click="addInput"
|
|
||||||
color="pink"
|
|
||||||
class="mb-2"
|
|
||||||
>
|
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-plus</v-icon>
|
||||||
<span class="white--text">Add</span>
|
<span class="white--text">Add</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -378,28 +275,31 @@
|
|||||||
</v-layout>
|
</v-layout>
|
||||||
|
|
||||||
<v-layout row wrap align-center justify-center class="mt-4">
|
<v-layout row wrap align-center justify-center class="mt-4">
|
||||||
<v-btn
|
<v-flex xs12 sm6 md6 lg3 class="text-center">
|
||||||
class="WM-CyanBlueGradient-BG"
|
<router-link :to="{name : 'ListTestType'}">
|
||||||
style="padding:10px 60px"
|
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black">
|
||||||
@click="registerForm"
|
<v-icon class="black--text mr-2 caption">fas fa-chevron-left</v-icon>
|
||||||
>
|
<span class="black--text">Back</span>
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-check</v-icon>
|
</v-btn>
|
||||||
<span class="white--text">Generate Form</span>
|
</router-link>
|
||||||
</v-btn>
|
</v-flex>
|
||||||
<router-link :to="{name : 'ListTestType'}">
|
<v-flex xs12 sm6 md6 lg3 class="text-center">
|
||||||
<v-btn class="WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Black ml-5">
|
<v-btn class="WM-CyanBlueGradient-BG"
|
||||||
<v-icon class="black--text mr-2 caption">fas fa-chevron-left</v-icon>
|
style="padding:10px 60px"
|
||||||
<span class="black--text">Back</span>
|
@click="registerForm">
|
||||||
|
<v-icon class="white--text mr-2 caption">fas fa-check</v-icon>
|
||||||
|
<span class="white--text">Generate Form</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</router-link>
|
</v-flex>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
</material-card>
|
</material-card>
|
||||||
</v-container>
|
</v-container>
|
||||||
</v-form>
|
</v-form>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { ApiService } from "@/services";
|
import {ApiService} from "@/services";
|
||||||
import { urls } from "@/config/urls";
|
import {urls} from "@/config/urls";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -417,43 +317,43 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
type: [
|
type: [
|
||||||
{ state: "Text", abbr: "Text" },
|
{state: "Text", abbr: "Text"},
|
||||||
{ state: "Checkbox", abbr: "Checkbox" },
|
{state: "Checkbox", abbr: "Checkbox"},
|
||||||
{ state: "Select", abbr: "Select" },
|
{state: "Select", abbr: "Select"},
|
||||||
{ state: "Radiobutton", abbr: "Radiobutton" },
|
{state: "Radiobutton", abbr: "Radiobutton"},
|
||||||
{ state: "Switch", abbr: "Switch" },
|
{state: "Switch", abbr: "Switch"},
|
||||||
{ state: "Range", abbr: "Range" },
|
{state: "Range", abbr: "Range"},
|
||||||
{ state: "Time", abbr: "Time" },
|
{state: "Time", abbr: "Time"},
|
||||||
{ state: "Temperature", abbr: "Temperature" },
|
{state: "Temperature", abbr: "Temperature"},
|
||||||
{ state: "Pressure", abbr: "Pressure" },
|
{state: "Pressure", abbr: "Pressure"},
|
||||||
{ state: "Form", abbr: "Form" },
|
{state: "Form", abbr: "Form"},
|
||||||
],
|
],
|
||||||
size: [
|
size: [
|
||||||
{ state: "not Selected", abbr: "" },
|
{state: "not Selected", abbr: ""},
|
||||||
{ state: "2 from 12", abbr: "md2 sm4 xs12" },
|
{state: "2 from 12", abbr: "md2 sm4 xs12"},
|
||||||
{ state: "3 from 12", abbr: "md3 sm6 xs12" },
|
{state: "3 from 12", abbr: "md3 sm6 xs12"},
|
||||||
{ state: "4 from 12", abbr: "md4 sm4 xs12" },
|
{state: "4 from 12", abbr: "md4 sm4 xs12"},
|
||||||
{ state: "6 from 12", abbr: "md6 sm12 xs12" },
|
{state: "6 from 12", abbr: "md6 sm12 xs12"},
|
||||||
{ state: "8 from 12", abbr: "md8 sm8 xs12" },
|
{state: "8 from 12", abbr: "md8 sm8 xs12"},
|
||||||
{ state: "10 from 12", abbr: "md10 sm10 xs12" },
|
{state: "10 from 12", abbr: "md10 sm10 xs12"},
|
||||||
{ state: "12 from 12", abbr: "md12 sm12 xs12" }
|
{state: "12 from 12", abbr: "md12 sm12 xs12"}
|
||||||
],
|
],
|
||||||
rules: {
|
rules: {
|
||||||
required: value => !!value || "Required."
|
required: value => !!value || "Required."
|
||||||
},
|
},
|
||||||
deviceLabels: [
|
deviceLabels: [
|
||||||
{ name: "Washer ID", id: "WasherID" },
|
{name: "Washer ID", id: "WasherID"},
|
||||||
{ name: "Autoclave ID", id: "AutoclaveID" },
|
{name: "Autoclave ID", id: "AutoclaveID"},
|
||||||
{ name: "Sterilizer ID", id: "SterilizerID" },
|
{name: "Sterilizer ID", id: "SterilizerID"},
|
||||||
{ name: "WasherMachine ID", id: "WasherMachineID" },
|
{name: "WasherMachine ID", id: "WasherMachineID"},
|
||||||
{ name: "SealMachine ID", id: "SealMachineID" },
|
{name: "SealMachine ID", id: "SealMachineID"},
|
||||||
{ name: "Patient ID", id: "PatientID" },
|
{name: "Patient ID", id: "PatientID"},
|
||||||
{ name: "Set/Pack ID", id: "Set/PackID" },
|
{name: "Set/Pack ID", id: "Set/PackID"},
|
||||||
{ name: "MD ID", id: "MDID" },
|
{name: "MD ID", id: "MDID"},
|
||||||
{ name: "OR ID", id: "ORID" },
|
{name: "OR ID", id: "ORID"},
|
||||||
{ name: "Personal ID", id: "PersonalID" },
|
{name: "Personal ID", id: "PersonalID"},
|
||||||
{ name: "Instrument ID", id: "InstrumentID" },
|
{name: "Instrument ID", id: "InstrumentID"},
|
||||||
{ name: "ID", id: "ID" },
|
{name: "ID", id: "ID"},
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@@ -468,15 +368,15 @@ export default {
|
|||||||
// //--add checkbox
|
// //--add checkbox
|
||||||
// }
|
// }
|
||||||
if (selectedboxType == "Select" || selectedboxType == "Checkbox" || selectedboxType == "Radiobutton") {
|
if (selectedboxType == "Select" || selectedboxType == "Checkbox" || selectedboxType == "Radiobutton") {
|
||||||
this.form.info[infoIndex]["options"] = [{ id: 0, title: "" }];
|
this.form.info[infoIndex]["options"] = [{id: 0, title: ""}];
|
||||||
} else if(selectedboxType == "Range") {
|
} else if (selectedboxType == "Range") {
|
||||||
this.form.info[infoIndex]["options"] = [{ id: 0, title: ""}, { id: 0, title: ""}];
|
this.form.info[infoIndex]["options"] = [{id: 0, title: ""}, {id: 0, title: ""}];
|
||||||
} else {
|
} else {
|
||||||
this.form.info[infoIndex]["options"] = [];
|
this.form.info[infoIndex]["options"] = [];
|
||||||
}
|
}
|
||||||
if (selectedboxType == "Form") {
|
if (selectedboxType == "Form") {
|
||||||
this.form.info[infoIndex]["children"] = [
|
this.form.info[infoIndex]["children"] = [
|
||||||
{ id: 0, name: "", type: "", size: "" }
|
{id: 0, name: "", type: "", size: ""}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -489,26 +389,26 @@ export default {
|
|||||||
addSelectbox(infoIndex) {
|
addSelectbox(infoIndex) {
|
||||||
let form = this.form;
|
let form = this.form;
|
||||||
this.form = [];
|
this.form = [];
|
||||||
form.info[infoIndex]["options"].push({ id: 0, title: "" });
|
form.info[infoIndex]["options"].push({id: 0, title: ""});
|
||||||
this.form = form;
|
this.form = form;
|
||||||
},
|
},
|
||||||
addInput() {
|
addInput() {
|
||||||
this.form.info.push({ id: 0, name: "", type: "", size: "" });
|
this.form.info.push({id: 0, name: "", type: "", size: ""});
|
||||||
},
|
},
|
||||||
changeTypeForm(infoIndex, type, formLevel) {
|
changeTypeForm(infoIndex, type, formLevel) {
|
||||||
if (type == "Select" || type == "Checkbox" || type == "Radiobutton") {
|
if (type == "Select" || type == "Checkbox" || type == "Radiobutton") {
|
||||||
let form = this.form;
|
let form = this.form;
|
||||||
this.form = "";
|
this.form = "";
|
||||||
form.info[infoIndex]["children"][formLevel]["options"] = [
|
form.info[infoIndex]["children"][formLevel]["options"] = [
|
||||||
{ id: 0, title: "" }
|
{id: 0, title: ""}
|
||||||
];
|
];
|
||||||
this.form = form;
|
this.form = form;
|
||||||
} else if(type == "Range") {
|
} else if (type == "Range") {
|
||||||
let form = this.form;
|
let form = this.form;
|
||||||
this.form = "";
|
this.form = "";
|
||||||
form.info[infoIndex]["children"][formLevel]["options"] = [
|
form.info[infoIndex]["children"][formLevel]["options"] = [
|
||||||
{ id: 0, title: "" },
|
{id: 0, title: ""},
|
||||||
{ id: 0, title: "" },
|
{id: 0, title: ""},
|
||||||
];
|
];
|
||||||
this.form = form;
|
this.form = form;
|
||||||
} else {
|
} else {
|
||||||
@@ -522,8 +422,8 @@ export default {
|
|||||||
let form = this.form;
|
let form = this.form;
|
||||||
this.form = [];
|
this.form = [];
|
||||||
form.info[infoIndex]["children"][formLevel]["options"].splice(
|
form.info[infoIndex]["children"][formLevel]["options"].splice(
|
||||||
selectboxOptions,
|
selectboxOptions,
|
||||||
1
|
1
|
||||||
);
|
);
|
||||||
this.form = form;
|
this.form = form;
|
||||||
},
|
},
|
||||||
@@ -564,13 +464,13 @@ export default {
|
|||||||
let result = null;
|
let result = null;
|
||||||
if (this.$route.params.testType) {
|
if (this.$route.params.testType) {
|
||||||
result = await ApiService.put(
|
result = await ApiService.put(
|
||||||
urls.updateTestType(this.$route.params.testType),
|
urls.updateTestType(this.$route.params.testType),
|
||||||
this.form
|
this.form
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
result = await ApiService.post(
|
result = await ApiService.post(
|
||||||
urls.storeTestType,
|
urls.storeTestType,
|
||||||
this.form
|
this.form
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
// if (result && result.status == 200) {
|
// if (result && result.status == 200) {
|
||||||
@@ -591,12 +491,15 @@ export default {
|
|||||||
.WM-Border-Gray {
|
.WM-Border-Gray {
|
||||||
border-color: #aaa !important;
|
border-color: #aaa !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.WM-Color-LightGrey {
|
.WM-Color-LightGrey {
|
||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
}
|
}
|
||||||
|
|
||||||
.v-btn--top.v-btn--absolute.v-btn--small {
|
.v-btn--top.v-btn--absolute.v-btn--small {
|
||||||
top: -25px !important;
|
top: -25px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.v-btn--bottom.v-btn--absolute.v-btn--small {
|
.v-btn--bottom.v-btn--absolute.v-btn--small {
|
||||||
bottom: -24px !important;
|
bottom: -24px !important;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,7 @@
|
|||||||
|
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex class xs12 sm6 md6 lg2 xl1>
|
<v-flex class xs12 sm6 md6 lg2 xl1>
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load(undefined)">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load(undefined)">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -87,7 +87,7 @@
|
|||||||
<td class="title font-weight-light">{{ item.unique_code }}</td>
|
<td class="title font-weight-light">{{ item.unique_code }}</td>
|
||||||
<td class="title font-weight-light">{{ item.user.name }}</td>
|
<td class="title font-weight-light">{{ item.user.name }}</td>
|
||||||
<td class="title font-weight-light">{{ $d(new Date(item.created_at), 'long') }}</td>
|
<td class="title font-weight-light">{{ $d(new Date(item.created_at), 'long') }}</td>
|
||||||
<td class="text-xs-right FlexBtn">
|
<td class="text-xs-right FlexBtn justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<router-link
|
<router-link
|
||||||
|
|||||||
@@ -33,12 +33,10 @@
|
|||||||
</td>
|
</td>
|
||||||
<td class="title font-weight-light">
|
<td class="title font-weight-light">
|
||||||
<span class="Chip">
|
<span class="Chip">
|
||||||
<span
|
<span class="Unread Content">{{ item.unread_messages_count }} unread</span>
|
||||||
class="Unread Content"
|
|
||||||
>{{ item.unread_messages_count }} unread</span>
|
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
<td class="text-xs-left FlexBtn">
|
<td class="text-xs-left FlexBtn justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn
|
<v-btn
|
||||||
|
|||||||
@@ -46,7 +46,7 @@
|
|||||||
</v-flex>
|
</v-flex>
|
||||||
<v-spacer/>
|
<v-spacer/>
|
||||||
<v-flex wrap xs12 sm12 class="WM-Align-R ml-4">
|
<v-flex wrap xs12 sm12 class="WM-Align-R ml-4">
|
||||||
<v-btn class="WM-CyanBlueGradient-BG" style="padding:9px 30px" @click="load(undefined)">
|
<v-btn class="WM-CyanBlueGradient-BG" style="padding:10px 30px" @click="load(undefined)">
|
||||||
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
<v-icon class="white--text mr-2 caption">fas fa-search</v-icon>
|
||||||
<span class="white--text">Filter</span>
|
<span class="white--text">Filter</span>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
@@ -73,7 +73,7 @@
|
|||||||
<span v-for="(role, key) in item.roles" :key="key">{{ role.name }}</span>
|
<span v-for="(role, key) in item.roles" :key="key">{{ role.name }}</span>
|
||||||
</td>
|
</td>
|
||||||
<td class="title font-weight-light">{{ item.medical_center.name }}</td>
|
<td class="title font-weight-light">{{ item.medical_center.name }}</td>
|
||||||
<td class="text-xs-right FlexBtn">
|
<td class="text-xs-right FlexBtn justify-self-end">
|
||||||
<v-tooltip bottom open-on-hover>
|
<v-tooltip bottom open-on-hover>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<v-btn v-bind="attrs" v-on="on"
|
<v-btn v-bind="attrs" v-on="on"
|
||||||
@@ -194,6 +194,7 @@ export default {
|
|||||||
this.load();
|
this.load();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
...mapMutations("modal", ["changeCurrentModal", "closeModal"]),
|
||||||
async load(page = 1) {
|
async load(page = 1) {
|
||||||
let filter = "?";
|
let filter = "?";
|
||||||
for (const key in this.filter) {
|
for (const key in this.filter) {
|
||||||
@@ -223,7 +224,6 @@ export default {
|
|||||||
this.$router.push({name: `Dashboard`});
|
this.$router.push({name: `Dashboard`});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
...mapMutations("modal", ["changeCurrentModal", "closeModal"]),
|
|
||||||
changeRoleModal(user) {
|
changeRoleModal(user) {
|
||||||
this.changeCurrentModal({
|
this.changeCurrentModal({
|
||||||
modal: "modal-user-role",
|
modal: "modal-user-role",
|
||||||
|
|||||||
Reference in New Issue
Block a user