Merge branch 'main' of ssh://git.jizhiweb.cn:2222/clinic-v2/web
This commit is contained in:
commit
77b913e017
|
Before Width: | Height: | Size: 660 B After Width: | Height: | Size: 660 B |
|
|
@ -90,3 +90,8 @@ body {
|
|||
.clear-margin {
|
||||
margin: 0;
|
||||
}
|
||||
.el-popper.is-light.type-popper, .el-popper.is-light>.el-popper__arrow:before{
|
||||
background:#F5FAFF !important;
|
||||
padding: 0 !important;
|
||||
border: 1px solid #4D6DE4 !important;
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
|
||||
<el-popover placement="bottom-start" :visible="isVisible" :width="props.width" ref="popoverRef"
|
||||
:trigger-keys="[]">
|
||||
:trigger-keys="[]" style="height: 500px" popper-class="type-popper">
|
||||
<template #reference>
|
||||
<el-input
|
||||
ref="inputRef"
|
||||
|
|
@ -19,19 +19,40 @@
|
|||
/>
|
||||
</template>
|
||||
<div class="container">
|
||||
<el-table
|
||||
:data="searchList" style="width: 100%"
|
||||
@row-click="clickRow"
|
||||
:show-header="props.showHeader"
|
||||
max-height="200px"
|
||||
>
|
||||
<el-table-column
|
||||
<el-scrollbar>
|
||||
<table class="table" style="width: 100%; border-collapse: collapse;max-height: 50px">
|
||||
<!-- 表头 -->
|
||||
<thead>
|
||||
<tr class="table-title">
|
||||
<th
|
||||
v-for="item in showConfig"
|
||||
:prop="item.prop"
|
||||
:label="item.label||'-'"
|
||||
show-overflow-tooltip
|
||||
></el-table-column>
|
||||
</el-table>
|
||||
:key="item.prop"
|
||||
style="background-color: #f5f7fa; padding: 8px;"
|
||||
>
|
||||
{{ item.label }}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<!-- 表体 -->
|
||||
<tbody>
|
||||
<tr class="table-body"
|
||||
v-for="(item, index) in searchList"
|
||||
:key="index"
|
||||
@click="clickRow(item)"
|
||||
style="cursor: pointer; transition: background-color 0.2s;"
|
||||
>
|
||||
<td
|
||||
v-for="showItem in showConfig"
|
||||
:key="showItem.prop"
|
||||
style="vertical-align: middle; padding: 8px;"
|
||||
>
|
||||
{{ item[showItem.prop] }}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</el-scrollbar>
|
||||
</div>
|
||||
</el-popover>
|
||||
|
||||
|
|
@ -107,7 +128,7 @@ const beforeShow = () => {
|
|||
const isVisible = ref(false)
|
||||
const focus = () => {
|
||||
isVisible.value = true
|
||||
console.log("focus输入框")
|
||||
changeInput("")
|
||||
emit('focus', true)
|
||||
}
|
||||
const handlerBlur = () => {
|
||||
|
|
@ -131,4 +152,57 @@ const handlerBlur = () => {
|
|||
border: 1px solid #409eff !important;
|
||||
}
|
||||
}
|
||||
|
||||
.table {
|
||||
th {
|
||||
background: none !important;
|
||||
}
|
||||
|
||||
.table-title {
|
||||
height: 52px;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
color: #333333;
|
||||
font-style: normal;
|
||||
|
||||
th {
|
||||
text-align: left;
|
||||
&:nth-child(1) {
|
||||
width: 200px;
|
||||
text-align: left;
|
||||
border-radius: 8px 8px 0 0;
|
||||
padding-left: 24px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.table-body {
|
||||
height: 52px;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
color: #666666;
|
||||
font-style: normal;
|
||||
td {
|
||||
&:nth-child(1) {
|
||||
width: 200px;
|
||||
text-align: left;
|
||||
padding-left: 30px !important;
|
||||
white-space: nowrap; /* 防止文本换行 */
|
||||
overflow: hidden; /* 隐藏溢出的文本 */
|
||||
text-overflow: ellipsis; /* 显示省略号 */
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
&:last-child {
|
||||
border-radius: 0 0 8px 8px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #4D6DE4;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -14,7 +14,6 @@
|
|||
<template #reference>
|
||||
{{ scope.row.name }}
|
||||
</template>
|
||||
|
||||
<div class="detail">
|
||||
<div style="display: flex;justify-content: space-between">
|
||||
<div style="font-size: 18px;font-weight: 500;color: #000">{{
|
||||
|
|
@ -89,6 +88,7 @@
|
|||
@selectedCallBack="goodsSelect"
|
||||
:disabled="!props.status"
|
||||
@focus="focus"
|
||||
:width="1000"
|
||||
></SearchInput>
|
||||
</div>
|
||||
<span v-if="status">合计:¥{{ getTotalPrice() }}</span>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<Panel title="服务项目">
|
||||
<el-table v-if="itemDetail.length>0" :data="itemDetail" max-height="150">
|
||||
<el-table v-if="itemDetail.length>0" :data="itemDetail">
|
||||
<el-table-column prop="itemName" label="项目名称" show-overflow-tooltip width="200">
|
||||
<template #default="scope">
|
||||
<el-popover
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
<div class="panel-content" style="display: flex;flex-direction: column;height: 100%">
|
||||
<div class="tabs">
|
||||
<span v-for="(item,index) in statusList" :class="curStatus == item.status ? 'tabs-item' : ''"
|
||||
@click="clickTab(item)">{{ item.label }} {{ item.num }}</span>
|
||||
@click="clickTab(item)">{{ item.label }} ({{ item.num }})</span>
|
||||
</div>
|
||||
<div class="search">
|
||||
<img src="/static/images/outpatient/search.png" class="search-icon" alt="搜索图标">
|
||||
|
|
|
|||
|
|
@ -221,6 +221,66 @@ const checkTraceCode = (goodsList: any[]) => {
|
|||
nextTick(() => {
|
||||
chargeQueueRef.value?.getOrderList()
|
||||
})
|
||||
const saveAndCharge = () => {
|
||||
post('charge/save', {data: {...formData.value, doctorId: doctorId.value}}).then((res: any) => {
|
||||
formData.value.code = res
|
||||
nextTick(() => {
|
||||
settlementRef.value?.init(res)
|
||||
})
|
||||
})
|
||||
}
|
||||
const diagnosisSearchRef = ref()
|
||||
const diagnosisSearchApi = "social/diagnose/search"
|
||||
const diagnosisShowConfig = [
|
||||
{
|
||||
label: "诊断名称",
|
||||
prop: "name",
|
||||
},
|
||||
{
|
||||
label: "诊断编码",
|
||||
prop: "code",
|
||||
}
|
||||
]
|
||||
const diagnosisSelect = (list: any) => {
|
||||
const diagnosisNames = list.map((item: any) => item.name).join(',')
|
||||
formData.value.diagnosisMedicalRecord.diagnosisDetail = JSON.stringify(list)
|
||||
formData.value.diagnosisMedicalRecord.diagnosisSummary = diagnosisNames
|
||||
}
|
||||
const recordsConsumptionRef = ref<any>("")
|
||||
const patientCardRef = ref()
|
||||
const clickItem = async (item: any, status: any) => {
|
||||
statusDisabled.value = status
|
||||
formData.value = await post('medical/record/getByDiagnosisCode', {diagnosisCode: item.code})
|
||||
formData.value.doctorId = formData.value.patientRegistration.organizationDoctorId
|
||||
getOrderTotalPrice()
|
||||
nextTick(() => {
|
||||
let list = JSON.parse(formData.value.diagnosisMedicalRecord.diagnosisDetail)
|
||||
let nList = formData.value.diagnosisMedicalRecord.diagnosisSummary.split(',')
|
||||
diagnosisSearchRef.value?.init(list, nList);
|
||||
recordsConsumptionRef.value?.init(formData.value.patientInfo.id);
|
||||
patientCardRef.value?.init(formData.value.registrationId);
|
||||
})
|
||||
}
|
||||
const dockerList = ref<any[]>([])
|
||||
const getDockerList = () => {
|
||||
let query = {
|
||||
role: 1
|
||||
}
|
||||
post('organization/member/search', {query: query}).then((res: any) => {
|
||||
dockerList.value = res
|
||||
})
|
||||
}
|
||||
const orderCompleted = () => {
|
||||
getDockerList()
|
||||
list()
|
||||
nextTick(() => {
|
||||
chargeQueueRef.value?.getOrderList()
|
||||
})
|
||||
}
|
||||
const orderCanceled = () => {
|
||||
nextTick(() => {
|
||||
chargeQueueRef.value?.getOrderList()
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
<script setup lang="ts">
|
||||
|
||||
import Calendar from "@/components/common/Calendar.vue";
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<Calendar />
|
||||
<input type="date">
|
||||
</template>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
|
|
|||
|
|
@ -108,7 +108,7 @@ const initDoctor = () => {
|
|||
})
|
||||
}
|
||||
const patientList = ref<any>([])
|
||||
const selectedDate = ref<any>([getToday().start, getToday().end])
|
||||
const selectedDate = ref<any>([])
|
||||
const handleDateChange = (date: any[]) => {
|
||||
selectedDate.value = formatDateArray(date)
|
||||
if (selectedDate.value[0] == selectedDate.value[1]) {
|
||||
|
|
@ -119,6 +119,7 @@ const handleDateChange = (date: any[]) => {
|
|||
const getPatientList = () => {
|
||||
isShowNum.value = -1
|
||||
id.value = null
|
||||
selectedDate.value = [getToday().start, getToday().end]
|
||||
post('registration/list', {
|
||||
page: page.value,
|
||||
size: size.value,
|
||||
|
|
|
|||
Loading…
Reference in New Issue