Files
BE_IBL/application/controllers/mockup/cpone-riwayat-form/index.php
2026-04-15 15:24:12 +07:00

894 lines
46 KiB
PHP

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>CPONE</title>
<link rel="stylesheet" href="../../../libs/vendor/css/google-fonts.css">
<link rel="stylesheet" href="../../../libs/vendor/css/icomoon-fonts.css">
<link rel="stylesheet" href="../../../libs/vendor/css/vuetify.min.css">
</head>
<body onbeforeunload="return ''">
<div v-cloak id="app">
<v-app id="smartApp">
<!--<one-navbar></one-navbar>-->
<v-content style="background:#F5E8DF!important">
<v-container fluid>
<template>
<div id="e3" style="max-width: 620px; margin:auto">
<v-dialog v-model="dialogError" width="500">
<v-card>
<v-card-title class="headline red ligthen-2 text-white" primary-title>
ERROR !
</v-card-title>
<v-card-text>
<p v-html="errorMsg"></p>
</v-card-text>
<v-divider></v-divider>
<v-card-actions>
<v-spacer></v-spacer>
<v-btn color="primary" block @click="dialogError = false">
Tutup
</v-btn>
</v-card-actions>
</v-card>
</v-dialog>
<v-toolbar class="primary" dark>
<v-btn icon>
<v-icon>assignment</v-icon>
</v-btn>
<v-toolbar-title>Riwayat Pasien</v-toolbar-title>
<v-spacer></v-spacer>
<!--<v-btn @click="logout()" icon>
<v-icon color="black">remove_circle</v-icon>
</v-btn>-->
</v-toolbar>
<v-card>
<v-card-text>
<v-progress-linear v-if="loading_form_code" :indeterminate="true"></v-progress-linear>
<v-layout v-if="open_form_code" row>
<v-flex xs12>
<v-card>
<v-card-text>
<v-text-field :clearable="true" v-model="form_code" placeholder="Masukkan kode form" :error-messages="errorMsg" :error="errorMsg == ''" label="Kode" />
</v-card-text>
<v-card-actions>
<v-btn block :disabled="form_code == ''" color="primary" @click="saveFormCode">Lanjutkan</v-btn>
</v-card-actions>
</v-card>
</v-flex>
</v-layout>
<v-layout v-if="!open_form_code && start_form == false" row>
<v-flex xs12>
<v-card>
<v-card-text>
<h4>DATA PASIEN</h4>
<v-divider class="mt-2 mb-2"></v-divider>
<v-layout row>
<v-flex xs12>
<v-text-field disabled :value="data_patient.patient_name" label="Nama" />
</v-flex>
</v-layout>
<v-layout row>
<v-flex xs6>
<v-text-field disabled :value="data_patient.gender == 'male' ? 'Laki-laki' : 'Perempuan'" label="Jenis Kelamin" />
</v-flex>
<v-flex xs6>
<v-text-field disabled :value="data_patient.dob" label="Tanggal Lahir" />
</v-flex>
</v-layout>
<v-layout class="mb-3" row>
<v-flex xs12>
<v-text-field disabled :value="data_patient.location_mcu" :success-messages="data_patient.department" label="Department"/>
</v-flex>
</v-layout>
<v-layout class="mb-3" row>
<v-flex xs12>
<v-text-field disabled :value="data_patient.corporate_name" :success-messages="data_patient.corporate_address" label="Perusahaan" />
</v-flex>
</v-layout>
</v-card-text>
</v-card>
</v-layout>
<v-layout v-if="!open_form_code && data_riwayat.length > 0" class="mt-2" row>
<v-flex xs12>
<v-card >
<v-card-text v-if="start_form == true">
<h4>DATA RIWAYAT</h4>
<p class="mt-2 mb-2">Pilih yang sesuai dengan riwayat anda</p>
<v-divider class="mt-2 mb-2"></v-divider>
<div v-for="(item,item_idx) in data_riwayat" :key="item_idx">
<div v-if="templates[tab].title === item.title">
<h4 class="mt-4 mb-2" >{{ templates[tab].alias }}</h4>
<div v-if="item.type_form === 'XVS'">
<v-layout v-if="templates[tab].allow_normal" row>
<v-flex xs12>
<v-card class="btn-card" v-if="item.flag_normal === 'N' && data_patient.is_sampling !== 'D'" block @click="item.flag_normal = 'Y'">{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" dark v-if="item.flag_normal === 'Y' && data_patient.is_sampling !== 'D'" block color="primary" @click="item.flag_normal = 'N'">{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" v-if="item.flag_normal === 'N' && data_patient.is_sampling === 'D'" block flat>{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" dark v-if="item.flag_normal === 'Y' && data_patient.is_sampling === 'D'" block color="primary" flat>{{item.label_flag_normal}}</v-card>
<v-divider class="mt-2 mb-2"></v-divider>
</v-flex>
</v-layout>
<div v-for="(detail,detail_idx) in item.details" :key="detail_idx">
<v-layout wrap>
<v-flex xs12>
<v-layout v-for="(child_detail,child_detail_idx) in detail.details" :key="child_detail_idx" v-if="!templates[tab].section.includes(child_detail.segment_name)" row>
<v-flex xs12>
<v-card class="btn-card" :dark="child_detail.chx" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" @click="child_detail.chx = child_detail.chx === true ? false : true">{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark >{{child_detail.label}}</v-card>
<v-card class="btn-card" :dark="child_detail.chx" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" flat>{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark flat>{{child_detail.label}}</v-card>
</v-flex>
</v-layout>
</v-flex>
</v-layout>
</div>
<div v-for="(detail,detail_idx) in item.details" :key="detail_idx">
<h5 class="mt-3 mb-2" v-if="templates[tab].section.includes(detail.name)">{{detail.name == 'Allergi' ? 'ALERGI' : detail.name}}</h5>
<v-layout wrap>
<v-flex xs12>
<v-layout v-for="(child_detail,child_detail_idx) in detail.details" :key="child_detail_idx" v-if="templates[tab].section.includes(child_detail.segment_name)" row>
<v-flex xs12>
<v-card class="btn-card" :dark="child_detail.chx" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" @click="child_detail.chx = child_detail.chx === true ? false : true">{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark >{{child_detail.label}}</v-card>
<v-card class="btn-card" :dark="child_detail.chx" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" flat>{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark flat>{{child_detail.label}}</v-card>
</v-flex>
</v-layout>
</v-flex>
</v-layout>
</div>
</div>
<div v-if="item.type_form === 'XV'">
<v-layout wrap>
<v-flex xs12>
<v-card class="btn-card" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'N'" block @click="item.flag_normal = 'Y'">{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" dark v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'Y'" block color="primary" @click="item.flag_normal = 'N'">{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'N'" block flat>{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" dark v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'Y'" block color="primary" flat>{{item.label_flag_normal}}</v-card>
<v-divider class="mt-2 mb-2"></v-divider>
<v-layout v-for="(child_detail,child_detail_idx) in item.details" :key="child_detail_idx" row>
<v-flex xs12>
<v-card class="btn-card" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" @click="child_detail.chx = child_detail.chx === true ? false : true">{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark >{{child_detail.label}}</v-card>
<v-card class="btn-card" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" flat>{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark flat>{{child_detail.label}}</v-card>
</v-flex>
</v-layout>
</v-flex>
</v-layout>
</div>
<div v-if="item.type_form === 'XO' && item.title === 'RIWAYAT PENYAKIT KELUARGA'">
<p class="mt-2 mb-1 subheader">Apakah ada orang tua yang memiliki penyakit berikut :</p>
<p class="mt-0 mb-2 caption">Klik pada ( ayah / ibu ) jika ada</p>
<v-divider class="mt-2 mb-2"></v-divider>
<v-layout wrap>
<v-flex xs12>
<v-layout v-for="(child_detail,child_detail_idx) in item.details" :key="child_detail_idx" class="pt-2 pb-2" row>
<v-flex xs6>
<span>{{child_detail.label}}</span>
</v-flex>
<v-flex xs3 class="text-xs-right" v-for="(chx_detail,chx_detail_idx) in child_detail.options" :key="child_detail_idx" row>
<v-chip v-if="data_patient.is_sampling !== 'D'" label dark :color="chx_detail.selected ? 'primary' : ''" @click="chx_detail.selected = chx_detail.selected === true ? false : true">{{chx_detail.label}}</v-chip>
<v-chip v-if="data_patient.is_sampling === 'D'" label dark :color="chx_detail.selected ? 'primary' : ''" flat>{{chx_detail.label}}</v-chip>
</v-flex>
</v-layout>
</v-flex>
</v-layout>
</div>
<div v-if="item.type_form === 'XD'">
<v-layout v-if="templates[tab].allow_normal" row>
<v-flex xs12>
<v-card class="btn-card" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'N'" block @click="item.flag_normal = 'Y'">{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'Y'" block color="primary" @click="item.flag_normal = 'N'">{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'N'" block flat>{{item.label_flag_normal}}</v-card>
<v-card class="btn-card" dark v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'Y'" block color="primary" flat>{{item.label_flag_normal}}</v-card>
<v-divider class="mt-2 mb-2"></v-divider>
</v-flex>
</v-layout>
<div v-for="(detail,detail_idx) in item.details" :key="detail_idx">
<h5 class="mt-4 mb-2">{{detail.label}}</h5>
<v-layout wrap>
<v-flex xs12>
<v-layout v-for="(child_detail,child_detail_idx) in detail.details" :key="child_detail_idx" row>
<v-flex xs12>
<v-card :dark="child_detail.chx" class="btn-card" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" @click="child_detail.chx = child_detail.chx === true ? false : true">{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling !== 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark >{{child_detail.label}}</v-card>
<v-card :dark="child_detail.chx" class="btn-card" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'N' && templates[tab].childs.includes(child_detail.id_code)" :color="child_detail.chx ? 'primary' : ''" flat>{{child_detail.label}}</v-card>
<v-card flat color="#f5f5f5" class="btn-card grey--text text--darken-1" v-if="data_patient.is_sampling === 'D' && item.flag_normal === 'Y' && templates[tab].childs.includes(child_detail.id_code)" dark flat>{{child_detail.label}}</v-card>
</v-flex>
</v-layout>
</v-flex>
</v-layout>
</div>
</div>
</v-layout>
<v-divider class="mt-2 mb-2"></v-divider>
</div>
</div>
</v-card-text>
<v-card-actions>
<v-btn v-if="start_form == false" block color="red" dark @click="start_form = true">Mulai</v-btn>
<v-btn v-if="start_form == true && tab > 0" block color="black" dark @click="tab = tab - 1">Kembali</v-btn>
<v-btn v-if="start_form == true && tab == 0" block color="black" dark @click="start_form = false">Kembali</v-btn>
<v-btn v-if="start_form == true && tab < templates.length - 1" block color="red" dark @click="doLanjut()">Lanjut</v-btn>
<v-btn v-if="start_form == true && tab === templates.length - 1 && data_patient.is_sampling === 'D'" block depressed>Sudah Selesai</v-btn>
<v-btn v-if="start_form == true && tab === templates.length - 1 && data_patient.is_sampling !== 'D'" block color="teal" dark @click="saveRiwayat">Simpan</v-btn>
</v-card-actions>
</v-card>
</v-flex>
</v-layout>
</v-card-text>
</v-card>
</div>
</template>
<v-dialog v-model="dialog_success" width="500">
<v-card >
<v-card-title class="headline success text-white" primary-title>
Berhasil
</v-card-title>
<v-card-text>
<p>Riwayat pasien berhasil disimpan</p>
</v-card-text>
<v-card-actions>
<v-btn block color="primary" @click="dialog_success = false">Tutup</v-btn>
</v-card-actions>
</v-card>
</v-dialog>
</v-dialog>
</v-container>
</v-content>
<!--<one-footer> </one-footer>-->
</v-app>
</div>
<style>
.btn-card{
padding: 10px;
border-radius: 5px;
cursor: pointer;
margin-bottom: 10px;
}
</style>
<!-- Vendor -->
<script src="../../../libs/vendor/html5-qrcode.min.js"></script>
<script src="../../../libs/vendor/moment.min.js"></script>
<script src="../../../libs/vendor/numeral.min.js"></script>
<script src="../../../libs/vendor/moment-locale-id.js"></script>
<script src="../../../libs/vendor/lodash.js"></script>
<script src="../../../libs/vendor/axios.min.js"></script>
<script src="../../../libs/vendor/vue.js"></script>
<script src="../../../libs/vendor/vuex.js"></script>
<script src="../../../libs/vendor/vuetify.js"></script>
<script src="../../../libs/vendor/httpVueLoader.js"></script>
<script src="../../../libs/one_global.js"></script>
<script src="../../../libs/one_print_barcode.js"></script>
<script src="../../../libs/one_print_robo.js"></script>
<!-- App Script -->
<?php
$ts = "?ts=" . Date("ymdhis");
?>
<script type="module">
window.calculate_age = function(inp_dob) {
var now = moment(new Date())
var dob = moment(new Date(inp_dob))
var year = now.diff(dob, 'years')
dob.add(year, 'years')
var month = now.diff(dob, 'months')
dob.add(month, 'months')
var day = now.diff(dob, 'days')
if (isNaN(year)) return ''
return `${year} tahun ${month} bulan ${day} hari`
}
import {
store
} from './store.js<?php echo $ts ?>';
//for testing
window.store = store;
new Vue({
store,
el: '#app',
components: {
'one-navbar': httpVueLoader('../../../apps/components/oneNavbarComponent.vue'),
'one-footer': httpVueLoader('../../../apps/components/oneFooter.vue'),
'one-patient-list': httpVueLoader('./components/onePatientList.vue')
},
mounted: function() {
let url_string = window.location.href
let url = new URL(url_string)
let id = url.searchParams.get("id")
let dt_patient = this.$store.state.patient.data_patient
if (id && _.isEmpty(dt_patient)) {
this.$store.commit('patient/update_uuid_form', id)
}
},
methods: {
saveRiwayat(){
this.loading_form_code = true
let dt_riwayat = this.data_riwayat
let errors = []
dt_riwayat.forEach(item => {
if(item.type_form === 'XVS'){
let flag_normal = true
let checked = []
item.details.forEach(detail => {
let per_child = []
detail.details.forEach(child_detail => {
if(child_detail.chx){
checked.push(child_detail.id_code)
per_child.push(child_detail.id_code)
}
})
//console.log(detail.name)
//console.log(per_child.length)
if(item.title === 'RIWAYAT KEBIASAAN HIDUP' && per_child.length > 1){
let errMsg = `Pilih salah satu dari ${detail.name} <br>`
errors.push(errMsg)
}
if(item.title === 'RIWAYAT KEBIASAAN HIDUP' && per_child.length === 0){
let errMsg = `Pilih salah satu dari ${detail.name} <br>`
errors.push(errMsg)
}
})
if(checked.length > 0){
flag_normal = false
}
item.flag_normal = flag_normal ? 'Y' : 'N'
}
if(item.type_form === 'XV'){
let flag_normal = true
let checked = []
item.details.forEach(detail => {
if(detail.chx){
checked.push(detail.id_code)
}
})
if(checked.length > 0){
flag_normal = false
}
item.flag_normal = flag_normal ? 'Y' : 'N'
}
if(item.type_form === 'XO'){
let flag_normal = true
let checked = []
item.details.forEach(detail => {
detail.options.forEach(child_detail => {
if(child_detail.selected){
checked.push(child_detail.label)
}
})
})
if(checked.length > 0){
flag_normal = false
}
item.flag_normal = flag_normal ? 'Y' : 'N'
}
if(item.type_form === 'XD'){
let flag_normal = true
let checked = []
item.details.forEach(detail => {
let per_child = []
detail.details.forEach(child_detail => {
if(child_detail.chx){
checked.push(child_detail.id_code)
per_child.push(child_detail.id_code)
}
})
if(per_child.length > 1){
let errMsg = `Pilih salah satu dari ${detail.label}`
errors.push(errMsg)
}
if(per_child.length === 0){
let errMsg = `Pilih salah satu dari ${detail.label}`
errors.push(errMsg)
}
})
if(checked.length > 0){
flag_normal = false
}
item.flag_normal = flag_normal ? 'Y' : 'N'
}
})
if(errors.length > 0){
this.loading_form_code = false
this.errorMsg = errors.join('<br>')
this.dialogError = true
return
}else{
this.$store.dispatch("patient/save_riwayat", {
'id': this.$store.state.patient.uuid_form,
'form_code': this.form_code,
'data_riwayat': dt_riwayat
})
}
},
doLanjut(){
this.tab = this.tab + 1
this.start_form = true
},
saveFormCode(){
this.loading_form_code = true
this.$store.dispatch("patient/get_patient", {
'id': this.$store.state.patient.uuid_form,
'form_code': this.form_code
})
}
},
computed: {
error_msg: {
get() {
return this.$store.state.patient.error_msg
},
set(val) {
this.$store.commit("patient/update_error_msg", val)
}
},
dialogError: {
get() {
return this.$store.state.patient.dialogError
},
set(val) {
this.$store.commit("patient/update_dialogError", val)
}
},
dialog_success: {
get() {
return this.$store.state.patient.dialog_success
},
set(val) {
this.$store.commit("patient/update_dialog_success", val)
}
},
errorMsg: {
get() {
return this.$store.state.patient.errorMsg
},
set(val) {
this.$store.commit("patient/update_errorMsg", val)
}
},
loading_form_code: {
get() {
return this.$store.state.patient.loading_form_code
},
set(val) {
this.$store.commit("patient/update_loading_form_code", val)
}
},
open_form_code: {
get() {
return this.$store.state.patient.open_form_code
},
set(val) {
this.$store.commit("patient/update_open_form_code", val)
}
},
form_code: {
get() {
return this.$store.state.patient.form_code
},
set(val) {
this.$store.commit("patient/update_form_code", val)
}
},
glucoses: {
get() {
return this.$store.state.patient.glucoses
},
set(val) {
this.$store.commit("patient/update_glucoses", val)
}
},
loc_id() {
return this.$store.state.patient.loc_id
},
stat_id() {
return this.$store.state.patient.station_id
},
url_labnumber() {
return this.$store.state.patient.url_labnumber
},
btwrn: {
get() {
return this.$store.state.patient.btwrn
},
set(val) {
this.$store.commit("patient/update_btwrn", val)
}
},
dkos: {
get() {
return this.$store.state.patient.dkos
},
set(val) {
this.$store.commit("patient/update_dkos", val)
}
},
dkod: {
get() {
return this.$store.state.patient.dkod
},
set(val) {
this.$store.commit("patient/update_dkod", val)
}
},
tkos: {
get() {
return this.$store.state.patient.tkos
},
set(val) {
this.$store.commit("patient/update_tkos", val)
}
},
tkod: {
get() {
return this.$store.state.patient.tkod
},
set(val) {
this.$store.commit("patient/update_tkod", val)
}
},
visusAdd: {
get() {
return this.$store.state.patient.visusAdd
},
set(val) {
this.$store.commit("patient/update_visusAdd", val)
}
},
value_tb: {
get() {
return this.$store.state.patient.value_tb
},
set(val) {
this.$store.commit("patient/update_value_tb", val)
}
},
value_bb: {
get() {
return this.$store.state.patient.value_bb
},
set(val) {
this.$store.commit("patient/update_value_bb", val)
}
},
value_bf: {
get() {
return this.$store.state.patient.value_bf
},
set(val) {
this.$store.commit("patient/update_value_bf", val)
}
},
status_done() {
return this.$store.state.patient.status_done
},
isdone() {
return this.$store.state.patient.isdone
},
stations() {
return this.$store.state.patient.stations
},
selected_station: {
get() {
return this.$store.state.patient.selected_station
},
set(val) {
this.$store.commit("patient/update_selected_station", val)
this.$store.dispatch("patient/getLocation", val.id)
}
},
locations() {
return this.$store.state.patient.locations
},
selected_location: {
get() {
return this.$store.state.patient.selected_location
},
set(val) {
this.$store.commit("patient/update_selected_location", val)
}
},
data_patient: {
get() {
return this.$store.state.patient.data_patient
},
set(val) {
this.$store.commit("patient/update_data_patient", val)
}
},
data_riwayat: {
get() {
return this.$store.state.patient.data_riwayat
},
set(val) {
this.$store.commit("patient/update_data_riwayat", val)
}
},
dialog_scanner: {
get() {
return this.$store.state.patient.dialog_scanner
},
set(val) {
this.$store.commit("patient/update_dialog_scanner", val)
}
},
withCorection: {
get() {
return this.$store.state.patient.withCorection
},
set(val) {
this.$store.commit("patient/update_withCorection", val)
}
},
odSph: {
get() {
return this.$store.state.patient.odSph
},
set(val) {
this.$store.commit("patient/update_odSph", val)
}
},
odCyl: {
get() {
return this.$store.state.patient.odCyl
},
set(val) {
this.$store.commit("patient/update_odCyl", val)
}
},
odX: {
get() {
return this.$store.state.patient.odX
},
set(val) {
this.$store.commit("patient/update_odX", val)
}
},
osSph: {
get() {
return this.$store.state.patient.osSph
},
set(val) {
this.$store.commit("patient/update_osSph", val)
}
},
osCyl: {
get() {
return this.$store.state.patient.osCyl
},
set(val) {
this.$store.commit("patient/update_osCyl", val)
}
},
osX: {
get() {
return this.$store.state.patient.osX
},
set(val) {
this.$store.commit("patient/update_osX", val)
}
},
colorBlindNumber: {
get() {
return this.$store.state.patient.colorBlindNumber
},
set(val) {
this.$store.commit("patient/update_colorBlindNumber", val)
}
},
dialogError: {
get() {
return this.$store.state.patient.dialogError
},
set(val) {
this.$store.commit("patient/update_dialogError", val)
}
},
errorMsg: {
get() {
return this.$store.state.patient.errorMsg
},
set(val) {
this.$store.commit("patient/update_errorMsg", val)
}
},
data_patient() {
return this.$store.state.patient.data_patient
},
data_requirement() {
return this.$store.state.patient.data_requirement
},
data_packet() {
return this.$store.state.patient.data_packet
},
data_tests() {
return this.$store.state.patient.data_tests
},
data_sample_lab() {
return this.$store.state.patient.data_sample_lab
},
data_sample_radiodiagnostic() {
return this.$store.state.patient.data_sample_radiodiagnostic
},
data_sample_electromedic() {
return this.$store.state.patient.data_sample_electromedic
},
data_sample_other() {
return this.$store.state.patient.data_sample_other
},
},
data() {
return {
tab:0,
start_form:false,
template_title:['RIWAYAT PENYAKIT','RIWAYAT KONSUMSI OBAT TERATUR','RIWAYAT KEBIASAAN HIDUP'],
templates:[
{title:'RIWAYAT PENYAKIT', allow_normal : true,alias:'RIWAYAT PENYAKIT DAN ALERGI',section:['Allergi'],childs:[
'fisik_penyakit_1',
'fisik_penyakit_2',
'fisik_penyakit_5',
'fisik_penyakit_8',
'fisik_penyakit_9',
'fisik_penyakit_11',
'fisik_penyakit_74',
'fisik_penyakit_14',
'fisik_penyakit_19',
'fisik_penyakit_20',
'fisik_penyakit_23',
'fisik_penyakit_15',
'fisik_penyakit_25',
'fisik_penyakit_26',
'fisik_penyakit_31',
'fisik_penyakit_32',
'fisik_penyakit_40',
'fisik_penyakit_38',
'fisik_penyakit_39',
'fisik_penyakit_43',
'fisik_penyakit_47',
'fisik_penyakit_44',
'fisik_penyakit_46',
'fisik_penyakit_48',
'fisik_penyakit_57',
'fisik_penyakit_58',
'fisik_penyakit_65',
'fisik_penyakit_67',
'fisik_penyakit_66',
'fisik_penyakit_69',
'fisik_penyakit_71',
'fisik_penyakit_70',
'fisik_penyakit_22',
'fisik_penyakit_82',
'fisik_penyakit_60',
'fisik_penyakit_62',
'fisik_penyakit_61',
'fisik_penyakit_63'
]},
{title:'RIWAYAT KONSUMSI OBAT TERATUR',allow_normal : false,alias:'RIWAYAT KONSUMSI OBAT TERATUR',childs:[
'fisik_konsumsiobatteratur_1',
'fisik_konsumsiobatteratur_2',
'fisik_konsumsiobatteratur_3'
]},
{title:'RIWAYAT KEBIASAAN HIDUP', allow_normal : false,alias:'RIWAYAT KEBIASAAN HIDUP',section:['Minum alkohol','Olahraga','Merokok'],
childs:[
'fisik_kebiasaanhidup_1',
'fisik_kebiasaanhidup_3',
'fisik_kebiasaanhidup_4',
'fisik_kebiasaanhidup_5',
'fisik_kebiasaanhidup_6',
'fisik_kebiasaanhidup_8'
]
},
{title:'RIWAYAT PENYAKIT KELUARGA',alias:'RIWAYAT PENYAKIT KELUARGA'},
{title:'RIWAYAT IMUNISASI', allow_normal : false,alias:'RIWAYAT IMUNISASI',
childs:[
'fisik_riwayatimunisasi_1_details_1',
'fisik_riwayatimunisasi_1_details_2',
'fisik_riwayatimunisasi_2_details_1',
'fisik_riwayatimunisasi_2_details_2',
'fisik_riwayatimunisasi_3_details_1',
'fisik_riwayatimunisasi_3_details_2',
'fisik_riwayatimunisasi_4_details_1',
'fisik_riwayatimunisasi_4_details_2',
'fisik_riwayatimunisasi_5_details_1',
'fisik_riwayatimunisasi_5_details_2'
]
},
],
exclude_detail_code:['fisik_penyakit_6'],
off_visus:false,
allowReload: false,
imageSrc: './images/undraw_the_search_s0xf.png',
showReloadDialog: false,
items2: [{
icon: 'assignment',
iconClass: 'blue white--text',
title: 'Vacation itinerary',
subtitle: 'Jan 20, 2014'
},
{
icon: 'call_to_action',
iconClass: 'amber white--text',
title: 'Kitchen remodel',
subtitle: 'Jan 10, 2014'
}
],
items: [{
action: 'healing',
title: 'Paket Pria 2024',
items: [{
title: 'List Item'
},
{
title: 'List Item'
},
{
title: 'List Item'
}
]
}]
}
},
watch: {
}
})
</script>
<style>
[v-cloak] {
display: none
}
.left {}
.right {}
</style>
</body>
</html>