Kaynağa Gözat

优化修改

xiaochan 2 yıl önce
ebeveyn
işleme
7723cc68ae

+ 2 - 1
src/components/pat-info-list/PatInfomationDialog.vue

@@ -11,7 +11,8 @@
                                               :sheet-data="sheetData"/>
             </el-tab-pane>
             <el-tab-pane label="医嘱">
-                <emr-order-list :pat-no="props.patNo" :times="props.times"
+                <emr-order-list :pat-no="props.patNo"
+                                :times="props.times"
                                 :in-the-hospital="props.leaveHospital === 1"/>
             </el-tab-pane>
             <el-tab-pane label="清单">

+ 0 - 22
src/components/xiao-chan/course/XcCourse.vue

@@ -1,22 +0,0 @@
-<template>
-  <slot/>
-</template>
-
-<script setup name='XcCourse'>
-const props = defineProps({
-  name: ''
-})
-
-onMounted(async () => {
-  await nextTick()
-  if (!!useSlots().default) {
-    console.log(useSlots());
-  }
-
-})
-
-</script>
-
-<style scoped lang="scss">
-
-</style>

+ 6 - 2
src/components/zhu-yuan-yi-sheng/emr/auxiliary-tools/EmrOrderList.vue

@@ -25,8 +25,6 @@
             </template>
         </el-auto-resizer>
     </div>
-
-
 </template>
 
 <script setup name='EmrOrderList' lang="tsx">
