From b576ba3501304bdbd56771dc7299e0c40e047aa4 Mon Sep 17 00:00:00 2001
From: YM <479443481@qq.com>
Date: 星期六, 11 五月 2024 19:40:04 +0800
Subject: [PATCH] 1

---
 src/pages/character/detail.vue    |    2 
 src/pages/character/index.vue     |    8 
 src/pages/inherit/list.vue        |  105 ++++++----
 src/pages/inherit/index.vue       |  292 ++++++++++++++++++++---------
 src/pages/TcmSystem/TcmSystem.vue |  134 +++++++++---
 5 files changed, 370 insertions(+), 171 deletions(-)

diff --git a/src/pages/TcmSystem/TcmSystem.vue b/src/pages/TcmSystem/TcmSystem.vue
index 22dd33d..cec201f 100644
--- a/src/pages/TcmSystem/TcmSystem.vue
+++ b/src/pages/TcmSystem/TcmSystem.vue
@@ -50,8 +50,8 @@
               style="padding: 0 20rpx; color: #2c2c2c; cursor: pointer"
               @click="handInstitCLick(item, 'a')"
             >
-              <view class="">{{ item.dynastyName }}</view>
-              <view class="">{{ item.count }}</view>
+              <view>{{ item.dynastyName }}</view>
+              <view>{{ item.count }}</view>
             </li>
           </ul>
           <view v-if="institution.list.length - 1 > 3" class="flex flex-center">
@@ -85,8 +85,8 @@
               style="padding: 0 20rpx; cursor: pointer"
               @click="handInstitCLick(item, 'b')"
             >
-              <view class="">{{ item.dynastyName }}</view>
-              <view class="">{{ item.count }}</view>
+              <view>{{ item.dynastyName }}</view>
+              <view>{{ item.count }}</view>
             </li>
           </ul>
           <view v-if="officials.list.length - 1 > 3" class="flex flex-center">
@@ -125,9 +125,7 @@
         v-loading="pageLoading"
       >
         <view class="flex" style="width: 100%; margin-bottom: 0.3rem">
-          <view
-            class=""
-            style="font-size: 0.14rem; color: #2c2c2c; font-weight: 400"
+          <view style="font-size: 0.14rem; color: #2c2c2c; font-weight: 400"
             >鍏眥{ total }}鏉�</view
           >
           <view class="paixu">
@@ -145,8 +143,8 @@
         <view class="flex CommodityList">
           <view
             class="rightList"
-            @click="ListClick(item)"
-            v-for="item in CommodityList"
+            @click="ListClick(item, index)"
+            v-for="(item, index) in CommodityList"
             :key="item"
           >
             <el-card class="box-card" style="height: 100%">
@@ -247,7 +245,6 @@
     <el-dialog class="dialog" :visible.sync="dialogVisible" width="40%">
       <!-- 鍙栨秷閿� -->
       <view
-        class=""
         style="
           padding: 0.16rem;
           position: absolute;
@@ -292,21 +289,20 @@
             </ul>
           </view>
         </view>
-        <view class="" style="width: 80%; height: 100%; position: relative">
+        <view style="width: 80%; height: 100%; position: relative">
           <view class="pinji flex">
-            <view class=""
+            <view
               >鍝佺骇锛�<span> {{ ListDetails.grade || "-" }}</span>
             </view>
-            <view class=""
+            <view
               >鍒悕锛�<span> {{ ListDetails.alias || "-" }}</span>
             </view>
-            <view class=""
+            <view
               >鏉ユ簮锛�<span> {{ ListDetails.source || "-" }}</span>
             </view>
           </view>
-          <view class="">
+          <view>
             <view
-              class=""
               style="
                 font-size: 0.14rem;
                 color: #2c2c2c;
@@ -320,7 +316,6 @@
               鐩稿叧鎻忚堪
             </view>
             <view
-              class=""
               style="
                 font-size: 0.14rem;
                 color: #2c2c2c;
@@ -330,9 +325,8 @@
             >
               {{ ListDetails.desc || "-" }}
             </view>
-            <view class="">
+            <view>
               <view
-                class=""
                 style="
                   font-size: 0.14rem;
                   color: #2c2c2c;
@@ -346,7 +340,6 @@
                 澶囨敞
               </view>
               <span
-                class=""
                 v-for="item in ListDetails.notesList"
                 style="
                   font-size: 0.14rem;
