dev
This commit is contained in:
parent
deee350d04
commit
df82f8d26d
|
|
@ -158,11 +158,8 @@ const focus = (e: any) => {
|
||||||
const popoverRef = ref<any>(null);
|
const popoverRef = ref<any>(null);
|
||||||
const itemInfo = ref<any>({});
|
const itemInfo = ref<any>({});
|
||||||
const show = (item: any) => {
|
const show = (item: any) => {
|
||||||
|
if (!item.itemSocialCode) return
|
||||||
post('social/directory/getItemByCode', {code: item.itemSocialCode}).then((res: any) => {
|
post('social/directory/getItemByCode', {code: item.itemSocialCode}).then((res: any) => {
|
||||||
if (!res){
|
|
||||||
itemInfo.value = {}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
itemInfo.value = res
|
itemInfo.value = res
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,48 +2,50 @@
|
||||||
<Mask :is-show="isShow" width="800" :height="height" title="挂号" @close="close"
|
<Mask :is-show="isShow" width="800" :height="height" title="挂号" @close="close"
|
||||||
:show-footer="true">
|
:show-footer="true">
|
||||||
<template #default>
|
<template #default>
|
||||||
<div style="padding:24px;height: 100%;width: 100%;display: flex;flex-direction: column">
|
<div style="padding:0 24px;height: 100%;display: flex;flex-direction: column">
|
||||||
<el-form
|
<el-form
|
||||||
v-loading="loading"
|
v-loading="loading"
|
||||||
:model="edit_data"
|
:model="edit_data"
|
||||||
:inline=true
|
label-width="auto"
|
||||||
:rules="rules"
|
:rules="rules"
|
||||||
ref="form"
|
ref="form"
|
||||||
style="flex: 1;width: 100%;"
|
style="flex: 1;width: 100%"
|
||||||
label-position="top"
|
|
||||||
>
|
>
|
||||||
<el-row :gutter="24" style="width: 100%">
|
<el-descriptions
|
||||||
<el-col :span="8">
|
border
|
||||||
<el-form-item prop="name" style="margin-bottom: 2px" label="姓名">
|
direction="vertical"
|
||||||
|
:column="4"
|
||||||
|
style="margin-top: 20px"
|
||||||
|
>
|
||||||
|
<el-descriptions-item label="姓名" width="200">
|
||||||
|
<el-form-item prop="name" style="margin-bottom: 2px">
|
||||||
<el-input v-model="edit_data.name" placeholder="请输入姓名" clearable
|
<el-input v-model="edit_data.name" placeholder="请输入姓名" clearable
|
||||||
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0"></el-input>
|
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
<el-col :span="8">
|
<el-descriptions-item label="性别" width="200">
|
||||||
<el-form-item prop="gender" label="性别">
|
<el-form-item prop="gender">
|
||||||
<el-radio-group v-model="edit_data.gender"
|
<el-radio-group v-model="edit_data.gender"
|
||||||
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0">
|
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0">
|
||||||
<el-radio :value="1">男</el-radio>
|
<el-radio :value="1">男</el-radio>
|
||||||
<el-radio :value="2">女</el-radio>
|
<el-radio :value="2">女</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
<el-col :span="8">
|
<el-descriptions-item label="年龄" width="200">
|
||||||
<el-form-item prop="age" label="年龄">
|
<el-form-item prop="age">
|
||||||
<el-input v-model.number="edit_data.age" placeholder="请输入年龄"
|
<el-input v-model.number="edit_data.age" placeholder="请输入年龄"
|
||||||
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0"></el-input>
|
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
</el-row>
|
<el-descriptions-item label="手机号" width="200">
|
||||||
<el-row :gutter="24" style="width: 100%">
|
<el-form-item prop="phone">
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item label="手机号" prop="phone">
|
|
||||||
<el-input v-model="edit_data.phone" placeholder="手机号"
|
<el-input v-model="edit_data.phone" placeholder="手机号"
|
||||||
:disabled="edit_data.status==3||edit_data.status==0"></el-input>
|
:disabled="edit_data.status==3||edit_data.status==0"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
<el-col :span="8">
|
<el-descriptions-item label="医生">
|
||||||
<el-form-item label="医生" prop="organizationDoctorId">
|
<el-form-item prop="organizationDoctorId">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="edit_data.organizationDoctorId"
|
v-model="edit_data.organizationDoctorId"
|
||||||
placeholder="请选择医生"
|
placeholder="请选择医生"
|
||||||
|
|
@ -59,9 +61,9 @@
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
<el-col :span="8">
|
<el-descriptions-item label="科室">
|
||||||
<el-form-item label="科室">
|
<el-form-item>
|
||||||
<el-select
|
<el-select
|
||||||
v-model="edit_data.organizationSectionId"
|
v-model="edit_data.organizationSectionId"
|
||||||
placeholder="选择科室"
|
placeholder="选择科室"
|
||||||
|
|
@ -75,11 +77,9 @@
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
</el-row>
|
<el-descriptions-item label="证件类型">
|
||||||
<el-row :gutter="24" style="width: 100%">
|
<el-form-item prop="certType">
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item prop="certType" label="证件类型">
|
|
||||||
<el-select v-model="edit_data.certType" placeholder="证件类型"
|
<el-select v-model="edit_data.certType" placeholder="证件类型"
|
||||||
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0">
|
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0">
|
||||||
<el-option
|
<el-option
|
||||||
|
|
@ -90,59 +90,66 @@
|
||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
<el-col :span="8">
|
<el-descriptions-item label="证件码">
|
||||||
<el-form-item label="证件码" prop="certNo">
|
<el-form-item prop="certNo">
|
||||||
<el-input v-model="edit_data.certNo" placeholder="请输入证件码"
|
<el-input v-model="edit_data.certNo" placeholder="请输入证件码"
|
||||||
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0"></el-input>
|
:disabled="edit_data.status==1||edit_data.status==3||edit_data.status==0"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
<el-col :span="8">
|
<el-descriptions-item label="初/复诊">
|
||||||
<el-form-item label="初/复诊" prop="visitType">
|
<el-form-item prop="visitType">
|
||||||
<el-select v-model="edit_data.visitType" placeholder="就诊类型" :disabled="edit_data.status==0">
|
<el-select v-model="edit_data.visitType" placeholder="就诊类型" :disabled="edit_data.status==0">
|
||||||
<el-option label="初诊" :value="0"></el-option>
|
<el-option label="初诊" :value="0"></el-option>
|
||||||
<el-option label="复诊" :value="1"></el-option>
|
<el-option label="复诊" :value="1"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
</el-row>
|
<el-descriptions-item label="费用类型">
|
||||||
<el-row :gutter="24" style="width: 100%">
|
<el-form-item prop="type">
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item label="费用类型" prop="type">
|
|
||||||
<el-select v-model="edit_data.type" :disabled="edit_data.status==0">
|
<el-select v-model="edit_data.type" :disabled="edit_data.status==0">
|
||||||
<el-option label="普通" :value="1"></el-option>
|
<el-option label="普通" :value="1"></el-option>
|
||||||
<el-option label="医保" :value="2"></el-option>
|
<el-option label="医保" :value="2"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
<el-col :span="16">
|
<el-descriptions-item
|
||||||
<el-form-item label="备注">
|
:span="2"
|
||||||
<el-input v-model="edit_data.memo" placeholder="备注" :disabled="edit_data.status==0"></el-input>
|
label="时间">
|
||||||
|
<el-form-item v-if="props.dateName!='预约'" style="width: 100%">
|
||||||
|
<div>{{ getToday().start }}</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
<div v-else style="display: flex;width: 100%">
|
||||||
</el-row>
|
<el-form-item style="width: 100%" prop="date">
|
||||||
<el-row style="width: 100%" v-if="props.dateName=='预约'">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="时间">
|
|
||||||
<div style="display: flex;width: 100%">
|
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="edit_data.date"
|
v-model="edit_data.date"
|
||||||
type="date"
|
type="date"
|
||||||
|
format="YYYY/MM/DD"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
placeholder="选择日期"
|
placeholder="选择日期"
|
||||||
style="width: 100%"
|
style="width: 50%"
|
||||||
:disabledDate="disabledDate"
|
:disabledDate="disabledDate"
|
||||||
/>
|
/>
|
||||||
<el-time-select
|
<el-time-select
|
||||||
v-model="edit_data.dateTime"
|
v-model="time"
|
||||||
start="08:30"
|
start="00:00"
|
||||||
step="00:15"
|
step="00:15"
|
||||||
end="18:30"
|
end="23:45"
|
||||||
|
:min-time="getCurrentTime()"
|
||||||
placeholder="选择时间"
|
placeholder="选择时间"
|
||||||
|
style="width: 50%"
|
||||||
/>
|
/>
|
||||||
</div>
|
</el-form-item>
|
||||||
|
</div>
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item
|
||||||
|
:span="4"
|
||||||
|
label="备注">
|
||||||
|
<el-form-item>
|
||||||
|
<el-input v-model="edit_data.memo" placeholder="备注" :disabled="edit_data.status==0"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-descriptions-item>
|
||||||
</el-row>
|
</el-descriptions>
|
||||||
</el-form>
|
</el-form>
|
||||||
<h5 v-if="!isShowCard" style="margin:24px 0;font-size: 16px">险种列表</h5>
|
<h5 v-if="!isShowCard" style="margin:24px 0;font-size: 16px">险种列表</h5>
|
||||||
<el-table
|
<el-table
|
||||||
|
|
@ -208,25 +215,17 @@ import {getKey} from "@/utils/discrotyUtil.ts";
|
||||||
import insutypes from "@/assets/config/directory/insutypes.json"
|
import insutypes from "@/assets/config/directory/insutypes.json"
|
||||||
import {apiConfig} from "@/assets/config/apiConfig.ts";
|
import {apiConfig} from "@/assets/config/apiConfig.ts";
|
||||||
import Quick from "@/components/charge/RecordsLog/Quick.vue";
|
import Quick from "@/components/charge/RecordsLog/Quick.vue";
|
||||||
|
import {getCurrentTime, getToday} from "@/utils/dateUtils.ts";
|
||||||
|
|
||||||
const height = ref(600)
|
const height = ref(570)
|
||||||
const certTypeList = ref<any>(
|
const certTypeList = ref<any>(
|
||||||
Object.entries(psnCertTypes)
|
Object.entries(psnCertTypes)
|
||||||
.map(([id, name]) => ({id: Number(id), name}))
|
.map(([id, name]) => ({id: Number(id), name}))
|
||||||
.sort((a, b) => a.id - b.id)
|
.sort((a, b) => a.id - b.id)
|
||||||
)
|
)
|
||||||
const disabledDate = (date: Date) => {
|
const edit_data = ref<any>({
|
||||||
const today = new Date();
|
timeList: []
|
||||||
today.setHours(0, 0, 0, 0); // 将时间设置为今天的 00:00:00
|
|
||||||
return date < today; // 禁用今天之前的日期
|
|
||||||
};
|
|
||||||
const props = defineProps({
|
|
||||||
dateName: {
|
|
||||||
type: String,
|
|
||||||
default: '现在'
|
|
||||||
},
|
|
||||||
})
|
})
|
||||||
const edit_data = ref<any>({})
|
|
||||||
const rules = ref<any>({
|
const rules = ref<any>({
|
||||||
name: [
|
name: [
|
||||||
{required: true, message: '请输入名称', trigger: 'blur'},
|
{required: true, message: '请输入名称', trigger: 'blur'},
|
||||||
|
|
@ -259,24 +258,44 @@ const rules = ref<any>({
|
||||||
type: [
|
type: [
|
||||||
{required: true, message: '请选择费用类型', trigger: 'change'},
|
{required: true, message: '请选择费用类型', trigger: 'change'},
|
||||||
],
|
],
|
||||||
|
date: [
|
||||||
|
{required: true, message: '请选择就诊时间', trigger: 'change'},
|
||||||
|
]
|
||||||
})
|
})
|
||||||
const isShow = ref(false)
|
const isShow = ref(false)
|
||||||
const emit = defineEmits(['close'])
|
const emit = defineEmits(['close'])
|
||||||
const close = () => {
|
const close = () => {
|
||||||
isShow.value = false
|
isShow.value = false
|
||||||
edit_data.value = {}
|
time.value = ''
|
||||||
|
edit_data.value = {
|
||||||
|
timeList: [],
|
||||||
|
}
|
||||||
isShowCard.value = true
|
isShowCard.value = true
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
cardDefaultRef.value?.close()
|
cardDefaultRef.value?.close()
|
||||||
height.value = 600
|
height.value = 570
|
||||||
})
|
})
|
||||||
emit('close')
|
emit('close')
|
||||||
}
|
}
|
||||||
const form = ref()
|
const form = ref()
|
||||||
const quickRef = ref()
|
const quickRef = ref()
|
||||||
|
const time = ref()
|
||||||
|
const disabledDate = (date: Date) => {
|
||||||
|
const today = new Date();
|
||||||
|
today.setHours(0, 0, 0, 0); // 将时间设置为今天的 00:00:00
|
||||||
|
return date < today; // 禁用今天之前的日期
|
||||||
|
};
|
||||||
|
const props = defineProps({
|
||||||
|
dateName: {
|
||||||
|
type: String,
|
||||||
|
default: '现在'
|
||||||
|
},
|
||||||
|
})
|
||||||
const save = () => {
|
const save = () => {
|
||||||
if (props.dateName != '预约') {
|
if (props.dateName == '现在') {
|
||||||
edit_data.value.time = '现在'
|
edit_data.value.timeList = []
|
||||||
|
} else {
|
||||||
|
edit_data.value.timeList.push(new Date(edit_data.value.date), time.value)
|
||||||
}
|
}
|
||||||
let data = {
|
let data = {
|
||||||
...edit_data.value,
|
...edit_data.value,
|
||||||
|
|
@ -342,12 +361,12 @@ const quickShow = ref<any>(false)
|
||||||
const init = (doctorId: any = "", id: any = null, show: any = false) => {
|
const init = (doctorId: any = "", id: any = null, show: any = false) => {
|
||||||
isShow.value = true
|
isShow.value = true
|
||||||
quickShow.value = show
|
quickShow.value = show
|
||||||
console.log("doctorId", quickShow.value)
|
|
||||||
edit_data.value.organizationDoctorId = doctorId || ""
|
edit_data.value.organizationDoctorId = doctorId || ""
|
||||||
if (id) {
|
if (id) {
|
||||||
post('registration/getById', {id: id}).then((res: any) => {
|
post('registration/getById', {id: id}).then((res: any) => {
|
||||||
edit_data.value = res
|
edit_data.value = res
|
||||||
edit_data.value.certType = Number(edit_data.value.certType)
|
edit_data.value.certType = Number(edit_data.value.certType)
|
||||||
|
time.value = edit_data.value.timeList[edit_data.value.timeList.length - 1]
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
getSectionList()
|
getSectionList()
|
||||||
|
|
@ -383,9 +402,9 @@ const socialCardUpdate = (e: any) => {
|
||||||
}
|
}
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
if (tableData.value.length > 0) {
|
if (tableData.value.length > 0) {
|
||||||
height.value = 830
|
height.value = 870
|
||||||
} else {
|
} else {
|
||||||
height.value = 600
|
height.value = 570
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
loading.value = false
|
loading.value = false
|
||||||
|
|
@ -402,7 +421,7 @@ const deleteCard = () => {
|
||||||
tableData.value = []
|
tableData.value = []
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
cardDefaultRef.value?.close()
|
cardDefaultRef.value?.close()
|
||||||
height.value = 470
|
height.value = 570
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -138,3 +138,11 @@ export const getPrevious30Days=()=> {
|
||||||
}
|
}
|
||||||
return dates[dates.length-1];
|
return dates[dates.length-1];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//获取当前时间的时分
|
||||||
|
export const getCurrentTime=()=> {
|
||||||
|
const currentDate = new Date();
|
||||||
|
const hours = currentDate.getHours();
|
||||||
|
const minutes = currentDate.getMinutes();
|
||||||
|
return `${hours}:${minutes}`;
|
||||||
|
}
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
<ul class="role_list">
|
<ul class="role_list">
|
||||||
<el-scrollbar style="height: 100%">
|
<el-scrollbar style="height: 100%">
|
||||||
<li v-for="(item, index) in roleList" :key="index"
|
<li v-for="(item, index) in roleList" :key="index"
|
||||||
:class="{active:isShowNum==index}">
|
:class="{active:isShowNum==index}" @click="changeRole(item,index)">
|
||||||
<span class="name">{{ item.name }}</span>
|
<span class="name">{{ item.name }}</span>
|
||||||
<span class="section_name">{{ item.sectionNames }}</span>
|
<span class="section_name">{{ item.sectionNames }}</span>
|
||||||
<span v-if="dateName" class="btn" @click="openDialog(item,index)"
|
<span v-if="dateName" class="btn" @click="openDialog(item,index)"
|
||||||
|
|
@ -185,6 +185,9 @@ const reset = () => {
|
||||||
keyword.value = ''
|
keyword.value = ''
|
||||||
getPatientList()
|
getPatientList()
|
||||||
}
|
}
|
||||||
|
const changeRole=(item: any) => {
|
||||||
|
getPatientList()
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.container-wrapper {
|
.container-wrapper {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue