You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

131 lines
4.4 KiB

<template>
<div style="display: flex;height:90px;">
<div class="asbitemListClass">
<div style="margin-top:2px;font-size:9px;color: #F56C6C;">未检组合项目</div>
<div style="overflow-y:auto; height:68px;width:100%; margin-top:2px;border: 1px solid;">
<el-tag type="danger" style="margin-left: 5px;" v-for="item in data.unCheckedAsbitem" :key="item" size="mini">{{
item }}</el-tag>
</div>
</div>
<div class="asbitemListClass">
<div style="margin-top:2px;font-size:9px;color: #909399;">弃检组合项目:</div>
<div style="overflow-y:auto; height:68px;width:100%; margin-top:2px;border: 1px solid;">
<el-tag type="info" style="margin-left: 5px;" v-for="item in data.giveUpAsbitem" :key="item" size="mini">{{ item
}}</el-tag>
</div>
</div>
<div class="asbitemListClass">
<div style="margin-top:2px;font-size:9px;color: #409EFF;">组合项目已检但无值的明细项目:</div>
<div style="overflow-y:auto; height:68px;width:100%; margin-top:2px;border: 1px solid;">
<el-tag style="margin-left: 5px;" v-for="item in data.checkedNullValueItem" :key="item" size="mini">{{ item
}}</el-tag>
</div>
</div>
<div class="asbitemListClass">
<div style="margin-top:2px;font-size:9px;color: #E6A23C;">组合项目已检但弃检的明细项目:</div>
<div style="overflow-y:auto; height:68px;width:100%; margin-top:2px;border: 1px solid;">
<el-tag type="warning" style="margin-left: 5px;" v-for="item in data.checkedGiveUpItem" :key="item" size="mini">{{
item }}</el-tag>
</div>
</div>
</div>
</template>
<script>
import moment from "moment";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
export default {
components: {},
props: ['patientRegisterId'],
data() {
return {
data: {
unCheckedAsbitem: [],//['未检项目1','未检项目2','未检项目3','未检项目4','未检项目5','未检项目6','未检项目7','未检项目8'],
giveUpAsbitem: [],//['弃检1','弃检2'],
checkedNullValueItem: [],//['无果1','无果2'],
checkedGiveUpItem: [],//['弃检明细1','弃检明细2'],
}
};
},
created() { },
//挂载完成
mounted() {
this.getSumAsbItemStatus(this.dataTransOpts.tableS.patient_register.id);
},
computed: {
...mapState(["window", "dict","dataTransOpts", "doctorCheck", "sumDoctorCheck"]),
sumHeight() {
let tempHeight = this.window.pageHeight < 600 ? 600 : this.window.pageHeight
return tempHeight - 320
},
},
methods: {
getSumAsbItemStatus(PatientRegisterId) {
if (!PatientRegisterId) {
this.data.unCheckedAsbitem = [];
this.data.giveUpAsbitem = [];
this.data.checkedNullValueItem = [];
this.data.checkedGiveUpItem = [];
return
}
getapi(`/api/app/patientregister/getpatientregisteritemstatus?PatientRegisterId=${PatientRegisterId}`).then(res => {
if (res.code != -1) {
this.data.unCheckedAsbitem = res.data.unCheckedAsbitem;
this.data.giveUpAsbitem = res.data.giveUpAsbitem;
this.data.checkedNullValueItem = res.data.checkedNullValueItem;
this.data.checkedGiveUpItem = res.data.checkedGiveUpItem;
}
});
}
},
//监听事件
watch: {
//人员ID切换
// "patientRegisterId":{
// immediate:true,
// handler(newVal, oldVal) {
// console.log("watch patientRegisterId newVal:", newVal, " oldVal:", oldVal);
// this.getSumAsbItemStatus(newVal);
// }
// },
// 虚拟表 触发强制刷新 (sumDoctor.M 合并包含:综述、建议、对比、历史等,不包含总检诊断)
"dataTransOpts.refresh.sumDoctor.M": {
// immediate:true,
handler(newVal, oldVal) {
console.log(`watch 总检--检查状态汇总 newVal: ${newVal}, oldVal: ${oldVal} patientRegisterId: ${this.dataTransOpts.tableS.patient_register.id}`);
this.getSumAsbItemStatus(this.dataTransOpts.tableS.patient_register.id);
}
},
},
};
</script>
<style scoped>
.asbitemListClass {
display: block;
width: v-bind("Math.floor((window.pageWidth - 110 - 15 - 15) / 4) + 'px'");
margin-left: 3px;
}
.labelClass {
margin-top: 2px;
font-size: 8x;
}
.contentClass {
display: flex;
height: 52px;
margin-top: 2px;
font-size: 8x;
}
</style>