Browse Source

电子病历问题

xiaochan 2 years ago
parent
commit
c3b63b0ee8

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

@@ -31,10 +31,11 @@ import {
 } from "@/views/hospitalization/zhu-yuan-yi-sheng/public-js/zhu-yuan-yi-sheng";
 import sleep from "@/utils/sleep";
 import RightClickMenu from "@/components/menu-item/RightClickMenu.vue";
-import {nullToEmpty} from "@/utils/public";
+import {isDev, nullToEmpty} from "@/utils/public";
 import {ElIcon} from "element-plus";
 import {DocumentCopy} from "@element-plus/icons-vue";
 import {updateOrderInstruction} from "@/api/zhu-yuan-yi-sheng/yi-zhu-lu-ru";
+import {BizException, ExceptionEnum} from "@/utils/BizException";
 
 const emits = defineEmits(['rowClick', 'clickAssociate', 'voidOrders'])
 
@@ -338,7 +339,8 @@ const opt = [
         drugManual.value.open(data.orderCode, data.serial);
       }
     }
-  }, {
+  },
+  {
     name: '停止医嘱', click: (data, index) => {
       if (data.$selected) {
         cancelStopTime({data, index})

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

@@ -23,6 +23,7 @@
       <outpatient-appointments/>
       <one-click-stop/>
       <doctor-authorization/>
+      <button @click="orderQuashClick">申请撤销医嘱</button>
     </div>
     <div class="editing_area"
          :style="{color: isEdit ? '#0014fc' : ''}">
@@ -308,6 +309,7 @@ import OneClickStop from "@/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru
 import DoctorAuthorization
   from "@/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/components/DoctorAuthorization.vue";
 import sleep from "@/utils/sleep";
+import {isDev} from "@/utils/public";
 
 
 const props = defineProps({
@@ -967,6 +969,13 @@ const supplyDisabled = () => {
   return yiZhuData.value.serial === '00';
 }
 
+const orderQuashClick = () => {
+  if (isDev){
+    yzMitt.emit('openOrderQuash')
+  }
+
+}
+
 onMounted(() => {
 
   yzMitt.on('copy', copy)

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

@@ -1020,12 +1020,10 @@ const positioningTime = (val, code) => {
  * @param code 片段编码
  */
 const clickSnippet = async ({content, styles, code}) => {
-
   // 为了防止上一次插入还没有完成,就再次插入了
   if (fragmentsCannotBeInserted) {
     BizException(ExceptionEnum.MESSAGE_ERROR, '请勿点击过快。')
   }
-
   let temp = copyEnum[code]
   let data = patientData
   if (temp) {
@@ -1139,7 +1137,7 @@ const setEditorModeFun = () => {
     // 如果不是首次病程记录就需要执行下面的代码
     if (!isCourse()) {
       // 入院病历有点特殊,任何人都可以写补充诊断
-      if (categoryCode === 入院病历 && isDev) {
+      if (categoryCode === 入院病历) {
         let EMR = editor.getScriptRuntime().EMR
         let emrDoc = EMR.getDocument()
         let areas = emrDoc.getNodesByCode(null, 'area')
@@ -1158,7 +1156,6 @@ const setEditorModeFun = () => {
         } else {
           generalMedicalRecords()
         }
-
       } else {
         generalMedicalRecords()
       }
@@ -1202,6 +1199,7 @@ const courseSegmentLocking = async () => {
   if (!isCourse()) {
     return
   }
+  editor.setEditorMode('free')
   if (documentId) {
     let courseTitles = [];
     let loginUserCode = userData.code;

+ 21 - 2
src/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/YiZhuLuRu.vue

@@ -66,12 +66,11 @@
     <AllergenEntry v-if="allergen.dialog"
                    :pat-no="huanZheXinXi.inpatientNo"
                    @close="allergen.dialog = false"/>
-
     <order-progress ref="orderProgressRef"/>
-
     <!--  合理用药窗口  -->
     <rational-drug-use-window ref="reasonableRef" @submit="confirmOrder"/>
     <fee-table/>
+    <order-quash-dialog v-if="orderQuash.dialog" :data="orderQuash.data"/>
   </div>
 </template>
 
@@ -114,6 +113,8 @@ import YzTableV2 from "@/components/zhu-yuan-yi-sheng/yi-zhu-lu-ru/table/YzTable
 import {clone} from "@/utils/clone";
 import BloodSugar from "@/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/components/BloodSugar.vue";
 import FeeTable from "@/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/components/FeeTable.vue";
+import OrderQuashDialog from "@/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/components/OrderQuashDialog.vue";
+import XEUtils from 'xe-utils'
 
 const windowSize = computed(() => {
   return store.state.app.windowSize
@@ -496,7 +497,25 @@ const batchDeleteOrdersClick = () => {
   })
 }
 
+const orderQuash = ref({
+  dialog: false,
+  data: []
+})
+
 onMounted(async () => {
+  yzMitt.on('openOrderQuash', () => {
+    let data = yzMitt.emit('getSelectedData')
+    if (XEUtils.isEmpty(data)) {
+      orderQuash.value = {
+        dialog: true,
+        data
+      }
+    } else {
+      xcMessage.error('请选择要撤销的医嘱')
+    }
+
+  })
+
   getSupplyType().then(res => {
     geiYaoFangShiData.value = res
   })

+ 22 - 0
src/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/components/OrderQuashDialog.vue

@@ -0,0 +1,22 @@
+<script setup name='OrderQuashDialog'>
+const {data} = defineProps({
+  data: Object
+})
+
+const dialog = ref(true)
+
+onMounted(() => {
+  console.log(data)
+})
+
+</script>
+
+<template>
+  <el-dialog v-model="dialog" title="申请撤销医嘱">
+
+  </el-dialog>
+</template>
+
+<style scoped lang="scss">
+
+</style>