Browse Source

门诊项目确认

xiaochan 3 years ago
parent
commit
b1250cf69e
2 changed files with 124 additions and 75 deletions
  1. 30 22
      src/api/zhu-yuan-yi-ji/men-zhen-xiang-mu.js
  2. 94 53
      src/views/med-tec-mod/MenZhenXiangMu.vue

+ 30 - 22
src/api/zhu-yuan-yi-ji/men-zhen-xiang-mu.js

@@ -1,33 +1,41 @@
 import request from '@/utils/request'
 
 export function getMzPatient(patientId, xiangMuZhuangTai, startTime, endTime, dept) {
-  return request({
-    url: '/menZhenXiangMu/getMzPatient',
-    method: 'get',
-    params: { patientId, xiangMuZhuangTai, startTime, endTime, dept },
-  })
+    return request({
+        url: '/menZhenXiangMu/getMzPatient',
+        method: 'get',
+        params: {patientId, xiangMuZhuangTai, startTime, endTime, dept},
+    })
 }
 
-export function getFeiYongXinXi(serialNo, patientId, times) {
-  return request({
-    url: '/menZhenXiangMu/getFeiYongXinXi',
-    method: 'get',
-    params: { serialNo, patientId, times },
-  })
+export function kuaiSuChaZhao(startTime, endTime, execDept) {
+    return request({
+        url: '/menZhenXiangMu/kuaiSuChaZhao',
+        method: 'get',
+        params: {startTime, endTime, execDept},
+    })
 }
 
-export function getMingXi(patientId, times, reqNo) {
-  return request({
-    url: '/menZhenXiangMu/getMingXi',
-    method: 'get',
-    params: { patientId, times, reqNo },
-  })
+export function getFeiYongXinXi(realNo, patientId, times, xiangMuZhuangTai) {
+    return request({
+        url: '/menZhenXiangMu/getFeiYongXinXi',
+        method: 'get',
+        params: {realNo, patientId, times, xiangMuZhuangTai},
+    })
+}
+
+export function getMingXi(data) {
+    return request({
+        url: '/menZhenXiangMu/getMingXi',
+        method: 'post',
+        data,
+    })
 }
 
 export function menZhenXiangMuQuXiaoHuoQueRen(data) {
-  return request({
-    url: '/menZhenXiangMu/queRenOrQuXiao',
-    method: 'post',
-    data,
-  })
+    return request({
+        url: '/menZhenXiangMu/queRenOrQuXiao',
+        method: 'post',
+        data,
+    })
 }

+ 94 - 53
src/views/med-tec-mod/MenZhenXiangMu.vue

@@ -1,6 +1,6 @@
 <template>
   <el-container>
-    <el-header style="margin-top: 10px">
+    <el-header>
       <el-date-picker
           type="daterange"
           v-model="dateRange"
@@ -22,13 +22,14 @@
         </el-option>
       </el-select>
       <el-button type="primary" icon="el-icon-search" @click="getMzPatientClick"> 查询</el-button>
+      <el-button type="primary" icon="el-icon-search" @click="kuaiSuChaZhaoClick "> 快速查找</el-button>
+      <el-button type="warning" icon="el-icon-search" @click="chaoZuoZhiNanDialog = true"> 操作指南</el-button>
       <el-button type="success" icon="el-icon-upload" @click="baoCunClick"> 保存</el-button>
+      <br>
       <el-tag effect="dark" size="medium">患者姓名: {{ patient.name }}</el-tag>
       <el-tag effect="dark" type="warning" size="medium">性别:{{ cptSex(patient.sex) }}</el-tag>
       <el-tag effect="dark" size="medium">出生日期: {{ patient.birthDay }}</el-tag>
       <el-tag effect="dark" type="warning" size="medium">诊疗卡: {{ patient.icCardNo }}</el-tag>
-      <el-alert effect="dark" title="点击表格中绿色的按钮就可以查看详细的信息,点击任意位置即可消失小框框或再次点击按钮。哔哩哔哩-(゜-゜)つロ乾杯~"
-                type="success"></el-alert>
     </el-header>
     <el-container>
       <el-main>
@@ -38,12 +39,12 @@
                       @cell-click="getFeiYongXinXiClick">
               <el-table-column label="收费信息">
                 <el-table-column label="缴费日期" prop="chargeDate" width="80"></el-table-column>
-                <el-table-column label="流水号" prop="serialNo">
+                <el-table-column label="流水号">
                   <template #default="scope">
                     <el-popover placement="right" :width="800" trigger="click">
                       <template #reference>
                         <el-button @click="getFeiYongXinXiClick(scope.row)" type="success">{{
-                            scope.row.serialNo
+                            scope.row.realNo
                           }}
                         </el-button>
                       </template>
@@ -54,9 +55,9 @@
                               <span v-html="confirmFlag(scope.row.confirmFlag)"></span>
                             </template>
                           </el-table-column>
-                          <el-table-column label="项目编码" prop="chargeCode"></el-table-column>
+                          <el-table-column label="项目编码" prop="chargeItemCode"></el-table-column>
                           <el-table-column label="项目" prop="chargeName"></el-table-column>
-                          <el-table-column label="金额" prop="je"></el-table-column>
+                          <el-table-column label="金额" prop="chargeFee"></el-table-column>
                           <el-table-column label="确认时间" prop="confirmTime" width="80"></el-table-column>
                           <el-table-column label="确认人" prop="confirmIdName"></el-table-column>
                           <el-table-column label="执行科室" prop="execDeptName"></el-table-column>
@@ -84,9 +85,9 @@
                     </el-radio-group>
                   </template>
                 </el-table-column>
-                <el-table-column label="项目编码" prop="chargeCode"></el-table-column>
+                <el-table-column label="项目编码" prop="chargeItemCode"></el-table-column>
                 <el-table-column label="项目" prop="chargeName"></el-table-column>
-                <el-table-column label="金额" prop="je"></el-table-column>
+                <el-table-column label="金额" prop="chargeFee"></el-table-column>
                 <el-table-column label="确认时间" prop="confirmTime" width="80"></el-table-column>
                 <el-table-column label="确认人" prop="confirmIdName"></el-table-column>
                 <el-table-column label="执行科室" prop="execDeptName"></el-table-column>
@@ -98,9 +99,9 @@
                       </template>
                       <el-table :data="danGeXingXi" highlight-current-row stripe>
                         <el-table-column label="明细">
-                          <el-table-column label="项目编码" prop="chargeCode"></el-table-column>
+                          <el-table-column label="项目编码" prop="chargeItemCode"></el-table-column>
                           <el-table-column label="项目" prop="chargeName"></el-table-column>
-                          <el-table-column label="金额" prop="je"></el-table-column>
+                          <el-table-column label="金额" prop="chargeFee"></el-table-column>
                         </el-table-column>
                       </el-table>
                     </el-popover>
@@ -113,6 +114,37 @@
       </el-main>
     </el-container>
   </el-container>
+  <el-dialog v-model="kuaiSuChaZhaoDialog" title="点击表格中的姓名即可">
+    <el-table
+        :data="kuaiSuChaZhaoData.list.slice((kuaiSuChaZhaoData.currentPage - 1 ) *
+        kuaiSuChaZhaoData.pageSize,kuaiSuChaZhaoData.pageSize * kuaiSuChaZhaoData.currentPage)"
+        @cell-click="chaZhaoTable"
+        :height="windowsHeight / 2" highlight-current-row stripe>
+      <el-table-column label="姓名" prop="name"></el-table-column>
+      <el-table-column label="门诊号" prop="patientId"></el-table-column>
+    </el-table>
+    <el-pagination
+        background
+        :current-page="kuaiSuChaZhaoData.currentPage"
+        :page-size="kuaiSuChaZhaoData.pageSize"
+        layout="total,  prev, pager, next, jumper"
+        :total="kuaiSuChaZhaoData.list.length"
+        @current-change="kuaiSuChaZhaoCurrent"
+    >
+    </el-pagination>
+  </el-dialog>
+  <el-dialog v-model="chaoZuoZhiNanDialog" title="操作指南">
+    一、查询<br><br>
+    1、选择好时间以及患者的门诊号(门诊号或者诊疗卡号),在选择是否查看已经确认的还是未确认的 点击查询即可。<br>
+    2、快速查询,只针对医生开了执行科室为本科室的才有用,没有带执行科室的请手动输入门诊号查询,是根据日期来查询的。<br>
+    3、如果感觉有点卡的话那么就日期范围选择短一些<br><br>
+    二、数据<br><br>
+    1、点击右边侧边栏的表格,开在本科室的项目就会显示在左边,点击流水号,能看到这个费用的明细<br>
+    2、点击中间的表格,选择您需要进行的操作。<br>
+    3、点击申请号,可也看见套餐的明细。<br><br>
+    三、保存<br><br>
+    1、在选择完数据后点击保存即可。 <br>
+  </el-dialog>
 </template>
 <script>
 import {shortcuts} from '@/data/shortcuts'
@@ -122,8 +154,8 @@ import {
   getMzPatient,
   getFeiYongXinXi,
   getMingXi,
-  menZhenXiangMuQuXiaoHuoQueRen
-} from '@/api/zhu-yuan-yi-ji/men-zhen-xiang-mu.js'
+  menZhenXiangMuQuXiaoHuoQueRen, kuaiSuChaZhao
+} from '../../api/zhu-yuan-yi-ji/men-zhen-xiang-mu.js'
 import {getDateRangeFormatDate} from '@/utils/date'
 import store from '@/store'
 import {clone} from '@/utils/clone.js'
