From b4596c8a18d1e6641c6aa553fefed097f725b1f5 Mon Sep 17 00:00:00 2001
From: YM <479443481@qq.com>
Date: 星期二, 14 五月 2024 21:16:55 +0800
Subject: [PATCH] Merge branch 'master' of http://182.92.203.7:2001/r/testbookLayout

---
 src/books/childHealth/view/index.vue |   98 +++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 78 insertions(+), 20 deletions(-)

diff --git a/src/books/childHealth/view/index.vue b/src/books/childHealth/view/index.vue
index 03fd85d..a1e4711 100644
--- a/src/books/childHealth/view/index.vue
+++ b/src/books/childHealth/view/index.vue
@@ -1,6 +1,5 @@
 <template>
-  <div class="temp-book" @mouseup="handleMouseUp">
-    <pageHeader></pageHeader>
+  <div class="temp-book" @mouseup="handleMouseUp" @mousedown="handleMouseDown" @mousemove="handleMousemove">
     <pageContent></pageContent>
   </div>
 </template>
@@ -8,12 +7,10 @@
 <script>
 import examinations from "./components/examinations/index.vue";
 import { getPublicImage } from "@/assets/js/middleGround/tool";
-import pageHeader from "./header/index.vue";
 import pageContent from "./content/index.vue";
 export default {
-  name: "temp-book",
+  name: "child-health",
   components: {
-    pageHeader,
     pageContent,
     examinations,
   },
@@ -22,10 +19,14 @@
       type: "option",
       idPathList: [],
       cardList: [],
+      isMouseDown: false,
+      showToolBox: false,
+      move: false,
     };
   },
   mounted() {
     this.getBookInfo();
+    console.log(this.$store.state.qiankun, "this.$store.state.qiankun");
   },
   methods: {
     getBookInfo() {
@@ -367,7 +368,6 @@
         });
       }
     },
-
     getParentWithClass(element, className) {
       while (element.parentElement) {
         element = element.parentElement;
@@ -377,23 +377,81 @@
       }
     },
     handleMouseUp(e) {
-      const txt = window.getSelection()?.toString();
-      const node = window.getSelection();
-      let html = node.anchorNode.parentNode.parentNode.parentNode;
-      let nextHtml = html.firstChild.innerHTML;
-      let pageHtml = this.getParentWithClass(node.anchorNode,'page-box')
-      if (txt) {
-        console.log(pageHtml);
+      if (this.$data.move) {
+        const txt = window.getSelection()?.toString();
+        const selection = window.getSelection();
+        if (selection.type != "none") {
+          let node = selection.anchorNode.parentNode;
+          let pageHtml = this.getParentWithClass(
+            selection.anchorNode,
+            "page-box"
+          );
+          let chapterDom = this.getParentWithClass(
+            selection.anchorNode,
+            "chapter"
+          );
+          let chapterNum;
+          if (chapterDom) chapterNum = chapterDom.getAttribute("num");
+          if (txt && pageHtml) {
+            this.$dsta.showToolBox = true;
+            const page = pageHtml.getAttribute("page");
+            console.log(
+              {
+                chapterNum,
+                txt,
+                selection,
+                node,
+                page,
+                x: e.x,
+                y: e.y,
+              },
+              "sendData"
+            );
+            // 鐩戝惉閫変腑鏂囨湰浜嬩欢锛屽苟瑙﹀彂鐖跺眰鏂规硶
+            console.log("绗簩澶勫垽鏂�", this.$store.state.qiankun);
+            if (this.$store.state.qiankun.windowSelection) {
+              this.$store.state.qiankun.windowSelection({
+                txt,
+                selection,
+                node,
+                page,
+                x: e.x,
+                y: e.y,
+              });
+            }
+          }
+          this.$data.isMouseDown = false;
+        }
       }
-      if (html) {
-        const page = html.getAttribute("page");
-        console.log("page", page,this.$actions);
-        this.$actions.setGlobalState({
-          aa:page
-        })
-        
+      this.$data.move = false
+    },
+
+    handleMouseDown() {
+      this.$data.isMouseDown = true;
+      this.$data.showToolBox = false;
+    },
+    handleMousemove() {
+      if (this.$data.isMouseDown) {
+        this.$data.move = true;
       }
     },
+
+    // handleMouseUp(e) {
+    //   if (move.value) {
+    //     const txt = window.getSelection()?.toString();
+    //     selectText.value = txt;
+    //     const node = window.getSelection();
+    //     let html = node.anchorNode.parentNode.parentNode;
+    //     dialogToolData.chapter = html.firstChild.innerHTML;
+    //     if (txt) {
+    //       showToolBox.value = true;
+    //       dialogToolData.top = e.y;
+    //       dialogToolData.left = e.x;
+    //     }
+    //     isMouseDown.value = false;
+    //   }
+    //   move.value = false;
+    // },
   },
 };
 </script>

--
Gitblit v1.9.1