@@ -360,21 +353,60 @@
             </view>
           </view>
         </view>
-        <!-- <view class="flex detailsBtn">
-          <el-button class="flex btn-prev">
+        <view class="flex detailsBtn">
+          <el-button
+            class="flex btn-prev"
+            :disabled="!ListDetails.prev"
+            @click="ListClick(ListDetails.prev, ListDetails.prev.index)"
+          >
             <view class="flex">
-              <view class="" style="margin-right: 40rpx">涓婁竴鏉�</view>
-              <view class="btn-prev-L">鏈烘瀯: 澶尰闄� </view>
+              <view style="width: 0.6rem">涓婁竴鏉�</view>
+              <view
+                class="btn-prev-L"
+                style="
+                  flex: 1;
+                  overflow: hidden;
+                  white-space: nowrap;
+                  text-overflow: ellipsis;
+                "
+                :title="ListDetails.prev ? ListDetails.prev.name : '-'"
+              >
+                {{
+                  ListDetails.prev
+                    ? ListDetails.prev.typeName + "锛�" + ListDetails.prev.name
+                    : "-"
+                }}
+              </view>
             </view>
           </el-button>
-          <view class=""> 102/329 </view>
-          <el-button class="flex btn-next">
+          <view class="pageInfo">
+            {{ ListDetails.index + 1 }}/{{ total }}
+          </view>
+          <el-button
+            class="flex btn-next"
+            :disabled="!ListDetails.next"
+            @click="ListClick(ListDetails.next, ListDetails.next.index)"
+          >
             <view class="flex">
-              <view class="" style="margin-right: 40rpx">鏈烘瀯: 澶尰闄� </view>
-              <view class="btn-prev-R">涓嬩竴鏉�</view>
+              <view
+                style="
+                  flex: 1;
+                  overflow: hidden;
+                  white-space: nowrap;
+                  text-overflow: ellipsis;
+                "
+                :title="ListDetails.next ? ListDetails.next.name : '-'"
+              >
+                {{
+                  ListDetails.next
+                    ? ListDetails.next.typeName + "锛�" + ListDetails.next.name
+                    : "-"
+                }}
+              </view>
+              <view class="btn-prev-R" style="width: 0.6rem">涓嬩竴鏉�</view>
             </view>
           </el-button>
-        </view> -->
+        </view>
       </view>
     </el-dialog>
 
@@ -528,7 +560,7 @@
       getMedicalList(Obj).then((res) => {
         this.CommodityList = res.list.map((item) => {
           return {
-            id: item.id,
+            requestId: this.searchType == "ALL" ? item.id : item.rowId,
             post:
               item.type === "OFFICIAL"
                 ? "鑱屽畼"
@@ -544,23 +576,44 @@
       });
     },
     // list鏁扮粍 鑾峰彇list閲岄潰鐨勮鎯卻huju
-    ListClick(item) {
-      console.log(item,this.searchType);
+    ListClick(item, index) {
+      console.log(item, "item");
       let Obj = {
-        rowId: this.searchType == "ALL" ? item.id : item.rowId,
+        rowId: item.requestId,
         medicalSearchType: this.searchType,
         type: this.classifyType, //鏌ヨ绫诲瀷 鍙栧�硷細OFFICIAL->鑱屽畼 INSTITUTION->鏈烘瀯 ALL->鑱屽畼銆佹満鏋�
         name: this.SearchValue, //鎼滅储妗嗘绱�
         dynastyId: this.classifyId, //鐐瑰嚮鏈濅唬鏌ヨ鏁版嵁鏃讹紝甯︿笂姝ゅ弬鏁�
-        sort: this.rankVal, //鎺掑簭鏂瑰紡 鍙栧�硷細CREATE鍒涘缓鏃堕棿锛孨AME鍚嶇О
+        sort: this.rankVal //鎺掑簭鏂瑰紡 鍙栧�硷細CREATE鍒涘缓鏃堕棿锛孨AME鍚嶇О
       };
       getMedicalDetails(Obj).then((res) => {
         this.ListDetails = {
+          index,
           ...item,
-          ...res.object.curr
+          ...res.object.curr,
+          next:
+            res.object.next && res.object.next.name
+              ? {
+                  ...res.object.next,
+                  requestId: res.object.next.rowId,
+                  index: index + 1,
+                  typeName:
+                    res.object.next.type === "OFFICIAL" ? "鑱屽畼" : "鏈烘瀯"
+                }
+              : null,
+          prev:
+            res.object.prev && res.object.prev.name
+              ? {
+                  ...res.object.prev,
+                  requestId: res.object.prev.rowId,
+                  index: index - 1,
+                  typeName:
+                    res.object.prev.type === "OFFICIAL" ? "鑱屽畼" : "鏈烘瀯"
+                }
+              : null
         };
+        this.dialogVisible = true;
       });
-      this.dialogVisible = !this.dialogVisible;
     },
     // 宸︿晶鐨勬満鏋勭粺璁$瓑绛夋寜閽�
     handInstitCLick(item, name) {
@@ -755,12 +808,19 @@
   border-radius: 5px;
   /* height: .32rem; */
   line-height: 0.32rem;
+  flex: 1;
+  overflow: hidden;
+}
+
+.detailsBtn .pageInfo {
+  width: 1rem;
+  text-align: center;
 }
 
 .detailsBtn .btn-prev-L,
 .detailsBtn .btn-prev-R {
   border-left: 1px solid #9e9e9e;
-  padding-left: 0.1rem;
+  text-align: center;
 }
 
 .detailsBtn > :nth-child(2) {
diff --git a/src/pages/character/detail.vue b/src/pages/character/detail.vue
index 984d3b5..6eb5246 100644
--- a/src/pages/character/detail.vue
+++ b/src/pages/character/detail.vue
@@ -515,7 +515,7 @@
             a: item.time,
             b: item.activityName,
             c: item.activityAddrOld,
-            d: "-" // 杩欓噷缂哄皯娲诲姩鎻忚堪瀛楁
+            d: item.desc // 杩欓噷缂哄皯娲诲姩鎻忚堪瀛楁
           };
         });
       });