@@ -134,7 +166,7 @@ export default {
     const windows = store.state.app.windowSize
     const windowsHeight = windows.h
     const dateRange = ref(shortcuts[0].value)
-    const patientId = ref('') //550436-4
+    const patientId = ref('12117-4') //
     const xiangMuZhuangTai = ref(0)
     const chargeDate = ref('')
 
@@ -169,16 +201,10 @@ export default {
     const lingShiBaoCunJiaoFeiMingXi = ref({})
 
     const getFeiYongXinXiClick = (val) => {
-      if (
-          lingShiBaoCunJiaoFeiMingXi.value.serialNo === val.serialNo &&
-          lingShiBaoCunJiaoFeiMingXi.value.patientId === val.patientId &&
-          lingShiBaoCunJiaoFeiMingXi.value.times === val.times
-      ) {
-        return
-      }
       chargeDate.value = val.chargeDate
-      getFeiYongXinXi(val.serialNo, val.patientId, val.times).then((res) => {
+      getFeiYongXinXi(val.realNo, val.patientId, val.times, xiangMuZhuangTai.value).then((res) => {
         keQueRenData.value = []
+        console.log(res)
         feiYongData.value = res
         lingShiBaoCunJiaoFeiMingXi.value = clone(val)
         let dept = store.state.user.info.deptCode
@@ -188,39 +214,24 @@ export default {
           }
           return
         }
-
-        if (xiangMuZhuangTai.value === 0) {
-          for (let i = 0; i < feiYongData.value.length; i++) {
-            if (feiYongData.value[i].reqNo > 0 || typeof feiYongData.value[i].execDept !== 'undefined') {
-              if ((feiYongData.value[i].execDept === dept && feiYongData.value[i].confirmFlag !== 1) || execDept(feiYongData.value[i].execDept)) {
-                keQueRenData.value.push(clone(feiYongData.value[i]))
-              }
-            }
+        feiYongData.value.forEach(item => {
+          if ((item.execDept === dept || typeof item.execDept === 'undefined')) {
+            keQueRenData.value.push(item)
           }
-        } else {
-          for (let i = 0; i < feiYongData.value.length; i++) {
-            if (feiYongData.value[i].execDept === dept && feiYongData.value[i].confirmFlag === 1) {
-              keQueRenData.value.push(clone(feiYongData.value[i]))
-            }
-          }
-        }
+        })
       })
     }
 
-    function execDept(val) {
-      return val === '' || val === null || typeof val === 'undefined'
-    }
-
     const lingShiHuoQuMingXi = ref({})
 
     const getMingXiClick = (val) => {
-      if (lingShiHuoQuMingXi.value.patientId === val.patientId && lingShiHuoQuMingXi.value.times === val.times && lingShiHuoQuMingXi.value.reqNo === val.reqNo) {
-        return
+      lingShiHuoQuMingXi.value = val
+      if (typeof val.list !== 'undefined') {
+        danGeXingXi.value = val.list
+        val.list.forEach(item => {
+          item.chargeFee = item.drugWin * item.quantity * item.unitPrice
+        })
       }
-      getMingXi(val.patientId, val.times, val.reqNo).then((res) => {
-        lingShiHuoQuMingXi.value = val
-        danGeXingXi.value = res
-      })
     }
 
     const baoCunClick = () => {
@@ -230,13 +241,11 @@ export default {
           .then(() => {
             let baoCun = {
               list: keQueRenData.value,
-              xiangMuZhuangTai: xiangMuZhuangTai.value,
-              name: patient.value.name,
-              execDept: store.state.user.info.deptCode,
-              chargeDateString: chargeDate.value,
+              realNo: lingShiBaoCunJiaoFeiMingXi.value.realNo,
+              patientId: lingShiBaoCunJiaoFeiMingXi.value.patientId,
+              times: lingShiBaoCunJiaoFeiMingXi.value.times,
+              execDept: store.state.user.info.deptCode
             }
-            console.log(baoCun)
-
             menZhenXiangMuQuXiaoHuoQueRen(baoCun).then((res) => {
               keQueRenData.value = []
             })
@@ -245,6 +254,32 @@ export default {
           })
     }
 
+    const kuaiSuChaZhaoDialog = ref(false)
+    const kuaiSuChaZhaoData = ref({
+      currentPage: 1,
+      pageSize: 10,
+      list: []
+    })
+    const chaoZuoZhiNanDialog = ref(false)
+
+    const kuaiSuChaZhaoClick = () => {
+      let dateR = getDateRangeFormatDate(dateRange.value)
+      kuaiSuChaZhao(dateR.startTime, dateR.endTime, store.state.user.info.deptCode).then((res) => {
+        kuaiSuChaZhaoData.value.list = res
+        kuaiSuChaZhaoDialog.value = true
+        console.log(res)
+      })
+    }
+
+    const kuaiSuChaZhaoCurrent = (val) => {
+      kuaiSuChaZhaoData.value.currentPage = val
+    }
+
+    const chaZhaoTable = (val) => {
+      patientId.value = val.patientId
+      getMzPatientClick()
+    }
+
     return {
       shortcuts,
       patientId,
@@ -266,6 +301,12 @@ export default {
       danGeXingXi,
       baoCunClick,
       confirmFlag,
+      kuaiSuChaZhaoClick,
+      kuaiSuChaZhaoDialog,
+      chaoZuoZhiNanDialog,
+      kuaiSuChaZhaoData,
+      kuaiSuChaZhaoCurrent,
+      chaZhaoTable,
     }
   },
 }