fix: 健康统计,统计功能页面初始化,未开发。
This commit is contained in:
@@ -138,6 +138,11 @@
|
||||
<el-date-picker clearable v-model="formDetail.costTime" type="datetime" value-format="YYYY-MM-DD HH:mm:ss" placeholder="请选择产生时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="治疗类型" v-show="showMedicine" prop="treatType">
|
||||
<el-select v-model="form.treatType" placeholder="请选择用药类型" @change="handleTreatTypeChange">
|
||||
<el-option v-for="dict in mar_type" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-show="showMedicine" label="药品名称" prop="medicineId">
|
||||
<el-select v-model="formDetail.medicineId" placeholder="请选择药品名称" @change="handleMedicineChange" clearable>
|
||||
<el-option v-for="medicine in medicineList" :key="medicine.id" :label="medicine.shortNameBrandPackaging" :value="medicine.id" />
|
||||
@@ -157,16 +162,16 @@
|
||||
<el-input v-model="formDetail.costName" placeholder="请输入费用名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="单价" prop="price">
|
||||
<el-input v-model="formDetail.price" type="number" placeholder="请输入单价">
|
||||
<el-input v-model="formDetail.price" type="number" @change="handlePriceChange" placeholder="请输入单价">
|
||||
<template #suffix>元</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="数量" prop="count">
|
||||
<el-input v-model="formDetail.count" type="number" @change="handleCountchange" placeholder="请输入数量"> </el-input>
|
||||
<el-input v-model="formDetail.count" type="number" @change="handleCountChange" placeholder="请输入数量"> </el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位" disabled prop="unit">
|
||||
<el-select v-model="formDetail.unit" clearable placeholder="请选择单位">
|
||||
<el-option v-for="dict in medical_unit" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
|
||||
<el-option v-for="dict in package_unit" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="总价" prop="totalCost">
|
||||
@@ -200,23 +205,23 @@
|
||||
<div class="content-con">
|
||||
<el-table v-loading="loading" @selection-change="handleSelectionChange" :data="doctorRecordCostList">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="产生时间" align="center" prop="costTime" width="180"> </el-table-column>
|
||||
<el-table-column label="产生时间" align="center" prop="costTime" width="170"> </el-table-column>
|
||||
<el-table-column label="费用类型" width="100" align="center" prop="type">
|
||||
<template #default="scope">
|
||||
<dict-tag :options="cost_type" :value="scope.row.type" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="费用名称" align="center" prop="costName" />
|
||||
<el-table-column label="单价" align="center" width="80" prop="price" />
|
||||
<el-table-column label="单价(元)" align="center" width="100" prop="price" />
|
||||
<el-table-column label="数量" align="center" width="80" prop="count" />
|
||||
<el-table-column label="单位" align="center" width="80" prop="unit">
|
||||
<template #default="scope">
|
||||
<dict-tag :options="medical_unit" :value="scope.row.unit" />
|
||||
<dict-tag :options="package_unit" :value="scope.row.unit" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="总价" align="center" width="100" prop="totalCost" />
|
||||
<el-table-column label="总价(元)" align="center" width="100" prop="totalCost" />
|
||||
|
||||
<el-table-column label="操作" align="center" width="100" class-name="small-padding fixed-width">
|
||||
<el-table-column label="操作" align="center" width="120" class-name="small-padding fixed-width">
|
||||
<template v-slot="scope">
|
||||
<div class="ctrl-btn d-flex">
|
||||
<el-tooltip v-for="item in operateDetailList" :key="item.id" class="item" effect="dark" :content="item.title" placement="top">
|
||||
@@ -244,12 +249,13 @@ import dayjs from 'dayjs'
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
import { require } from '@/utils/require'
|
||||
const { proxy } = getCurrentInstance()
|
||||
const { doctor_type, cost_type, check_type, medical_unit, nursing_type } = proxy.useDict(
|
||||
const { doctor_type, cost_type, check_type, package_unit, nursing_type, mar_type } = proxy.useDict(
|
||||
'doctor_type',
|
||||
'cost_type',
|
||||
'check_type',
|
||||
'medical_unit',
|
||||
'nursing_type'
|
||||
'package_unit',
|
||||
'nursing_type',
|
||||
'mar_type'
|
||||
)
|
||||
const medicineList = ref([])
|
||||
const doctorRecordList = ref([])
|
||||
@@ -281,6 +287,7 @@ const operateList = ref([
|
||||
{ id: 'delete', icon: 'Delete', title: '删除', hasPermi: ['health:doctorRecord:remove'] }
|
||||
])
|
||||
const operateDetailList = ref([
|
||||
{ id: 'copy', icon: 'Link', title: '复制', hasPermi: ['health:doctorRecord:edit'] },
|
||||
{ id: 'edit', icon: 'Edit', title: '修改', hasPermi: ['health:doctorRecord:edit'] },
|
||||
{ id: 'delete', icon: 'Delete', title: '删除', hasPermi: ['health:doctorRecord:remove'] }
|
||||
])
|
||||
@@ -301,6 +308,11 @@ const data = reactive({
|
||||
pageNum: 1,
|
||||
pageSize: 1000
|
||||
},
|
||||
queryMedicineParams: {
|
||||
pageNum: 1,
|
||||
treatmentType: null,
|
||||
pageSize: 1000
|
||||
},
|
||||
queryHealthRecordParams: {
|
||||
pageNum: 1,
|
||||
personId: null,
|
||||
@@ -332,7 +344,14 @@ const data = reactive({
|
||||
})
|
||||
/** 查询药品管理列表 */
|
||||
function getMedicineList() {
|
||||
listMedicineBasic(queryPersonParams.value).then((response) => {
|
||||
listMedicineBasic(queryMedicineParams.value).then((response) => {
|
||||
medicineList.value = response.rows
|
||||
})
|
||||
}
|
||||
const handleTreatTypeChange = (type) => {
|
||||
queryMedicineParams.value.treatmentType = type
|
||||
|
||||
listMedicineBasic(queryMedicineParams.value).then((response) => {
|
||||
medicineList.value = response.rows
|
||||
})
|
||||
}
|
||||
@@ -355,7 +374,7 @@ const handleOperate = (operate, row) => {
|
||||
}
|
||||
}
|
||||
|
||||
const { queryParams, form, formDetail, rules, queryPersonParams, queryHealthRecordParams, rulesDetail } = toRefs(data)
|
||||
const { queryParams, form, formDetail, rules, queryPersonParams, queryMedicineParams, queryHealthRecordParams, rulesDetail } = toRefs(data)
|
||||
|
||||
const handlePersonChange = (personId) => {
|
||||
queryHealthRecordParams.personId = personId
|
||||
@@ -367,9 +386,14 @@ const handlePersonChange = (personId) => {
|
||||
})
|
||||
}
|
||||
|
||||
const handleCountchange = (count) => {
|
||||
const handleCountChange = (count) => {
|
||||
if (formDetail.value.price != null) {
|
||||
formDetail.value.totalCost = count * formDetail.value.price
|
||||
formDetail.value.totalCost = parseFloat(count * formDetail.value.price).toFixed(2)
|
||||
}
|
||||
}
|
||||
const handlePriceChange = (price) => {
|
||||
if (formDetail.value.count != null) {
|
||||
formDetail.value.totalCost = parseFloat(price * formDetail.value.count).toFixed(2)
|
||||
}
|
||||
}
|
||||
const handleNursingTypechange = (type) => {
|
||||
@@ -388,7 +412,7 @@ const handleCheckTypechange = (type) => {
|
||||
|
||||
const handleMedicineChange = (medicineId) => {
|
||||
getMedicineBasic(medicineId).then((response) => {
|
||||
formDetail.value.unit = response.data.unit
|
||||
formDetail.value.unit = response.data.packageUnit
|
||||
formDetail.value.costName = response.data.shortNameBrandPackaging
|
||||
})
|
||||
}
|
||||
@@ -400,40 +424,49 @@ const handleTypeChange = (type) => {
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
formDetail.value.costName = '挂号费'
|
||||
formDetail.value.unit = '7'
|
||||
formDetail.value.count = 1
|
||||
formDetail.value.unit = '6'
|
||||
} else if (type == '2') {
|
||||
//检测检查
|
||||
showCheckType.value = true
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
formDetail.value.count = 1
|
||||
formDetail.value.unit = '5'
|
||||
} else if (type == '3') {
|
||||
//药品
|
||||
getMedicineList()
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = true
|
||||
formDetail.value.count = 1
|
||||
} else if (type == '4') {
|
||||
//护理治疗
|
||||
showCheckType.value = false
|
||||
showNursingType.value = true
|
||||
showMedicine.value = false
|
||||
formDetail.value.unit = '6'
|
||||
formDetail.value.count = 1
|
||||
} else if (type == '5') {
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
formDetail.value.costName = '交通费'
|
||||
formDetail.value.unit = '7'
|
||||
formDetail.value.unit = '6'
|
||||
formDetail.value.count = 1
|
||||
} else if (type == '6') {
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
formDetail.value.costName = '餐饮'
|
||||
formDetail.value.unit = '7'
|
||||
formDetail.value.unit = '6'
|
||||
formDetail.value.count = 1
|
||||
} else if (type == '7') {
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
formDetail.value.costName = ''
|
||||
formDetail.value.count = 1
|
||||
formDetail.value.unit = null
|
||||
}
|
||||
}
|
||||
@@ -448,6 +481,9 @@ function handleAddDetail() {
|
||||
|
||||
const handleDetailOperate = (operate, row) => {
|
||||
switch (operate) {
|
||||
case 'copy':
|
||||
handleCopy(row)
|
||||
break
|
||||
case 'edit':
|
||||
handleUpdateDetail(row)
|
||||
break
|
||||
@@ -458,10 +494,59 @@ const handleDetailOperate = (operate, row) => {
|
||||
break
|
||||
}
|
||||
}
|
||||
/** 复制按钮操作 */
|
||||
function handleCopy(row) {
|
||||
resetDetail()
|
||||
getDoctorRecordCost(row.id).then((response) => {
|
||||
formDetail.value = response.data
|
||||
const type = response.data.type
|
||||
//挂号费
|
||||
if (type == '1') {
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
} else if (type == '2') {
|
||||
//检测检查
|
||||
showCheckType.value = true
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
} else if (type == '3') {
|
||||
//药品
|
||||
getMedicineList()
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = true
|
||||
} else if (type == '4') {
|
||||
//护理治疗
|
||||
showCheckType.value = false
|
||||
showNursingType.value = true
|
||||
showMedicine.value = false
|
||||
} else if (type == '5') {
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
} else if (type == '6') {
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
} else if (type == '7') {
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
}
|
||||
formDetail.value.id = null
|
||||
openDetail.value = true
|
||||
titleDetail.value = '复制费用明细'
|
||||
})
|
||||
}
|
||||
// 取消按钮
|
||||
function cancelDetail() {
|
||||
openDetail.value = false
|
||||
resetDetail()
|
||||
//检测检查
|
||||
showCheckType.value = false
|
||||
showNursingType.value = false
|
||||
showMedicine.value = false
|
||||
}
|
||||
/** 总利息按钮操作 */
|
||||
function handleUpdateCost() {
|
||||
|
||||
Reference in New Issue
Block a user