diff --git a/src/pages/character/index.vue b/src/pages/character/index.vue
index e58ea8a..3d38805 100644
--- a/src/pages/character/index.vue
+++ b/src/pages/character/index.vue
@@ -468,8 +468,12 @@
     },
     // 楂樼骇鎼滅储
     onSubmit(val) {
-      getAdvanceSearch(val).then((res) => {
-        console.log(res, "鎺ュ彛璋冪敤鎴愬姛");
+      getAdvanceSearch({
+        ...val,
+        page: 1,
+        pageSize: 100
+      }).then((res) => {
+        console.log(res,"res");
       });
     },
     // 鐐瑰嚮涓嬮潰鐨勬湞浠f寜閽�
diff --git a/src/pages/inherit/index.vue b/src/pages/inherit/index.vue
index 325dcfe..615cdc6 100644
--- a/src/pages/inherit/index.vue
+++ b/src/pages/inherit/index.vue
@@ -10,16 +10,24 @@
 
     <div class="filterBox font-family">
       <div class="searchBox">
-        <input type="text" placeholder="杈撳叆濮撳悕/鍒悕/鏈濅唬" />
-        <button>鎼滅储</button>
+        <input type="text" v-model="keyword" placeholder="璇疯緭鍏ュ叧閿瓧" />
+        <button @click="search">鎼滅储</button>
       </div>
       <div class="dynasty">
         <div style="font-weight: 700; line-height: 0.25rem">绛涢�夋湞浠�</div>
         <div class="filterList">
-          <div class="filterItem" v-for="(item, index) in dynasty" :key="index">
-            <div class="circleBox" :class="{ bgcColor: item.isColor }"></div>
-            <div class="filterText" :class="{ fontColor: item.isColor }">
-              {{ item.name + " " + item.number }}
+          <div
+            class="filterItem"
+            v-for="(item, index) in dynasty"
+            :key="index"
+            @click="changeDynasty(item)"
+          >
+            <div
+              class="circleBox"
+              :class="{ active: item.dynastyId === activeId }"
+            ></div>
+            <div class="filterText">
+              {{ item.dynasty + " " + item.count }}
             </div>
           </div>
         </div>
@@ -27,83 +35,76 @@
       <div class="condition">
         <div style="font-weight: 700; line-height: 0.25rem">鏉′欢閫夋嫨</div>
         <div class="filterList">
-          <div class="conditionItem">
-            <div class="circleBox"></div>
+          <div class="conditionItem" @click="changeCondition(3)">
+            <div
+              class="circleBox"
+              :style="{ background: conditionId === 3 ? '#bacd66' : '#9e9e9e' }"
+            ></div>
             <div class="filterText">3浠d紶鎵夸笘鍖�</div>
           </div>
-          <div class="conditionItem">
-            <div class="circleBox"></div>
+          <div class="conditionItem" @click="changeCondition(4)">
+            <div
+              class="circleBox"
+              :style="{ background: conditionId === 4 ? '#6d9346' : '#9e9e9e' }"
+            ></div>
             <div class="filterText">4浠d紶鎵夸笘鍖�</div>
           </div>
-          <div class="conditionItem">
-            <div class="circleBox"></div>
+          <div class="conditionItem" @click="changeCondition(5)">
+            <div
+              class="circleBox"
+              :style="{ background: conditionId === 5 ? '#da7a2b' : '#9e9e9e' }"
+            ></div>
             <div class="filterText">5浠d紶鎵夸笘鍖�</div>
           </div>
-          <div class="conditionItem">
-            <div class="circleBox"></div>
+          <div class="conditionItem" @click="changeCondition(6)">
+            <div
+              class="circleBox"
+              :style="{ background: conditionId === 6 ? '#bc321d' : '#9e9e9e' }"
+            ></div>
             <div class="filterText">5浠d互涓婁紶鎵夸笘鍖�</div>
           </div>
         </div>
       </div>
-      <div style="padding-left: 0.5rem; margin-top: 20px">鍏� 1983涓笘鍖�</div>
+      <div style="padding-left: 0.5rem; margin-top: 20px">
+        鍏� {{ this.nodeData.length }}涓笘鍖�
+      </div>
     </div>
-
-    <!-- echarts鍥� -->
-    <div class="barChart" ref="barChart"></div>
+    <div class="contentBox">
+      <!-- echarts鍥� -->
+      <div class="barChart" ref="barChart"></div>
+      <div
+        class="toolBox"
+        v-if="showTool"
+        :style="{ top: toolTop, left: toolLeft }"
+      >
+        <div class="toolItem" @click="gotoDetail(1)">涓汉淇℃伅</div>
+        <div class="toolItem" @click="gotoDetail(2)">涓栧尰鏂囧寲</div>
+        <div class="toolItem" @click="gotoDetail(3)">涓栧尰浼犳壙</div>
+      </div>
+    </div>
   </view>
 </template>
 <script>
 import * as echarts from "echarts";
-import { inheritMedicalList } from "@/api/index.js";
+import {
+  inheritMedicalSataStatistics,
+  inheritMedicalList
+} from "@/api/index.js";
 export default {
   data() {
     return {
       // 鏍囬椤堕儴鏍忛渶瑕佺殑涓滆タ
+      keyword: "",
       idIndex: 0,
-      activeIndex: 1,
-      dynasty: [
-        {
-          name: "鍞�",
-          number: "4910",
-          isColor: false
-        },
-        {
-          name: "浜斾唬",
-          number: "494",
-          isColor: true
-        },
-        {
-          name: "瀹�",
-          number: "51273",
-          isColor: false
-        },
-        {
-          name: "鍖楀畫",
-          number: "15",
-          isColor: true
-        },
-        {
-          name: "鍗楀畫",
-          number: "4910",
-          isColor: false
-        },
-        {
-          name: "鍏�",
-          number: "299",
-          isColor: true
-        },
-        {
-          name: "鏄�",
-          number: "1830",
-          isColor: false
-        },
-        {
-          name: "娓�",
-          number: "1000",
-          isColor: true
-        }
-      ],
-      nodeData: []
+      activeId: "",
+      conditionId: "",
+      searchType: "KEYWORD",
+      dynasty: [],
+      nodeData: [],
+      showTool: false,
+      toolTop: 0,
+      toolLeft: 0,
+      toolInfo: {}
     };
   },
   onLoad(options) {
@@ -111,27 +112,40 @@
     console.log("optionsoptionsoptions", options.id);
   },
   mounted() {
+    this.getStatistics();
     this.getData();
   },
   methods: {
+    getStatistics() {
+      inheritMedicalSataStatistics().then((res) => {
+        this.dynasty = res.object;
+      });
+    },
     getData() {
+      this.nodeData = [];
       inheritMedicalList({
-        keywords: "",
-        dynastyId: "",
-        searchType: "KEYWORD",
-        path: ""
+        keywords: this.keyword,
+        dynastyId: this.activeId,
+        searchType: this.searchType,
+        path: this.conditionId
       }).then((res) => {
         console.log(res);
-        this.nodeData = res.object.nodeList.map((item) => {
-          return {
-            ...item,
-            itemStyle: {
-              color: "#F8E2D7",
-              borderColor: "#F3AA78",
-              borderWidth: "3"
-            }
-          };
-        });
+        for (let i = 0; i < res.object.nodeList.length; i++) {
+          const node = res.object.nodeList[i];
+          if (
+            this.nodeData.findIndex((citem) => citem.name == node.name) == -1
+          ) {
+            this.nodeData.push({
+              ...node,
+              itemStyle: {
+                color: "#F8E2D7",
+                borderColor: "#F3AA78",
+                borderWidth: "3"
+              }
+            });
+          }
+        }
+        console.log(this.nodeData);
         // 鍒濆鍖� echarts
         this.initBarChart();
       });
@@ -225,18 +239,84 @@
       //杩涜娓叉煋
       myChart.setOption(option);
       myChart.on("click", (params) => {
-        uni.navigateTo({
-          url:
-            "/pages/inherit/list?id=" +
-            params.data.identifier +
-            "&name=" +
-            encodeURIComponent(params.data.name)
-        });
+        console.log(params.event.offsetX, params.event.offsetY);
+        if (params.componentType === "series") {
+          this.showTool = true;
+          this.toolTop = params.event.offsetY + "px";
+          this.toolLeft = params.event.offsetX + "px";
+          this.toolInfo = {
+            id: params.data.identifier,
+            name: encodeURIComponent(params.data.name)
+          };
+        }
       });
+    },
+    gotoDetail(type) {
+      switch (type) {
+        case 1:
+          uni.navigateTo({
+            url: "/pages/character/detail?id=" + this.toolInfo.id
+          });
+          break;
+        case 2:
+          uni.navigateTo({
+            url:
+              "/pages/inherit/list?type=" +
+              2 +
+              "&id=" +
+              this.toolInfo.id +
+              "&name=" +
+              this.toolInfo.name
+          });
+          break;
+        case 3:
+          uni.navigateTo({
+            url:
+              "/pages/inherit/list?type=" +
+              1 +
+              "&id=" +
+              this.toolInfo.id +
+              "&name=" +
+              this.toolInfo.name
+          });
+          break;
+      }
     },
     // 杩斿洖鎸夐挳
     goBack() {
       this.$router.go(-1);
+    },
+    search() {
+      this.searchType = "KEYWORD";
+      this.activeId = "";
+      this.conditionId = "";
+      this.getData();
+    },
+    changeDynasty(item) {
+      if (item.dynastyId === this.activeId) {
+        this.activeId = "";
+        if (this.conditionId === "") {
+          this.searchType = "KEYWORD";
+        }
+      } else {
+        this.searchType = "DYNASTY";
+        this.activeId = item.dynastyId;
+        this.keyword = "";
+      }
+      this.getData();
+    },
+    changeCondition(index) {
+      if (index === this.conditionId) {
+        this.conditionId = "";
+        if (this.activeId === "") {
+          this.searchType = "KEYWORD";
+        }
+      } else {
+        this.searchType = "DYNASTY";
+        this.conditionId = index;
+        this.keyword = "";
+      }
+      this.getData();
     }
   }
 };
@@ -258,12 +338,32 @@
   font-size: 0.12rem;
   padding: 0;
 }
-.barChart {
+.contentBox {
   width: 100vw;
   height: 80vh;
+  position: relative;
+}
+.barChart {
+  width: 100%;
+  height: 100%;
+}
+.toolBox {
+  padding: 0.1rem;
+  position: absolute;
+}
+.toolItem {
+  padding: 0.04rem 0.2rem;
+  border: 1px solid #333;
+  border-radius: 1rem;
+  margin: 0.06rem;
+  font-size: 0.12rem;
+  cursor: pointer;
+  background-color: #fff;
+}
+.toolItem:hover {
+  background-color: #efefef;
 }
 .filterBox {
-  height: 2.2rem;
   width: 90%;
   border-bottom: 1px solid #ccc;
   padding: 20px;
@@ -309,8 +409,10 @@
   padding: 0.1rem 0.5rem;
 }
 .filterList {
+  flex: 1;
+  overflow: hidden;
   margin-left: 0.4rem;
-  display: flex;
+  overflow: hidden;
 }
 .filterItem {
   display: flex;
@@ -319,9 +421,12 @@
   justify-content: center;
   width: 1rem;
   height: 0.25rem;
-  flex: 1;
   margin-left: 0.2rem;
   border-radius: 0.13rem;
+  float: left;
+  margin-top: 0.02rem;
+  margin-bottom: 0.1rem;
+  cursor: pointer;
 }
 .conditionItem {
   display: flex;
@@ -330,21 +435,26 @@
   justify-content: center;
   width: 1.3rem;
   height: 0.25rem;
-  flex: 1;
+  float: left;
   margin-left: 0.2rem;
   border-radius: 0.13rem;
+  margin-top: 0.02rem;
+  margin-bottom: 0.1rem;
+  cursor: pointer;
 }
 
 .circleBox {
   width: 20px;
   height: 20px;
   border-radius: 50%;
-  background-color: #326350;
+  background-color: #9e9e9e;
+}
+.circleBox.active {
+  background-color: #da7a2b;
 }
 .filterText {
   margin-left: 10px;
   font-size: 16px;
-  color: #326350;
 }
 .fontColor {
   color: #827e44 !important;
diff --git a/src/pages/inherit/list.vue b/src/pages/inherit/list.vue
index 45f0b2d..3d759f3 100644
--- a/src/pages/inherit/list.vue
+++ b/src/pages/inherit/list.vue
@@ -1,5 +1,5 @@
 <template>
-  <view class="">
+  <view>
     <headNav
       idIndex="2"
       :searchBg="false"
@@ -34,7 +34,7 @@
           涓栧尰鏂囧寲
         </li>
       </ul>
-      <view class="" style="width: 1rem"></view>
+      <view style="width: 1rem"></view>
     </view>
     <view v-if="showType == 1" class="legendBox">
       <view class="socialMappingBox" @click="showSocialMapping">
@@ -87,7 +87,6 @@
 <script>
 import * as echarts from "echarts";
 import {
-  inheritMedicalSataStatistics,
   inheritMedicalCultureList,
   inheritMedicalRelationList
 } from "@/api/index.js";
@@ -108,9 +107,12 @@
   onLoad(options) {
     this.idIndex = options.id;
     this.mainName = decodeURIComponent(options.name);
-    console.log("optionsoptionsoptions", options.id);
+    this.type = options.type;
   },
   mounted() {
+    if (this.type) {
+      this.changeType(this.type);
+    }
     this.getData();
   },
   methods: {
@@ -126,22 +128,48 @@
         for (let i = 0; i < data.edgeList.length; i++) {
           const linkItem = data.edgeList[i];
           const index = data.nodeList.findIndex(
-              (item) => item.identifier == linkItem.endId
-            );
+            (item) =>
+              item.identifier ==
+              (linkItem.endId == this.idIndex
+                ? linkItem.startId
+                : linkItem.endId)
+          );
           if (linkItem.relationType == "浜插睘鍏崇郴") {
             data.nodeList[index].linkType = 1;
-            data.nodeList[index].color = "#DCE7EB";
-            data.nodeList[index].borderColor = "#5F81A4";
+            data.nodeList[index].color = "#F8E2D7";
+            data.nodeList[index].borderColor = "#F3AA78";
           }
           if (linkItem.relationType == "绀句細鍏崇郴") {
             data.nodeList[index].linkType = 2;
-            data.nodeList[index].color = "#E1E1E1";
-            data.nodeList[index].borderColor = "#888888";
+            data.nodeList[index].color = "#ecf4fe";
+            data.nodeList[index].borderColor = "#597aa5";
           }
           this.links.push({
-            source: this.mainName,
-            target: data.nodeList[index].name,
-            relationName: linkItem.relation
+            source: data.nodeList.find(
+              (item) => item.identifier == linkItem.startId
+            ).name,
+            target: data.nodeList.find(
+              (item) => item.identifier == linkItem.endId
+            ).name,
+            relationType: linkItem.relationType,
+            label: {
+              show: true,
+              formatter: function (params) {
+                // 浣跨敤鍑芥暟鍔ㄦ�佺敓鎴愭爣绛惧唴瀹�
+                // return relationships.find(rel => rel.source === nodes[params.data
+                // 		.source] && rel.target === nodes[params.data.target])
+                // 	.relation;
+                return linkItem.relation;
+              }, // 璁剧疆鍏崇郴鏍囩鍐呭涓�"Child-Parent"
+              color: "#2C2C2C",
+              fontSize: 16,
+              backgroundColor: "rgba(255, 255, 255, 1)",
+              padding: [3, 8],
+              borderRadius: 30,
+              position: "middle", // 璁剧疆鏍囩鏂囨湰鍦ㄧ嚎鐨勪腑闂翠綅缃笂灞呬腑鏄剧ず
+              // z: -1, // 璁剧疆鏍囩鐨剒杞撮珮搴︼紝浣垮叾姣旇繛鎺ョ嚎鏇撮珮
+              distance: -10 // 灏嗘爣绛炬斁缃湪杩炴帴绾夸笂
+            }
           });
         }
         this.dataList = [];
@@ -150,13 +178,22 @@
             ...item,
             itemStyle: {
               color: item.identifier == this.idIndex ? "#F8E2D7" : item.color,
-              borderColor: item.identifier == this.idIndex ? "#F3AA78" : item.borderColor,
+              borderColor:
+                item.identifier == this.idIndex ? "#F3AA78" : item.borderColor,
               borderWidth: "3"
             }
           };
         });
