| | |
| | | <view |
| | | style="width: 100%; height: 100%; display: flex; flex-direction: column" |
| | | > |
| | | <headNav :idIndex="'6'" text="学术流派" /> |
| | | <headNav :idIndex="'6'" text="学术图谱" /> |
| | | <!-- 高级搜索 --> |
| | | <view |
| | | style=" |
| | |
| | | <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" |
| | |
| | | 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" |
| | |
| | | } |
| | | " |
| | | ></i> |
| | | <el-table :data="personList" style="width: 100%"> |
| | | <el-table :data="personList" style="width: 100%" :max-height="600"> |
| | | <el-table-column prop="name" label="姓名"> |
| | | <template slot-scope="scope"> |
| | | <span |
| | |
| | | <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"> |
| | |
| | | <span @click="closeDom">关闭</span> |
| | | </div> |
| | | <div class="content"> |
| | | <p>姓名:{{ detailData.name }}</p> |
| | | <p>别名:{{ detailData.alias }}</p> |
| | | <p>籍贯:{{ detailData.nativePlace }}</p> |
| | | <p>医学分科: {{ detailData.medicalBranch }}</p> |
| | | <p>小传:{{ detailData.biography }}</p> |
| | | <p>代表人物:{{ detailData.character }}</p> |
| | | <p>重要医家:{{ detailData.skilledDoctor }}</p> |
| | | <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="地址列表" |
| | |
| | | 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" |
| | |
| | | getSocialDistinction, |
| | | getDynastyAll, |
| | | getAdvancedData, |
| | | getPlaceInfo, |
| | | getPlaceInfo |
| | | } from "@/api/index.js"; |
| | | import * as echarts from "echarts"; |
| | | export default { |
| | |
| | | name: "活动地", |
| | | }, |
| | | { |
| | | name: "学术流派", |
| | | }, |
| | | name: "学术流派" |
| | | } |
| | | ], |
| | | // 当前人物信息 |
| | | ownInfo: null, |
| | |
| | | page: 1, |
| | | currentPage: 1, |
| | | pageSize: 10, |
| | | total: 0, |
| | | total: 0 |
| | | }, |
| | | showPerson: false, |
| | | personList: [], |
| | |
| | | methods: { |
| | | // 搜索地址 |
| | | searchAddress() { |
| | | this.page = 1; |
| | | this.gridData = []; |
| | | this.getAddressList(); |
| | | }, |
| | | // 分页 |
| | | // 分页 |
| | | handleSizeChange(val) { |
| | | this.pageSize = val; |
| | | this.getAddressList(); |
| | |
| | | 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 = { |
| | |
| | | socialDistinctionIdList: this.formData.socialIdentity, |
| | | dynastyIdList: this.formData.period, |
| | | page: this.formData.page, |
| | | pageSize: this.formData.pageSize, |
| | | pageSize: this.formData.pageSize |
| | | }; |
| | | // // 搜索 |
| | | getAdvancedData(Obj).then((res) => { |
| | |
| | | } |
| | | }); |
| | | return data; |
| | | }).join() ?? "", |
| | | }).join() ?? "" |
| | | }; |
| | | }); |
| | | if (res?.npage) { |
| | |
| | | // place = [...newArr]; |
| | | // } |
| | | // if (obj.schoolList?.length) { |
| | | // this.categories.push({ name: "学术流派" }); |
| | | // this.categories.push({ name: "学术图谱" }); |
| | | // let newArr = []; |
| | | // const data = this.changeLiterature(obj.schoolList, "schoolList"); |
| | | // this.getPersonInfo( |
| | |
| | | if (item.placeList && item.placeList.length) { |
| | | this.handleData(item.placeList, { ...item, thisType: 3 }); |
| | | } |
| | | // 学术流派 |
| | | // 学术图谱 |
| | | if (item.schoolList && item.schoolList.length) { |
| | | this.handleData(item.schoolList, { ...item, thisType: 4 }); |
| | | } |
| | |
| | | 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); |
| | |
| | | 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.infoOfPersons?.find((i) => i.id == id); |
| | | const data = this.infoOfSchools?.find((i) => i.schoolId == id); |
| | | const obj = { |
| | | id: params.data.id, |
| | | name: |
| | | data?.NAME?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | alias: |
| | | data?.ALIAS?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | nativePlace: |
| | | data?.NATIVE_PLACE?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | medicalBranch: |
| | | data?.MEDICAL_BRANCH?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | biography: data?.BIOGRAPHY ?? "", |
| | | id: id, |
| | | name: data.name[0], |
| | | character: data.important_people |
| | | ? data.important_people.map((item) => item.personName).join("、") |
| | | : "", |
| | | skilledDoctor: data.important_physician |
| | | ? data.important_physician.map((item) => item.personName).join("、") |
| | | : "", |
| | | works: data.important_work |
| | | ? data.important_work.map((item) => item.literatureTitle).join("、") |
| | | : "", |
| | | thought: data.school_introduction |
| | | ? data.school_introduction.join("、") |
| | | : "" |
| | | }; |
| | | this.detailData = obj; |
| | | } |
| | |
| | | closeDom() { |
| | | const div = document.getElementById("customDialog"); |
| | | div.style.display = "none"; |
| | | const div2 = document.getElementById("schoolDialog"); |
| | | div2.style.display = "none"; |
| | | }, |
| | | |
| | | // 基础搜索 |
| | |
| | | searchPerson(key) { |
| | | academicSearch({ |
| | | keyword: key, |
| | | page: this.personPageInfo.page, |
| | | pageSize: this.personPageInfo.limit, |
| | | page: 1, |
| | | pageSize: 999 |
| | | }).then((res) => { |
| | | this.personList = res.list.map((item) => { |
| | | return { |
| | |
| | | }, |
| | | |
| | | // 关系图 点击里面的元素 |
| | | 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的数据 |
| | |
| | | min-height: 240px; |
| | | display: none; |
| | | position: fixed; |
| | | z-index: 99999999; |
| | | z-index: 9999999; |
| | | border-radius: 2px; |
| | | background: #fff; |
| | | } |