Browse Source

优化组件

lighter 3 years ago
parent
commit
79b292af3e

+ 51 - 0
src/App.vue

@@ -121,4 +121,55 @@ function getWindowSize() {
     opacity: 1;
   }
 }
+
+.component-box-wrapper__fullscreen {
+  position: fixed;
+  top: 0;
+  left: 0;
+  bottom: 0;
+  right: 0;
+  background: white;
+  padding: 20px;
+  z-index: 10000;
+  height: 100%;
+  overflow: auto;
+}
+
+.component-box-wrapper__half-transparent {
+  position: fixed;
+  top: 0;
+  left: 0;
+  bottom: 0;
+  right: 0;
+  background: rgba(0, 0, 0, 0.7);
+  padding: 20px;
+  z-index: 10000;
+  height: 100%;
+  overflow: auto;
+  display: flex;
+  align-items: flex-start;
+  justify-content: center;
+}
+.component-content-box__dialog-like {
+  width: 60%;
+  padding: 20px;
+  background: white;
+  margin-top: 15vh;
+}
+.component-header-box {
+  position: relative;
+  width: 100%;
+  display: flex;
+  padding: 0 0 12px 0;
+}
+.component-header__title {
+  width: 70%;
+  font-size: 16px;
+  display: flex;
+  align-items: center;
+}
+.component-header__close-button {
+  width: 30%;
+  text-align: right;
+}
 </style>

+ 32 - 33
src/components/inpatient/IdentifyImage.vue

@@ -1,17 +1,20 @@
 <template>
-  <div style="position: fixed; top: 12px; right: 12px">
-    <el-button type="primary" icon="el-icon-plus" @click="zoomInIdCard" circle title="放大"></el-button>
-    <el-button type="primary" icon="el-icon-refresh" @click="resetIdCard" circle title="还原"></el-button>
-    <el-button type="danger" icon="el-icon-close" @click="closeIdCard" circle title="关闭"></el-button>
+  <div class="component-box-wrapper__fullscreen">
+    <div style="font-size: 18px; margin-bottom: 20px">身份信息</div>
+    <div style="position: fixed; top: 12px; right: 12px">
+      <el-button type="primary" icon="el-icon-plus" @click="zoomInIdCard" circle title="放大"></el-button>
+      <el-button type="primary" icon="el-icon-refresh" @click="resetIdCard" circle title="还原"></el-button>
+      <el-button type="danger" icon="el-icon-close" @click="closeIdCard" circle title="关闭"></el-button>
+    </div>
+    <div class="his-info-box">
+      <span>HIS信息</span>
+      <span>姓名:{{ patient.name }}</span>
+      <span>性别:{{ patient.sex === 1 ? '男' : '女' }}</span>
+      <span>出生日期:{{ patient.birthDate }}</span>
+      <span>身份证:{{ patient.socialNo }}</span>
+    </div>
+    <img id="idCardImg" :style="idCardImgStyle" :src="identifyImageFile" />
   </div>
-  <div class="his-info-box">
-    <span>HIS信息</span>
-    <span>姓名:{{ patient.name }}</span>
-    <span>性别:{{ patient.sex === 1 ? '男' : '女' }}</span>
-    <span>出生日期:{{ patient.birthDate }}</span>
-    <span>身份证:{{ patient.socialNo }}</span>
-  </div>
-  <img id="idCardImg" :style="idCardImgStyle" :src="identifyImageFile" />
 </template>
 
 <script>
