Browse Source

违规退费分析

xiaochan 3 years ago
parent
commit
96f55eef8c

+ 2 - 2
src/api/yibao/xiang-mu-lu-ru.js

@@ -118,11 +118,11 @@ export function cheXiaoTuiFei(inpatientNo, admissTimes, ledger, detailSn) {
   })
 }
 
-export function weiGuiFeiYongFenXi(inpatientNo, admissTimes) {
+export function weiGuiFeiYongFenXi(inpatientNo, admissTimes, execUnit) {
   return request({
     url: '/xmlr/weiGuiFeiYongFenXi',
     method: 'get',
-    params: { inpatientNo, admissTimes },
+    params: { inpatientNo, admissTimes, execUnit },
   })
 }
 

+ 13 - 8
src/components/inpatient/WeiGuiFeiYongFenXi.vue

@@ -3,7 +3,7 @@
     <el-header height="30">
       <el-descriptions title="患者信息" border>
         <template #extra>
-          <el-button type="primary" @click="tuiFeiPiPeiClick" size="small">退费匹配</el-button>
+          <el-button type="primary" @click="chaoZuoZhiNan = true" size="small">操作指南</el-button>
         </template>
         <el-descriptions-item label="姓名">{{ huanZheXinXi.name }}</el-descriptions-item>
         <el-descriptions-item label="住院号">{{ huanZheXinXi.inpatientNo }}</el-descriptions-item>
@@ -106,6 +106,7 @@
         class="eltable"
       >
         <el-table-column type="selection"></el-table-column>
+        <el-table-column label="流水号" prop="detailSn" width="70"></el-table-column>
         <el-table-column label="时间" prop="chargeDate" width="70"></el-table-column>
         <el-table-column label="项目编码" prop="chargeCodeMx"></el-table-column>
         <el-table-column label="金额" prop="chargeFee"></el-table-column>
@@ -121,13 +122,17 @@
         background
       ></el-pagination>
     </el-drawer>
+    <el-dialog v-model="chaoZuoZhiNan" title="操作指南">
+      一、未匹配 <br />
+      1、
+    </el-dialog>
   </el-container>
 </template>
 
 <script>
 import { onMounted, ref, watch } from 'vue'
 import store from '../../store'
-import { huoQuZhenShuKePiPei, caiFenPiPei, yiZhuTuiFeiPiPei } from '@/api/yibao/xiang-mu-lu-ru'
+import { huoQuZhenShuKePiPei, caiFenPiPei } from '@/api/yibao/xiang-mu-lu-ru'
 import { ElMessageBox } from 'element-plus'
 import { shortcuts } from '@/data/shortcuts'
 import { getDateRangeFormatDate } from '../../utils/date'
@@ -184,10 +189,6 @@ export default {
       keYiPiPeiDeZhenShu.value.currentPage = val
     }
 
-    const tuiFeiPiPeiClick = () => {
-      yiZhuTuiFeiPiPei(props.patient.inpatientNo, props.patient.admissTimes)
-    }
-
     const zhenShuFeiYong = (val) => {
       let dateS = getDateRangeFormatDate(dateRange.value)
       let startTime = dateS.startTime
@@ -223,13 +224,15 @@ export default {
     const piPeiShiFouDianJi = ref(false)
 
     const PiPeiClick = () => {
+      console.log(store.state.user.info.deptCode)
       ElMessageBox.confirm('请仔细检查', '提示', {
         type: 'warning',
       })
         .then(() => {
-          piPeiShiFouDianJi.value = true
           fuShuFeiYongXinXi.value.list = linShiDuoXuan.value
+          fuShuFeiYongXinXi.value.deptCode = store.state.user.info.deptCode
           caiFenPiPei(fuShuFeiYongXinXi.value).then((res) => {
+            piPeiShiFouDianJi.value = true
             let data = weiGuiFeiYong.value.data
             for (let i = 0; i < data.length; i++) {
               if (
@@ -293,6 +296,8 @@ export default {
       }
     }
 
+    const chaoZuoZhiNan = ref(false)
+
     return {
       weiPiPei,
       weiGuiFeiYong,
@@ -312,7 +317,7 @@ export default {
       riQiPaiXu,
       shortcuts,
       weiGuiTabs,
-      tuiFeiPiPeiClick,
+      chaoZuoZhiNan,
     }
   },
 }

+ 58 - 2
src/components/med-tec-mod/HuanZheFeiYong.vue

@@ -2,6 +2,7 @@
   <el-container>
     <el-main>
       <el-button type="danger" @click="xiangMuTuiFeiClick" icon="el-icon-delete-solid">退费</el-button>
+      <el-button type="primary" @click="weiGuiTuiFeiFenXiDialogOpen">违规费用分析</el-button>
       <el-table :data="cptTableDataHuanZheFeiYong" :height="windowHeigth - 170" @selection-change="handleSelectionChange" highlight-current-row stripe>
         <el-table-column type="selection"></el-table-column>
         <el-table-column label="流水号" prop="detailSn" width="70px"></el-table-column>
@@ -45,6 +46,9 @@
         style="margin-top: 5px"
       ></el-pagination>
     </el-main>
+    <el-dialog v-model="weiGuiTuiFeiFenXiDialog" title="违规费用分析" :fullscreen="true">
+      <wei-gui-fei-yong-fen-xi :init="weiGuiTuiFeiInit" :patient="weiGuiJiBenXinXi"></wei-gui-fei-yong-fen-xi>
+    </el-dialog>
   </el-container>
 </template>
 
@@ -52,9 +56,11 @@
 import { ref, watch } from 'vue'
 import { costState } from '@/utils/computed'
 import store from '@/store'
-import { getChargeCode, xiangMuTuiFei } from '@/api/yibao/xiang-mu-lu-ru'
-import { ElMessage, ElMessageBox } from 'element-plus'
+import { getChargeCode, xiangMuTuiFei, weiGuiFeiYongFenXi } from '@/api/yibao/xiang-mu-lu-ru'
+import WeiGuiFeiYongFenXi from '@/components/inpatient/WeiGuiFeiYongFenXi.vue'
+import { ElNotification } from 'element-plus'
 export default {
+  components: { WeiGuiFeiYongFenXi },
   name: 'huanZheFeiYong',
   props: {
     init: {
@@ -80,6 +86,7 @@ export default {
         cptTableDataHuanZheFeiYong.value = props.init.records
         fenYe.value.total = props.init.total
         fenYe.value.currentPage = props.init.currentPage
+        weiGuiTuiFeiFenXiDialogOpen()
       }
     )
 
@@ -145,6 +152,52 @@ export default {
         })
       }
     }
+
+    ///////////////////////////////////////////// 违规退费分析 /////////////////////////////////////////////////////////////////////////
+    const weiGuiTuiFeiInit = ref(0)
+    const weiGuiTuiFeiFenXiDialog = ref(false)
+
+    const tiShi = ref(true)
+
+    const weiGuiJiBenXinXi = ref({})
+
+    const weiGuiTuiFeiFenXiDialogOpen = () => {
+      weiGuiFeiYongFenXi(props.patient.inpatientNo, props.patient.admissTimes, store.state.user.info.deptCode).then((res) => {
+        if (res.weiXieDaiYuanLiuShui.length > 0 || res.weiPiPei.length > 0) {
+          console.log(res)
+          weiGuiTuiFeiFenXiDialog.value = true
+          weiGuiJiBenXinXi.value.inpatientNo = props.patient.inpatientNo
+          weiGuiJiBenXinXi.value.admissTimes = props.patient.admissTimes
+          weiGuiJiBenXinXi.value.name = props.patient.name
+          weiGuiJiBenXinXi.value.weiPiPei = res.weiPiPei
+          weiGuiJiBenXinXi.value.weiXieDaiYuanLiuShui = res.weiXieDaiYuanLiuShui
+          weiGuiJiBenXinXi.value.pageSize = 20
+          weiGuiJiBenXinXi.value.currentPage = 1
+          weiGuiTuiFeiInit.value += 1
+        } else {
+          if (tiShi.value) {
+            ElNotification({
+              title: '提示',
+              dangerouslyUseHTMLString: true,
+              type: 'success',
+              message: ` 1、该患者没有本科室违规的费用 very nice。<br> 
+            2、如果还是上传不成功或者费用不一致,那么请医保科取消上传,重新上传费用。<br>          
+            3、退药品的话(长期医嘱撤销就可以了,如果不能撤销提单子)(临嘱的话使用医保入院登记里面的【医嘱退费】,然后护士执行这个条医嘱就可以了)。<br>
+            4、全部的项目都要用本系统来退费。<br>你们终于可以不用向信息科打电话了 ヾ(✿゚▽゚)ノ`,
+            })
+            tiShi.value = false
+          } else {
+            ElNotification({
+              title: '提示',
+              dangerouslyUseHTMLString: true,
+              type: 'success',
+              message: ` 该患者没有违规的费用 very nice`,
+            })
+          }
+        }
+      })
+    }
+
     return {
       cptTableDataHuanZheFeiYong,
       costState,
@@ -156,6 +209,9 @@ export default {
       chargeCodeNameData,
       xiangMuTuiFeiClick,
       handleSelectionChange,
+      weiGuiTuiFeiFenXiDialogOpen,
+      weiGuiTuiFeiFenXiDialog,
+      weiGuiJiBenXinXi,
     }
   },
 }

+ 3 - 2
src/views/medical-insurance/inpatient/InHospFeeUpload.vue

@@ -389,8 +389,9 @@ export default {
 
     const weiGuiTuiFeiFenXiDialogOpen = () => {
       if (nullPatient()) return
-      weiGuiFeiYongFenXi(patient.value.inpatientNo, patient.value.admissTimes).then((res) => {
+      weiGuiFeiYongFenXi(patient.value.inpatientNo, patient.value.admissTimes, '').then((res) => {
         if (res.weiXieDaiYuanLiuShui.length > 0 || res.weiPiPei.length > 0) {
+          console.log(res)
           weiGuiTuiFeiFenXiDialog.value = true
           weiGuiJiBenXinXi.value.inpatientNo = patient.value.inpatientNo
           weiGuiJiBenXinXi.value.admissTimes = patient.value.admissTimes
@@ -409,7 +410,7 @@ export default {
               message: ` 1、该患者没有违规的费用 very nice。<br> 
             2、如果还是上传不成功或者费用不一致,那么请医保科取消上传,重新上传费用。<br>          
             3、退药品的话(长期医嘱撤销就可以了,如果不能撤销提单子)(临嘱的话使用医保入院登记里面的【医嘱退费】,然后护士执行这个条医嘱就可以了)。<br>
-            4、全部的项目都要用本 系统来退费。<br>你们终于可以不用向信息科打电话了 ヾ(✿゚▽゚)ノ<br>`,
+            4、全部的项目都要用本系统来退费。<br>你们终于可以不用向信息科打电话了 ヾ(✿゚▽゚)ノ`,
             })
             tiShi.value = false
           } else {