Browse Source

优化医嘱的提示

xiaochan 2 years ago
parent
commit
604105e445

+ 48 - 37
src/components/zhu-yuan-yi-sheng/yi-zhu-lu-ru/yz-header/YzQueryCondition.vue

@@ -62,7 +62,7 @@
       <el-dropdown split-button
                    type="danger"
                    @click="deleteAnOrderByOrderNo"
-                   v-title="'在表格中选中了一条医嘱后这个方法才能有效果。(这个医嘱需要在工作台显示)'">
+                   v-title="'在表格中选中了一条医嘱后这个方法才能有效果,(这个医嘱需要在工作台显示),也可以在点击表格后面的删按钮<br /><span style=\'color:#fffe00\'>限制:</span>只能删除自己开的,只能删除(录入、确认)状态的医嘱。'">
         删除
         <template #dropdown>
           <el-dropdown-menu>
@@ -117,24 +117,27 @@
         </template>
       </el-dropdown>
 
-      <el-dropdown split-button title="页面跳转">
+      <el-dropdown split-button v-title="'跳转到指定患者的数据页面'">
         页面跳转
         <template #dropdown>
           <el-dropdown-menu>
-            <el-dropdown-item title="跳转到患者的病案首页" @click="jumpToMedicalRecord">
+            <el-dropdown-item @click="jumpToMedicalRecord">
               病案首页
             </el-dropdown-item>
-            <el-dropdown-item title="进入到合理用药的页面" @click="openRationalDrugUse">
+
+            <el-dropdown-item @click="openRationalDrugUse">
               合理用药
             </el-dropdown-item>
-            <el-dropdown-item title="血糖" @click="routerBloodSugarClick">
+            <el-dropdown-item @click="routerBloodSugarClick">
               血糖
             </el-dropdown-item>
           </el-dropdown-menu>
         </template>
       </el-dropdown>
 
-      <el-dropdown split-button title="设置医嘱关联" @click="confirmAssociationClick">
+      <el-dropdown split-button
+                   v-title="'设置选中医嘱成组。'"
+                   @click="confirmAssociationClick">
         关联
         <template #dropdown>
           <el-dropdown-menu>
@@ -143,40 +146,48 @@
         </template>
       </el-dropdown>
 
-      <el-dropdown title="过敏源传染病上报" split-button>
+      <el-dropdown v-title="'患者数据维护,包含传染病、过敏源。'" split-button>
         数据维护
         <template #dropdown>
           <el-dropdown-menu>
-            <el-dropdown-item title="患者过敏源信息维护"
-                              @click="yzMitt.emit('allergen')">
+            <el-dropdown-item
+                @click="yzMitt.emit('allergen')">
               过敏源维护
             </el-dropdown-item>
-            <el-dropdown-item title="传染病上报" @click="crbOpen">
+            <el-dropdown-item @click="crbOpen">
               传染病上报
             </el-dropdown-item>
           </el-dropdown-menu>
         </template>
       </el-dropdown>
 
-      <el-dropdown title="工作台操作,录入、清空、医嘱弹窗、复制粘贴"
+      <el-dropdown v-title="'工作台操作,录入、清空、医嘱弹窗、复制粘贴'"
                    @click="yzMitt.emit('toAddAnOrder')"
                    split-button>
         录入医嘱
         <template #dropdown>
           <el-dropdown-menu>