@@ -37,11 +40,11 @@ export default {
     const patient = ref({})
     const identifyImageFile = ref('')
     const idCardImgStyle = ref({
-      width: '856px',
-      height: '540px',
+      width: '684.8px',
+      height: '432px',
       borderRadius: '4px',
-      w: 856,
-      h: 540,
+      w: 684.8,
+      h: 432,
     })
     const zoomInIdCard = () => {
       idCardImgStyle.value.w = idCardImgStyle.value.w * 1.2
@@ -50,10 +53,10 @@ export default {
       idCardImgStyle.value.height = idCardImgStyle.value.h + 'px'
     }
     const resetIdCard = () => {
-      idCardImgStyle.value.w = 856
-      idCardImgStyle.value.h = 540
-      idCardImgStyle.value.width = '856px'
-      idCardImgStyle.value.height = '540px'
+      idCardImgStyle.value.w = 684.8
+      idCardImgStyle.value.h = 432
+      idCardImgStyle.value.width = '684.8px'
+      idCardImgStyle.value.height = '432px'
     }
     const closeIdCard = () => {
       identifyImageFile.value = null
@@ -61,17 +64,14 @@ export default {
       ctx.emit('close')
     }
     const checkIdInfo = () => {
-      getIdCardInfo(props.patNo, props.times).then((res) => {
-        console.log(res)
-        patient.value = res.patient
-        if (res.idCard.length > 0) {
-          identifyImageFile.value = 'data:image/png;base64,' + res.idCard[0].fileSfz
-        } else {
-          if (res.scanFile.length > 0) {
-            identifyImageFile.value = 'data:image/png;base64,' + res.scanFile[0].fileSfz
-          }
-        }
-      })
+      getIdCardInfo(props.patNo, props.times)
+        .then((res) => {
+          patient.value = res.patient
+          identifyImageFile.value = 'data:image/png;base64,' + res.idCard.fileSfz
+        })
+        .catch(() => {
+          ctx.emit('close')
+        })
     }
     watch(
       () => props.timestamp,
@@ -99,9 +99,8 @@ export default {
 .affix-container {
 }
 .his-info-box {
-  margin-top: -20px;
-  margin-bottom: 20px;
   font-size: 15px;
+  margin-bottom: 20px;
 }
 .his-info-box > span {
   font-weight: bold;

+ 76 - 65
src/components/medical-insurance/medfee-analyse/Index.vue

@@ -1,69 +1,74 @@
 <template>
-  <el-container>
-    <el-aside width="360px">
-      <div style="display: flex; height: 36px; align-items: center; font-weight: 600; padding: 0 12px">
-        <div style="width: 34%">费用类别</div>
-        <div style="width: 23%">总金额</div>
-        <div style="width: 22%">政策范围内金额</div>
-        <div style="width: 21%">政策范围外金额</div>
-      </div>
-      <div v-for="(val, key) in analyse" :key="key" class="fee-type" :style="currentStyle(key)" @click="handleClickChrgtype(val, key)">
-        <div>
-          <div style="width: 34%">{{ val[0] }}</div>
-          <div style="width: 23%">{{ val[1] }}</div>
-          <div style="width: 22%">{{ val[2] }}</div>
-          <div style="width: 21%">{{ val[3] }}</div>
+  <div class="component-box-wrapper__fullscreen">
+    <div style="font-size: 18px !important; margin-bottom: 20px">医保费用明细</div>
+    <div style="position: fixed; top: 12px; right: 20px; width: 100%; text-align: right">
+      <el-button type="danger" icon="el-icon-close" circle title="关闭" @click="close"></el-button>
+    </div>
+    <el-container>
+      <el-aside width="360px">
+        <div style="display: flex; height: 36px; align-items: center; font-weight: 600; padding: 0 12px">
+          <div style="width: 34%">费用类别</div>
+          <div style="width: 23%">总金额</div>
+          <div style="width: 22%">政策范围内金额</div>
+          <div style="width: 21%">政策范围外金额</div>
         </div>
-      </div>
-    </el-aside>
-    <el-main>
-      <el-descriptions :column="4" border>
-        <el-descriptions-item>
-          <template #label> 姓名 </template>
-          {{ psninfo.psnName }}
-        </el-descriptions-item>
-        <el-descriptions-item>
-          <template #label> 住院号 </template>
-          {{ psninfo.patNo }}
-        </el-descriptions-item>
-        <el-descriptions-item>
-          <template #label> 住院次数 </template>
-          {{ psninfo.times }}
-        </el-descriptions-item>
-        <el-descriptions-item>
-          <template #label> 账页号 </template>
-          {{ psninfo.ledgerSn }}
-        </el-descriptions-item>
-      </el-descriptions>
-      <el-table :data="cptFeedtle.slice(pageSize * (currentPage - 1), pageSize * currentPage)" stripe :height="tableHeight">
-        <el-table-column prop="feedetlSn" label="流水号" width="60"></el-table-column>
-        <el-table-column prop="feeOcurTime" label="费用发生时间"></el-table-column>
-        <el-table-column prop="medinsListCodg" label="院内码"></el-table-column>
-        <el-table-column prop="medinsListName" label="收费名称"></el-table-column>
-        <el-table-column prop="cnt" label="数量" width="80"></el-table-column>
-        <el-table-column prop="pric" label="单价" width="80"></el-table-column>
-        <el-table-column prop="detItemFeeSumamt" label="金额" width="80"></el-table-column>
-        <!-- <el-table-column prop="selfpayPropPercent" label="自付比例" width="80"></el-table-column> -->
-        <el-table-column prop="fulamtOwnpayAmt" label="全自费金额" width="80" sortable></el-table-column>
-        <el-table-column prop="overlmtAmt" label="超限价金额" width="80" sortable></el-table-column>
-        <el-table-column prop="preselfpayAmt" label="先行自付金额" width="80" sortable></el-table-column>
-        <el-table-column prop="inscpScpAmt" label="符合政策范围金额" width="80" sortable></el-table-column>
-        <el-table-column prop="chrgitmLvName" label="收费项目等级" width="80"></el-table-column>
-        <el-table-column prop="bilgDeptName" label="科室"></el-table-column>
-        <el-table-column prop="bilgDrName" label="医生"></el-table-column>
-      </el-table>
-      <el-pagination
-        @size-change="handleSizeChange"
-        @current-change="handleCurrentChange"
-        :current-page="currentPage"
-        :page-sizes="[10, 30, 50, 100]"
-        :page-size="pageSize"
-        layout="total, sizes, prev, pager, next, jumper"
-        :total="cptFeedtle.length"
-        style="margin-top: 5px"
-      ></el-pagination>
-    </el-main>
-  </el-container>
+        <div v-for="(val, key) in analyse" :key="key" class="fee-type" :style="currentStyle(key)" @click="handleClickChrgtype(val, key)">
+          <div>
+            <div style="width: 34%">{{ val[0] }}</div>
+            <div style="width: 23%">{{ val[1] }}</div>
+            <div style="width: 22%">{{ val[2] }}</div>
+            <div style="width: 21%">{{ val[3] }}</div>
+          </div>
+        </div>
+      </el-aside>
+      <el-main>
+        <el-descriptions :column="4" border>
+          <el-descriptions-item>
+            <template #label> 姓名 </template>
+            {{ psninfo.psnName }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 住院号 </template>
+            {{ psninfo.patNo }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 住院次数 </template>
+            {{ psninfo.times }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 账页号 </template>
+            {{ psninfo.ledgerSn }}
+          </el-descriptions-item>
+        </el-descriptions>
+        <el-table :data="cptFeedtle.slice(pageSize * (currentPage - 1), pageSize * currentPage)" stripe :height="tableHeight">
+          <el-table-column prop="feedetlSn" label="流水号" width="60"></el-table-column>
+          <el-table-column prop="feeOcurTime" label="费用发生时间"></el-table-column>
+          <el-table-column prop="medinsListCodg" label="院内码"></el-table-column>
+          <el-table-column prop="medinsListName" label="收费名称"></el-table-column>
+          <el-table-column prop="cnt" label="数量" width="80"></el-table-column>
+          <el-table-column prop="pric" label="单价" width="80"></el-table-column>
+          <el-table-column prop="detItemFeeSumamt" label="金额" width="80"></el-table-column>
+          <el-table-column prop="fulamtOwnpayAmt" label="全自费金额" width="80" sortable></el-table-column>
+          <el-table-column prop="overlmtAmt" label="超限价金额" width="80" sortable></el-table-column>
+          <el-table-column prop="preselfpayAmt" label="先行自付金额" width="80" sortable></el-table-column>
+          <el-table-column prop="inscpScpAmt" label="符合政策范围金额" width="80" sortable></el-table-column>
+          <el-table-column prop="chrgitmLvName" label="收费项目等级" width="80"></el-table-column>
+          <el-table-column prop="bilgDeptName" label="科室"></el-table-column>
+          <el-table-column prop="bilgDrName" label="医生"></el-table-column>
+        </el-table>
+        <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-sizes="[10, 30, 50, 100]"
+          :page-size="pageSize"
+          layout="total, sizes, prev, pager, next, jumper"
+          :total="cptFeedtle.length"
+          style="margin-top: 5px"
+        ></el-pagination>
+      </el-main>
+    </el-container>
+  </div>
 </template>
 
 <script>
@@ -85,7 +90,8 @@ export default {
       required: true,
     },
   },
-  setup(props) {
+  emits: ['close'],
+  setup(props, ctx) {
     const store = useStore()
     const windowSize = store.state.app.windowSize
     const tableHeight = windowSize.h - 70
@@ -134,6 +140,10 @@ export default {
       })
     }
 
+    const close = () => {
+      ctx.emit('close')
+    }
+
     watch(
       () => props.timestamp,
       () => {
@@ -158,6 +168,7 @@ export default {
       handleCurrentChange,
       currentStyle,
       handleClickChrgtype,
+      close,
     }
   },
 }

+ 130 - 115
src/components/medical-insurance/registinfo/Index.vue

@@ -1,119 +1,129 @@
 <template>
-  <div v-if="injuryMode">
-    <el-descriptions title="工伤患者在院信息" :column="3" size="small" border>
-      <el-descriptions-item>
-        <template #label> 姓名 </template>
-        {{ registerInfo.name }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 住院号 </template>
-        {{ registerInfo.patient_id }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 个人电脑号 </template>
-        {{ registerInfo.indi_id }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 性别 </template>
-        {{ cptSex(registerInfo.sex) }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 身份证 </template>
-        {{ registerInfo.idcard }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 出生日期 </template>
-        {{ registerInfo.birthday }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 医疗类别 </template>
-        {{ registerInfo.treatment_name }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 入院科室 </template>
-        {{ registerInfo.out_dept_name }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 入院病房 </template>
-        {{ registerInfo.area_name }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 诊断编码 </template>
-        {{ registerInfo.in_diagnose }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 诊断名称 </template>
-        {{ registerInfo.in_disease_name }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 就诊登记号 </template>
-        {{ registerInfo.serial_no }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 工伤业务序号 </template>
-        {{ registerInfo.serial_bo_no }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 入院登记时间 </template>
-        {{ registerInfo.reg_date }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 单位名称 </template>
-        {{ registerInfo.corp_name }}
-      </el-descriptions-item>
-    </el-descriptions>
-  </div>
-  <div v-else>
-    <el-descriptions title="患者医保在院信息" :column="3" size="small" border>
-      <el-descriptions-item>
-        <template #label> 姓名 </template>
-        {{ registerInfo.psnName }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 住院号 </template>
-        {{ registerInfo.iptOtpNo }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 性别 </template>
-        {{ cptSex(registerInfo.gend) }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 证件类型 </template>
-        {{ cptPsnCertType(registerInfo.psnCertType) }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 证件号码 </template>
-        {{ registerInfo.certno }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 出生日期 </template>
-        {{ registerInfo.brdy }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 险种类型 </template>
-        {{ cptInsutype(registerInfo.insutype) }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 医疗类别 </template>
-        {{ cptMedType(registerInfo.medType) }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 异地标志 </template>
-        {{ cptYesOrNo(registerInfo.outFlag) }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 开始日期 </template>
-        {{ registerInfo.begndate }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 就诊ID </template>
-        {{ registerInfo.mdtrtId }}
-      </el-descriptions-item>
-      <el-descriptions-item>
-        <template #label> 人员编号 </template>
-        {{ registerInfo.psnNo }}
-      </el-descriptions-item>
-    </el-descriptions>
+  <div class="component-box-wrapper__half-transparent">
+    <div class="component-content-box__dialog-like">
+      <div class="component-header-box">
+        <div class="component-header__title">患者在院信息</div>
+        <div class="component-header__close-button">
+          <el-button plain icon="el-icon-close" circle title="关闭" @click="close"></el-button>
+        </div>
+      </div>
+      <div v-if="injuryMode">
+        <el-descriptions :column="3" size="small" border>
+          <el-descriptions-item>
+            <template #label> 姓名 </template>
+            {{ registerInfo.name }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 住院号 </template>
+            {{ registerInfo.patient_id }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 个人电脑号 </template>
+            {{ registerInfo.indi_id }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 性别 </template>
+            {{ cptSex(registerInfo.sex) }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 身份证 </template>
+            {{ registerInfo.idcard }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 出生日期 </template>
+            {{ registerInfo.birthday }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 医疗类别 </template>
+            {{ registerInfo.treatment_name }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 入院科室 </template>
+            {{ registerInfo.out_dept_name }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 入院病房 </template>
+            {{ registerInfo.area_name }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 诊断编码 </template>
+            {{ registerInfo.in_diagnose }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 诊断名称 </template>
+            {{ registerInfo.in_disease_name }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 就诊登记号 </template>
+            {{ registerInfo.serial_no }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 工伤业务序号 </template>
+            {{ registerInfo.serial_bo_no }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 入院登记时间 </template>
+            {{ registerInfo.reg_date }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 单位名称 </template>
+            {{ registerInfo.corp_name }}
+          </el-descriptions-item>
+        </el-descriptions>
+      </div>
+      <div v-else>
+        <el-descriptions :column="3" size="small" border>
+          <el-descriptions-item>
+            <template #label> 姓名 </template>
+            {{ registerInfo.psnName }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 住院号 </template>
+            {{ registerInfo.iptOtpNo }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 性别 </template>
+            {{ cptSex(registerInfo.gend) }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 证件类型 </template>
+            {{ cptPsnCertType(registerInfo.psnCertType) }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 证件号码 </template>
+            {{ registerInfo.certno }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 出生日期 </template>
+            {{ registerInfo.brdy }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 险种类型 </template>
+            {{ cptInsutype(registerInfo.insutype) }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 医疗类别 </template>
+            {{ cptMedType(registerInfo.medType) }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 异地标志 </template>
+            {{ cptYesOrNo(registerInfo.outFlag) }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 开始日期 </template>
+            {{ registerInfo.begndate }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 就诊ID </template>
+            {{ registerInfo.mdtrtId }}
+          </el-descriptions-item>
+          <el-descriptions-item>
+            <template #label> 人员编号 </template>
+            {{ registerInfo.psnNo }}
+          </el-descriptions-item>
+        </el-descriptions>
+      </div>
+    </div>
   </div>
 </template>
 
@@ -171,6 +181,10 @@ export default {
       }
     }
 
+    const close = () => {
+      ctx.emit('close')
+    }
+
     watch(
       () => props.timestamp,
       () => {
@@ -190,6 +204,7 @@ export default {
       cptInsutype,
       cptMedType,
       cptYesOrNo,
+      close,
     }
   },
 }

+ 66 - 0
src/components/medical-insurance/treatmentinfo/Index.vue

@@ -0,0 +1,66 @@
+<template>
+  <div class="component-box-wrapper__half-transparent">
+    <div class="component-content-box__dialog-like">
+      <div class="component-header-box">
+        <div class="component-header__title">人员待遇信息</div>
+        <div class="component-header__close-button">
+          <el-button plain icon="el-icon-close" circle title="关闭" @click="close"></el-button>
+        </div>
+      </div>
+      <el-table :data="treatmentinfos" stripe height="360">
+        <el-table-column label="人员编号" prop="psnNo"></el-table-column>
+        <el-table-column label="待遇检查类型" prop="trtChkTypeName"></el-table-column>
+        <el-table-column label="基金支付类型" prop="fundPayTypeName"></el-table-column>
+        <el-table-column label="基金款项待遇享受标志" prop="trtEnjymntFlagName"></el-table-column>
+        <el-table-column label="开始日期" prop="begndate"></el-table-column>
+        <el-table-column label="结束日期" prop="enddate"></el-table-column>
+        <el-table-column label="待遇检查结果" prop="trtChkRslt"></el-table-column>
+      </el-table>
+    </div>
+  </div>
+</template>
+
+<script>
+import { ref, watch, onMounted } from 'vue'
+import { checkPersonTreatment } from '@/api/medical-insurance/si-query'
+export default {
+  props: {
+    timestamp: {
+      type: Number,
+      default: 0,
+    },
+    params: {
+      type: Object,
+      required: true,
+    },
+  },
+  emits: ['close'],
+  setup(props, ctx) {
+    const treatmentinfos = ref([])
+
+    const close = () => {
+      ctx.emit('close')
+    }
+
+    watch(
+      () => props.timestamp,
+      () => {
+        checkPersonTreatment(props.params).then((res) => {
+          treatmentinfos.value = res
+        })
+      }
+    )
+
+    onMounted(() => {
+      checkPersonTreatment(props.params).then((res) => {
+        treatmentinfos.value = res
+      })
+    })
+
+    return {
+      treatmentinfos,
+      close,
+    }
+  },
+}
+</script>

+ 496 - 496
src/router/modules/dashboard.js

@@ -1,509 +1,509 @@
 import Layout from '@/layout/index.vue'
-import {createNameComponent} from '../createNode'
+import { createNameComponent } from '../createNode'
 
 const route = [
-    {
-        path: '/login',
-        component: createNameComponent(() => import('@/views/system/login.vue')),
-        hideMenu: true,
-        meta: {title: '登录', hideTabs: true},
-    },
-    {
-        path: '/',
-        component: Layout,
-        redirect: '/dashboard',
-        meta: {title: '工作集成平台', icon: 'el-icon-menu'},
+  {
+    path: '/login',
+    component: createNameComponent(() => import('@/views/system/login.vue')),
+    hideMenu: true,
+    meta: { title: '登录', hideTabs: true },
+  },
+  {
+    path: '/',
+    component: Layout,
+    redirect: '/dashboard',
+    meta: { title: '工作集成平台', icon: 'el-icon-menu' },
+    children: [
+      {
+        path: 'dashboard',
+        component: createNameComponent(() => import('@/views/dashboard/index.vue')),
+        meta: { title: '首页', icon: 'el-icon-menu', hideClose: true },
+      },
+    ],
+  },
+  // 这里以下都是临时新加的
+  {
+    path: '/medins',
+    component: Layout,
+    meta: { title: '医保模块', icon: 'iconfont icon-yibao' },
+    children: [
+      {
+        path: 'inpatient',
+        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/Home.vue')),
+        meta: { title: '住院医保', icon: 'iconfont icon-yibao' },
+        redirect: '/medins/inpatient/admRegistration',
         children: [
-            {
-                path: 'dashboard',
-                component: createNameComponent(() => import('@/views/dashboard/index.vue')),
-                meta: {title: '首页', icon: 'el-icon-menu', hideClose: true},
-            },
+          {
+            path: 'admRegistration',
+            component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmRegistration.vue')),
+            meta: { title: '医保入院登记', icon: 'iconfont icon-ruyuandengji' },
+          },
+          {
+            path: 'inHospFeeUpload',
+            component: createNameComponent(() => import('@/views/medical-insurance/inpatient/InHospFeeUpload.vue')),
+            meta: { title: '医保费用上传', icon: 'iconfont icon-feiyongshangchuan' },
+          },
+          {
+            path: 'discSettlement',
+            component: createNameComponent(() => import('@/views/medical-insurance/inpatient/DiscSettlement.vue')),
+            meta: { title: '医保出院结算', icon: 'iconfont icon-chuyuan' },
+          },
         ],
-    },
-    // 这里以下都是临时新加的
-    {
-        path: '/medins',
-        component: Layout,
-        meta: {title: '医保模块', icon: 'iconfont icon-yibao'},
-        children: [
-            {
-                path: 'inpatient',
-                component: createNameComponent(() => import('@/views/medical-insurance/inpatient/Home.vue')),
-                meta: {title: '住院医保', icon: 'iconfont icon-yibao'},
-                redirect: '/medins/inpatient/admRegistration',
-                children: [
-                    {
-                        path: 'admRegistration',
-                        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmRegistration.vue')),
-                        meta: {title: '医保入院登记', icon: 'iconfont icon-ruyuandengji'},
-                    },
-                    {
-                        path: 'inHospFeeUpload',
-                        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/InHospFeeUpload.vue')),
-                        meta: {title: '医保费用上传', icon: 'iconfont icon-feiyongshangchuan'},
-                    },
-                    {
-                        path: 'discSettlement',
-                        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/DiscSettlement.vue')),
-                        meta: {title: '医保出院结算', icon: 'iconfont icon-chuyuan'},
-                    },
-                ],
-            },
-            {
-                path: 'inpatient/admissVerification',
-                component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmissVerification.vue')),
-                meta: {title: '入院登记审核', icon: 'iconfont icon-yibaoshenhe'},
-            },
-            {
-                path: 'inpatient/medInsVerification',
-                component: createNameComponent(() => import('@/views/medical-insurance/inpatient/MedInsVerification.vue')),
-                meta: {title: '出院结算审核', icon: 'iconfont icon-yibaoshenhe'},
-            },
-            {
-                path: 'outpatient/mzRegister',
-                component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzRegister.vue')),
-                meta: {title: '门诊登记', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'outpatient/mzSpltryRcrd',
-                component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzSpltryRcrd.vue')),
-                meta: {title: '门诊补录', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'outpatient/spcChrRcd',
-                component: createNameComponent(() => import('@/views/medical-insurance/outpatient/SpcChrRcd.vue')),
-                meta: {title: '慢特病备案', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'qryManage/catalogue',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/Catalogue.vue')),
-                meta: {title: '目录管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'qryManage/psnInfo',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/PsnInfo.vue')),
-                meta: {title: '医保身份查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'qryManage/inhospInfo',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/InhospInfo.vue')),
-                meta: {title: '在院查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'qryManage/visitInfo',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/VisitInfo.vue')),
-                meta: {title: '就诊信息查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'qryManage/siSettleDetailList',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SiSettleDetailList.vue')),
-                meta: {title: '医保结算单', icon: 'iconfont icon-zhuyuanqingdan'},
-            },
-            {
-                path: 'qryManage/setllistReconciliation',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetllistReconciliation.vue')),
-                meta: {title: '结算与对账', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
-            },
-            {
-                path: 'qryManage/setSheetUpload',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetSheetUpload.vue')),
-                meta: {title: '结算单上传', icon: 'iconfont icon-jiesuandanshangchuan'},
-            },
-            {
-                path: 'qryManage/setlStatistics',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetlStatistics.vue')),
-                meta: {title: '结算统计', icon: 'iconfont icon-zhuyuanqingdan'},
-            },
-            {
-                path: 'qryManage/logAnalyse',
-                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/LogAnalyse.vue')),
-                meta: {title: '日志分析', icon: 'iconfont icon-zhuyuanqingdan'},
-            },
-        ],
-    },
-    {
-        path: '/inspections',
-        component: Layout,
-        meta: {title: '检验检查', icon: 'iconfont icon-jiancha'},
-        children: [
-            {
-                path: 'inspectionReportIndex',
-                name: 'inspectionReportIndex',
-                component: createNameComponent(() => import('@/views/examination/InspectionReportIndex.vue')),
-                meta: {title: '检验报告', icon: 'iconfont icon-jianyanbaogao'},
-            },
-            {
-                path: 'covidExamResult',
-                component: createNameComponent(() => import('@/views/examination/CovidExamResult.vue')),
-                meta: {title: '新冠核酸检测报告', icon: 'iconfont icon-xinguan'},
-            },
-            {
-                path: 'healthCrdUpld',
-                component: createNameComponent(() => import('@/views/examination/UploadToHealthCard.vue')),
-                meta: {title: '健康证对接', icon: 'iconfont icon-jiankangzheng'},
-            },
-            {
-                path: 'bookableManagement',
-                component: createNameComponent(() => import('@/views/examination/BookableManagement.vue')),
-                meta: {title: '检验检查预约维护', icon: 'iconfont icon-yuyuedingdan'},
-            },
-        ],
-    },
-    {
-        path: '/medTecMod',
-        component: Layout,
-        meta: {title: '医技模块', icon: 'iconfont icon-yijimokuai'},
-        children: [
-            {
-                path: 'yiJiFeiYongLuRu',
-                component: createNameComponent(() => import('@/views/med-tec-mod/YiJiFeiYongLuRu.vue')),
-                meta: {title: '医技费用录入', icon: 'iconfont icon-yiJiFeiYongLuRu'},
-            },
-            {
-                path: 'queRenYiZhuShouFei',
-                component: createNameComponent(() => import('@/views/med-tec-mod/QueRenYiZhuShouFei.vue')),
-                meta: {title: '确认医嘱费用', icon: 'iconfont icon-queRenYiZhuShouFei'},
-            },
-            {
-                path: 'menZhenXiangMu',
-                component: createNameComponent(() => import('@/views/med-tec-mod/MenZhenXiangMu.vue')),
-                meta: {title: '门诊项目确认或取消', icon: 'iconfont icon-menZhenXiangMu'},
-            },
-        ],
-    },
-    {
-        path: '/dictionary',
-        component: Layout,
-        meta: {title: '字典准备', icon: 'iconfont icon-xiangmuzidian'},
-        children: [
-            {
-                path: 'prjctMdcnMtch',
-                component: createNameComponent(() => import('@/views/dictionary/NationalSiMatch.vue')),
-                meta: {title: '项目药品匹配', icon: 'iconfont icon-pipei'},
-            },
-            {
-                path: 'deptMatch',
-                component: createNameComponent(() => import('@/views/dictionary/YiBaoKeShiPiPei.vue')),
-                meta: {title: '医保科室匹配', icon: 'iconfont icon-pipei'},
-            },
-        ],
-    },
-    {
-        path: '/reports',
-        component: Layout,
-        meta: {title: '报表模块', icon: 'iconfont icon-baobiaomokuai'},
-        children: [
-            {
-                path: 'deptPriodRprt',
-                component: createNameComponent(() => import('@/views/reports/DeptPeriodReport.vue')),
-                meta: {title: '科室时段报表', icon: 'iconfont icon-shiduanfenxi'},
-            },
-            {
-                path: 'infntChrgRprt',
-                component: createNameComponent(() => import('@/views/reports/InfantFeeReport.vue')),
-                meta: {title: '婴儿收费统计', icon: 'iconfont icon-yinger'},
-            },
-            {
-                path: 'mdcnStckCnt',
-                component: createNameComponent(() => import('@/views/reports/MedicineStockCount.vue')),
-                meta: {title: '药品盘点', icon: 'iconfont icon-yaopin'},
-            },
-            {
-                path: 'clockinStatistics',
-                component: createNameComponent(() => import('@/views/reports/ClockinData.vue')),
-                meta: {title: '打卡数据', icon: 'iconfont icon-dakashuju'},
-            },
-            {
-                path: 'covidVaccinateAppointment',
-                component: createNameComponent(() => import('@/views/reports/covid-vaccinate/CovidVaccinateAppointment.vue')),
-                meta: {title: '新冠接种预约', icon: 'iconfont icon-xinguanjiezhong'},
-            },
-            {
-                path: 'inquiryOfConsultationFee',
-                component: createNameComponent(() => import('@/views/reports/InquiryOfConsultationFee.vue')),
-                meta: {title: '查询会诊费用', icon: 'iconfont icon-feiyongshenqing'},
-            },
-            {
-                path: 'consumablesStatistics',
-                component: createNameComponent(() => import('@/views/reports/ConsumablesStatistics.vue')),
-                meta: {title: '耗材使用统计', icon: 'iconfont icon-haocaitongji'},
-            },
-            {
-                path: 'illegalChargesAnalysis',
-                component: createNameComponent(() => import('@/views/reports/IllegalChargesAnalysis.vue')),
-                meta: {title: '违规收费分析', icon: 'iconfont icon-weiguishoufeifenxi'},
-            },
-            {
-                path: 'queryPayService',
-                component: createNameComponent(() => import('@/views/reports/QueryPayService.vue')),
-                meta: {title: '收费项目', icon: 'iconfont icon-shoufeixiangmu'},
-            },
-            {
-                path: 'drugInquiry',
-                component: createNameComponent(() => import('@/views/reports/DrugInquiry.vue')),
-                meta: {title: '查询药品', icon: 'iconfont icon-chaxunyaopin'},
-            },
-            {
-                path: 'yuanNeiTongJi',
-                component: createNameComponent(() => import('@/views/reports/YuanNeiTongJi.vue')),
-                meta: {title: '院内统计', icon: 'iconfont icon-haocaitongji'},
-            },
-            {
-                path: 'keShiShouRuTongJi',
-                component: createNameComponent(() => import('@/views/reports/KeShiShouRuTongJi.vue')),
-                meta: {title: '科室收入统计', icon: 'iconfont icon-keShiShouRuTongJi'},
-            },
-        ],
-    },
-    {
-        path: '/dataModify',
-        component: Layout,
-        meta: {title: '数据修改', icon: 'iconfont icon-shujuxiugai'},
-        children: [
-            {
-                path: 'yzActOrderModify',
-                component: createNameComponent(() => import('@/views/data-modify/YzActOrderModify.vue')),
-                meta: {title: '医嘱修改申请', icon: 'iconfont icon-yizhu'},
-            },
-            {
-                path: 'zyChargeFeeModify',
-                component: createNameComponent(() => import('@/views/data-modify/ZyChargeFeeModify.vue')),
-                meta: {title: '住院费用修改', icon: 'iconfont icon-zhuyuanfeiyongfenxi'},
-            },
-            {
-                path: 'yzActOrderModifyVerify',
-                component: createNameComponent(() => import('@/views/data-modify/YzActOrderModifyVerify.vue')),
-                meta: {title: '医嘱修改审核', icon: 'iconfont icon-yizhuxiugaishenhe'},
-            },
-            {
-                path: 'yzTemperatureModify',
-                component: createNameComponent(() => import('@/views/data-modify/YzTemperatureModify.vue')),
-                meta: {title: '护理记录单修改', icon: 'iconfont icon-hulijiludan'},
-            },
-            {
-                path: 'secondFefund',
-                component: createNameComponent(() => import('@/views/data-modify/SecondFefund.vue')),
-                meta: {title: '二次退费', icon: 'iconfont icon-ercituifei'},
-            },
-            {
-                path: 'queryOfReceiptDetails',
-                component: createNameComponent(() => import('@/views/data-modify/QueryOfReceiptDetails.vue')),
-                meta: {title: '入库明细查询', icon: 'iconfont icon-rukuguanli'},
-            },
-            {
-                path: 'deliveryDetailsQuery',
-                component: createNameComponent(() => import('@/views/data-modify/DeliveryDetailsQuery.vue')),
-                meta: {title: '出库明细查询', icon: 'iconfont icon-chukuguanli'},
-            },
-        ],
-    },
+      },
+      {
+        path: 'inpatient/admissVerification',
+        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmissVerification.vue')),
+        meta: { title: '入院登记审核', icon: 'iconfont icon-yibaoshenhe' },
+      },
+      {
+        path: 'inpatient/medInsVerification',
+        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/SettleVerification.vue')),
+        meta: { title: '出院结算审核', icon: 'iconfont icon-yibaoshenhe' },
+      },
+      {
+        path: 'outpatient/mzRegister',
+        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzRegister.vue')),
+        meta: { title: '门诊登记', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'outpatient/mzSpltryRcrd',
+        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzSpltryRcrd.vue')),
+        meta: { title: '门诊补录', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'outpatient/spcChrRcd',
+        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/SpcChrRcd.vue')),
+        meta: { title: '慢特病备案', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'qryManage/catalogue',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/Catalogue.vue')),
+        meta: { title: '目录管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'qryManage/psnInfo',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/PsnInfo.vue')),
+        meta: { title: '医保身份查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'qryManage/inhospInfo',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/InhospInfo.vue')),
+        meta: { title: '在院查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'qryManage/visitInfo',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/VisitInfo.vue')),
+        meta: { title: '就诊信息查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'qryManage/siSettleDetailList',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SiSettleDetailList.vue')),
+        meta: { title: '医保结算单', icon: 'iconfont icon-zhuyuanqingdan' },
+      },
+      {
+        path: 'qryManage/setllistReconciliation',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetllistReconciliation.vue')),
+        meta: { title: '结算与对账', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+      },
+      {
+        path: 'qryManage/setSheetUpload',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetSheetUpload.vue')),
+        meta: { title: '结算单上传', icon: 'iconfont icon-jiesuandanshangchuan' },
+      },
+      {
+        path: 'qryManage/setlStatistics',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetlStatistics.vue')),
+        meta: { title: '结算统计', icon: 'iconfont icon-zhuyuanqingdan' },
+      },
+      {
+        path: 'qryManage/logAnalyse',
+        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/LogAnalyse.vue')),
+        meta: { title: '日志分析', icon: 'iconfont icon-zhuyuanqingdan' },
+      },
+    ],
+  },
+  {
+    path: '/inspections',
+    component: Layout,
+    meta: { title: '检验检查', icon: 'iconfont icon-jiancha' },
+    children: [
+      {
+        path: 'inspectionReportIndex',
+        name: 'inspectionReportIndex',
+        component: createNameComponent(() => import('@/views/examination/InspectionReportIndex.vue')),
+        meta: { title: '检验报告', icon: 'iconfont icon-jianyanbaogao' },
+      },
+      {
+        path: 'covidExamResult',
+        component: createNameComponent(() => import('@/views/examination/CovidExamResult.vue')),
+        meta: { title: '新冠核酸检测报告', icon: 'iconfont icon-xinguan' },
+      },
+      {
+        path: 'healthCrdUpld',
+        component: createNameComponent(() => import('@/views/examination/UploadToHealthCard.vue')),
+        meta: { title: '健康证对接', icon: 'iconfont icon-jiankangzheng' },
+      },
+      {
+        path: 'bookableManagement',
+        component: createNameComponent(() => import('@/views/examination/BookableManagement.vue')),
+        meta: { title: '检验检查预约维护', icon: 'iconfont icon-yuyuedingdan' },
+      },
+    ],
+  },
+  {
+    path: '/medTecMod',
+    component: Layout,
+    meta: { title: '医技模块', icon: 'iconfont icon-yijimokuai' },
+    children: [
+      {
+        path: 'yiJiFeiYongLuRu',
+        component: createNameComponent(() => import('@/views/med-tec-mod/YiJiFeiYongLuRu.vue')),
+        meta: { title: '医技费用录入', icon: 'iconfont icon-yiJiFeiYongLuRu' },
+      },
+      {
+        path: 'queRenYiZhuShouFei',
+        component: createNameComponent(() => import('@/views/med-tec-mod/QueRenYiZhuShouFei.vue')),
+        meta: { title: '确认医嘱费用', icon: 'iconfont icon-queRenYiZhuShouFei' },
+      },
+      {
+        path: 'menZhenXiangMu',
+        component: createNameComponent(() => import('@/views/med-tec-mod/MenZhenXiangMu.vue')),
+        meta: { title: '门诊项目确认或取消', icon: 'iconfont icon-menZhenXiangMu' },
+      },
+    ],
+  },
+  {
+    path: '/dictionary',
+    component: Layout,
+    meta: { title: '字典准备', icon: 'iconfont icon-xiangmuzidian' },
+    children: [
+      {
+        path: 'prjctMdcnMtch',
+        component: createNameComponent(() => import('@/views/dictionary/NationalSiMatch.vue')),
+        meta: { title: '项目药品匹配', icon: 'iconfont icon-pipei' },
+      },
+      {
+        path: 'deptMatch',
+        component: createNameComponent(() => import('@/views/dictionary/YiBaoKeShiPiPei.vue')),
+        meta: { title: '医保科室匹配', icon: 'iconfont icon-pipei' },
+      },
+    ],
+  },
+  {
+    path: '/reports',
+    component: Layout,
+    meta: { title: '报表模块', icon: 'iconfont icon-baobiaomokuai' },
+    children: [
+      {
+        path: 'deptPriodRprt',
+        component: createNameComponent(() => import('@/views/reports/DeptPeriodReport.vue')),
+        meta: { title: '科室时段报表', icon: 'iconfont icon-shiduanfenxi' },
+      },
+      {
+        path: 'infntChrgRprt',
+        component: createNameComponent(() => import('@/views/reports/InfantFeeReport.vue')),
+        meta: { title: '婴儿收费统计', icon: 'iconfont icon-yinger' },
+      },
+      {
+        path: 'mdcnStckCnt',
+        component: createNameComponent(() => import('@/views/reports/MedicineStockCount.vue')),
+        meta: { title: '药品盘点', icon: 'iconfont icon-yaopin' },
+      },
+      {
+        path: 'clockinStatistics',
+        component: createNameComponent(() => import('@/views/reports/ClockinData.vue')),
+        meta: { title: '打卡数据', icon: 'iconfont icon-dakashuju' },
+      },
+      {
+        path: 'covidVaccinateAppointment',
+        component: createNameComponent(() => import('@/views/reports/covid-vaccinate/CovidVaccinateAppointment.vue')),
+        meta: { title: '新冠接种预约', icon: 'iconfont icon-xinguanjiezhong' },
+      },
+      {
+        path: 'inquiryOfConsultationFee',
+        component: createNameComponent(() => import('@/views/reports/InquiryOfConsultationFee.vue')),
+        meta: { title: '查询会诊费用', icon: 'iconfont icon-feiyongshenqing' },
+      },
+      {
+        path: 'consumablesStatistics',
+        component: createNameComponent(() => import('@/views/reports/ConsumablesStatistics.vue')),
+        meta: { title: '耗材使用统计', icon: 'iconfont icon-haocaitongji' },
+      },
+      {
+        path: 'illegalChargesAnalysis',
+        component: createNameComponent(() => import('@/views/reports/IllegalChargesAnalysis.vue')),
+        meta: { title: '违规收费分析', icon: 'iconfont icon-weiguishoufeifenxi' },
+      },
+      {
+        path: 'queryPayService',
+        component: createNameComponent(() => import('@/views/reports/QueryPayService.vue')),
+        meta: { title: '收费项目', icon: 'iconfont icon-shoufeixiangmu' },
+      },
+      {
+        path: 'drugInquiry',
+        component: createNameComponent(() => import('@/views/reports/DrugInquiry.vue')),
+        meta: { title: '查询药品', icon: 'iconfont icon-chaxunyaopin' },
+      },
+      {
+        path: 'yuanNeiTongJi',
+        component: createNameComponent(() => import('@/views/reports/YuanNeiTongJi.vue')),
+        meta: { title: '院内统计', icon: 'iconfont icon-haocaitongji' },
+      },
+      {
+        path: 'keShiShouRuTongJi',
+        component: createNameComponent(() => import('@/views/reports/KeShiShouRuTongJi.vue')),
+        meta: { title: '科室收入统计', icon: 'iconfont icon-keShiShouRuTongJi' },
+      },
+    ],
+  },
+  {
+    path: '/dataModify',
+    component: Layout,
+    meta: { title: '数据修改', icon: 'iconfont icon-shujuxiugai' },
+    children: [
+      {
+        path: 'yzActOrderModify',
+        component: createNameComponent(() => import('@/views/data-modify/YzActOrderModify.vue')),
+        meta: { title: '医嘱修改申请', icon: 'iconfont icon-yizhu' },
+      },
+      {
+        path: 'zyChargeFeeModify',
+        component: createNameComponent(() => import('@/views/data-modify/ZyChargeFeeModify.vue')),
+        meta: { title: '住院费用修改', icon: 'iconfont icon-zhuyuanfeiyongfenxi' },
+      },
+      {
+        path: 'yzActOrderModifyVerify',
+        component: createNameComponent(() => import('@/views/data-modify/YzActOrderModifyVerify.vue')),
+        meta: { title: '医嘱修改审核', icon: 'iconfont icon-yizhuxiugaishenhe' },
+      },
+      {
+        path: 'yzTemperatureModify',
+        component: createNameComponent(() => import('@/views/data-modify/YzTemperatureModify.vue')),
+        meta: { title: '护理记录单修改', icon: 'iconfont icon-hulijiludan' },
+      },
+      {
+        path: 'secondFefund',
+        component: createNameComponent(() => import('@/views/data-modify/SecondFefund.vue')),
+        meta: { title: '二次退费', icon: 'iconfont icon-ercituifei' },
+      },
+      {
+        path: 'queryOfReceiptDetails',
+        component: createNameComponent(() => import('@/views/data-modify/QueryOfReceiptDetails.vue')),
+        meta: { title: '入库明细查询', icon: 'iconfont icon-rukuguanli' },
+      },
+      {
+        path: 'deliveryDetailsQuery',
+        component: createNameComponent(() => import('@/views/data-modify/DeliveryDetailsQuery.vue')),
+        meta: { title: '出库明细查询', icon: 'iconfont icon-chukuguanli' },
+      },
+    ],
+  },
 
-    {
-        path: '/inpatient',
-        component: Layout,
-        meta: {title: '住院模块', icon: 'iconfont icon-yiyuan'},
+  {
+    path: '/inpatient',
+    component: Layout,
+    meta: { title: '住院模块', icon: 'iconfont icon-yiyuan' },
+    children: [
+      {
+        path: 'makeDbzFees',
+        component: createNameComponent(() => import('@/views/hospitalization/MakeDbzFees.vue')),
+        meta: { title: '单病种费用生成', icon: 'iconfont icon-danbingzhong' },
+      },
+      {
+        path: 'advrsEvnt/fillAdverseEvent',
+        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/FillAderverseEvent.vue')),
+        meta: { title: '不良事件上报', icon: 'iconfont icon-buliangshijian' },
+      },
+      {
+        path: 'advrsEvnt/dealAdverseEvent',
+        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/DealAdverseEvent.vue')),
+        meta: { title: '不良事件处理', icon: 'iconfont icon-buliangshijianchuli' },
+      },
+      {
+        path: 'advrsEvnt/allAdverseEvent',
+        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/AllAdverseEvent.vue')),
+        meta: { title: '不良事件汇总', icon: 'iconfont icon-buliangshijianhuizong' },
+      },
+      {
+        path: 'casefrntsht/fillCaseFrontSheet',
+        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue')),
+        meta: { title: '病案首页填写', icon: 'iconfont icon-binganshouyetianxie' },
+      },
+      {
+        path: 'casefrntsht/allCaseFrontSheet',
+        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue')),
+        meta: { title: '病案首页汇总', icon: 'iconfont icon-binganshouye3x' },
+      },
+      {
+        path: 'casefrntsht/jieShouHuiZhen',
+        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/JieShouHuiZhen.vue')),
+        meta: { title: '接收会诊', icon: 'iconfont icon-jieshouhuizhen' },
+      },
+      {
+        path: 'zhuYuanYiSheng',
+        component: createNameComponent(() => import('../../views/hospitalization/zhu-yuan-yi-sheng/Home.vue')),
+        meta: { title: '住院医生', icon: 'iconfont icon-zhuyuanyisheng' },
         children: [
-            {
-                path: 'makeDbzFees',
-                component: createNameComponent(() => import('@/views/hospitalization/MakeDbzFees.vue')),
-                meta: {title: '单病种费用生成', icon: 'iconfont icon-danbingzhong'},
-            },
-            {
-                path: 'advrsEvnt/fillAdverseEvent',
-                component: createNameComponent(() => import('@/views/hospitalization/adverse-event/FillAderverseEvent.vue')),
-                meta: {title: '不良事件上报', icon: 'iconfont icon-buliangshijian'},
-            },
-            {
-                path: 'advrsEvnt/dealAdverseEvent',
-                component: createNameComponent(() => import('@/views/hospitalization/adverse-event/DealAdverseEvent.vue')),
-                meta: {title: '不良事件处理', icon: 'iconfont icon-buliangshijianchuli'},
-            },
-            {
-                path: 'advrsEvnt/allAdverseEvent',
-                component: createNameComponent(() => import('@/views/hospitalization/adverse-event/AllAdverseEvent.vue')),
-                meta: {title: '不良事件汇总', icon: 'iconfont icon-buliangshijianhuizong'},
-            },
-            {
-                path: 'casefrntsht/fillCaseFrontSheet',
-                component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue')),
-                meta: {title: '病案首页填写', icon: 'iconfont icon-binganshouyetianxie'},
-            },
-            {
-                path: 'casefrntsht/allCaseFrontSheet',
-                component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue')),
-                meta: {title: '病案首页汇总', icon: 'iconfont icon-binganshouye3x'},
-            },
-            {
-                path: 'casefrntsht/jieShouHuiZhen',
-                component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/JieShouHuiZhen.vue')),
-                meta: {title: '接收会诊', icon: 'iconfont icon-jieshouhuizhen'},
-            },
-            {
-                path: 'zhuYuanYiSheng',
-                component: createNameComponent(() => import('../../views/hospitalization/zhu-yuan-yi-sheng/Home.vue')),
-                meta: {title: '住院医生', icon: 'iconfont icon-zhuyuanyisheng'},
-                children: [
-                    {
-                        path: 'yiZhuLuRu',
-                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/YiZhuLuRu.vue')),
-                        meta: {title: '医嘱录入', icon: 'iconfont icon-yizhuluru'},
-                    },
-                    {
-                        path: 'huiZhenShenQing',
-                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/HuiZhenShenQing.vue')),
-                        meta: {title: '会诊申请', icon: 'iconfont icon-huizhenshenqing'},
-                    },
-                    {
-                        path: 'jianChaShenQing',
-                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/JianChaShenQing.vue')),
-                        meta: {title: '检查申请', icon: 'iconfont icon-jianchashenqing'},
-                    },
-                    {
-                        path: 'jianYanShenQing',
-                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/JianYanShenQing.vue')),
-                        meta: {title: '检验申请', icon: 'iconfont icon-jianyanshenqing'},
-                    },
-                    {
-                        path: 'shouShuShenQing',
-                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/ShouShuShenQing.vue')),
-                        meta: {title: '手术申请', icon: 'iconfont icon-shoushushenqing', property: 'shouShuShenQing'},
-                        children: [
-                            {
-                                path: 'xinZengShouShuShenQing',
-                                component: createNameComponent(() => import('@/components/zhu-yuan-yi-sheng/shou-shu-shen-qing/XinZengShouShuShenQing.vue')),
-                                meta: {
-                                    title: '新增手术申请',
-                                    icon: 'iconfont icon-shoushushenqing',
-                                    property: 'shouShuShenQing',
-                                    parent: '/inpatient/zhuYuanYiSheng/shouShuShenQing',
-                                    hideTabs: true
-                                },
-                            },
-                        ]
-                    },
-                    {
-                        path: 'caoYaoYiZhu',
-                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/caoYaoYiZhu.vue')),
-                        meta: {title: '草药医嘱', icon: 'iconfont icon-caoyaoyizhu'},
-                    },
-                ],
-            },
+          {
+            path: 'yiZhuLuRu',
+            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/YiZhuLuRu.vue')),
+            meta: { title: '医嘱录入', icon: 'iconfont icon-yizhuluru' },
+          },
+          {
+            path: 'huiZhenShenQing',
+            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/HuiZhenShenQing.vue')),
+            meta: { title: '会诊申请', icon: 'iconfont icon-huizhenshenqing' },
+          },
+          {
+            path: 'jianChaShenQing',
+            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/JianChaShenQing.vue')),
+            meta: { title: '检查申请', icon: 'iconfont icon-jianchashenqing' },
+          },
+          {
+            path: 'jianYanShenQing',
+            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/JianYanShenQing.vue')),
+            meta: { title: '检验申请', icon: 'iconfont icon-jianyanshenqing' },
+          },
+          {
+            path: 'shouShuShenQing',
+            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/ShouShuShenQing.vue')),
+            meta: { title: '手术申请', icon: 'iconfont icon-shoushushenqing', property: 'shouShuShenQing' },
+            children: [
+              {
+                path: 'xinZengShouShuShenQing',
+                component: createNameComponent(() => import('@/components/zhu-yuan-yi-sheng/shou-shu-shen-qing/XinZengShouShuShenQing.vue')),
+                meta: {
+                  title: '新增手术申请',
+                  icon: 'iconfont icon-shoushushenqing',
+                  property: 'shouShuShenQing',
+                  parent: '/inpatient/zhuYuanYiSheng/shouShuShenQing',
+                  hideTabs: true,
+                },
+              },
+            ],
+          },
+          {
+            path: 'caoYaoYiZhu',
+            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/caoYaoYiZhu.vue')),
+            meta: { title: '草药医嘱', icon: 'iconfont icon-caoyaoyizhu' },
+          },
         ],
-    },
+      },
+    ],
+  },
 
-    {
-        path: '/outpatient',
-        component: Layout,
-        meta: {title: '门诊模块', icon: 'iconfont icon-menzhen'},
-        children: [
-            {
-                path: 'mzGuideBill',
-                component: createNameComponent(() => import('@/views/clinic/MzGuideBill.vue')),
-                meta: {title: '门诊指引单', icon: 'iconfont icon-zhiyin'},
-            },
-            {
-                path: 'doctorInfoManagement',
-                component: createNameComponent(() => import('@/views/clinic/DoctorInfoManagement.vue')),
-                meta: {title: '医生信息管理', icon: 'iconfont icon-renyuanxinxiguanli'},
-            },
-            {
-                path: 'transferInOfExpenses',
-                component: createNameComponent(() => import('@/views/clinic/TransferInOfExpenses.vue')),
-                meta: {title: '急诊费用转入', icon: 'iconfont icon-feiyongzhuanru'},
-            },
-            {
-                path: 'wxPayRefund',
-                component: createNameComponent(() => import('@/views/clinic/WxPayRefund.vue')),
-                meta: {title: '微信支付退款', icon: 'iconfont icon-tuikuan'},
-            },
-            {
-                path: 'triage/untriaged',
-                component: createNameComponent(() => import('@/views/clinic/triage/Untriaged.vue')),
-                meta: {title: '未分诊', icon: 'iconfont icon-weifenzhen'},
-            },
-            {
-                path: 'triage/triaged',
-                component: createNameComponent(() => import('@/views/clinic/triage/Triaged.vue')),
-                meta: {title: '已分诊', icon: 'iconfont icon-yifenzhen'},
-            },
-            {
-                path: 'triage/allTriages',
-                component: createNameComponent(() => import('@/views/clinic/triage/AllTriages.vue')),
-                meta: {title: '所有挂号', icon: 'iconfont icon-suoyou'},
-            },
-            {
-                path: 'triage/triageDeptSettings',
-                component: createNameComponent(() => import('@/views/clinic/triage/DeptSettings.vue')),
-                meta: {title: '科室设置', icon: 'iconfont icon-keshi'},
-            },
-            {
-                path: 'triage/triageRoomSettings',
-                component: createNameComponent(() => import('@/views/clinic/triage/RoomSettings.vue')),
-                meta: {title: '诊室设置', icon: 'iconfont icon-zhenshiguanli'},
-            },
-            {
-                path: 'triage/triageIpManagement',
-                component: createNameComponent(() => import('@/views/clinic/triage/IpManagement.vue')),
-                meta: {title: 'IP管理', icon: 'iconfont icon-ip'},
-            },
-            {
-                path: 'triage/triageDisplaySettings',
-                component: createNameComponent(() => import('@/views/clinic/triage/DisplaySettings.vue')),
-                meta: {title: '显示管理', icon: 'iconfont icon-xianshishezhi'},
-            },
-            {
-                path: 'triage/triageFloorScreen',
-                component: createNameComponent(() => import('@/views/clinic/triage/FloorScreen.vue')),
-                meta: {title: '分诊大屏', icon: 'iconfont icon-daping'},
-            },
-        ],
-    },
-    {
-        path: '/settings',
-        component: Layout,
-        meta: {title: '设置', icon: 'iconfont icon-shezhi'},
-        children: [
-            {
-                path: 'deptPhones',
-                component: createNameComponent(() => import('@/views/settings/DeptPhones.vue')),
-                meta: {title: '科室电话', icon: 'iconfont icon-dianhua'},
-            },
-            {
-                path: 'sendNotification',
-                component: createNameComponent(() => import('@/views/settings/SendNotification.vue')),
-                meta: {title: '发送通知', icon: 'iconfont icon-fasongtongzhi'},
-            },
-            {
-                path: 'userInfo',
-                component: createNameComponent(() => import('@/views/settings/UserInfo.vue')),
-                meta: {title: '个人中心', icon: 'iconfont icon-gerenzhongxin'},
-            },
-            {
-                path: 'permission/userRoleSettings',
-                component: createNameComponent(() => import('@/views/settings/permissions/UserRoleSettings.vue')),
-                meta: {title: '人员角色管理', icon: 'iconfont icon-renyuanjueseguanli'},
-            },
-            {
-                path: 'permission/roleMenuSettings',
-                component: createNameComponent(() => import('@/views/settings/permissions/RoleMenuSettings.vue')),
-                meta: {title: '角色菜单管理', icon: 'iconfont icon-juesecaidanguanli'},
-            },
-        ],
-    },
+  {
+    path: '/outpatient',
+    component: Layout,
+    meta: { title: '门诊模块', icon: 'iconfont icon-menzhen' },
+    children: [
+      {
+        path: 'mzGuideBill',
+        component: createNameComponent(() => import('@/views/clinic/MzGuideBill.vue')),
+        meta: { title: '门诊指引单', icon: 'iconfont icon-zhiyin' },
+      },
+      {
+        path: 'doctorInfoManagement',
+        component: createNameComponent(() => import('@/views/clinic/DoctorInfoManagement.vue')),
+        meta: { title: '医生信息管理', icon: 'iconfont icon-renyuanxinxiguanli' },
+      },
+      {
+        path: 'transferInOfExpenses',
+        component: createNameComponent(() => import('@/views/clinic/TransferInOfExpenses.vue')),
+        meta: { title: '急诊费用转入', icon: 'iconfont icon-feiyongzhuanru' },
+      },
+      {
+        path: 'wxPayRefund',
+        component: createNameComponent(() => import('@/views/clinic/WxPayRefund.vue')),
+        meta: { title: '微信支付退款', icon: 'iconfont icon-tuikuan' },
+      },
+      {
+        path: 'triage/untriaged',
+        component: createNameComponent(() => import('@/views/clinic/triage/Untriaged.vue')),
+        meta: { title: '未分诊', icon: 'iconfont icon-weifenzhen' },
+      },
+      {
+        path: 'triage/triaged',
+        component: createNameComponent(() => import('@/views/clinic/triage/Triaged.vue')),
+        meta: { title: '已分诊', icon: 'iconfont icon-yifenzhen' },
+      },
+      {
+        path: 'triage/allTriages',
+        component: createNameComponent(() => import('@/views/clinic/triage/AllTriages.vue')),
+        meta: { title: '所有挂号', icon: 'iconfont icon-suoyou' },
+      },
+      {
+        path: 'triage/triageDeptSettings',
+        component: createNameComponent(() => import('@/views/clinic/triage/DeptSettings.vue')),
+        meta: { title: '科室设置', icon: 'iconfont icon-keshi' },
+      },
+      {
+        path: 'triage/triageRoomSettings',
+        component: createNameComponent(() => import('@/views/clinic/triage/RoomSettings.vue')),
+        meta: { title: '诊室设置', icon: 'iconfont icon-zhenshiguanli' },
+      },
+      {
+        path: 'triage/triageIpManagement',
+        component: createNameComponent(() => import('@/views/clinic/triage/IpManagement.vue')),
+        meta: { title: 'IP管理', icon: 'iconfont icon-ip' },
+      },
+      {
+        path: 'triage/triageDisplaySettings',
+        component: createNameComponent(() => import('@/views/clinic/triage/DisplaySettings.vue')),
+        meta: { title: '显示管理', icon: 'iconfont icon-xianshishezhi' },
+      },
+      {
+        path: 'triage/triageFloorScreen',
+        component: createNameComponent(() => import('@/views/clinic/triage/FloorScreen.vue')),
+        meta: { title: '分诊大屏', icon: 'iconfont icon-daping' },
+      },
+    ],
+  },
+  {
+    path: '/settings',
+    component: Layout,
+    meta: { title: '设置', icon: 'iconfont icon-shezhi' },
+    children: [
+      {
+        path: 'deptPhones',
+        component: createNameComponent(() => import('@/views/settings/DeptPhones.vue')),
+        meta: { title: '科室电话', icon: 'iconfont icon-dianhua' },
+      },
+      {
+        path: 'sendNotification',
+        component: createNameComponent(() => import('@/views/settings/SendNotification.vue')),
+        meta: { title: '发送通知', icon: 'iconfont icon-fasongtongzhi' },
+      },
+      {
+        path: 'userInfo',
+        component: createNameComponent(() => import('@/views/settings/UserInfo.vue')),
+        meta: { title: '个人中心', icon: 'iconfont icon-gerenzhongxin' },
+      },
+      {
+        path: 'permission/userRoleSettings',
+        component: createNameComponent(() => import('@/views/settings/permissions/UserRoleSettings.vue')),
+        meta: { title: '人员角色管理', icon: 'iconfont icon-renyuanjueseguanli' },
+      },
+      {
+        path: 'permission/roleMenuSettings',
+        component: createNameComponent(() => import('@/views/settings/permissions/RoleMenuSettings.vue')),
+        meta: { title: '角色菜单管理', icon: 'iconfont icon-juesecaidanguanli' },
+      },
+    ],
+  },
 
-    {
-        path: '/utilities',
-        component: Layout,
-        meta: {title: '通用工具', icon: 'iconfont icon-tool'},
-        children: [
-            {
-                path: 'parseJson',
-                component: createNameComponent(() => import('@/views/utilities/ParseJson.vue')),
-                meta: {title: 'JSON格式化', icon: 'iconfont icon-fasongtongzhi'},
-            },
-        ],
-    },
+  {
+    path: '/utilities',
+    component: Layout,
+    meta: { title: '通用工具', icon: 'iconfont icon-tool' },
+    children: [
+      {
+        path: 'parseJson',
+        component: createNameComponent(() => import('@/views/utilities/ParseJson.vue')),
+        meta: { title: 'JSON格式化', icon: 'iconfont icon-fasongtongzhi' },
+      },
+    ],
+  },
 ]
 
 export default route

+ 1 - 3
src/views/medical-insurance/allpatient/VisitInfo.vue

@@ -91,9 +91,7 @@
         <el-dialog v-model="showSetlInfo" title="结算信息" :close-on-click-modal="false" width="70%">
           <Setlinfo :setlinfo="setlInfo" />
         </el-dialog>
-        <el-dialog v-model="showFeeDetl" title="医保费用明细" :close-on-click-modal="false" fullscreen>
-          <MedfeeAnalyse :timestamp="timestamp" :mdtrt-id="mdtrtInfo.mdtrtId" />
-        </el-dialog>
+        <MedfeeAnalyse v-if="showFeeDetl" :timestamp="timestamp" :mdtrt-id="mdtrtInfo.mdtrtId" @close="showFeeDetl = false" />
         <el-dialog title="人员累计信息查询" v-model="showCumInfo" width="50%">
           <Cuminfo :psn-no="mdtrtInfo.psnNo" />
         </el-dialog>

+ 17 - 33
src/views/medical-insurance/inpatient/AdmissVerification.vue

@@ -182,17 +182,6 @@
               </el-table>
             </div>
           </el-dialog>
-          <el-dialog title="人员待遇信息" v-model="showTrtInfos" width="65%">
-            <el-table :data="trtInfos" stripe height="360">
-              <el-table-column label="人员编号" prop="psnNo"></el-table-column>
-              <el-table-column label="待遇检查类型" prop="trtChkTypeName"></el-table-column>
-              <el-table-column label="基金支付类型" prop="fundPayTypeName"></el-table-column>
-              <el-table-column label="基金款项待遇享受标志" prop="trtEnjymntFlagName"></el-table-column>
-              <el-table-column label="开始日期" prop="begndate"></el-table-column>
-              <el-table-column label="结束日期" prop="enddate"></el-table-column>
-              <el-table-column label="待遇检查结果" prop="trtChkRslt"></el-table-column>
-            </el-table>
-          </el-dialog>
           <el-dialog title="人员定点信息" v-model="showFixMedins" width="65%">
             <el-table :data="fixMedins" stripe>
               <el-table-column prop="psnNo" label="人员编号"></el-table-column>
@@ -205,12 +194,9 @@
               <el-table-column prop="memo" label="备注"></el-table-column>
             </el-table>
           </el-dialog>
-          <el-dialog v-model="showRegisterInfo" width="60%">
-            <Registinfo :timestamp="timestamp" :params="patient" @close="showRegisterInfo = false"></Registinfo>
-          </el-dialog>
-          <el-dialog v-model="showIdCardImg" title="身份信息" :close-on-click-modal="false" fullscreen :show-close="false">
-            <IdentifyImage :timestamp="timestamp" :pat-no="currentApply.patNo" :times="currentApply.times" @close="showIdCardImg = false"></IdentifyImage>
-          </el-dialog>
+          <Treatmentinfo v-if="showTrtInfos" :timestamp="timestamp" :params="checkTreatmentParams" @close="showTrtInfos = false" />
+          <Registinfo v-if="showRegisterInfo" :timestamp="timestamp" :params="patient" @close="showRegisterInfo = false"></Registinfo>
+          <IdentifyImage v-if="showIdCardImg" :timestamp="timestamp" :pat-no="currentApply.patNo" :times="currentApply.times" @close="showIdCardImg = false"></IdentifyImage>
         </el-main>
       </el-container>
     </el-main>
@@ -224,15 +210,17 @@ import maleIcon from '@/assets/male-icon.png'
 import femaleIcon from '@/assets/female-icon.png'
 import { ElMessage, ElMessageBox } from 'element-plus'
 import { getBizAppyTypes, getDiagTypes } from '@/api/medical-insurance/si-dict'
-import { checkPersonTreatment, obtainBasicPersonInfo, checkRegisterDate, queryPersonnelAssignmentInfo } from '@/api/medical-insurance/si-query'
+import { obtainBasicPersonInfo, checkRegisterDate, queryPersonnelAssignmentInfo } from '@/api/medical-insurance/si-query'
 import { getPersonBaseinfo, admissRegistration } from '@/api/medical-insurance/si-injury'
 import { admissRegister } from '@/api/medical-insurance/si-inpatient'
 import { statusFlags, needVerifyMedTypes } from '../../../data/index'
 import { selectUnhandledApplies, selectPatientInfo, handleApply } from '../../../api/medical-insurance/si-admiss-apply'
+import Treatmentinfo from '../../../components/medical-insurance/treatmentinfo/Index.vue'
 import IdentifyImage from '../../../components/inpatient/IdentifyImage.vue'
 import Registinfo from '../../../components/medical-insurance/registinfo/Index.vue'
 export default {
   components: {
+    Treatmentinfo,
     IdentifyImage,
     Registinfo,
   },
@@ -245,7 +233,6 @@ export default {
     const psnBaseinfo = ref({})
     const fixMedins = ref([])
     const showFixMedins = ref(false)
-    const trtInfos = ref([])
     const showTrtInfos = ref(false)
     const showPsnInsuinfo = ref(false)
     const insuRowClickFlag = ref(null)
@@ -425,20 +412,17 @@ export default {
       }
     }
 
+    const checkTreatmentParams = ref({})
     const chkTrtmt = (row) => {
-      const param = {
-        patNo: patient.value.inpatientNo,
-        times: patient.value.admissTimes,
-        psnNo: patient.value.psnNo,
-        insutype: row.insutype,
-        medType: patient.value.medType,
-        begntime: patient.value.ybRegisterDate,
-      }
-      checkPersonTreatment(param).then((res) => {
-        trtInfos.value = res
-        showPsnInsuinfo.value = false
-        showTrtInfos.value = true
-      })
+      checkTreatmentParams.value.patNo = patient.value.inpatientNo
+      checkTreatmentParams.value.times = patient.value.admissTimes
+      checkTreatmentParams.value.psnNo = patient.value.psnNo
+      checkTreatmentParams.value.medType = patient.value.medType
+      checkTreatmentParams.value.begntime = patient.value.ybRegisterDate
+      checkTreatmentParams.value.insutype = row.insutype
+      timestamp.value = new Date().getTime()
+      showPsnInsuinfo.value = false
+      showTrtInfos.value = true
     }
 
     const admRgstn = (row) => {
@@ -543,7 +527,7 @@ export default {
       bizAppyTypes,
       fixMedins,
       showFixMedins,
-      trtInfos,
+      checkTreatmentParams,
       showTrtInfos,
       getDiagTypeName,
       filterYesOrNo,

+ 2 - 6
src/views/medical-insurance/inpatient/Home.vue

@@ -72,12 +72,8 @@
         </router-view>
       </el-main>
     </el-container>
-    <el-dialog v-model="showRegisterInfo" width="60%">
-      <Registinfo :timestamp="timestamp" :params="patient" @close="showRegisterInfo = false"></Registinfo>
-    </el-dialog>
-    <el-dialog v-model="showIdCardImg" title="身份信息" :close-on-click-modal="false" fullscreen :show-close="false">
-      <IdentifyImage :timestamp="timestamp" :pat-no="patient.inpatientNo" :times="patient.admissTimes" @close="showIdCardImg = false"></IdentifyImage>
-    </el-dialog>
+    <Registinfo v-if="showRegisterInfo" :timestamp="timestamp" :params="patient" @close="showRegisterInfo = false"></Registinfo>
+    <IdentifyImage v-if="showIdCardImg" :timestamp="timestamp" :pat-no="patient.inpatientNo" :times="patient.admissTimes" @close="showIdCardImg = false"></IdentifyImage>
   </el-container>
 </template>
 

+ 1 - 8
src/views/medical-insurance/inpatient/InHospFeeUpload.vue

@@ -91,11 +91,7 @@
     <el-dialog v-model="weiGuiTuiFeiFenXiDialog" title="违规费用分析" :fullscreen="true">
       <wei-gui-fei-yong-fen-xi :init="weiGuiTuiFeiInit" @open="weiGuiTuiFeiOpenDialog" ref="weiGui" :patient="weiGuiJiBenXinXi"></wei-gui-fei-yong-fen-xi>
     </el-dialog>
-    <div class="m-component">
-      <el-dialog v-model="showFeeDetl" title="医保费用明细" :close-on-click-modal="false" fullscreen>
-        <MedfeeAnalyse type="unsettled" :timestamp="timestamp" :mdtrt-id="patient.mdtrtId" />
-      </el-dialog>
-    </div>
+    <MedfeeAnalyse v-if="showFeeDetl" type="unsettled" :timestamp="timestamp" :mdtrt-id="patient.mdtrtId" @close="showFeeDetl = false" />
   </el-container>
 </template>
 
@@ -502,7 +498,4 @@ function initPage() {
   width: 0px;
   vertical-align: middle;
 }
-:deep(.m-component .el-dialog__body) {
-  padding: 0 !important;
-}
 </style>

+ 13 - 15
src/views/medical-insurance/inpatient/MedInsVerification.vue → src/views/medical-insurance/inpatient/SettleVerification.vue

@@ -10,6 +10,7 @@
       <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="primary" icon="el-icon-tickets">待遇检查</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>
@@ -180,14 +181,9 @@
               <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>
-          <el-dialog v-model="showIdCardImg" title="身份信息" :close-on-click-modal="false" fullscreen :show-close="false">
-            <IdentifyImage :timestamp="timestamp" :pat-no="currentApply.patNo" :times="currentApply.times" @close="showIdCardImg = false"></IdentifyImage>
-          </el-dialog>
+          <Treatmentinfo v-if="showTreatmentinfos" :timestamp="timestamp" :params="checkTreatmentParams" @close="showTreatmentinfos = false" />
+          <MedfeeAnalyse v-if="showFeeDetl" type="unsettled" :timestamp="timestamp" :mdtrt-id="currentApply.mdtrtId" @close="showFeeDetl = false" />
+          <IdentifyImage v-if="showIdCardImg" :timestamp="timestamp" :pat-no="currentApply.patNo" :times="currentApply.times" @close="showIdCardImg = false" />
         </el-main>
       </el-container>
     </el-main>
@@ -202,10 +198,11 @@ 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 Treatmentinfo from '../../../components/medical-insurance/treatmentinfo/Index.vue'
 import MedfeeAnalyse from '../../../components/medical-insurance/medfee-analyse/Index.vue'
 import IdentifyImage from '../../../components/inpatient/IdentifyImage.vue'
 export default {
-  components: { MedfeeAnalyse, IdentifyImage },
+  components: { Treatmentinfo, MedfeeAnalyse, IdentifyImage },
   setup() {
     const currentApply = ref({})
     const windowSize = store.state.app.windowSize
@@ -321,6 +318,10 @@ export default {
       }
     }
 
+    const showTreatmentinfos = ref(false)
+    const checkTreatmentParams = ref({})
+    const checkTreatmentinfos = (row) => {}
+
     onActivated(() => {
       selectUnhandledApplies().then((res) => {
         allApplies.value = res
@@ -350,6 +351,9 @@ export default {
       beforeHandleApply,
       feeDtle,
       checkIdInfo,
+      showTreatmentinfos,
+      checkTreatmentParams,
+      checkTreatmentinfos,
     }
   },
 }
@@ -366,9 +370,3 @@ function getStatusFlag(status, patNo) {
   }
 }
 </script>
-
-<style scoped>
-:deep(.m-component .el-dialog__body) {
-  padding: 0 !important;
-}
-</style>