Browse Source

修改主要诊断手术/非手术分值的获取

lighter 3 years ago
parent
commit
5ab5fe3752

+ 2 - 2
src/api/case-front-sheet/index.js

@@ -62,11 +62,11 @@ export function fetchOutPatients(data) {
   })
 }
 
-export function fetchSsfz(code) {
+export function fetchSsfz(code, bah, times) {
   return request({
     url: '/caseFrontSheet/fetchSsfz',
     method: 'get',
-    params: { code },
+    params: { code, bah, times },
   })
 }
 

+ 17 - 25
src/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue

@@ -657,11 +657,8 @@
     </el-dialog>
 
     <el-dialog v-model="showYbDiag" title="医保出院诊断" width="70%" top="30px">
-      <div>
-        <span style="font-weight: bold; color: red">患者治疗方式:</span>
-        <el-select v-model="patient.hasSurgery" @change="hasSurgeryChanged">
-          <el-option v-for="itm in operations" :key="itm.code" :label="itm.name" :value="itm.code"></el-option>
-        </el-select>
+      <div style="width: 100%; height: 30px; line-height: 30px; background: rgb(252, 160, 23); margin-bottom: 8px; border-radius: 8px; padding-left: 8px; color: white">
+        <strong>主要诊断病种分值:{{ diseFamilyGrade }}</strong>
       </div>
       <el-tag type="info">医保诊断录入</el-tag>
       <div style="height: 5px"></div>
@@ -676,15 +673,13 @@
       <el-select v-model="ybDiag.cyzg" style="width: 120px" placeholder="出院转归">
         <el-option v-for="item in cyzgs" :key="item.code" :value="item.code" :label="item.name"></el-option>
       </el-select>
-      &nbsp;&nbsp; (非手术/手术)分值:
-      <span>{{ ssfz.code }} / {{ ssfz.name }}</span>
       <el-divider direction="vertical"></el-divider>
       <el-button type="primary" icon="el-icon-plus" @click="addToYbDiags">添加</el-button>
       <el-button type="success" icon="el-icon-upload" @click="saveYbDiags">保存</el-button>
       <el-table :data="ybDiags" 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>
+        <el-table-column prop="name" label="诊断名称"> </el-table-column>
         <el-table-column prop="siDiagType" label="诊断类别" width="80"></el-table-column>
         <el-table-column prop="admissCond" label="入院病情" width="80"></el-table-column>
         <el-table-column prop="cyzg" label="出院转归" width="80"></el-table-column>
@@ -837,7 +832,7 @@
 
 <script>
 import { yesOrNo, haveOrNot, searchMethods, autopsies, initShowDel, filterDismissStatus, clone } from './common'
-import { computed, onActivated, onMounted, reactive, ref, unref, watchEffect } from 'vue'
+import { computed, onMounted, reactive, ref, unref, watchEffect } from 'vue'
 import store from '@/store'
 import { operations } from '@/data/index'
 import { initLodop, getLodop } from '@/utils/c-lodop'
@@ -1163,11 +1158,11 @@ export default {
       showSearch.value = true
     }
 
+    const diseFamilyGrade = ref(null)
     const ybDiag = reactive({})
     const cyzgs = initCyzgs()
     const admissConds = initAdmissConds()
     const diagTypes = initDiagTypes()
-    const ssfz = reactive({})
     const handleSelectSearch = (item) => {
       if (searchTargetCode.value.startsWith('surgery')) {
         let no = searchTargetCode.value.charAt(searchTargetCode.value.length - 1)
@@ -1215,10 +1210,11 @@ export default {
         ybDiag.code = item.code
         ybDiag.name = item.name
         ybDiag.cyzg = 0
-        fetchSsfz(item.code).then((res) => {
-          ssfz.code = res.code
-          ssfz.name = res.name
-        })
+        if (!ybDiags.value || ybDiags.value.length === 0) {
+          fetchSsfz(item.code, patient.value.bah, patient.value.admissTimes).then((res) => {
+            diseFamilyGrade.value = res
+          })
+        }
       } else if (searchTargetCode.value === 'clinicDiagCode') {
         patient.value.clinicDiagCode = item.code
         patient.value.clinicDiagStr = item.name
@@ -1266,19 +1262,9 @@ export default {
       ybDiags.value.splice(index, 1)
     }
     const saveYbDiags = () => {
-      if (!patient.value.hasSurgery) {
-        ElMessage({
-          message: '请选择患者治疗方式!',
-          type: 'warning',
-          duration: 2500,
-          showClose: true,
-        })
-        return
-      }
       const param = {
         bah: patient.value.bah,
         times: patient.value.admissTimes,
-        operation: patient.value.hasSurgery,
         ybDiags: ybDiags.value,
       }
       doSaveYbDiags(param).then(() => {
@@ -1709,11 +1695,11 @@ export default {
       confirmDateRange,
       showYbDiag,
       openYbDiag,
+      diseFamilyGrade,
       ybDiag,
       cyzgs,
       admissConds,
       diagTypes,
-      ssfz,
       ybDiags,
       addToYbDiags,
       deleteYbDiag,
@@ -1802,6 +1788,12 @@ function hzTypeName(val) {
 </script>
 
 <style scoped>
+:deep(.el-dialog__body) {
+  padding-top: 8px;
+}
+:deep(.el-dialog__header) {
+  padding-bottom: 4px;
+}
 select,
 input {
   outline: none;

+ 19 - 19
vite.config.js

@@ -1,30 +1,30 @@
-import {defineConfig} from 'vite'
+import { defineConfig } from 'vite'
 import legacy from '@vitejs/plugin-legacy'
 import vue from '@vitejs/plugin-vue'
-import {resolve} from 'path'
+import { resolve } from 'path'
 
 const pathResolve = (dir) => {
-    return resolve(__dirname, '.', dir)
+  return resolve(__dirname, '.', dir)
 }
 
 const alias = {
-    '@': pathResolve('src'),
+  '@': pathResolve('src'),
 }
 
 export default defineConfig({
-    resolve: {
-        alias,
-    },
-    plugins: [
-        vue(),
-        legacy({
-            targets: 'chrome 49',
-        }),
-    ],
-    server: {
-        host: '0.0.0.0',
-    },
-    build: {
-        chunkSizeWarningLimit: 1000,
-    },
+  resolve: {
+    alias,
+  },
+  plugins: [
+    vue(),
+    legacy({
+      targets: 'chrome 49',
+    }),
+  ],
+  server: {
+    host: '0.0.0.0',
+  },
+  build: {
+    chunkSizeWarningLimit: 1000,
+  },
 })