From a971d0c13ab9cd5107152f6eba5e1e724a37fa0b Mon Sep 17 00:00:00 2001
From: 杨磊 <505174330@qq.com>
Date: 星期五, 07 六月 2024 17:20:31 +0800
Subject: [PATCH] Merge branch 'master' of http://182.92.203.7:2001/r/TCM_CharacterLibrary

---
 src/pages/territory/territory.vue |  115 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 104 insertions(+), 11 deletions(-)

diff --git a/src/pages/territory/territory.vue b/src/pages/territory/territory.vue
index 21a1409..0f7c3fa 100644
--- a/src/pages/territory/territory.vue
+++ b/src/pages/territory/territory.vue
@@ -104,6 +104,7 @@
             {{ item.birthAndDeath ? item.birthAndDeath : "-" }}
           </li>
           <li>鏉ユ簮: {{ item.source ? item.source : "-" }}</li>
+          <li>绫嶈疮: {{ item.nativPlace ? item.nativPlace : "-" }}</li>
           <li
             v-if="SearchArr.length - 1 !== index"
             style="margin: 0.1rem 0; border-bottom: 1px solid #d8d8d8"
@@ -220,10 +221,14 @@
 import { loadBMap } from "@/static/map.js";
 import L from "leaflet";
 import "leaflet.chinatmsproviders";
-
 import * as echarts from "echarts";
 import "echarts/extension/bmap/bmap";
