|
@@ -8,6 +8,8 @@
|
|
|
<el-option v-for="item in statusFlags" :key="item.code" :label="item.name" :value="item.code"></el-option>
|
|
|
</el-select>
|
|
|
<el-divider direction="vertical"></el-divider>
|
|
|
+ <el-button type="success" icon="el-icon-document" :disabled="currentApply.medType === '42'" @click="feeDtle">医保费用明细</el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-user" @click="checkIdInfo">身份信息</el-button>
|
|
|
<el-button type="success" icon="el-icon-check" @click="beforeHandleApply(true)">审核通过</el-button>
|
|
|
<el-button type="danger" icon="el-icon-close" @click="beforeHandleApply(false)">审核不通过</el-button>
|
|
|
</el-header>
|
|
@@ -143,25 +145,31 @@
|
|
|
</el-descriptions-item>
|
|
|
</el-descriptions>
|
|
|
</div>
|
|
|
- <div style="height: 8px"></div>
|
|
|
- <el-tag>医保入院诊断</el-tag>
|
|
|
- <el-table :data="zyInYbDiags" stripe height="150">
|
|
|
- <el-table-column prop="diagNo" label="诊断序号"></el-table-column>
|
|
|
- <el-table-column prop="icdCode" label="诊断编码"></el-table-column>
|
|
|
- <el-table-column prop="icdText" label="诊断名称"></el-table-column>
|
|
|
- <el-table-column prop="opDate" label="诊断时间"></el-table-column>
|
|
|
- <el-table-column prop="operName" label="录入人"></el-table-column>
|
|
|
- </el-table>
|
|
|
- <div style="height: 8px"></div>
|
|
|
- <el-tag>医保出院诊断</el-tag>
|
|
|
- <el-table :data="zyDisDiags" stripe height="150">
|
|
|
- <el-table-column prop="disDiagNo" label="诊断序号"></el-table-column>
|
|
|
- <el-table-column prop="disDiag" label="诊断编码"></el-table-column>
|
|
|
- <el-table-column prop="disDiagComment" label="诊断名称"></el-table-column>
|
|
|
- <el-table-column prop="opDiagDate" label="诊断时间"></el-table-column>
|
|
|
- <el-table-column prop="opName" label="录入人"></el-table-column>
|
|
|
- <el-table-column prop="ssfz" label="分值"></el-table-column>
|
|
|
- </el-table>
|
|
|
+
|
|
|
+ <div style="margin-top: 8px; display: flex">
|
|
|
+ <div style="width: 44%">
|
|
|
+ <el-tag>医保入院诊断</el-tag>
|
|
|
+ <el-table :data="zyInYbDiags" stripe height="160">
|
|
|
+ <el-table-column prop="diagNo" label="序号" width="35"></el-table-column>
|
|
|
+ <el-table-column prop="icdCode" label="诊断编码" width="120"></el-table-column>
|
|
|
+ <el-table-column prop="icdText" label="诊断名称"></el-table-column>
|
|
|
+ <el-table-column prop="opDate" label="诊断时间"></el-table-column>
|
|
|
+ <el-table-column prop="operName" label="录入人" width="50"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <div style="width: 55%; margin-left: 1%">
|
|
|
+ <el-tag>医保出院诊断</el-tag>
|
|
|
+ <el-table :data="zyDisDiags" stripe height="160">
|
|
|
+ <el-table-column prop="disDiagNo" label="序号" width="35"></el-table-column>
|
|
|
+ <el-table-column prop="disDiag" label="诊断编码" width="120"></el-table-column>
|
|
|
+ <el-table-column prop="disDiagComment" label="诊断名称"></el-table-column>
|
|
|
+ <el-table-column prop="opDiagDate" label="诊断时间"></el-table-column>
|
|
|
+ <el-table-column prop="opName" label="录入人" width="50"></el-table-column>
|
|
|
+ <el-table-column prop="ssfz" label="分值"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
<div style="height: 8px"></div>
|
|
|
<el-tag>患者手术记录</el-tag>
|
|
|
<el-table :data="zySurgeries" stripe height="150">
|
|
@@ -172,6 +180,36 @@
|
|
|
<el-table-column prop="ssysName" label="手术医师"></el-table-column>
|
|
|
</el-table>
|
|
|
</div>
|
|
|
+ <div class="m-component">
|
|
|
+ <el-dialog v-model="showFeeDetl" title="医保费用明细" :close-on-click-modal="false" fullscreen>
|
|
|
+ <MedfeeAnalyse type="unsettled" :timestamp="timestamp" :mdtrt-id="currentApply.mdtrtId" />
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ v-show="idCardImgFile"
|
|
|
+ class="affix-container"
|
|
|
+ style="
|
|
|
+ position: absolute;
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ top: 60px;
|
|
|
+ left: 150px;
|
|
|
+ right: 150px;
|
|
|
+ bottom: 60px;
|
|
|
+ border-radius: 8px;
|
|
|
+ overflow-y: scroll;
|
|
|
+ background: rgba(0, 0, 0, 0.7);
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <div style="position: absolute; top: 12px; right: 12px">
|
|
|
+ <el-affix target=".affix-container" :offset="60">
|
|
|
+ <el-button icon="el-icon-plus" @click="zoomInIdCard">放大</el-button>
|
|
|
+ <el-button icon="el-icon-refresh" @click="resetIdCard">还原</el-button>
|
|
|
+ <el-button icon="el-icon-close" @click=";(idCardImgFile = null), resetIdCard()">关闭</el-button>
|
|
|
+ </el-affix>
|
|
|
+ </div>
|
|
|
+ <img id="idCardImg" :style="idCardImgStyle" :src="idCardImgFile" />
|
|
|
+ </div>
|
|
|
</el-main>
|
|
|
</el-container>
|
|
|
</el-main>
|
|
@@ -186,7 +224,10 @@ import femaleIcon from '@/assets/female-icon.png'
|
|
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
import { selectUnhandledApplies, selectPatientInfo, handleApply } from '../../../api/medical-insurance/si-settle-apply'
|
|
|
import { statusFlags, trueMedTypes } from '../../../data/index'
|
|
|
+import { getIdCardInfo } from '@/api/yibao/patient'
|
|
|
+import MedfeeAnalyse from '../../../components/medical-insurance/medfee-analyse/Index.vue'
|
|
|
export default {
|
|
|
+ components: { MedfeeAnalyse },
|
|
|
setup() {
|
|
|
const currentApply = ref({})
|
|
|
const windowSize = store.state.app.windowSize
|
|
@@ -195,6 +236,7 @@ export default {
|
|
|
height: windowSize.h - 50 + 'px',
|
|
|
overflowY: 'scroll',
|
|
|
}
|
|
|
+ const showFeeDetl = ref(false)
|
|
|
const medType = ref('')
|
|
|
const statusFlag = ref(null)
|
|
|
const patient = ref({})
|
|
@@ -211,6 +253,20 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
+ const timestamp = ref(0)
|
|
|
+ const feeDtle = () => {
|
|
|
+ if (!currentApply.value.patNo) {
|
|
|
+ ElMessage({
|
|
|
+ message: '请先选择患者',
|
|
|
+ type: 'warning',
|
|
|
+ duration: 2500,
|
|
|
+ showClose: true,
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ timestamp.value = new Date().getTime()
|
|
|
+ showFeeDetl.value = true
|
|
|
+ }
|
|
|
|
|
|
const currentRow = ref({})
|
|
|
const handleClickOverview = (row) => {
|
|
@@ -273,6 +329,47 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ const idCardImgFile = ref('')
|
|
|
+ const idCardImgStyle = ref({
|
|
|
+ width: '1,114px',
|
|
|
+ height: '600px',
|
|
|
+ borderRadius: '4px',
|
|
|
+ w: 1114,
|
|
|
+ h: 600,
|
|
|
+ })
|
|
|
+ const zoomInIdCard = () => {
|
|
|
+ idCardImgStyle.value.w = idCardImgStyle.value.w * 1.3
|
|
|
+ idCardImgStyle.value.h = idCardImgStyle.value.h * 1.3
|
|
|
+ idCardImgStyle.value.width = idCardImgStyle.value.w + 'px'
|
|
|
+ idCardImgStyle.value.height = idCardImgStyle.value.h + 'px'
|
|
|
+ }
|
|
|
+ const resetIdCard = () => {
|
|
|
+ idCardImgStyle.value.w = 1114
|
|
|
+ idCardImgStyle.value.h = 600
|
|
|
+ idCardImgStyle.value.width = '1114px'
|
|
|
+ idCardImgStyle.value.height = '600px'
|
|
|
+ }
|
|
|
+ const checkIdInfo = () => {
|
|
|
+ if (!currentApply.value.patNo) {
|
|
|
+ ElMessage({
|
|
|
+ message: '请先选择患者',
|
|
|
+ type: 'warning',
|
|
|
+ duration: 2500,
|
|
|
+ showClose: true,
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ getIdCardInfo(currentApply.value.patNo, currentApply.value.times).then((res) => {
|
|
|
+ if (res.idCard.length > 0) {
|
|
|
+ idCardImgFile.value = 'data:image/png;base64,' + res.idCard[0].fileSfz
|
|
|
+ } else {
|
|
|
+ if (res.scanFile.length > 0) {
|
|
|
+ idCardImgFile.value = 'data:image/png;base64,' + res.scanFile[0].fileSfz
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
onActivated(() => {
|
|
|
selectUnhandledApplies().then((res) => {
|
|
|
allApplies.value = res
|
|
@@ -281,6 +378,9 @@ export default {
|
|
|
|
|
|
return {
|
|
|
mainBoxStyle,
|
|
|
+ showFeeDetl,
|
|
|
+ timestamp,
|
|
|
+ idCardImgFile,
|
|
|
currentApply,
|
|
|
cptApplies,
|
|
|
tableHeight,
|
|
@@ -297,6 +397,11 @@ export default {
|
|
|
zySurgeries,
|
|
|
handleClickOverview,
|
|
|
beforeHandleApply,
|
|
|
+ feeDtle,
|
|
|
+ checkIdInfo,
|
|
|
+ idCardImgStyle,
|
|
|
+ zoomInIdCard,
|
|
|
+ resetIdCard,
|
|
|
}
|
|
|
},
|
|
|
}
|
|
@@ -315,15 +420,9 @@ function getStatusFlag(status, patNo) {
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
|
-.remark {
|
|
|
- padding: 5px 10px;
|
|
|
-}
|
|
|
-
|
|
|
-.mt10 {
|
|
|
- margin-top: 10px;
|
|
|
+.affix-container {
|
|
|
}
|
|
|
-
|
|
|
-.yb-tag {
|
|
|
- padding: 5px 0 0 20px;
|
|
|
+:deep(.m-component .el-dialog__body) {
|
|
|
+ padding: 0 !important;
|
|
|
}
|
|
|
</style>
|