1
YM
2024-07-26 e00361c6bcbb1a56f6dcda22b91bdfcb2736e263
src/pages/academicSchools/index.vue
@@ -135,12 +135,21 @@
            <el-button
              size="mini"
              style="background-color: #244a7b; color: #fff"
              @click="searchFun"
              @click="
                () => {
                  searchKey = '';
                  formData.page = 1;
                  searchFun();
                }
              "
              >搜索</el-button
            >
            <el-button size="mini" @click="resetForm">重置</el-button>
          </div>
        </el-form>
        <div style="font-size: 14px">
          注:当前数据较多,可能会出现卡死的情况,请尽量精确查询或查看某一类数据关系
        </div>
        <div class="fromTable">
          <el-table
            :data="tableData"
@@ -201,7 +210,7 @@
              background
              @size-change="handleSizeChangeForm"
              @current-change="handleCurrentChangeForm"
              :current-page="formData.currentPage"
              :current-page="formData.page"
              :page-sizes="[10, 20, 60, 100]"
              :page-size="formData.pageSize"
              layout="total, sizes, prev, pager, next, jumper"
@@ -290,7 +299,7 @@
        <p>医学分科: {{ detailData.medicalBranch }}</p>
        <p>小传:{{ detailData.biography }}</p>
      </div>
      <div class="btn" @click="spaceTimeArr(detailData.id)">查看更多>>></div>
      <div class="btn" @click="spaceTimeArr(detailData.id, 1)">查看更多>>></div>
    </div>
    <div id="schoolDialog" class="customDialog">
      <div class="title">
@@ -303,7 +312,7 @@
        <p>代表性著作:{{ detailData.works }}</p>
        <p>学派思想: {{ detailData.thought }}</p>
      </div>
      <div class="btn" @click="spaceTimeArr(detailData.id)">查看更多>>></div>
      <div class="btn" @click="spaceTimeArr(detailData.id, 2)">查看更多>>></div>
    </div>
    <el-drawer
      title="地址列表"
@@ -313,12 +322,12 @@
      class="customDrawer"
    >
      <div class="drawerContent">
        <div class="drawerTips">選中的地址:</div>
        <div class="drawerTips">选中的地址:</div>
        <div class="drawerTable">
          <div class="tableTabs">
            <div class="inputItem">
              <el-input
                placeholder="請輸入地名搜索"
                placeholder="请输入地名搜索"
                v-model="tableKey"
                class="input-with-select"
                @keyup.enter="searchAddress"
@@ -332,7 +341,7 @@
              </el-input>
            </div>
            <div class="selectItem">
              <el-select v-model="dynastyId" placeholder="請選擇時期">
              <el-select v-model="dynastyId" placeholder="请选择时期">
                <el-option
                  v-for="item in dynastyData"
                  :key="item.dynastyId + '0'"
@@ -352,14 +361,14 @@
          >
            <el-table-column type="selection" width="55"> </el-table-column>
            <el-table-column prop="currentName" label="地名"> </el-table-column>
            <el-table-column width="250" label="年代區間">
            <el-table-column width="250" label="年代区间">
              <template slot-scope="scope">{{
                scope.row.start + "-" + scope.row.end
              }}</template>
            </el-table-column>
            <el-table-column
              prop="dynastyName"
              label="時期"
              label="时期"
              width="250"
              show-overflow-tooltip
            >
@@ -372,7 +381,7 @@
            background
            @size-change="handleSizeChange"
            @current-change="handleCurrentChange"
            :current-page="currentPage"
            :current-page="page"
            :page-sizes="[10, 20, 60, 100]"
            :page-size="pageSize"
            layout="total, sizes, prev, pager, next, jumper"
@@ -381,9 +390,9 @@
          </el-pagination>
        </div>
        <div class="drawerBtn">
          <el-button @click="setCurrent">全選當前頁</el-button>
          <el-button @click="setCurrent('cancle')">取消全選</el-button>
          <el-button @click="drawer = false" type="primary">確定</el-button>
          <el-button @click="setCurrent">全选当前页</el-button>
          <el-button @click="setCurrent('cancle')">取消全选</el-button>
          <el-button @click="drawer = false" type="primary">确定</el-button>
        </div>
      </div>
    </el-drawer>
@@ -399,7 +408,7 @@
  getSocialDistinction,
  getDynastyAll,
  getAdvancedData,
  getPlaceInfo,
  getPlaceInfo
} from "@/api/index.js";
import * as echarts from "echarts";
export default {
@@ -435,7 +444,7 @@
          name: "活动地"
        },
        {
          name: "学术图谱"
          name: "学术流派"
        }
      ],
      // 当前人物信息
@@ -454,7 +463,7 @@
        page: 1,
        currentPage: 1,
        pageSize: 10,
        total: 0,
        total: 0
      },
      showPerson: false,
      personList: [],
