Browse Source

就诊信息页面添加撤销门诊登记功能

lighter 2 years ago
parent
commit
b250701928

+ 8 - 0
src/api/medical-insurance/si-outpatient.js

@@ -16,6 +16,14 @@ export function revokeOutpatientRegistration(data) {
   })
 }
 
+export function executeOutpatientRegRevoke(data) {
+  return request({
+    url: '/siMz/executeOutpatientRegRevoke',
+    method: 'post',
+    data,
+  })
+}
+
 export function getMzReceipts(data) {
   return request({
     url: '/siMz/getMzReceipts',

+ 143 - 153
src/views/medical-insurance/allpatient/VisitInfo.vue

@@ -22,6 +22,7 @@
       <el-button type="primary" @click="getSetlInfo">结算信息</el-button>
       <el-button type="primary" @click="getFeeDetl">费用明细</el-button>
       <el-button type="primary" @click="getCumInfo">累计信息</el-button>
+      <el-button type="danger" @click="cancelRegister">撤销登记(限门诊)</el-button>
     </template>
     <template #main>
       <el-tag type="success">就诊信息</el-tag>
@@ -89,181 +90,170 @@
   </page-layer>
 </template>
 
-<script>
+<script setup>
 import {ref, onMounted} from 'vue'
 import {maxHalfYear} from '@/data/shortcuts'
 import {getMedAllTypes} from '@/api/medical-insurance/si-dict'
 import {ElMessage} from 'element-plus'
 import {queryDiagnosisInfo, querySettlementInfo, queryVisitInfo} from '@/api/medical-insurance/si-query'
+import {executeOutpatientRegRevoke} from '@/api/medical-insurance/si-outpatient'
 import {formatDatetime} from '@/utils/date'
 import MedfeeAnalyse from '../../../components/medical-insurance/medfee-analyse/Index.vue'
 import Setlinfo from '../../../components/medical-insurance/setlinfo/Index.vue'
 import Cuminfo from '../../../components/medical-insurance/cuminfo/Index.vue'
 import PageLayer from "@/layout/PageLayer";
 
-export default {
-  components: {
-    PageLayer,
-    MedfeeAnalyse,
-    Setlinfo,
-    Cuminfo,
-  },
-  setup() {
-    const patNo = ref('')
-    const medTypes = ref([])
-    const medType = ref(null)
-    const dateRange = ref(null)
-    const mdtrtInfos = ref([])
-    const mdtrtInfo = ref({})
-    const diseInfos = ref([])
-    const setlInfo = ref({})
-    const feeDetls = ref([])
-    const showDiagnosisInfo = ref(false)
-    const showSetlInfo = ref(false)
-    const showFeeDetl = ref(false)
-    const showCumInfo = ref(false)
+const patNo = ref()
+const medTypes = ref([])
+const medType = ref(null)
+const dateRange = ref(null)
+const mdtrtInfos = ref([])
+const mdtrtInfo = ref({})
+const diseInfos = ref([])
+const setlInfo = ref({})
+const showDiagnosisInfo = ref(false)
+const showSetlInfo = ref(false)
+const showFeeDetl = ref(false)
+const showCumInfo = ref(false)
 
-    const nullPatNo = () => {
-      if (!patNo.value) {
-        ElMessage({
-          message: '请输入患者住院号/门诊ID!',
-          type: 'warning',
-          duration: 2000,
-          showClose: true,
-        })
-        return true
-      }
-      return false
-    }
+const nullPatNo = () => {
+  if (!patNo.value) {
+    ElMessage({
+      message: '请输入患者住院号/门诊ID!',
+      type: 'warning',
+      duration: 2000,
+      showClose: true,
+    })
+    return true
+  }
+  return false
+}
 
-    const nullMedType = () => {
-      if (!medType.value) {
-        ElMessage({
-          message: '请选择医疗类别!',
-          type: 'warning',
-          duration: 2000,
-          showClose: true,
-        })
-        return true
-      }
-      return false
-    }
+const nullMedType = () => {
+  if (!medType.value) {
+    ElMessage({
+      message: '请选择医疗类别!',
+      type: 'warning',
+      duration: 2000,
+      showClose: true,
+    })
+    return true
+  }
+  return false
+}
 
-    const nullDateRange = () => {
-      if (!dateRange.value) {
-        ElMessage({
-          message: '请选择日期范围!',
-          type: 'warning',
-          duration: 2000,
-          showClose: true,
-        })
-        return true
-      }
-      return false
-    }
+const nullDateRange = () => {
+  if (!dateRange.value) {
+    ElMessage({
+      message: '请选择日期范围!',
+      type: 'warning',
+      duration: 2000,
+      showClose: true,
+    })
+    return true
+  }
+  return false
+}
 
-    const nullMdtrtInfo = () => {
-      if (!mdtrtInfo.value.mdtrtId) {
-        ElMessage({
-          message: '请选择一条就诊信息!',
-          type: 'warning',
-          duration: 2000,
-          showClose: true,
-        })
-        return true
-      }
-      return false
-    }
+const nullMdtrtInfo = () => {
+  if (!mdtrtInfo.value.mdtrtId) {
+    ElMessage({
+      message: '请选择一条就诊信息!',
+      type: 'warning',
+      duration: 2000,
+      showClose: true,
+    })
+    return true
+  }
+  return false
+}
 
-    const getVisitInfo = () => {
-      if (nullPatNo() || nullMedType() || nullDateRange()) {
-        return
-      }
-      const param = {
-        patNo: patNo.value,
-        medType: medType.value,
-        begntime: formatDatetime(dateRange.value[0]),
-        endtime: formatDatetime(dateRange.value[1]),
-      }
-      queryVisitInfo(param).then((res) => {
-        mdtrtInfos.value = res
-      })
-    }
+const getVisitInfo = () => {
+  if (nullPatNo() || nullMedType() || nullDateRange()) {
+    return
+  }
+  const param = {
+    patNo: patNo.value,
+    medType: medType.value,
+    begntime: formatDatetime(dateRange.value[0]),
+    endtime: formatDatetime(dateRange.value[1]),
+  }
+  queryVisitInfo(param).then((res) => {
+    mdtrtInfos.value = res
+  })
+}
 
-    const handleClickMdtrtInfo = (row) => {
-      mdtrtInfo.value = row
-    }
+const handleClickMdtrtInfo = (row) => {
+  mdtrtInfo.value = row
+}
 
-    const getDiseInfo = () => {
-      if (nullMdtrtInfo()) {
-        return
-      }
-      const param = {
-        psnNo: mdtrtInfo.value.psnNo,
-        mdtrtId: mdtrtInfo.value.mdtrtId,
-      }
-      queryDiagnosisInfo(param).then((res) => {
-        diseInfos.value = res
-        showDiagnosisInfo.value = true
-      })
-    }
+const getDiseInfo = () => {
+  if (nullMdtrtInfo()) {
+    return
+  }
+  const param = {
+    psnNo: mdtrtInfo.value.psnNo,
+    mdtrtId: mdtrtInfo.value.mdtrtId,
+  }
+  queryDiagnosisInfo(param).then((res) => {
+    diseInfos.value = res
+    showDiagnosisInfo.value = true
+  })
+}
 
-    const getSetlInfo = () => {
-      if (nullMdtrtInfo()) {
-        return
-      }
-      const param = {
-        psnNo: mdtrtInfo.value.psnNo,
-        mdtrtId: mdtrtInfo.value.mdtrtId,
-      }
-      querySettlementInfo(param).then((res) => {
-        setlInfo.value = res
-        showSetlInfo.value = true
-      })
-    }
+const getSetlInfo = () => {
+  if (nullMdtrtInfo()) {
+    return
+  }
+  const param = {
+    psnNo: mdtrtInfo.value.psnNo,
+    mdtrtId: mdtrtInfo.value.mdtrtId,
+  }
+  querySettlementInfo(param).then((res) => {
+    setlInfo.value = res
+    showSetlInfo.value = true
+  })
+}
 
-    const getFeeDetl = () => {
-      if (nullMdtrtInfo()) {
-        return
-      }
-      showFeeDetl.value = true
-    }
+const getFeeDetl = () => {
+  if (nullMdtrtInfo()) {
+    return
+  }
+  showFeeDetl.value = true
+}
 
-    const getCumInfo = () => {
-      if (nullMdtrtInfo()) {
-        return
-      }
-      showCumInfo.value = true
-    }
+const getCumInfo = () => {
+  if (nullMdtrtInfo()) {
+    return
+  }
+  showCumInfo.value = true
+}
 
-    onMounted(() => {
-      getMedAllTypes().then((res) => {
-        medTypes.value = res
-      })
+const cancelRegister = () => {
+  if (nullMdtrtInfo()) {
+    return
+  }
+  const request = {
+    insuplcAdmdvs: mdtrtInfo.value.insuOptins,
+    psnNo: mdtrtInfo.value.psnNo,
+    mdtrtId: mdtrtInfo.value.mdtrtId,
+    patNo: patNo.value,
+    times: -9
+  }
+  executeOutpatientRegRevoke(request).then(res => {
+    ElMessage({
+      message: res,
+      type: 'success',
+      duration: 2000,
+      showClose: true,
     })
-
-    return {
-      patNo,
-      dateRange,
-      maxHalfYear,
-      medTypes,
-      medType,
-      getVisitInfo,
-      mdtrtInfos,
-      mdtrtInfo,
-      handleClickMdtrtInfo,
-      getDiseInfo,
-      diseInfos,
-      feeDetls,
-      getSetlInfo,
-      getFeeDetl,
-      showDiagnosisInfo,
-      setlInfo,
-      showSetlInfo,
-      showFeeDetl,
-      getCumInfo,
-      showCumInfo,
-    }
-  },
+    getVisitInfo()
+  })
 }
+
+onMounted(() => {
+  getMedAllTypes().then((res) => {
+    medTypes.value = res
+  })
+})
 </script>