@@ -83,6 +81,12 @@ const columns: XcColumn[] = [
     {
         key: 'supplyCodeName', title: '给药方式', width: 90
     },
+    {
+        key: 'deptName', title: '申请科室', width: 90,
+    },
+    {
+        key: 'execUnitName', title: '执行科室', width: 90,
+    },
     {
         title: '确认',
         children: [

+ 7 - 19
src/components/zhu-yuan-yi-sheng/jian-cha-shen-qing/aside/CheckApplicationHistory.vue

@@ -1,7 +1,6 @@
 <template>
-    <el-table :data="props.data.data"
-              :height="getWindowSize.h  - (yzHeaderSize) - 100 "
-              highlight-current-row
+    <xc-table :local-data="props.data"
+              :final-height="getWindowSize.h  - (yzHeaderSize) - 100 "
               @row-click="dianJiaJianChaXiangQing">
         <el-table-column label="项目名称" prop="orderName" show-overflow-tooltip></el-table-column>
         <el-table-column label="接受" prop="receiveFlagName" show-overflow-tooltip></el-table-column>
@@ -12,19 +11,13 @@
         </el-table-column>
         <el-table-column label="操作" width="120">
             <template #default="scope">
-                <el-button v-if="!props.data.delFlag" icon="Delete" type="danger"
+                <el-button icon="Delete"
+                           type="danger"
                            @click.stop="dianJiShanChu(scope.row, scope.$index)"> 删除
                 </el-button>
             </template>
         </el-table-column>
-    </el-table>
-    <el-pagination
-            :current-page="props.data.currentPage"
-            :page-size="props.data.pageSize"
-            :pager-count="7"
-            :total="props.data.total"
-            layout="total, prev, pager, next"
-            @current-change="handleCurrentChange"/>
+    </xc-table>
 </template>
 
 <script setup name='CheckApplicationHistory'>
@@ -35,18 +28,17 @@ import {ElMessageBox} from "element-plus";
 import {getFormatDatetime} from '@/utils/date'
 import {getWindowSize} from "@/utils/window-size";
 import {yzHeaderSize} from "@/views/hospitalization/zhu-yuan-yi-sheng/public-js/zhu-yuan-yi-sheng";
+import XcTable from "@/components/xiao-chan/xc-table/XcTable.vue";
 
 const props = defineProps({
     data: Object,
     returnData: Function,
-    currentChange: Function
 })
 
 const windowSize = computed(() => {
     return store.state.app.windowSize
 })
 
-
 const dianJiaJianChaXiangQing = (row) => {
     props.returnData(row)
 }
@@ -55,17 +47,13 @@ const dianJiShanChu = (row, index) => {
     ElMessageBox.confirm(`您确定要删除【${row.orderName}】吗?`, '提示')
         .then(() => {
             shanChuJianChaJianYan(row.reqNo, row.inpatientNo, row.admissTimes).then((res) => {
-                props.data.data.splice(index, 1)
+                props.data.splice(index, 1)
             })
         })
         .catch(() => {
         })
 }
 
-const handleCurrentChange = (val) => {
-    props.currentChange(val)
-}
-
 </script>
 
 <style scoped lang="scss">

+ 1 - 1
src/components/zhu-yuan-yi-sheng/yi-zhu-lu-ru/table/YzTableV2.vue

@@ -118,7 +118,7 @@ const header = [
     {code: 'execUnitName', name: '执行科室', width: 80},
     {
         code: 'drugQuan', name: '领量', cellRenderer: ({data}) => {
-            return h('span', null, nullToEmpty(data.drugQuan) + nullToEmpty(data.drugQuanName))
+            return h('span', null, nullToEmpty(data.drugQuan) + nullToEmpty(data.miniUnitName))
         },
         width: 30
     },

+ 2 - 6
src/components/zhu-yuan-yi-sheng/yi-zhu-lu-ru/yz-edit/YzEditor.vue

@@ -331,7 +331,6 @@ const searchOrders = (val) => {
 const tiShiBiaoTi = ref([])
 // 填充数据
 const xuanZhongFeiYong = async (row, laiyuan = 1) => {
-    console.log(row)
     if (row.serial === '0000' && row.groupNo === '0000') {
         props.openGroupOrderTemplate(row.orderCode);
         return;
@@ -363,7 +362,6 @@ const xuanZhongFeiYong = async (row, laiyuan = 1) => {
         try {
             let queryKey = row.orderCode + '_' + row.serial + '_' + props.patientInfo.zkWard + '_' + queryParam.value.groupNo
             let res = await huoQuFeiYongXinXi(queryKey)
-            console.log(res)
             // 加载药品计量
             yaoPinJiLiangData.value = res.yaoPingJiLiang
             if (newData) {
@@ -373,11 +371,9 @@ const xuanZhongFeiYong = async (row, laiyuan = 1) => {
                 yiZhuData.value.kjywFlag = res.data.kjywFlag
                 // 提示信息
                 tiShiBiaoTi.value = res.prompt
+
                 // 最小单位名称
-                if (row.serial === '01') {
-                    yiZhuData.value.miniUnit = res.data.miniUnit;
-                    yiZhuData.value.miniUnitName = res.data.miniUnitName;
-                } else {
+                if (laiyuan === 1) {
                     yiZhuData.value.miniUnit = res.data.packUnit;
                     yiZhuData.value.miniUnitName = res.data.packUnitName;
                 }

+ 1 - 3
src/views/hospitalization/zhu-yuan-yi-sheng/electronic-medical-record/emr-editor/EmrMain.vue

@@ -844,9 +844,7 @@ const objectValuesCannotBeNull = (object) => {
 
 // 前端打印
 const frontEndPrinting = () => {
-    if (pageIsZoom()) {
-        return
-    }
+    pageIsZoom()
     waitForLoadingToComplete()
     editor.execute("print", {
         value: {

+ 13 - 36
src/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JianChaShenQing.vue

@@ -10,7 +10,7 @@
                 start-placeholder="申请开始"
                 style="width: 220px"
                 type="daterange"/>
-        <el-button icon="Search" type="primary" @click="dianJiChaXunHuanZheJianCha(0)">查询</el-button>
+        <el-button icon="Search" type="primary" @click="dianJiChaXunHuanZheJianCha">查询</el-button>
         <el-divider direction="vertical"></el-divider>
         <el-button icon="Check" type="success" @click="saveData">保存</el-button>
         <el-button icon="Check" type="primary" @click="saveTemplate"
@@ -33,8 +33,7 @@
                     </el-tab-pane>
                     <el-tab-pane :name="1" label="历史记录">
                         <check-application-history :data="jianChaShuJu"
-                                                   :returnData="dianJiaJianChaXiangQing"
-                                                   :current-change="handleCurrentChange"/>
+                                                   :returnData="dianJiaJianChaXiangQing"/>
                     </el-tab-pane>
                 </el-tabs>
             </div>
@@ -163,12 +162,7 @@ const windowSize = computed(() => {
 
 const orderName = ref('')
 const dateRange = ref(null)
-const jianChaShuJu = ref({
-    currentPage: 1,
-    total: 0,
-    pageSize: 20,
-    data: [],
-})
+const jianChaShuJu = ref([])
 const asideTabs = ref(0)
 const mainTabs = ref(3)
 
@@ -180,35 +174,20 @@ const jianChaJieGuoRef = ref()
  * 点击查询患者检查
  * @param total
  */
-const dianJiChaXunHuanZheJianCha = (total) => {
-    let dateS = getDateRangeFormatDate(dateRange.value)
+const dianJiChaXunHuanZheJianCha = () => {
+    let {startTime, endTime} = getDateRangeFormatDate(dateRange.value)
     let param = {
         patNo: huanZheXinXi.value.inpatientNo,
         times: huanZheXinXi.value.admissTimes,
         orderName: orderName.value,
-        total: total,
-        currentPage: jianChaShuJu.value.currentPage,
-        pageSize: jianChaShuJu.value.pageSize,
-        startTime: dateS.startTime,
-        endTime: dateS.endTime,
+        startTime: startTime,
+        endTime: endTime,
     }
     huoQuJianChaShenQing(param).then((res) => {
-        if (total === 0) {
-            jianChaShuJu.value.total = res.total
-        }
-        asideTabs.value = 1
-        jianChaShuJu.value.data = res.records
+        jianChaShuJu.value = res
     })
 }
 
-/**
- * 检查申请单分页
- * @param val
- */
-const handleCurrentChange = (val) => {
-    jianChaShuJu.value.currentPage = val
-    dianJiChaXunHuanZheJianCha(jianChaShuJu.value.total)
-}
 
 /**
  * 点击查看检查申请单详情
@@ -288,7 +267,7 @@ function baoCunShuJu() {
         baoCunJianYanJianCha(data)
             .then((res) => {
                 addCheckList.value = []
-                dianJiChaXunHuanZheJianCha(0)
+                dianJiChaXunHuanZheJianCha()
                 mainTabs.value = 0
                 asideTabs.value = 1
             })
@@ -347,18 +326,16 @@ const fillData = (i, data) => {
     editor.value.dialog = false
 }
 
-onActivated(() => {
-    dianJiChaXunHuanZheJianCha(0)
-})
-
-
 watch(
     () => huanZheXinXi.value,
     () => {
-        dianJiChaXunHuanZheJianCha(0)
+        dianJiChaXunHuanZheJianCha()
+    }, {
+        immediate: true
     }
 )
 
+
 </script>
 
 <style scoped lang="scss">

+ 12 - 43
src/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JianYanShenQing.vue

@@ -14,7 +14,7 @@
                 type="daterange"
         ></el-date-picker>
         <el-divider direction="vertical"></el-divider>
-        <el-button icon="Search" type="primary" @click="dianJiChaXunJianYan(0)">查询</el-button>
+        <el-button icon="Search" type="primary" @click="dianJiChaXunJianYan">查询</el-button>
         <el-button icon="View" type="primary" @click="dianJiChaKanHuanZheJianYan">查看患者检验</el-button>
         检验搜索查询:
         <xc-combo-grid :query-data-func="getJyItem" @rowClick="searchAdd">
@@ -31,7 +31,7 @@
                 <tian-jia-jian-cha-jian-yan :jian-cha="false"/>
             </el-tab-pane>
             <el-tab-pane :name="0" label="历史记录">
-                <el-table :data="jianYanShuJu" :height="getWindowSize.h - (yzHeaderSize + 75) ">
+                <xc-table :local-data="jianYanShuJu" :final-height="getWindowSize.h - (yzHeaderSize + 75) ">
                     <el-table-column label="医嘱号" prop="actOrderNo"></el-table-column>
                     <el-table-column label="项目名称" prop="groupName"></el-table-column>
                     <el-table-column label="执行科室" prop="execDeptName"></el-table-column>
@@ -66,16 +66,7 @@
                             </el-button>
                         </template>
                     </el-table-column>
-                </el-table>
-                <el-pagination
-                        :current-page="chaXunJianYanTiaoJian.currentPage"
-                        :page-size="chaXunJianYanTiaoJian.pageSize"
-                        :page-sizes="[10, 20, 30, 40]"
-                        :total="chaXunJianYanTiaoJian.currentPage"
-                        layout="total, sizes, prev, pager, next, jumper"
-                        @size-change="jianYanTiaoShu"
-                        @current-change="jianYanFenYe">
-                </el-pagination>
+                </xc-table>
             </el-tab-pane>
         </el-tabs>
     </div>
@@ -105,6 +96,7 @@ import TianJiaJianChaJianYan from "@/components/zhu-yuan-yi-sheng/jian-cha-shen-
 import XcComboGrid from "@/components/xiao-chan/combo-grid/XcComboGrid.vue";
 import {xcMessage} from "@/utils/xiaochan-element-plus";
 import {getWindowSize} from "@/utils/window-size";
+import XcTable from "@/components/xiao-chan/xc-table/XcTable.vue";
 
 
 const dateRange = ref(null)
@@ -116,45 +108,21 @@ const chaXunJianYanTiaoJian = ref({
     orderName: '',
     startTime: '',
     endTime: '',
-    currentPage: 1,
-    pageSize: 20,
-    total: 0,
     patNo: '',
     times: '',
 })
 
-const dianJiChaXunJianYan = (val) => {
-    chaXunJianYanTiaoJian.value.total = val
-    let dateS = getDateRangeFormatDate(dateRange.value)
-    chaXunJianYanTiaoJian.value.startTime = dateS.startTime
-    chaXunJianYanTiaoJian.value.endTime = dateS.endTime
+const dianJiChaXunJianYan = () => {
+    let {startTime, endTime} = getDateRangeFormatDate(dateRange.value)
+    chaXunJianYanTiaoJian.value.startTime = startTime
+    chaXunJianYanTiaoJian.value.endTime = endTime
     chaXunJianYanTiaoJian.value.patNo = huanZheXinXi.value.inpatientNo
     chaXunJianYanTiaoJian.value.times = huanZheXinXi.value.admissTimes
     huoQuJianYan(chaXunJianYanTiaoJian.value).then((res) => {
-        if (val === 0) {
-            chaXunJianYanTiaoJian.value.total = res.total
-        }
-        jianYanShuJu.value = res.records
+        jianYanShuJu.value = res
     })
 }
 
-const jianYanTiaoShu = (val) => {
-    chaXunJianYanTiaoJian.value.currentPage = 1
-    chaXunJianYanTiaoJian.value.pageSize = val
-    dianJiChaXunJianYan(0)
-}
-
-const jianYanFenYe = (val) => {
-    chaXunJianYanTiaoJian.value.currentPage = val
-    dianJiChaXunJianYan(chaXunJianYanTiaoJian.value.total)
-}
-
-const querySearchAsync = (val, cb) => {
-    if (youWuXuanZheHuanZhe()) return
-    huoQuJianYanJianChaMing(val, huanZheXinXi.value.inpatientNo, huanZheXinXi.value.admissTimes, huanZheXinXi.value.bedNo, '2').then((res) => {
-        cb(res)
-    })
-}
 
 let feeDetailsData = $ref([])
 
@@ -218,8 +186,9 @@ const searchAdd = async (val) => {
 watch(
     () => huanZheXinXi.value,
     () => {
-        dianJiChaXunJianYan(0)
-    }
+        dianJiChaXunJianYan()
+    },
+    {immediate: true}
 )
 </script>
 

+ 1 - 0
src/views/hospitalization/zhu-yuan-yi-sheng/public-js/order-data.js

@@ -0,0 +1 @@
+/*在这里加载患者的一些数据*/

+ 1 - 0
src/views/hospitalization/zhu-yuan-yi-sheng/public-js/zhu-yuan-yi-sheng.js

@@ -321,6 +321,7 @@ export const clickOnThePatient = (patNo) => {
 
     if (stringIsBlank(huanZheXinXi.value.inpatientNo)) {
         return getPatientInfo(patNo).then((res) => {
+            clearAssociate()
             huanZheXinXi.value = res
         });
     } else {

+ 2 - 20
src/views/hospitalization/zhu-yuan-yi-sheng/shou-shu-shen-qing/ShouShuShenQing.vue

@@ -1,8 +1,5 @@
 <template>
     <div style="height: 30px">
-        <!--        检查名称:-->
-        <!--        <el-autocomplete v-model="orderName" :fetch-suggestions="querySearchAsync" clearable style="width: 220px"-->
-        <!--                         @keyup.enter="dianJiChaXunShouShu(0)"></el-autocomplete>-->
         申请时间:
         <el-date-picker
                 v-model="dateRange"
@@ -137,20 +134,6 @@ const dianJiChaXunShouShu = (val) => {
     })
 }
 
-/**
- * 查询手术名称
- * @param val
- * @param cd
- */
-const querySearchAsync = (val, cd) => {
-    if (youWuXuanZheHuanZhe()) return
-    if (val.length > 1) {
-        huoQuShouShuMingCheng(huanZheXinXi.value.inpatientNo, huanZheXinXi.value.admissTimes, val).then((res) => {
-            cd(res)
-        })
-    }
-}
-
 /**
  * 点击分页
  * @param val
@@ -187,7 +170,6 @@ const clickSave = async () => {
         } else {
             return
         }
-
     }
 
     xinZengShouShuShenQing(data).then((res) => {
@@ -200,7 +182,6 @@ const clickSave = async () => {
         }
     })
 
-
 }
 
 const removeTab = (targetName) => {
@@ -238,7 +219,8 @@ watch(
     () => huanZheXinXi.value,
     () => {
         dianJiChaXunShouShu(0)
-    }
+    },
+    {immediate: true}
 )
 
 const dianJiXinZhenShouShu = async () => {