This commit is contained in:
ChenQiuYu 2025-04-24 16:45:47 +08:00
parent 7402bffd1f
commit 48c69fa2a0
8 changed files with 28 additions and 63 deletions

View File

@ -92,4 +92,3 @@ body {
.clear-margin {
margin: 0;
}

View File

@ -13,51 +13,7 @@
</div>
</template>
<div class="container">
<el-form :model="formDate" label-width="auto" ref="formRef">
<!-- <el-descriptions-->
<!-- :column="1"-->
<!-- border-->
<!-- >-->
<!-- <el-descriptions-item label="主诉">-->
<!-- <PopoverInput v-model="formDate.mainAppeal" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="诊断">-->
<!-- <DiagnosisSearchInput-->
<!-- :request-api="diagnosisSearchApi"-->
<!-- :show-config="diagnosisShowConfig"-->
<!-- @selectedCallBack="diagnosisSelect"-->
<!-- :show-header="false">-->
<!-- </DiagnosisSearchInput>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="现病史">-->
<!-- <PopoverInput v-model="formDate.nowMedicalHistory" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="既往史">-->
<!-- <PopoverInput v-model="formDate.beforeMedicalHistory" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="过敏史">-->
<!-- <PopoverInput v-model="formDate.allergyHistory" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="体格检查">-->
<!-- <PopoverInput v-model="formDate.exam" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="望闻问切" v-if="modelType==1">-->
<!-- <PopoverInput v-model="formDate.chinaAdjunctCheck" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="法制" v-if="modelType==1">-->
<!-- <PopoverInput v-model="formDate.chinaDeal" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="口腔检查" v-if="modelType==2">-->
<!-- <el-input v-model="formDate.mouthCheck"></el-input>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="辅助检查" v-if="modelType==2 || modelType ==0">-->
<!-- <PopoverInput v-model="formDate.adjunctCheck" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- <el-descriptions-item label="处置" v-if="modelType==0 || modelType ==2">-->
<!-- <PopoverInput v-model="formDate.deal" :list="tempList"/>-->
<!-- </el-descriptions-item>-->
<!-- </el-descriptions>-->
<el-form-item label="主诉">
<PopoverInput v-model="formDate.mainAppeal" :list="tempList"/>
</el-form-item>
@ -144,6 +100,6 @@ const diagnosisSelect = (list: any) => {
}
.container {
margin-left: 20px;
margin: 24px;
}
</style>

View File

@ -9,10 +9,10 @@
<el-tooltip
class="box-item"
effect="dark"
:content="item.diagnosisSummary"
:content="item.diagnosisMedicalRecord.diagnosisSummary"
placement="bottom-start"
>
<span class="disease-name">{{ item.diagnosisSummary }}</span>
<span class="disease-name">{{ item.diagnosisMedicalRecord.diagnosisSummary }}</span>
</el-tooltip>
<!-- <span class="doctor">{{ item.patientId }}</span>-->
<!-- <span class="time">{{ item.createDatetime }}</span>-->

View File

@ -131,7 +131,6 @@ watch(() => props.status, () => {
<style scoped lang="scss">
.tabs {
height: 27px;
width: 100%;
border-bottom: 1px solid #EAEAEC;
font-weight: 500;
color: #999999;

View File

@ -21,7 +21,7 @@
</template>
</el-dropdown>
</span>
<span class="price">{{ item.selectedPrice * item.selectedPrice || '0' }}</span>
<span class="price">{{item.selectedPrice || '0' }}</span>
<span class="delete">
<el-button type="text" @click="deleteItem(item.id)">
<el-icon><CircleClose/></el-icon>
@ -41,7 +41,7 @@
</SearchInput>
</div>
<span style="margin-right: 24px">
{{ list.reduce((acc, cur) => acc + cur.minPackagingUnit * cur.unitPrice, 0) }}
{{ sumPrice}}
</span>
</div>
</div>
@ -51,6 +51,7 @@
import Panel from "@/components/common/Panel.vue";
import SearchInput from "@/components/SearchInput.vue";
import {CircleClose} from "@element-plus/icons-vue";
import {watch,ref} from "vue";
const itemSearchApi = "goods/goods/search";
@ -90,6 +91,12 @@ const selectUnit = (item: any, unit: any) => {
item.selectedPrice = item.disassemblyPrice
}
}
const sumPrice = ref(0)
watch(()=>list.value, (newList) => {
sumPrice.value = newList.reduce((total, item) => {
return total + (item.selectNum || 0) * (item.selectedPrice || 0);
}, 0);
}, {deep: true})
</script>
<style scoped lang="scss">

View File

@ -1,7 +1,7 @@
<script setup lang="ts">
import Panel from '../common/Panel.vue';
import {defineEmits, defineModel} from 'vue'
import {defineEmits, defineModel,defineProps} from 'vue'
const {status}=defineProps(['status'])
const emit = defineEmits(['save','deleteItem']);
const save = () => {
emit('save');
@ -18,8 +18,9 @@ const totalAmount = defineModel<any>()
<div class="footer">
<div>总金额<span class="text icon"></span><span class="text">{{ totalAmount || '0' }}</span></div>
<div class="btn-group">
<el-button @click="deleteItem">取消接诊</el-button>
<el-button type="primary" @click="save">完成接诊</el-button>
<el-button v-if="status == 2" @click="deleteItem">取消接诊</el-button>
<el-button v-if="status == 2" type="primary" @click="save">完成接诊</el-button>
<el-button v-if="status == 3" type="primary">修改</el-button>
</div>
</div>
</Panel>

View File

@ -20,7 +20,9 @@
</el-descriptions-item>
<el-descriptions-item label="单位">
<el-form-item>
<el-input v-model="form.unit"/>
<el-input v-model.number="form.unit" min="0">
<template #append></template>
</el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="医保码">

View File

@ -19,7 +19,7 @@
<PharmaceuticalConsumables v-else v-model="goodsList"></PharmaceuticalConsumables>
</div>
<div class="bottom">
<Settlement v-model="totalAmount" @deleteItem="deleteItem" @save="save"></Settlement>
<Settlement v-if="status!=1" v-model="totalAmount" @deleteItem="deleteItem" @save="save" :status="status"></Settlement>
</div>
</el-scrollbar>
</div>
@ -89,6 +89,7 @@ const patientRegistration= ref<any>({})
const getId = (item: any) => {
registerId.value = item.id
patientId.value = item.patientInfoId
status.value = item.status
nextTick(() => {
medicalHistoryRef.value?.init(patientId.value);
})
@ -119,15 +120,16 @@ const getStatus = (e: any) => {
status.value = e
}
// 使 watch goodsList itemList
watch([goodsList, itemList], ([newGoodsList, newItemList]) => {
watch([()=>goodsList.value, itemList], ([newGoodsList, newItemList]) => {
const pharmaceuticalTotalAmount = newItemList.reduce((pre: any, cur: any) => {
return pre + cur.unitPrice
}, 0);
const serviceTotalAmount = newGoodsList.reduce((pre: any, cur: any) => {
return pre + cur.selectedNum * cur.selectedPrice
return pre + cur.selectNum * cur.selectedPrice
}, 0);
totalAmount.value = pharmaceuticalTotalAmount + serviceTotalAmount;
console.log(serviceTotalAmount)
}, {deep: true});
</script>
<style scoped lang="scss">
@ -139,7 +141,6 @@ watch([goodsList, itemList], ([newGoodsList, newItemList]) => {
.left {
width: 320px;
margin-right: 24px;
}
.middle {