Explorar el Código

修复医保没有参保地的问题

lighter hace 4 años
padre
commit
95e5615822

+ 48 - 0
src/data/index.js

@@ -231,3 +231,51 @@ export const feiYongLeiXing = [
   { code: 0, name: '项目' },
   { code: 1, name: '药品' },
 ]
+
+export const admdvs = [
+  { code: 119900, name: '北京市市本级' },
+  { code: 129900, name: '天津市市本级' },
+  { code: 139900, name: '河北省省本级' },
+  { code: 149900, name: '山西省省本级' },
+  { code: 159900, name: '内蒙古自治区区本级' },
+  { code: 219900, name: '辽宁省省本级' },
+  { code: 229900, name: '吉林省省本级' },
+  { code: 239900, name: '黑龙江省省本级' },
+  { code: 319900, name: '上海市市本级' },
+  { code: 329900, name: '江苏省省本级' },
+  { code: 339900, name: '浙江省省本级' },
+  { code: 349900, name: '安徽省省本级' },
+  { code: 359900, name: '福建省省本级' },
+  { code: 369900, name: '江西省省本级' },
+  { code: 379900, name: '山东省省本级' },
+  { code: 419900, name: '河南省省本级' },
+  { code: 429900, name: '湖北省省本级' },
+  { code: 439900, name: '湖南省省本级' },
+  { code: 810000, name: '香港特别行政区' },
+  { code: 820000, name: '澳门特别行政区' },
+  { code: 430199, name: '长沙市市本级' },
+  { code: 430102, name: '长沙市芙蓉区' },
+  { code: 430103, name: '长沙市天心区' },
+  { code: 430104, name: '长沙市岳麓区' },
+  { code: 430105, name: '长沙市开福区' },
+  { code: 430111, name: '长沙市雨花区' },
+  { code: 430140, name: '长沙市高新区' },
+  { code: 430121, name: '长沙市长沙县' },
+  { code: 430112, name: '长沙市望城区' },
+  { code: 430181, name: '浏阳市' },
+  { code: 430182, name: '宁乡市' },
+  { code: 449900, name: '广东省省本级' },
+  { code: 459900, name: '广西壮族自治区区本级' },
+  { code: 469900, name: '海南省省本级' },
+  { code: 509900, name: '重庆市市本级' },
+  { code: 519900, name: '四川省省本级' },
+  { code: 529900, name: '贵州省省本级' },
+  { code: 539900, name: '云南省省本级' },
+  { code: 549900, name: '西藏自治区区本级' },
+  { code: 619900, name: '陕西省省本级' },
+  { code: 629900, name: '甘肃省省本级' },
+  { code: 639900, name: '青海省省本级' },
+  { code: 649900, name: '宁夏回族自治区区本级' },
+  { code: 659900, name: '新疆维吾尔自治区区本级' },
+  { code: 669900, name: '新疆生产建设兵团本级' },
+]

+ 2 - 0
src/views/medical-insurance/allpatient/InhospInfo.vue

