Browse Source

查询医保身份时,参保地具体到地级市

lighter 2 years ago
parent
commit
e8f0ab6a22

File diff suppressed because it is too large
+ 0 - 0
src/data/admdvs.js


+ 10 - 10
src/views/medical-insurance/allpatient/PsnInfo.vue

@@ -5,13 +5,8 @@
         <el-option v-for="item in psnCertTypes" :label="item.name" :value="item.code"></el-option>
       </el-select>
       <el-input style="width: 180px" placeholder="证件号码(必填)" clearable v-model="socialNo"></el-input>
-      <el-select v-model="psnAdmdvs" placeholder="参保区划" filterable style="width: 160px">
-        <el-option v-for="item in admdvs" :key="item.code" :label="item.name" :value="item.code">
-          <span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
-          <el-divider direction="vertical"></el-divider>
-          <span>{{ item.name }}</span>
-        </el-option>
-      </el-select>
+      <el-cascader clearable filterable placeholder="参保区划" :options="allAdmdvses" @change="handleAdmdvsChange"></el-cascader>
+
       <el-divider direction="vertical"></el-divider>
       <el-button icon="Search" type="primary" @click="execQuery">查询</el-button>
       <el-button type="primary" @click="getCuminfo">累计信息</el-button>
@@ -86,7 +81,7 @@
 <script>
 import { ref } from 'vue'
 import { obtainBasicPersonInfo } from '@/api/medical-insurance/si-query'
-import { admdvses } from '@/data'
+import { allAdmdvses } from '@/data/admdvs'
 import Cuminfo from '@/components/medical-insurance/cuminfo/Index.vue'
 import { ElMessage } from 'element-plus'
 import PageLayer from "@/layout/PageLayer";
