Merge branch 'main' of ssh://git.jizhiweb.cn:2222/clinic-v2/web

This commit is contained in:
LiJianZhao 2025-05-23 11:53:49 +08:00
commit 301dc8f8c6
5 changed files with 44 additions and 23 deletions

View File

@ -42,20 +42,20 @@
<el-form-item label="体格检查:" v-if="!props.isShowFrom">
<PhysiqueExamInuput :disabled="props.disabled" v-model="formDate.exam" :list="physiqueExamList"/>
</el-form-item>
<el-form-item label="望闻问切:" v-if="modelType==1&&!props.isShowFrom">
<el-form-item label="望闻问切:" v-if="formDate.diagType==1&&!props.isShowFrom">
<PopoverInput :disabled="props.disabled" v-model="formDate.chinaAdjunctCheck" :list="chinaAdjunctCheckList"/>
</el-form-item>
<el-form-item label="治法:" v-if="modelType==1&&!props.isShowFrom">
<el-form-item label="治法:" v-if="formDate.diagType==1&&!props.isShowFrom">
<el-input v-model="formDate.chinaDeal" :disabled="props.disabled"></el-input>
</el-form-item>
<el-form-item label="口腔检查:" v-if="modelType==2&&!props.isShowFrom">
<el-form-item label="口腔检查:" v-if="formDate.diagType==2&&!props.isShowFrom">
<el-input :disabled="props.disabled" v-model="formDate.mouthCheck"></el-input>
</el-form-item>
<el-form-item label="辅助检查:" v-if="(modelType==2 || modelType ==0)&&!props.isShowFrom">
<el-form-item label="辅助检查:" v-if="(formDate.diagType==2 || formDate.diagType ==0)&&!props.isShowFrom">
<el-input style="height: 100%;width: 100%" :disabled="props.disabled"
v-model="formDate.adjunctCheck"></el-input>
</el-form-item>
<el-form-item label="处置:" v-if="(modelType==0 || modelType ==2)&&!props.isShowFrom">
<el-form-item label="处置:" v-if="(formDate.diagType==0 || formDate.diagType ==2)&&!props.isShowFrom">
<el-input style="height: 100%;width: 100%" :disabled="props.disabled" v-model="formDate.deal"></el-input>
</el-form-item>
</el-form>
@ -88,7 +88,6 @@ const props = defineProps({
}
})
const formDate = defineModel<any>();
const modelType = ref(0)
interface ShowConfig {
label: string;

View File

@ -3,23 +3,23 @@
<div class="content">
<div class="content-title">
<div class="name">病例</div>
<button class="btn" @click="copy">复制</button>
<button class="btn" @click="copy" v-if="status!=3">复制</button>
</div>
<div class="content-middle">
<p>诊断:{{ detailObj.diagnosisMedicalRecord.diagnosisSummary }}</p>
<p>主诉:{{ detailObj.diagnosisMedicalRecord.mainAppeal }}</p>
<p>现病:{{ detailObj.diagnosisMedicalRecord.nowMedicalHistory }}</p>
<p>既往:{{ detailObj.diagnosisMedicalRecord.beforeMedicalHistory }}</p>
<p>体查:{{ detailObj.diagnosisMedicalRecord.exam }}</p>
<p>复查:{{ detailObj.diagnosisMedicalRecord.allergy }}</p>
<p>过敏:{{ detailObj.diagnosisMedicalRecord.allergyHistory }}</p>
<p>诊断:{{ detailObj.diagnosisMedicalRecord.diagnosisSummary}}</p>
<p>处置:{{ detailObj.diagnosisMedicalRecord.treatment }}</p>
</div>
</div>
<div class="content">
<div class="content-title">
<div class="name">服务项目</div>
<button class="btn" @click="copyItem">复制</button>
<button class="btn" @click="copyItem" v-if="status!=3">复制</button>
</div>
<div class="content-middle">
<div class="item" v-for="item in detailObj.itemDetail">
@ -41,7 +41,7 @@
<div class="content">
<div class="content-title">
<div class="name">药品耗材</div>
<button class="btn" @click="copyGoods">复制</button>
<button class="btn" @click="copyGoods" v-if="status!=3">复制</button>
</div>
<div class="content-middle">
<div class="item" v-for="item in detailObj.goodsDetail">
@ -75,7 +75,7 @@
<script setup lang="ts">
import {ref, defineProps, onMounted} from 'vue'
const {detail} = defineProps(['detail']);
const {detail, status} = defineProps(['detail', 'status']);
const detailObj = ref<any>(detail)
const sumPrice = ref(0)
const emit = defineEmits(['copy', 'copyItem', 'copyGoods'])
@ -160,6 +160,7 @@ onMounted(() => {
display: flex;
justify-content: space-between;
margin-bottom: 8px;
.name {
white-space: nowrap; /* 防止文本换行 */
overflow: hidden; /* 隐藏溢出的文本 */

View File

@ -12,7 +12,8 @@
</div>
</template>
<div>
<DiseaseDetails :detail="item" :key="item.id" @copy="copy" @copyItem="copyItem" @copyGoods="copyGoods"></DiseaseDetails>
<DiseaseDetails :status="props.status" :detail="item" :key="item.id" @copy="copy" @copyItem="copyItem"
@copyGoods="copyGoods"></DiseaseDetails>
</div>
</el-collapse-item>
</el-collapse>
@ -26,6 +27,14 @@ import DiseaseDetails from './DiseaseDetails.vue';
import {post} from "@/utils/request.ts";
import {ref} from "vue";
import {formatListTime} from "@/utils/dateUtils.ts";
const props = defineProps({
status: {
type: Number,
default: 0
}
})
console.log(props.status)
const list = ref<any>([])
const init = (patientId: any) => {
post("medical/record/listByPatient", {patientId: patientId}).then((res: any) => {
@ -69,12 +78,14 @@ defineExpose({init,clearList})
.doctor {
width: 80px;
}
.time {
display: inline-block;
overflow: hidden;
}
}
}
:deep .el-collapse-item__content {
padding: 0;
}

View File

@ -88,7 +88,7 @@
import Panel from "@/components/common/Panel.vue";
import ChargeQueue from "@/components/charge/ChargeQueue.vue";
import {nextTick, onMounted, onUnmounted, ref} from "vue";
import {nextTick, onMounted, onUnmounted, ref, watch} from "vue";
import {post} from "@/utils/request.ts";
import ServiceDetail from "@/components/common/service/ServiceDetail.vue";
import GoodsDetail from "@/components/common/goods/GoodsDetail.vue";
@ -366,6 +366,15 @@ const refund = async () => {
chargeQueueRef.value?.init()
})
}
watch(
[() => formData.value.goodsDetail, () => formData.value.itemDetail],
([newGoodsDetail, newItemDetail]) => {
if (newGoodsDetail || newItemDetail) {
getOrderTotalPrice()
}
},
{deep: true}
)
</script>
<style scoped lang="scss">

View File

@ -29,7 +29,8 @@
<PatientCard ref="patientCardRef"></PatientCard>
</div>
<div class="bottom">
<MedicalHistory ref="medicalHistoryRef" @copy="copyForm" @copyItem="copyItemList"
<MedicalHistory :status="patientRegistration.status" ref="medicalHistoryRef" @copy="copyForm"
@copyItem="copyItemList"
@copyGoods="copyGoodsList"></MedicalHistory>
</div>
</div>
@ -54,13 +55,13 @@ const patientId = ref()
const itemDetail = ref([])
const goodsList = ref([])
const formData = ref<any>({
diagType: 1,
diagType: 0,
itemDetail: [],
goodsDetail: [],
})
const initFormData = () => {
formData.value = {
diagType: 1,
diagType: 0,
itemDetail: [],
goodsDetail: [],
}
@ -184,7 +185,7 @@ const getOrderTotalPrice = () => {
}
const caseRef = ref<any>("")
const copyForm = (item: any) => {
formData.value = item.diagnosisMedicalRecord
formData.value.diagnosisMedicalRecord = item.diagnosisMedicalRecord
formData.value.diagType = Number(item.diagnosisMedicalRecord.diagType)
const diagnosisList = JSON.parse(item.diagnosisMedicalRecord.diagnosisDetail)
const nList = item.diagnosisMedicalRecord.diagnosisSummary.split(',')