lighter 3 years ago
parent
commit
d0b8ff90b3

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

@@ -16,6 +16,14 @@ export function admissRegistration(data) {
   })
 }
 
+export function modifyAdmissionInfo(data) {
+  return request({
+    url: '/siInjury/modifyAdmissionInfo',
+    method: 'post',
+    data,
+  })
+}
+
 export function uploadInjuryFees(data) {
   return request({
     url: '/siInjury/uploadFees',

+ 1 - 1
src/components/inpatient/frontsheet-printpage/HeadPage.vue

@@ -6,7 +6,7 @@
         <div style="width: 100%; font-size: 17px; text-align: center">住 院 病 案 首 页</div>
         <div style="margin-right: 8px; width: 100%; height: 32px; line-height: 32px; font-size: 15px; text-align: center">
           医疗机构:
-          <span style="font-weight: 700">湖南泰和医院</span>
+          <span style="font-weight: 700">长沙泰和医院</span>
           (组织机构代码:
           <span style="font-weight: 700">43010150145</span>

+ 3 - 6
src/components/medical-insurance/readcard/Index.vue

@@ -3,12 +3,9 @@
     <el-button type="primary">读卡<i class="el-icon-arrow-down el-icon--right"></i> </el-button>
     <template #dropdown>
       <el-dropdown-menu>
-        <el-dropdown-item icon="el-icon-bank-card" command="sicard">社保卡</el-dropdown-item>
-        <el-dropdown-item icon="el-icon-s-grid" command="qrcode">电子凭证</el-dropdown-item>
-        <el-dropdown-item icon="el-icon-user" command="idcard">身份证</el-dropdown-item>
-        <el-dropdown-item icon="el-icon-bank-card" command="new-sicard" divided>社保卡(新)</el-dropdown-item>
-        <el-dropdown-item icon="el-icon-s-grid" command="new-qrcode">电子凭证(新)</el-dropdown-item>
-        <el-dropdown-item icon="el-icon-user" command="new-idcard">身份证(新)</el-dropdown-item>
+        <el-dropdown-item icon="el-icon-bank-card" command="new-sicard" divided>社保卡</el-dropdown-item>
+        <el-dropdown-item icon="el-icon-s-grid" command="new-qrcode">电子凭证</el-dropdown-item>
+        <el-dropdown-item icon="el-icon-user" command="new-idcard">身份证</el-dropdown-item>
       </el-dropdown-menu>
     </template>
   </el-dropdown>

+ 1 - 1
src/views/examination/InspectionReportIndex.vue

@@ -27,7 +27,7 @@
         </el-col>
         <el-col :span="18">
           <div id="reportDetail" style="width: 90%; height: 100%; padding: 0 30px; background-color: white">
-            <h3 style="width: 100%; text-align: center; font-weight: bold; height: 30px; line-height: 30px">湖南泰和医院检查报告单</h3>
+            <h3 style="width: 100%; text-align: center; font-weight: bold; height: 30px; line-height: 30px">长沙泰和医院检查报告单</h3>
             <div style="width: 100%; margin-top: 15px; font-size: 12px">
               <div style="display: flex">
                 <div style="width: 25%">姓名:{{ inspectionDetail.inspectionHeader.ptnt_NAME }}</div>

+ 1 - 1
src/views/hospitalization/MakeDbzFees.vue

@@ -26,7 +26,7 @@
         </el-col>
         <el-col :span="18">
           <div style="margin-left: 30px">
-            <div class="receipt-title">湖南泰和医院处方笺</div>
+            <div class="receipt-title">长沙泰和医院处方笺</div>
             <el-divider></el-divider>
             <div class="receipt-head">
               <div>姓名:{{ currentHisOrdNum.patName }}</div>

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

@@ -310,6 +310,7 @@ export default {
 
     onMounted(() => {
       getCatalogues().then((res) => {
+        // res.push({ code: '1303', name: '医院制剂' })
         cataTypes.value = res
       })
     })

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

@@ -3,7 +3,7 @@
     <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: 180px" placeholder="身份证号(必填)" clearable v-model="socialNo"></el-input>
-      <el-select v-model="psnAdmdvs" placeholder="参保区划" filterabl style="width: 160px">
+      <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>

+ 107 - 120
src/views/medical-insurance/inpatient/AdmRegistration.vue

@@ -3,7 +3,7 @@
     <el-header height="35px">
       <el-button icon="el-icon-location" type="primary" @click="beforeFetchAssigninfo">定点信息</el-button>
       <el-button icon="el-icon-check" type="primary" @click="submitPatientInfo"> 保存</el-button>
-      <ReadCard :pat-no="patient.inpatientNo" biztype="01103" @success="afterReadCard"/>
+      <ReadCard :pat-no="patient.inpatientNo" biztype="01103" @success="afterReadCard" />
       <el-button icon="el-icon-top" type="success" @click="checkRegisterDatetime">医保入院登记</el-button>
       <el-button icon="el-icon-bottom" type="danger" @click="beforeCancelRegister">撤销入院登记</el-button>
       <el-button icon="el-icon-s-claim" type="success" @click="xiangMuLuRuRouter">项目录入</el-button>
@@ -75,8 +75,7 @@
         </el-col>
         <el-col :span="2" style="text-align: right">登记日期:</el-col>
         <el-col :span="4">
-          <el-date-picker v-model="patient.ybRegisterDate" placeholder="选择日期时间" style="width: 172px"
-                          type="datetime" @change="formatYbRegisterDate"></el-date-picker>
+          <el-date-picker v-model="patient.ybRegisterDate" placeholder="选择日期时间" style="width: 172px" type="datetime" @change="formatYbRegisterDate"></el-date-picker>
         </el-col>
         <el-col :span="2" style="text-align: right">参保地区:</el-col>
         <el-col :span="4">
@@ -98,8 +97,7 @@
         <el-col :span="2" style="text-align: right">医疗类别:</el-col>
         <el-col :span="4">
           <el-select v-model="patient.medType" clearable placeholder="请选择" @change="handleSelectMedType">
-            <el-option v-for="item in medTypes" :key="item.code" :disabled="item.disabled" :label="item.name"
-                       :value="item.code">
+            <el-option v-for="item in medTypes" :key="item.code" :disabled="item.disabled" :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>
@@ -110,8 +108,7 @@
       <div style="margin-top: 16px">
         <el-tag type="info"> 医保入院诊断(*自费患者无需填写*)</el-tag>
         <el-button circle icon="el-icon-plus" title="添加入院诊断" type="primary" @click="openDiagDialog"></el-button>
-        <el-button :disabled="zyInYbDiags.length === 0" circle icon="el-icon-check" title="保存入院诊断" type="success"
-                   @click="saveYbDiags"></el-button>
+        <el-button :disabled="zyInYbDiags.length === 0" circle icon="el-icon-check" title="保存入院诊断" type="success" @click="saveYbDiags"></el-button>
       </div>
       <div style="margin-top: 8px">
         <el-table :data="zyInYbDiags" height="160" stripe>
@@ -132,14 +129,13 @@
           </el-table-column>
         </el-table>
       </div>
-      <Assignmentinfo v-if="showAssigninfo" :admdvs="patient.admdvs" :social-no="patient.socialNo"
-                      @close="showAssigninfo = false"/>
+      <Assignmentinfo v-if="showAssigninfo" :admdvs="patient.admdvs" :social-no="patient.socialNo" @close="showAssigninfo = false" />
     </el-main>
     <el-dialog v-model="openXmlr" :fullscreen="true" destroy-on-close title="项目录入" @close="openXmlr = false">
-      <Xmlr @closeXmlr="openXmlr = false"/>
+      <Xmlr @closeXmlr="openXmlr = false" />
     </el-dialog>
     <el-dialog v-model="openYiZhuTuiFei" :fullscreen="true" title="医嘱退费">
-      <YiZhuTuiFei :initYiZhu="initYiZhu" @closeYiZhuTuiFei="openYiZhuTuiFei = false"/>
+      <YiZhuTuiFei :initYiZhu="initYiZhu" @closeYiZhuTuiFei="openYiZhuTuiFei = false" />
     </el-dialog>
     <el-dialog v-model="showSearchSpecialDiag" :close-on-click-modal="false" title="医保入院诊断录入" width="80%">
       <el-row :gutter="5">
@@ -161,9 +157,7 @@
               <el-radio label="1">是</el-radio>
             </el-radio-group>
           </span>
-          <el-table :data="cptSpecialDiags.slice((currentPage - 1) * 10, currentPage * 10)" height="400"
-                    highlight-current-row
-                    stripe>
+          <el-table :data="cptSpecialDiags.slice((currentPage - 1) * 10, currentPage * 10)" height="400" highlight-current-row stripe>
             <el-table-column label="老系统编码" prop="oldCode"></el-table-column>
             <el-table-column label="老系统名称" prop="oldName"></el-table-column>
             <el-table-column label="新系统编码" prop="newCode"></el-table-column>
@@ -178,19 +172,17 @@
             </el-table-column>
           </el-table>
           <el-pagination
-              :current-page="currentPage"
-              :page-size="10"
-              :total="cptSpecialDiags.length"
-              layout="total, prev, pager, next, jumper"
-              style="margin-top: 5px"
-              @current-change="handleCurrentChange"
+            :current-page="currentPage"
+            :page-size="10"
+            :total="cptSpecialDiags.length"
+            layout="total, prev, pager, next, jumper"
+            style="margin-top: 5px"
+            @current-change="handleCurrentChange"
           ></el-pagination>
         </el-col>
         <el-col :span="6">
           <el-tag>已选诊断</el-tag>&nbsp;&nbsp;
-          <el-button :disabled="zyInYbDiags.length === 0" icon="el-icon-check" type="success" @click="saveYbDiags">
-            保存入院诊断
-          </el-button>
+          <el-button :disabled="zyInYbDiags.length === 0" icon="el-icon-check" type="success" @click="saveYbDiags"> 保存入院诊断 </el-button>
           <el-table :data="zyInYbDiags" height="400" stripe>
             <el-table-column label="诊断编码" prop="icdCode"></el-table-column>
             <el-table-column label="诊断名称" prop="icdText"></el-table-column>
@@ -253,34 +245,34 @@
       </div>
     </el-dialog>
     <Search
-        v-if="searchParams.showSearch"
-        :med-type="patient.medType"
-        :target="searchParams.target"
-        :title="searchParams.title"
-        @close="searchParams.showSearch = false"
-        @click-item="handleClickSearchItem"
+      v-if="searchParams.showSearch"
+      :med-type="patient.medType"
+      :target="searchParams.target"
+      :title="searchParams.title"
+      @close="searchParams.showSearch = false"
+      @click-item="handleClickSearchItem"
     />
   </el-container>
 </template>
 
 <script>
 import store from '@/store'
-import {computed, onActivated, onDeactivated, onMounted, reactive, ref, watchEffect} from 'vue'
-import {getZyInYbDiags, saveZyInYbDiags, submitSiPatientInfo} from '@/api/yibao/patient'
-import {getAllSpecialDiags} from '@/api/yibao/dictionary'
-import {cptSex} from '@/utils/computed'
-import {admdvs, diagTypes, sexes} from '@/data/index'
-import {nullPatient} from '@/utils/validate'
-import {ElMessage, ElMessageBox} from 'element-plus'
-import {admissRegister, revokeAdmission} from '@/api/medical-insurance/si-inpatient'
-import {formatDatetime, getDatetime} from '@/utils/date'
-import {getGreatestRole} from '@/utils/permission'
-import {clone} from '@/utils/clone'
-import {getMatnTypes, getMedTypesByFlag} from '@/api/medical-insurance/si-dict'
-import {checkRegisterDate, obtainBasicPersonInfo} from '@/api/medical-insurance/si-query'
-import {admissRegistration, cancelInjuryRegister, getPersonBaseinfo} from '@/api/medical-insurance/si-injury'
-import {selectAdmissApply, submitAdmissApply} from '@/api/medical-insurance/si-admiss-apply'
-import {baseinfo} from '@/data/inpatient'
+import { computed, onActivated, onDeactivated, onMounted, reactive, ref, watchEffect } from 'vue'
+import { getZyInYbDiags, saveZyInYbDiags, submitSiPatientInfo } from '@/api/yibao/patient'
+import { getAllSpecialDiags } from '@/api/yibao/dictionary'
+import { cptSex } from '@/utils/computed'
+import { admdvs, diagTypes, sexes } from '@/data/index'
+import { nullPatient } from '@/utils/validate'
+import { ElMessage, ElMessageBox } from 'element-plus'
+import { admissRegister, revokeAdmission } from '@/api/medical-insurance/si-inpatient'
+import { formatDatetime, getDatetime } from '@/utils/date'
+import { getGreatestRole } from '@/utils/permission'
+import { clone } from '@/utils/clone'
+import { getMatnTypes, getMedTypesByFlag } from '@/api/medical-insurance/si-dict'
+import { checkRegisterDate, obtainBasicPersonInfo } from '@/api/medical-insurance/si-query'
+import { admissRegistration, cancelInjuryRegister, getPersonBaseinfo } from '@/api/medical-insurance/si-injury'
+import { selectAdmissApply, submitAdmissApply } from '@/api/medical-insurance/si-admiss-apply'
+import { baseinfo } from '@/data/inpatient'
 import Xmlr from '@/components/inpatient/XiangMuLuRu.vue'
 import YiZhuTuiFei from '@/components/inpatient/YiZhuTuiFei.vue'
 import Assignmentinfo from '@/components/medical-insurance/assigninfo/Index.vue'
@@ -349,10 +341,10 @@ export default {
     const matnTypes = ref([])
 
     const injuryAreas = [
-      {code: 1, name: '长沙市'},
-      {code: 4, name: '长沙县'},
-      {code: 2, name: '望城县'},
-      {code: 3, name: '省直'},
+      { code: 1, name: '长沙市' },
+      { code: 4, name: '长沙县' },
+      { code: 2, name: '望城县' },
+      { code: 3, name: '省直' },
     ]
 
     const singleDiseaseTypeChanged = (val) => {
@@ -475,7 +467,7 @@ export default {
         cancelButtonText: '取消',
         type: 'warning',
       }).then(() => {
-        submitSiPatientInfo({patient: patient.value, diags: zyInYbDiags.value}).then(() => {
+        submitSiPatientInfo({ patient: patient.value, diags: zyInYbDiags.value }).then(() => {
           ElMessage({
             message: '保存患者信息成功。',
             type: 'success',
@@ -528,8 +520,7 @@ export default {
       if (nullPatient()) {
         return
       }
-
-      submitSiPatientInfo({patient: patient.value, diags: zyInYbDiags.value}).then(() => {
+      submitSiPatientInfo({ patient: patient.value, diags: zyInYbDiags.value }).then(() => {
         checkRegisterDate(patient.value.inpatientNo, patient.value.admissTimes).then(() => {
           selectAdmissApply(patient.value).then((res) => {
             if (null === res.status) {
@@ -603,19 +594,18 @@ export default {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
       })
-          .then(() => {
-            submitAdmissApply(admissApply.value).then((res) => {
-              ElMessage({
-                message: res,
-                type: 'success',
-                duration: 2500,
-                showClose: true,
-              })
-              showAdmissApplyForm.value = false
+        .then(() => {
+          submitAdmissApply(admissApply.value).then((res) => {
+            ElMessage({
+              message: res,
+              type: 'success',
+              duration: 2500,
+              showClose: true,
             })
+            showAdmissApplyForm.value = false
           })
-          .catch(() => {
-          })
+        })
+        .catch(() => {})
     }
 
     const psnBaseinfo = ref({})
@@ -663,23 +653,22 @@ export default {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
       })
-          .then(() => {
-            const param = {
-              baseinfo: patient.value,
-              injuryinfo: row,
-            }
-            admissRegistration(param).then((res) => {
-              ElMessage({
-                message: '审核已通过,医保入院登记成功。',
-                type: 'success',
-                duration: 2500,
-                showClose: true,
-              })
-              showPsnInsuinfo.value = false
+        .then(() => {
+          const param = {
+            baseinfo: patient.value,
+            injuryinfo: row,
+          }
+          admissRegistration(param).then((res) => {
+            ElMessage({
+              message: '审核已通过,医保入院登记成功。',
+              type: 'success',
+              duration: 2500,
+              showClose: true,
             })
+            showPsnInsuinfo.value = false
           })
-          .catch(() => {
-          })
+        })
+        .catch(() => {})
     }
 
     const handleClickInsuinfo = (row) => {
@@ -688,23 +677,22 @@ export default {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
       })
-          .then(() => {
-            patient.value.insutype = row.insutype
-            patient.value.psnType = row.psnType
-            patient.value.insuplcAdmdvs = row.insuplcAdmdvs
-            patient.value.empName = row.empName
-            admissRegister(patient.value).then(() => {
-              ElMessage({
-                message: '医保入院登记成功。',
-                type: 'success',
-                duration: 2500,
-                showClose: true,
-              })
-              showPsnInsuinfo.value = false
+        .then(() => {
+          patient.value.insutype = row.insutype
+          patient.value.psnType = row.psnType
+          patient.value.insuplcAdmdvs = row.insuplcAdmdvs
+          patient.value.empName = row.empName
+          admissRegister(patient.value).then(() => {
+            ElMessage({
+              message: '医保入院登记成功。',
+              type: 'success',
+              duration: 2500,
+              showClose: true,
             })
+            showPsnInsuinfo.value = false
           })
-          .catch(() => {
-          })
+        })
+        .catch(() => {})
     }
 
     const beforeCancelRegister = () => {
@@ -713,37 +701,36 @@ export default {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
       })
-          .then(({value}) => {
-            if (!value) {
-              ElMessage({
-                message: '撤销入院登记的原因不能为空!',
-                type: 'warning',
-                duration: 2500,
-                showClose: true,
-              })
-              return
-            }
-            ElMessageBox.confirm('撤销医保入院登记的原因为【' + value + '】确定撤销?', '提示', {
+        .then(({ value }) => {
+          if (!value) {
+            ElMessage({
+              message: '撤销入院登记的原因不能为空!',
               type: 'warning',
-            }).then(() => {
-              patient.value.revokeRemark = value
-              if (injuryMode.value) {
-                cancelInjuryRegister(patient.value).then(() => {
-                  ElMessageBox.alert('撤销入院登记成功。', '提示', {
-                    type: 'success',
-                  })
+              duration: 2500,
+              showClose: true,
+            })
+            return
+          }
+          ElMessageBox.confirm('撤销医保入院登记的原因为【' + value + '】确定撤销?', '提示', {
+            type: 'warning',
+          }).then(() => {
+            patient.value.revokeRemark = value
+            if (injuryMode.value) {
+              cancelInjuryRegister(patient.value).then(() => {
+                ElMessageBox.alert('撤销入院登记成功。', '提示', {
+                  type: 'success',
                 })
-              } else {
-                revokeAdmission(patient.value).then(() => {
-                  ElMessageBox.alert('撤销入院登记成功。', '提示', {
-                    type: 'success',
-                  })
+              })
+            } else {
+              revokeAdmission(patient.value).then(() => {
+                ElMessageBox.alert('撤销入院登记成功。', '提示', {
+                  type: 'success',
                 })
-              }
-            })
-          })
-          .catch(() => {
+              })
+            }
           })
+        })
+        .catch(() => {})
     }
 
     const showAssigninfo = ref(false)

+ 1 - 1
src/views/medical-insurance/outpatient/MzRegister.vue

@@ -80,7 +80,7 @@
         </el-col>
         <el-col :span="15">
           <div style="margin-left: 30px">
-            <div class="receipt-title">湖南泰和医院处方笺</div>
+            <div class="receipt-title">长沙泰和医院处方笺</div>
             <el-divider></el-divider>
             <div class="receipt-head">
               <div>姓名:{{ mzVisit.name }}</div>