@@ -100,7 +95,7 @@ export default {
     const psnCertTypes = ref([])
     const psnCertType = ref('01')
     const socialNo = ref('')
-    const psnAdmdvs = ref('')
+    const psnAdmdvs = ref(null)
     const psnInfo = ref({ insuinfo: [] })
     const showCumInfo = ref(false)
     const nullPsninfo = () => {
@@ -138,6 +133,10 @@ export default {
       showCumInfo.value = true
     }
 
+    const handleAdmdvsChange = (val) => {
+      psnAdmdvs.value = val[1]
+    }
+
     onMounted(() => {
       getPsnCertTypes().then(res => {
         psnCertTypes.value = res
@@ -145,7 +144,7 @@ export default {
     })
 
     return {
-      admdvs: admdvses,
+      allAdmdvses,
       psnCertType,
       socialNo,
       psnAdmdvs,
@@ -155,6 +154,7 @@ export default {
       execQuery,
       resetPage,
       getCuminfo,
+      handleAdmdvsChange,
     }
   },
 }

+ 19 - 9
src/views/medical-insurance/inpatient/AdmRegistration.vue

@@ -142,14 +142,7 @@
             <span>{{ item.name }}</span>
           </el-option>
         </el-select>
-        <el-select v-else v-model="patient.admdvs" :clearable="true" :filterable="true" placeholder="请选择"
-                   style="width: 180px">
-          <el-option v-for="item in admdvses" :key="item.code" :label="item.name" :value="item.code">
-            <span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
-            <el-divider direction="vertical"></el-divider>
-            <span>{{ item.name }}</span>
-          </el-option>
-        </el-select>
+        <el-cascader v-else v-model="patient.admdvsCascader" clearable filterable placeholder="请选择" :options="allAdmdvses" @change="handleAdmdvsChange"></el-cascader>
       </el-descriptions-item>
       <el-descriptions-item>
         <template #label> 医疗类别</template>
@@ -309,6 +302,14 @@
         <el-table-column label="报告时间" prop="reportDate"></el-table-column>
         <el-table-column label="事故发生时间" prop="accidentDate"></el-table-column>
         <el-table-column label="事故详细情况" prop="accidentDetail"></el-table-column>
+<!--        <el-table-column label="证件号码" prop="aac002"></el-table-column>-->
+<!--        <el-table-column label="姓名" prop="aac003"></el-table-column>-->
+<!--        <el-table-column label="单位名称" prop="aab004"></el-table-column>-->
+<!--        <el-table-column label="受伤时间" prop="alc020"></el-table-column>-->
+<!--        <el-table-column label="认定申请时间" prop="alc017"></el-table-column>-->
+<!--        <el-table-column label="认定ID" prop="aaz127"></el-table-column>-->
+<!--        <el-table-column label="个人编号" prop="aac001"></el-table-column>-->
+<!--        <el-table-column label="参保统筹区" prop="baa027Name"></el-table-column>-->
       </el-table>
     </div>
     <div v-else>
@@ -357,7 +358,8 @@ import {
   fetchNationDictionary,
   fetchRelationDictionary
 } from '@/api/dictionary/fetch-dictionaries'
-import {admdvses, diagTypes, sexes} from '@/data'
+import {diagTypes, sexes} from '@/data'
+import { allAdmdvses } from '@/data/admdvs'
 import {nullPatient} from '@/utils/validate'
 import {ElMessage, ElMessageBox} from 'element-plus'
 import {admissRegister, revokeAdmission} from '@/api/medical-insurance/si-inpatient'
@@ -457,6 +459,10 @@ const mdtrtGrpTypes = [
   {code: '4', name: '无症状感染者', key: 'mdtrtGrpTypes-4'},
 ]
 
+const handleAdmdvsChange = (val) => {
+  patient.value.admdvs = val[1]
+}
+
 const openDiagDialog = () => {
   if (nullPatient()) {
     return
@@ -765,6 +771,10 @@ const handleClickInjuryinfo = (row) => {
     confirmButtonText: '确定',
     cancelButtonText: '取消',
   }).then(() => {
+    // row.patNo = patient.value.inpatientNo
+    // row.times = patient.value.admissTimes
+    // row.ledgerSn = patient.value.ledgerSn
+    // admissRegistration(row).then((res) => {
     const param = {
       baseinfo: patient.value,
       injuryinfo: row,

+ 6 - 8
src/views/medical-insurance/outpatient/MzRegister.vue

@@ -6,13 +6,7 @@
       <el-select v-model="medType" style="width: 120px" placeholder="医疗类别">
         <el-option v-for="item in medTypes" :key="item.code" :value="item.code" :label="item.name"></el-option>
       </el-select>
-      <el-select v-model="admdvs" clearable filterable placeholder="参保地区" style="width: 160px">
-        <el-option v-for="item in admdvses" :key="item.code" :label="item.name" :value="item.code">
-          <span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
-          <el-divider direction="vertical"></el-divider>
-          <span>{{ item.name }}</span>
-        </el-option>
-      </el-select>
+      <el-cascader clearable filterable placeholder="参保地区" :options="allAdmdvses" @change="handleAdmdvsChange" style="width: 160px"></el-cascader>
       <el-dropdown trigger="click" @command="receiptsOpts" style="margin-left: 8px">
         <el-button type="primary">
           处方&nbsp;<el-icon><ArrowDown /></el-icon>
@@ -235,7 +229,7 @@
 
 <script setup>
 import { onMounted, reactive, ref } from 'vue'
-import { admdvses } from '@/data'
+import { allAdmdvses } from '@/data/admdvs'
 import {
   deleteAllMzReceipts,
   deleteMzReceipt,
@@ -706,6 +700,10 @@ const highlightYbCode = (hisCode, ybCode) => {
   return ybCode ? `<span>${ybCode}</span>` : '<span style="color: red">医师无医保编码</span>'
 }
 
+const handleAdmdvsChange = (val) => {
+  admdvs.value = val[1]
+}
+
 onMounted(() => {
   getMedTypesByFlag('clinic').then((res) => {
     medTypes.value = res

Some files were not shown because too many files changed in this diff