Selaa lähdekoodia

优化病案医保诊断填写。

lighter 3 vuotta sitten
vanhempi
commit
b5fa83c4b1

+ 8 - 0
src/api/case-front-sheet/index.js

@@ -86,6 +86,14 @@ export function increaseDiagWeight(code) {
   })
 }
 
+export function selectSiDiagByBaDiag(code) {
+  return request({
+    url: '/caseFrontSheet/selectSiDiagByBaDiag',
+    method: 'get',
+    params: { code },
+  })
+}
+
 export function getYbDiags(bah, times) {
   return request({
     url: '/caseFrontSheet/getYbDiags',

+ 27 - 1
src/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue

@@ -718,7 +718,7 @@
       </el-table>
       <div style="height: 12px"></div>
       <el-tag type="info">病案首页诊断信息</el-tag>
-      <el-table :data="patient.disdiagList" stripe :height="200">
+      <el-table :data="filterDisDiagList" stripe :height="200">
         <el-table-column type="index" label="序号" width="45"></el-table-column>
         <el-table-column prop="code" label="诊断编码"></el-table-column>
         <el-table-column prop="name" label="诊断名称"></el-table-column>
@@ -727,6 +727,11 @@
             {{ filterDismissStatus(scope.row.dismissStatus) }}
           </template>
         </el-table-column>
+        <el-table-column label="操作">
+          <template #default="scope">
+            <el-button icon="Link" title="添加到医保诊断" circle @click="syncronizeWithSiDiagnose(scope.row.code)"></el-button>
+          </template>
+        </el-table-column>
       </el-table>
     </el-dialog>
 
@@ -792,6 +797,7 @@ import {
   getSsfzSurgeriesByIcd,
   increaseDiagWeight,
   signApply,
+  selectSiDiagByBaDiag,
 } from '@/api/case-front-sheet'
 import maleIcon from '@/assets/male-icon.png'
 import femaleIcon from '@/assets/female-icon.png'
@@ -829,6 +835,12 @@ const showGoSearchBtn2 = ref(false)
 const showDel = initShowDel()
 const asideTable = ref(null)
 
+const filterDisDiagList = computed(() => {
+  return patient.value.disdiagList.filter(item => {
+    return item.code && item.name
+  })
+})
+
 const searchPatient = () => {
   if (!inpatientNo.value || inpatientNo.value.trim().length < 1) {
     ElMessage({
@@ -1202,6 +1214,20 @@ const handleSelectSearch = (item) => {
   showSearch.value = false
 }
 
+const syncronizeWithSiDiagnose = (code) => {
+  selectSiDiagByBaDiag(code).then(res => {
+    ybDiag.code = res.code
+    ybDiag.name = res.name
+    ybDiag.cyzg = 0
+    ybDiag.siDiagType = 1
+    if (!ybDiags.value || ybDiags.value.length === 0) {
+      fetchSsfz(res.code, patient.value.bah, patient.value.admissTimes).then((res2) => {
+        diseFamilyGrade.value = res2
+      })
+    }
+  })
+}
+
 const clearLine = (option) => {
   switch (option) {
     case 'hurtReason':