@@ -499,6 +508,7 @@
  methods: {
    // 搜索地址
    searchAddress() {
      this.page = 1;
      this.gridData = [];
      this.getAddressList();
    },
@@ -606,15 +616,17 @@
        page: 1,
        currentPage: 1,
        pageSize: 10,
        total: 0,
        total: 0
      };
      this.formData.page = 1;
      this.searchFun();
    },
    searchFun() {
      const palceData = this.formData.actively?.map((item) => {
        return {
          ancientName: item.ancientName ?? "",
          dynastyId: item.dynastyId,
          currentName: item.currentName,
          currentName: item.currentName
        };
      });
      let Obj = {
@@ -625,7 +637,7 @@
        socialDistinctionIdList: this.formData.socialIdentity,
        dynastyIdList: this.formData.period,
        page: this.formData.page,
        pageSize: this.formData.pageSize,
        pageSize: this.formData.pageSize
      };
      // // 搜索
      getAdvancedData(Obj).then((res) => {
@@ -712,7 +724,7 @@
                    }
                  });
                  return data;
                }).join() ?? "",
                }).join() ?? ""
            };
          });
          if (res?.npage) {
@@ -1344,6 +1356,8 @@
        const e = params.event;
        const div = document.getElementById("customDialog");
        div.style.display = "block";
        const div2 = document.getElementById("schoolDialog");
        div2.style.display = "none";
        div.style.left = e.offsetX + 50 + "px";
        div.style.top = e.offsetY - 50 + "px";
        const data = this.infoOfPersons?.find((i) => i.id == id);
@@ -1378,25 +1392,25 @@
        const e = params.event;
        const div = document.getElementById("schoolDialog");
        div.style.display = "block";
        const div2 = document.getElementById("customDialog");
        div2.style.display = "none";
        div.style.left = e.offsetX + 50 + "px";
        div.style.top = e.offsetY - 50 + "px";
        const data = this.infoOfSchools?.find((i) => i.schoolId == id);
        console.log(data);
        debugger
        const obj = {
          id: params.data.id,
          id: id,
          name: data.name[0],
          character: data.important_PEOPLE
            ? data.important_PEOPLE.map((item) => item.content2).join("、")
          character: data.important_people
            ? data.important_people.map((item) => item.personName).join("、")
            : "",
          skilledDoctor: data.important_PHYSICIAN
            ? data.important_PHYSICIAN.map((item) => item.content2).join("、")
          skilledDoctor: data.important_physician
            ? data.important_physician.map((item) => item.personName).join("、")
            : "",
          works: data.important_WORK
            ? data.important_WORK.map((item) => item.content).join("、")
          works: data.important_work
            ? data.important_work.map((item) => item.literatureTitle).join("、")
            : "",
          thought: data.school_THOUGHT
            ? data.school_THOUGHT.map((item) => item.content).join("、")
          thought: data.school_introduction
            ? data.school_introduction.join("、")
            : ""
        };
        this.detailData = obj;
@@ -1406,6 +1420,8 @@
    closeDom() {
      const div = document.getElementById("customDialog");
      div.style.display = "none";
      const div2 = document.getElementById("schoolDialog");
      div2.style.display = "none";
    },
    // 基础搜索
@@ -1458,11 +1474,18 @@
    },
    // 关系图 点击里面的元素
    spaceTimeArr(id) {
      // 关系图的数据
      uni.navigateTo({
        url: "/pages/character/detail?id=" + id
      });
    spaceTimeArr(id, type) {
      if (type == 1) {
        // 人物
        uni.navigateTo({
          url: "/pages/character/detail?id=" + id
        });
      } else {
        // 学派
        uni.navigateTo({
          url: "/pages/academicGenres/detail?id=" + id
        });
      }
    },
    // 获取朝代echarts的数据
@@ -1630,7 +1653,7 @@
  min-height: 240px;
  display: none;
  position: fixed;
  z-index: 99999999;
  z-index: 9999999;
  border-radius: 2px;
  background: #fff;
}
@@ -1703,16 +1726,17 @@
.hotSearch {
  font-size: 0.12rem;
  color: #2c2c2c;
}
  li {
    color: #244a7b;
    margin: 0 0.1rem;
    color: #244a7b;
    &.active {
      color: #027edc;
      font-weight: bold;
    }
  }
.hotSearch li {
  color: #244a7b;
  margin: 0 0.1rem;
  color: #244a7b;
}
.hotSearch li.active {
  color: #027edc;
  font-weight: bold;
}
.searchDialog {
@@ -1734,7 +1758,10 @@
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 0 10px -3px #000;
  .closeBtn {
}
.personDialog .closeBtn {
    position: absolute;
    right: -10px;
    top: -10px;
@@ -1746,7 +1773,6 @@
    color: #f56c6c;
    cursor: pointer;
  }
}
.selectActivelyBox {
  cursor: pointer;