From ccb61601d945e3dc8b2fd51167ba5da43dfc110b Mon Sep 17 00:00:00 2001
From: YM <479443481@qq.com>
Date: 星期三, 12 六月 2024 19:28:27 +0800
Subject: [PATCH] Merge branch 'master' of http://182.92.203.7:2001/r/TCM_CharacterLibrary

---
 src/pages/character/detail.vue |  208 ++++++++++++++++++++++++++-------------------------
 1 files changed, 105 insertions(+), 103 deletions(-)

diff --git a/src/pages/character/detail.vue b/src/pages/character/detail.vue
index 619d38b..2354fc2 100644
--- a/src/pages/character/detail.vue
+++ b/src/pages/character/detail.vue
@@ -100,7 +100,6 @@
             >
           </view>
           <view
-            v-if="biogData.length > 1"
             style="font-size: 0.12rem; color: #244a7b; cursor: pointer"
             @click="ProfileClick"
             >闃呰鏇村></view
@@ -301,7 +300,8 @@
                     margin-bottom: 0.1rem;
                   "
                   :src="item"
-                  fit="fill"
+                  :preview-src-list="imageList"
+                  fit="contain"
                 ></el-image>
               </div>
               <div
@@ -408,6 +408,7 @@
   getPersonInfo,
   getRelationTypeTreeList,
   getWebBasic,
+  getDynastyAll,
   getIntroduction,
   getSource,
   getPersonImages,
@@ -415,8 +416,9 @@
   getPersonWritings,
   getPersonRelationAtSchool,
   getSpaceTime,
+  getDynastyData,
 } from "@/api/index.js";
-import { getImg, getFile } from "@/static/tool.js";
+import { getImg } from "@/static/tool.js";
 import L from "leaflet";
 import "leaflet.chinatmsproviders";
 
@@ -477,6 +479,8 @@
         },
         {
           prop: "d",
+          width: 300,
+          showOverflowTooltip: true,
           label: "鍑哄",
         },
       ],
@@ -541,7 +545,8 @@
   },
   methods: {
     copyText() {
-      const textToCopy = this.biogData[0].content + "\n鏉ユ簮锛氫腑鍖诲尰瀛︿汉鐗╃煡璇嗗簱";
+      const textToCopy =
+        this.biogData[0].content + "\n鏉ユ簮锛氫腑鍖诲尰瀛︿汉鐗╃煡璇嗗簱";
       const textarea = document.createElement("textarea");
       textarea.value = textToCopy;
       document.body.appendChild(textarea);
@@ -554,12 +559,11 @@
       });
     },
     toLink(item) {
-      console.log(item);
       if (item.url) {
         window.open(item.url);
       }
       if (item.filePath) {
-        window.open(getFile(item.filePath));
+        window.open(getImg(item.filePath));
       }
     },
     getData() {
@@ -581,30 +585,31 @@
               : fieldItem.content1;
           }
         }
-        console.log(obj);
         this.detailInfo = obj;
+        getDynastyAll().then((dynastyData) => {
+          getWebBasic({
+            personId: this.detailId,
+          }).then((res) => {
+            const obj = res.object;
+            if (obj.school) {
+              getIntroduction(Number(obj.school)).then((sres) => {
+                this.handleData(obj, sres, dynastyData.list);
+              });
+            } else {
+              this.handleData(obj, null, dynastyData.list);
+            }
+          });
+        });
         // 鍏崇郴鍥捐氨
-        this.getMappingData(this.detailInfo.NAME);
+        this.getMappingData();
       });
+
       //鐜颁唬鐮旂┒
       getPersonInfo({
         id: this.detailId,
         type: "PERSON_RESEARCH",
       }).then((res) => {
         this.personResearchList = res.object.personResearchList;
-      });
-
-      getWebBasic({
-        personId: this.detailId,
-      }).then((res) => {
-        const obj = res.object;
-        if (obj.school) {
-          getIntroduction(Number(obj.school)).then((sres) => {
-            this.handleData(obj, sres);
-          });
-        } else {
-          this.handleData(obj);
-        }
       });
 
       // 娲诲姩骞磋氨