@@ -363,6 +363,7 @@ export default {
 
     const executeGetCumulativeInfo = () => {
       const param = {
+        patNo: patNo.value,
         psnNo: currentInHospInfo.value.psnNo,
         cumYm: cumYm.value,
       }
@@ -389,6 +390,7 @@ export default {
         return
       }
       const param = {
+        patNo: patNo.value,
         psnNo: currentInHospInfo.value.psnNo,
         begntime: formatDatetime(refMedinsRange.value[0]),
         endtime: formatDatetime(refMedinsRange.value[1]),

+ 13 - 1
src/views/medical-insurance/allpatient/PsnInfo.vue

@@ -1,8 +1,15 @@
 <template>
   <el-container>
     <el-header style="height: 35px; margin-top: 10px">
-      <el-input style="width: 130px" placeholder="姓名(非必填)" clearable v-model="psnName"></el-input>&nbsp;
+      <el-input style="width: 130px" placeholder="姓名" clearable v-model="psnName"></el-input>&nbsp;
       <el-input style="width: 180px" placeholder="身份证号(必填)" clearable v-model="socialNo"></el-input>
+      <el-select v-model="psnAdmdvs" placeholder="参保区划" filterable>
+        <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-divider direction="vertical"></el-divider>
       <el-button icon="el-icon-search" type="primary" @click="execQuery">查询</el-button>
       <el-button icon="el-icon-refresh" type="primary" @click="resetPage">清空页面</el-button>
@@ -74,15 +81,18 @@
 <script>
 import { ref } from 'vue-demi'
 import { obtainBasicPersonInfo } from '@/api/medical-insurance/si-query'
+import { admdvs } from '@/data/index'
 export default {
   setup() {
     const psnName = ref('')
     const socialNo = ref('')
+    const psnAdmdvs = ref('')
     const psnInfo = ref({ insuinfo: [] })
     const execQuery = () => {
       const param = {
         name: psnName.value,
         socialNo: socialNo.value,
+        admdvs: psnAdmdvs.value,
         onlyQry: 1,
       }
       obtainBasicPersonInfo(param).then((res) => {
@@ -95,8 +105,10 @@ export default {
       psnInfo.value = { insuinfo: [] }
     }
     return {
+      admdvs,
       psnName,
       socialNo,
+      psnAdmdvs,
       psnInfo,
       execQuery,
       resetPage,

+ 1 - 1
src/views/medical-insurance/allpatient/SiSettleDetailList.vue

@@ -3,7 +3,7 @@
     <div id="listPage" :style="pageStyle">
       <div style="width: 100%; text-align: center; font-size: 22px; font-weight: bold; margin-bottom: 4px">{{ listTitle }}</div>
       <div style="width: 100%; display: flex; font-size: 15px; margin-bottom: 8px">
-        <div style="width: 50%; text-align: left">统筹区划:{{ setlinfo.insuplcAdmdvs }}</div>
+        <div style="width: 50%; text-align: left">统筹区划:{{ setlinfo.insuplcAdmdvsName }}</div>
         <div style="width: 48%; text-align: right">打印日期:{{ nowdate }}</div>
       </div>
       <div v-if="outParam.type === 1" class="si-content">

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

@@ -343,6 +343,7 @@ export default {
     }
     const executeGetCumulativeInfo = () => {
       const param = {
+        patNo: patNo.value,
         psnNo: mdtrtInfo.value.psnNo,
         cumYm: cumYm.value,
       }

+ 17 - 5
src/views/medical-insurance/inpatient/AdmRegistration.vue

@@ -58,22 +58,30 @@
               </template>
             </el-autocomplete>
           </el-col>
+          <el-col :span="2" style="text-align: right">病区:</el-col>
+          <el-col :span="4"><el-input v-model="patient.admissWardName" disabled></el-input></el-col>
           <el-col :span="2" style="text-align: right">入院医生:</el-col>
           <el-col :span="4"><el-input v-model="patient.admissPhysicianName" disabled></el-input></el-col>
           <el-col :span="2" style="text-align: right">入院诊断:</el-col>
           <el-col :span="4"><el-input v-model="patient.admissDiagStr" disabled></el-input></el-col>
-          <el-col :span="2" style="text-align: right">门诊诊断:</el-col>
-          <el-col :span="4"><el-input v-model="patient.clinicDiagStr" disabled></el-input></el-col>
         </el-row>
         <el-row>
-          <el-col :span="2" style="text-align: right">病区:</el-col>
-          <el-col :span="4"><el-input v-model="patient.admissWardName" disabled></el-input></el-col>
           <el-col :span="2" style="text-align: right">小科室:</el-col>
           <el-col :span="4"><el-input v-model="patient.smallDeptName" disabled></el-input></el-col>
           <el-col :span="2" style="text-align: right">登记日期:</el-col>
           <el-col :span="4">
             <el-date-picker v-model="patient.ybRegisterDate" type="datetime" placeholder="选择日期时间" @change="formatYbRegisterDate"></el-date-picker>
           </el-col>
+          <el-col :span="2" style="text-align: right">参保地区:</el-col>
+          <el-col :span="4">
+            <el-select v-model="patient.admdvs" placeholder="请选择" filterable>
+              <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-col>
           <el-col :span="2" style="text-align: right">医疗类别:</el-col>
           <el-col :span="4">
             <el-select v-model="patient.medType" placeholder="请选择">
@@ -262,7 +270,7 @@ import { getCancelRegisterRequests, submitCancelRegisterRequest, revokeYbsf, sub
 import { searchData, getAllSpecialDiags } from '@/api/yibao/dictionary'
 import store from '@/store'
 import { cptSex } from '@/utils/computed'
-import { sexes } from '@/data/index'
+import { sexes, admdvs } from '@/data/index'
 import { nullPatient } from '@/utils/validate'
 import { ElMessage, ElMessageBox } from 'element-plus'
 import { revokeAdmission, admissRegister, modifyAdmissionInfo } from '@/api/medical-insurance/si-inpatient'
@@ -475,6 +483,8 @@ export default {
         message = '医保入院诊断不能为空!'
       } else if (!patient.value.medType) {
         message = '请选择医疗类别!'
+      } else if (!patient.value.admdvs) {
+        message = '请选择患者参保地区!'
       }
       if (message) {
         ElMessage({
@@ -592,6 +602,7 @@ export default {
         socialNo: patient.value.socialNo,
         medType: patient.value.medType,
         name: patient.value.name,
+        admdvs: patient.value.admdvs,
         needSaving: 1,
       }
       obtainBasicPersonInfo(param).then((res) => {
@@ -714,6 +725,7 @@ export default {
       patient,
       submitDisabled,
       sexes,
+      admdvs,
       medTypes,
       diagTypes,
       insuinfo,

+ 7 - 0
src/views/medical-insurance/inpatient/MedInsVerification.vue

@@ -63,6 +63,8 @@
           <el-col :span="4">{{ filterYesOrNo(patient.xnhHasreferral) }}</el-col>
           <el-col :span="2">转诊单号:</el-col>
           <el-col :span="4">{{ patient.xnhReferralno }}</el-col>
+          <el-col :span="2">参保区划:</el-col>
+          <el-col :span="4">{{ patient.admdvs }}</el-col>
         </el-row>
       </div>
       <div style="height: 8px"></div>
@@ -255,11 +257,14 @@ export default {
         ledgerSn: patient.value.ledgerSn,
         socialNo: patient.value.socialNo,
         name: patient.value.name,
+        admdvs: patient.value.admdvs,
         needSaving: 1,
       }
       obtainBasicPersonInfo(param).then((res) => {
         if (flag === 0) {
           const param = {
+            patNo: patient.value.inpatientNo,
+            times: patient.value.admissTimes,
             psnNo: res.psnNo,
             bizAppyType: bizAppyType.value,
           }
@@ -285,6 +290,8 @@ export default {
 
     const chkTrtmt = (row) => {
       const param = {
+        patNo: patient.value.inpatientNo,
+        times: patient.value.admissTimes,
         psnNo: patient.value.psnNo,
         insutype: row.insutype,
         medType: patient.value.medType,