-        console.log(this.dataList,this.links);
-        this.initBarChart();
+        console.log(this.dataList);
+        console.log(this.links);
+        this.initBarChart(this.dataList, this.links);
+      });
+
+      // 涓栧尰鏂囧寲
+      inheritMedicalCultureList({
+        identifier: this.idIndex
+      }).then((res) => {
+        console.log(res, "res");
       });
     },
     showSocialMapping() {
@@ -167,9 +204,7 @@
         newDataList = [...this.dataList];
         newLinks = [...this.links];
       } else {
-        newDataList = this.dataList.filter(
-          (item) => item.itemStyle.borderColor == "#F3AA78"
-        );
+        newDataList = this.dataList.filter((item) => item.color !== "#ecf4fe");
         newLinks = [...this.links];
       }
       this.initBarChart(newDataList, newLinks);
@@ -183,7 +218,7 @@
         }, 50);
       }
     },
-    initBarChart() {
+    initBarChart(dataList, links) {
       // WMBg
       //閫氳繃 $ref 杩涜鎸傝浇
       var barChart = document.getElementById("barChart");
@@ -233,30 +268,20 @@
               color: "black", // 璁剧疆鑺傜偣鏂囧瓧棰滆壊涓洪粦鑹�
               fontSize: FontSize // 璁剧疆鏂囧瓧澶у皬
             },
-            edgeSymbol: ["circle"],
+            edgeSymbol: ["circle", "arrow"],
             edgeSymbolSize: [4, 10],
-
-            edgeLabel: {
-              show: true,
-              fontSize: FontSize, //鏇存敼涓よ�呭叧绯荤殑瀛椾綋
-              position: "middle",
-              //杩欓噷璁剧疆鍏崇郴鏂囧瓧鏄惁鍜岀嚎娈甸噸鍙�
-              //   padding: [0, 0], // 璋冩暣鍐呰竟璺濅互纭繚鏍囩涓庣嚎娈电揣瀵嗚创鍚�
-              // verticalAlign: 'middle', // 璁剧疆鏂囨湰鐨勫瀭鐩村榻愭柟寮忎负灞呬腑
-              formatter: function (params) {
-                // params.data 鏄竟鐨勬暟鎹璞★紝浣犲彲浠ュ湪杩欓噷瀹氫箟鍏崇郴鍚�
-                // 渚嬪锛屼綘鍙互鏍规嵁 source 鍜� target 鐨勫悕绉版潵瀹氫箟鍏崇郴鍚�
-                return params.data.relationName || "鐖跺瓙"; // 濡傛灉瀹氫箟浜� relationName 鍒欐樉绀哄畠锛屽惁鍒欐樉绀衡�滅埗瀛愨��
-              }
-            },
-            //鍚勪釜鑺傜偣
-            data: this.dataList, //鍏崇郴杩炴帴
-            links: this.links,
+            data: dataList,
+            links: links,
             lineStyle: {
-              color: "#000000",
               opacity: 0.9,
               width: 2,
-              curveness: 0
+              curveness: 0.3
+            },
+            emphasis: {
+              focus: "adjacency",
+              lineStyle: {
+                width: 10
+              }
             },
             force: {
               initLayout: null,

--
Gitblit v1.9.1