-import { getRetrieval, getDynasty, getPreCount } from "@/api/index.js";
+import {
+  getRetrieval,
+  getDynasty,
+  getPreCount,
+  getDynastyData,
+} from "@/api/index.js";
 export default {
   data() {
     return {
@@ -408,11 +413,18 @@
     this.getDynastyList();
 
     this.getDataList();
+    this.getHaveDataDynasty();
   },
   methods: {
+    getHaveDataDynasty() {
+      getDynastyData().then((res) => {
+        console.log(res, "getHaveDataDynasty");
+      });
+    },
     getDynastyList() {
       getDynasty().then((res) => {
         this.dynasty1 = res.list;
+        console.log("dynasty1", res.list);
       });
     },
     showCard(info) {
@@ -427,6 +439,7 @@
           nativePlace: item?.content1,
           barnch: item?.MEDICAL_BRANCH[0]?.content1,
           medical: item?.MEDICAL_EXPERTISE[0]?.content1,
+          id: item.id,
         };
         this.$nextTick(() => {
           this.isTop =
@@ -453,15 +466,79 @@
           times = Math.floor(totalCount / 200);
         }
         console.log(times, "times");
+        if (times == 0 || times < 0) times = 1;
         let markerList = [];
         for (let i = 1; i <= times; i++) {
           const curData = await this.getDataPageInfo(i);
           if (curData) {
             markerList = [...markerList, ...curData];
           }
-          if (i == times) {
-            console.log(markerList, "markerList");
+          if (i == 1) {
+            this.loading = false;
+            this.mapLoading = false;
+            this.markerList = markerList;
             this.initMap(markerList);
+          } else {
+            if (curData && curData.length) {
+              for (let j = 0; j < curData.length; j++) {
+                const ele = curData[j];
+                let currentClassName = "map-circle-name";
+                if (ele.dynastyInfo) {
+                  switch (ele.dynastyInfo.dynastyChs) {
+                    case "澶�":
+                      currentClassName = "map-circle-xia";
+                      break;
+                    case "鍟�":
+                      currentClassName = "map-circle-shang";
+                      break;
+                    case "瑗垮懆":
+                      currentClassName = "map-circle-zhou";
+                      break;
+                    case "绉�":
+                      currentClassName = "map-circle-qin";
+                      break;
+                    case "姹�":
+                      currentClassName = "map-circle-han";
+                      break;
+                    case "闅�":
+                      currentClassName = "map-circle-sui";
+                      break;
+                    case "鍞�":
+                      currentClassName = "map-circle-tang";
+                      break;
+                    case "鏄�":
+                      currentClassName = "map-circle-ming";
+                      break;
+                  }
+                }
+                let icon = L.divIcon({
+                  html: `<div class='${currentClassName} ripple'></div>`,
+                  iconSize: [80, 80],
+                  className: "map-circle",
+                });
+                const temp_mark = L.marker([ele.yCoord, ele.xCoord], {
+                  icon: icon,
+                }).addTo(this.map);
+                temp_mark.on("click", (e) => {
+                  setTimeout(() => {
+                    this.isEchTrue = true;
+                    this.currentMark = {
+                      name: ele?.WEAK_NAME[0]?.content1,
+                      nikeName: ele?.ALIAS[0]?.content2,
+                      nativePlace: ele?.content1,
+                      barnch: ele?.MEDICAL_BRANCH[0]?.content1,
+                      medical: ele?.MEDICAL_EXPERTISE[0]?.content1,
+                      id: ele.id,
+                    };
+                    this.isTop = e.containerPoint.y - 275 + "px";
+                    this.isLeft = e.containerPoint.x - 171 + "px";
+                  }, 300);
+                });
+              }
+            }
+          }
+
+          if (i == times) {
             this.SearchArr = markerList.map((item) => ({
               birthAndDeath: item?.BIRTH_YEAR[0]?.content1
                 ? item?.BIRTH_YEAR[0]?.content1 +
@@ -470,11 +547,11 @@
                 : "-",
               name: item?.NAME[0]?.content1,
               source: "-",
+              nativPlace: item?.NATIVE_PLACE[0].content1,
               id: item.id,
             }));
             this.markerList = markerList;
-            this.loading = false;
-            this.mapLoading = false;
+            // this.initMap(markerList);
           }
         }
       });
@@ -587,6 +664,13 @@
           minZoom: 3,
         })
         .addTo(map);
+      L.tileLayer
+        .chinaProvider("TianDiTu.Normal.Annotion", {
+          key: "76bc34ead7e30e663a4eded8aeaf5860",
+          maxZoom: 18,
+          minZoom: 3,
+        })
+        .addTo(map);
       let DefaultIcon1 = L.icon({
         iconUrl: this.icoName,
         iconSize: [24, 41], //  鍥炬爣鐨勫ぇ灏�    銆愬��1锛屽��2銆� 涓哄叿浣撲綘鑷畾涔夊浘鏍囩殑灏哄锛屾瘮濡傛垜鍥炬爣灏哄鏄�32脳52锛岃〃绀鸿鍥炬爣锛氬搴�32鍍忕礌锛岄珮搴︼細52鍍忕礌锛岄偅涔堝��1:灏辨槸32锛屽��2锛氬氨鏄�52
@@ -600,9 +684,9 @@
         className: "map-circle",
       });
       this.map = map;
-      if (markerList.length) {
-        for (let i = 0; i < markerList.length; i++) {
-          const item = markerList[i];
+      if (this.markerList.length) {
+        for (let i = 0; i < this.markerList.length; i++) {
+          const item = this.markerList[i];
           let currentClassName = "map-circle-name";
           if (item.dynastyInfo) {
             switch (item.dynastyInfo.dynastyChs) {
@@ -650,6 +734,7 @@
                 nativePlace: item?.content1,
                 barnch: item?.MEDICAL_BRANCH[0]?.content1,
                 medical: item?.MEDICAL_EXPERTISE[0]?.content1,
+                id: item.id,
               };
               this.isTop = e.containerPoint.y - 275 + "px";
               this.isLeft = e.containerPoint.x - 171 + "px";
@@ -676,7 +761,7 @@
     // 鏌ョ湅鏇村>>
     viewMoreClick() {
       uni.navigateTo({
-        url: "/pages/character/detail",
+        url: "/pages/character/detail?id=" + this.currentMark.id,
       });
     },
   },
@@ -892,10 +977,18 @@
   animation: ripple-animation 1s infinite linear;
 }
 
-@keyframes ripple-animation {
+/* @keyframes ripple-animation {
   to {
     transform: translate(-50%, -50%) scale(0);
     opacity: 0;
   }
+} */
+
+::v-deep .cleanupBtn{
+  right: 60px !important;
+}
+
+::v-deep .widget_input{
+  min-width: 240px !important;
 }
 </style>

--
Gitblit v1.9.1