@@ -618,19 +623,19 @@
               a: item.time,
               b: item.activityName,
               c: item.activityAddrOld,
-              d: item.desc, // 杩欓噷缂哄皯娲诲姩鎻忚堪瀛楁
+              d: item.desc,
             };
           });
         }
       });
     },
-    handleData(obj, sres) {
+    handleData(obj, sres, dynastyData) {
       this.tableArr = [
         {
           list: [
             {
-              name: "鍒悕",
-              value: obj.alias || "-",
+              name: "濮撳悕",
+              value: obj.name || "-",
             },
             {
               name: "瀛�",
@@ -642,7 +647,16 @@
             },
             {
               name: "鎵�澶勬椂鏈�",
-              value: obj.dynastyDesc || "-",
+              value:
+                dynastyData.find((item) => item.dynastyId == obj.dynastyId)
+                  .name || "-",
+              valueClick: () => {
+                uni.navigateTo({
+                  url:
+                    "/pages/knowledgeBase/knowledgeBase?dynasty=" +
+                    obj.dynastyId,
+                });
+              },
             },
             {
               name: "姘戞棌",
@@ -663,6 +677,13 @@
             {
               name: "鑱屽畼",
               value: obj.official || "-",
+              valueClick: () => {
+                uni.navigateTo({
+                  url:
+                    "/pages/knowledgeBase/knowledgeBase?isAdvancedSearch=1&official=" +
+                    obj.official,
+                });
+              },
             },
             {
               name: "娴佹淳",
@@ -728,76 +749,72 @@
       });
     },
     getRelationship() {
-      getRelationTypeTreeList().then((res) => {
-        console.log(res, "getRelationTypeTreeList");
-        console.log(res);
-      });
-      // getPersonRelationAtSchool({
-      //   personId: this.detailId,
-      // }).then((res) => {
-      //   this.personRelationList = res.object.personRelationList;
-      //   if (this.personRelationList.length) {
-      //     this.tableData4 = this.personRelationList.map((f) => {
-      //       return {
-      //         a: f.nodeName,
-      //         b: f.relationTypeName,
-      //       };
-      //     });
-      //   }
-      // });
       getPersonInfo({
         id: this.detailId,
         type: "PERSON_RELATIONS",
       }).then((res) => {
         this.tableData4;
-        console.log(res, "PERSON_RELATIONS");
-      });
-      // 绀句細鍏崇郴
-      getPersonRelationAtSchool({
-        personId: this.detailId,
-        relationSearchTypeEO: "SOCIAL",
-      }).then((res) => {
-        if (res.list && res.list.length) {
-          this.tableData4 = res.list.map((f) => {
+        if (res.object.personRelationMap.kin.length) {
+          this.tableData2 = res.object.personRelationMap.kin.map((f) => {
             return {
-              a: f.name1,
-              b: f.relationName,
+              a: f.nodeName,
+              b: f.relationTypeName,
+              c: f.textualResearch,
+              d:
+                res.object.bookList &&
+                res.object.bookList.find((citem) => citem.id == f.bookId)
+                  ? "銆�" +
+                    res.object.bookList.find((citem) => citem.id == f.bookId)
+                      .name +
+                    "銆� P" +
+                    f.pageNo
+                  : "",
             };
           });
         }
-      });
-      // 浜插睘鍏崇郴
-      getPersonRelationAtSchool({
-        personId: this.detailId,
-        relationSearchTypeEO: "KINSHIP",
-      }).then((res) => {
-        if (res.list && res.list.length) {
-          this.tableData2 = res.list.map((f) => {
-            return {
-              a: f.name1,
-              b: f.relationName,
-            };
-          });
+        if (res.object.personRelationMap.teacherStudent.length) {
+          this.tableData3 = res.object.personRelationMap.teacherStudent.map(
+            (f) => {
+              return {
+                a: f.nodeName,
+                b: f.relationTypeName,
+                c: f.textualResearch,
+                d:
+                  res.object.bookList &&
+                  res.object.bookList.find((citem) => citem.id == f.bookId)
+                    ? "銆�" +
+                      res.object.bookList.find((citem) => citem.id == f.bookId)
+                        .name +
+                      "銆� P" +
+                      f.pageNo
+                    : "",
+              };
+            }
+          );
         }
-      });
-      // 甯堟壙鍏崇郴
-      getPersonRelationAtSchool({
-        personId: this.detailId,
-        relationSearchTypeEO: "INHERITANCE",
-      }).then((res) => {
-        if (res.list && res.list.length) {
-          this.tableData3 = res.list.map((f) => {
+        if (res.object.personRelationMap.social.length) {
+          this.tableData4 = res.object.personRelationMap.social.map((f) => {
             return {
-              a: f.name1,
-              b: f.relationName,
+              a: f.nodeName,
+              b: f.relationTypeName,
+              c: f.textualResearch,
+              d:
+                res.object.bookList &&
+                res.object.bookList.find((citem) => citem.id == f.bookId)
+                  ? "銆�" +
+                    res.object.bookList.find((citem) => citem.id == f.bookId)
+                      .name +
+                    "銆� P" +
+                    f.pageNo
+                  : "",
             };
           });
         }
       });
     },
-    getMappingData(name) {
+    getMappingData() {
       getFuzzySearch({
-        keyword: name,
+        personId: this.detailId
       }).then((res) => {
         this.nodes = [];
         this.relationships = [];
@@ -869,6 +886,13 @@
       }).setView([markerList[0].value[1], markerList[0].value[0]], 13);
       L.tileLayer
         .chinaProvider("TianDiTu.Normal.Map", {
+          key: "76bc34ead7e30e663a4eded8aeaf5860",
+          maxZoom: 18,
+          minZoom: 3,
+        })
+        .addTo(map);
+      L.tileLayer
+        .chinaProvider("TianDiTu.Normal.Annotion", {
           key: "76bc34ead7e30e663a4eded8aeaf5860",
           maxZoom: 18,
           minZoom: 3,
@@ -979,25 +1003,8 @@
 
       let FontSize = 12; // 瀛椾綋澶у皬
       let BorderWidth = 2; // 杈规澶у皬
-      let SymbolSize = 80; // 灏哄璺濈
+      let SymbolSize = 50; // 灏哄璺濈
       let Distance = 10;
-      // 涓嶅悓灏哄涓嬩慨鏀筫charts鐨勫瓧浣�
-      if (window.innerWidth > 2560 && window.innerWidth <= 3840) {
-        FontSize = 28;
-        BorderWidth = 5;
-        SymbolSize = 100;
-        Distance = 33;
-      } else if (window.innerWidth > 1920 && window.innerWidth <= 2560) {
-        FontSize = 28;
-        BorderWidth = 4;
-        SymbolSize = 90;
-        Distance = 22;
-      } else if (window.innerWidth >= 1366 && window.innerWidth <= 1920) {
-        FontSize = 18;
-        BorderWidth = 4;
-        SymbolSize = 70;
-        Distance = 22;
-      }
       // 鏍规嵁鍏崇郴鏁版嵁鐢熸垚杩炴帴绾�
       var links = [];
       relationships.forEach((relationship, i) => {
@@ -1361,12 +1368,6 @@
 }
 
 /* ------------------- */
-
-img {
-  width: 100%;
-  height: 100%;
-}
-
 * {
   box-sizing: border-box;
 }
@@ -1541,4 +1542,5 @@
 .fileul li:hover {
   color: #597aa5;
 }
+
 </style>

--
Gitblit v1.9.1