From d16a07dcc2771bb65d03658847549ab3b21f6bcd Mon Sep 17 00:00:00 2001
From: 杨磊 <505174330@qq.com>
Date: 星期四, 04 七月 2024 16:29:08 +0800
Subject: [PATCH] 图片title

---
 src/pages/character/detail.vue |  246 ++++++++++++++++++++++++++-----------------------
 1 files changed, 131 insertions(+), 115 deletions(-)

diff --git a/src/pages/character/detail.vue b/src/pages/character/detail.vue
index 17a7917..7b1881c 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
@@ -290,19 +289,22 @@
               <span>鐩稿叧闄勮〃/鍥惧儚</span>
             </div>
             <view>
-              <div style="overflow: auto">
-                <el-image
-                  v-for="item in imageList"
-                  :key="item"
-                  style="
-                    width: 2.05rem;
-                    height: 2.4rem;
-                    margin-right: 0.2rem;
-                    margin-bottom: 0.1rem;
-                  "
-                  :src="item"
-                  fit="fill"
-                ></el-image>
+              <div style="overflow: auto;display: flex;">
+                <div v-for="item in imageList" :key="item" :title="item.name">
+                  <el-image
+                    :title="item.name"
+                    :alt="item.name"
+                    style="
+                      width: 2.05rem;
+                      height: 2.4rem;
+                      margin-right: 0.2rem;
+                      margin-bottom: 0.1rem;
+                    "
+                    :src="item.src"
+                    :preview-src-list="imageList.map((item) => item.src)"
+                    fit="contain"
+                  ></el-image>
+                </div>
               </div>
               <div
                 v-if="imageList.length == 0"
@@ -408,6 +410,7 @@
   getPersonInfo,
   getRelationTypeTreeList,
   getWebBasic,
+  getDynastyAll,
   getIntroduction,
   getSource,
   getPersonImages,
@@ -415,8 +418,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 +481,8 @@
         },
         {
           prop: "d",
+          width: 300,
+          showOverflowTooltip: true,
           label: "鍑哄",
         },
       ],
@@ -555,12 +561,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() {
@@ -582,30 +587,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);
-        }
       });
 
       // 娲诲姩骞磋氨
@@ -619,19 +625,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: "瀛�",
@@ -643,7 +649,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: "姘戞棌",
@@ -664,6 +679,13 @@
             {
               name: "鑱屽畼",
               value: obj.official || "-",
+              valueClick: () => {
+                uni.navigateTo({
+                  url:
+                    "/pages/knowledgeBase/knowledgeBase?isAdvancedSearch=1&official=" +
+                    obj.official,
+                });
+              },
             },
             {
               name: "娴佹淳",
@@ -694,7 +716,28 @@
       getPersonImages({
         personId: this.detailId,
       }).then((res) => {
-        this.imageList = res.list.map((item) => getImg(item.filePath));
+        this.imageList = res.list.map((item) => {
+          return {
+            src: getImg(item.filePath),
+            name: item.desc,
+          };
+        });
+      });
+    },
+    getBiog() {
+      getPersonBiog({
+        personId: this.detailId,
+      }).then((res) => {
+        this.biogData = res.list.map((item) => {
+          return {
+            content: item.content1,
+            bookName:
+              "銆�" +
+              item.bookName +
+              "銆� " +
+              (item.pageNo ? "P " + item.pageNo : ""), // 杩欓噷鍙湁bookid鏃犳硶鍖归厤鍒颁功鍚�
+          };
+        });
       });
     },
     getBiog() {
@@ -729,76 +772,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 = [];
@@ -987,25 +1026,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) => {
@@ -1369,12 +1391,6 @@
 }
 
 /* ------------------- */
-
-img {
-  width: 100%;
-  height: 100%;
-}
-
 * {
   box-sizing: border-box;
 }

--
Gitblit v1.9.1