-            <el-dropdown-item
-                @click="yzMitt.emit('emptyTheWorkbench')"
-                title="清空工作台。">
-              清空工作台
-            </el-dropdown-item>
-            <el-dropdown-item title="打开医嘱弹窗,如转科,抗菌药物信息,处置医嘱等。"
-                              @click="yzMitt.emit('openTheOrderPopUpWindow')">
-              医嘱弹窗
-            </el-dropdown-item>
-            <el-dropdown-item title="复制并粘贴医嘱。"
-                              @click="yzMitt.emit('duplicateAndPaste')">
-              复制并粘贴
-            </el-dropdown-item>
+            <div v-title="'清空,正在编辑的医嘱或者选中的医嘱。'">
+              <el-dropdown-item
+                  @click="yzMitt.emit('emptyTheWorkbench')">
+                清空工作台
+              </el-dropdown-item>
+            </div>
+            <div v-title="'打开医嘱弹窗,目前只有转科、抗菌药物信息、处置医嘱可以打开弹窗。'">
+              <el-dropdown-item
+                  @click="yzMitt.emit('openTheOrderPopUpWindow')">
+                医嘱弹窗
+              </el-dropdown-item>
+            </div>
+            <div v-title="'复制并粘贴医嘱,如果想要分开,请在表格中鼠标右键一个医嘱,选择复制,然后在到表格中,选择粘贴医嘱。<br /><br />' +
+             '<span style=\'color:#fffe00\'>注意:</span>如果你是在临时医嘱页面,那么长期医嘱会改为 ONCE 频率,如果在长期医嘱页面那么临时医嘱会改为 QD 频率,如果是成组的医嘱' +
+              '复制父医嘱即可子医嘱会自动复制,目前不会提供批量复制医嘱的功能。'">
+              <el-dropdown-item
+                  @click="yzMitt.emit('duplicateAndPaste')">
+                复制并粘贴
+              </el-dropdown-item>
+            </div>
+
           </el-dropdown-menu>
         </template>
       </el-dropdown>
@@ -186,19 +197,19 @@
         其他
         <template #dropdown>
           <el-dropdown-menu>
-            <el-dropdown-item
-                @click="outPatientDialogOpen()"
-                title="门诊预约。">
-              门诊预约
-            </el-dropdown-item>
-            <el-dropdown-item title="打开医嘱弹窗,如转科,抗菌药物信息,处置医嘱等。"
-                              @click="yzMitt.emit('openTheOrderPopUpWindow')">
-              医嘱弹窗
-            </el-dropdown-item>
-            <el-dropdown-item title="一键停止正在执行的医嘱"
-                              @click="oneClickStopOpen">
-              一键停止
-            </el-dropdown-item>
+            <div v-title="'为即将出院的患者预约门诊,如果患者没有门诊号的话,需要先创建一个门诊号。'">
+              <el-dropdown-item
+                  @click="outPatientDialogOpen()">
+                门诊预约
+              </el-dropdown-item>
+            </div>
+            <div v-title="'一键停止正在执行的医嘱,会生成一条医嘱,此医嘱是口头医嘱,有没任何效果。'">
+              <el-dropdown-item
+                  @click="oneClickStopOpen">
+                一键停止
+              </el-dropdown-item>
+            </div>
+
           </el-dropdown-menu>
         </template>
       </el-dropdown>

+ 13 - 11
src/directives/v-title.ts

@@ -1,5 +1,3 @@
-import {useZIndex} from 'element-plus'
-
 const setDivLeftAndTop = (div: HTMLDivElement, evt: MouseEvent) => {
     // 获取window窗口的大小
     let windowWidth = window.innerWidth;
@@ -17,29 +15,33 @@ const setDivLeftAndTop = (div: HTMLDivElement, evt: MouseEvent) => {
 }
 
 let div = document.createElement('div');
+div.style.position = 'fixed';
+div.style.padding = '5px';
+div.style.backgroundColor = '#474747';
+div.style.color = 'white';
+div.style.borderRadius = '5px';
+div.style.maxWidth = '450px';
+div.style.width = 'max-content';
+div.style.display = 'none';
+div.style.zIndex = '99999';
 document.body.appendChild(div);
 
+
 const VTitle = {
-    created(el: HTMLHtmlElement, binding, _vnode, _prevVnode) {
-        div.style.position = 'fixed';
-        div.style.width = 'max-content';
-        div.style.padding = '5px';
-        div.style.backgroundColor = '#474747';
-        div.style.color = 'white';
-        div.style.borderRadius = '5px';
+    created(el: HTMLHtmlElement, binding: any, _vnode: any, _prevVnode: any) {
+
         el.addEventListener('mousemove', (evt) => {
             evt.preventDefault();
             evt.stopPropagation();
             div.style.display = 'block';
             div.innerHTML = binding.value;
-            div.style.zIndex = String(useZIndex().nextZIndex());
-
             setDivLeftAndTop(div, evt);
         })
 
         el.addEventListener('mouseleave', (evt) => {
             div.style.display = 'none';
         })
+
     }
 }