| | |
| | | label="序号" |
| | | width="70" |
| | | ></el-table-column> |
| | | <el-table-column prop="personName" width="120" label="姓名"> |
| | | <el-table-column prop="name" width="120" label="姓名"> |
| | | <template slot-scope="scope"> |
| | | <a |
| | | style="cursor: pointer; color: #027edc" |
| | | @click="gotoDetail(scope.row.id)" |
| | | >{{ scope.row.personName }}</a |
| | | @click=" |
| | | () => { |
| | | currentId = scope.row.id; |
| | | getData(); |
| | | isAdvancedSearch = false; |
| | | } |
| | | " |
| | | >{{ scope.row.name }}</a |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="personAlias" label="别名"></el-table-column> |
| | | <el-table-column prop="palce" label="活动地"></el-table-column> |
| | | <el-table-column prop="alias" label="别名"></el-table-column> |
| | | <el-table-column prop="place" label="活动地"></el-table-column> |
| | | <el-table-column |
| | | prop="birthYear" |
| | | prop="medicalBranch" |
| | | label="医学分科" |
| | | width="120" |
| | | ></el-table-column> |
| | | <el-table-column prop="deathYear" label="作品"></el-table-column> |
| | | <el-table-column prop="workName" label="作品"></el-table-column> |
| | | <el-table-column |
| | | prop="nativePlace" |
| | | prop="personLabel" |
| | | width="120" |
| | | label="人物标签" |
| | | ></el-table-column> |
| | |
| | | width="120" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | prop="official" |
| | | prop="period" |
| | | width="120" |
| | | label="时期" |
| | | ></el-table-column> |
| | | </el-table> |
| | | <div style="text-align: right;padding-top: 20px;"> |
| | | <el-button style="width: 120px;background-color: #244a7b; color: #fff" |
| | | >确认</el-button |
| | | <div class="drawerPage"> |
| | | <el-pagination |
| | | class="paging flex" |
| | | background |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="formData.currentPage" |
| | | :page-sizes="[10, 20, 60, 100]" |
| | | :page-size="formData.pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="formData.total" |
| | | > |
| | | </el-pagination> |
| | | </div> |
| | | </div> |
| | | </view> |
| | |
| | | style="margin-top: 0.1rem; flex: 1; width: 100%; position: relative" |
| | | > |
| | | <div |
| | | v-if="!loading && relationships.length == 0" |
| | | v-if="!loading && links.length == 0" |
| | | style=" |
| | | position: absolute; |
| | | top: 30%; |
| | |
| | | getPersonTag, |
| | | getSocialDistinction, |
| | | getDynastyAll, |
| | | getAdvancedData, |
| | | getPlaceInfo, |
| | | } from "@/api/index.js"; |
| | | import * as echarts from "echarts"; |
| | |
| | | personTags: "", |
| | | socialIdentity: "", |
| | | period: "", |
| | | page: 1, |
| | | currentPage: 1, |
| | | pageSize: 10, |
| | | total: 0, |
| | | }, |
| | | showPerson: false, |
| | | personList: [], |
| | |
| | | index: i, |
| | | }; |
| | | }); |
| | | setTimeout(() => { |
| | | this.multipleTableSelection.forEach((row) => { |
| | | this.$refs.multipleTable.toggleRowSelection(row); |
| | | }); |
| | | this.formData.actively = this.multipleTableSelection; |
| | | }, 2000); |
| | | } else { |
| | | this.gridData = []; |
| | | } |
| | |
| | | name: "", |
| | | actively: [], |
| | | works: "", |
| | | personTags: "", |
| | | socialIdentity: "", |
| | | period: "", |
| | | personTags: [], |
| | | socialIdentity: [], |
| | | period: [], |
| | | page: 1, |
| | | currentPage: 1, |
| | | pageSize: 10, |
| | | total: 0, |
| | | }; |
| | | }, |
| | | |
| | | searchFun() { |
| | | console.log(this.formData); |
| | | const palceData = this.formData.actively?.map((item) => { |
| | | return { |
| | | ancientName: item.ancientName ?? "", |
| | | dynastyId: item.dynastyId, |
| | | currentName: item.currentName, |
| | | }; |
| | | }); |
| | | let Obj = { |
| | | keyword: this.formData.name, |
| | | placeList: [...palceData], |
| | | literatureName: this.formData.works, |
| | | personTagIdList: this.formData.personTags, |
| | | socialDistinctionIdList: this.formData.socialIdentity, |
| | | dynastyIdList: this.formData.period, |
| | | page: this.formData.page, |
| | | pageSize: this.formData.pageSize, |
| | | }; |
| | | // // 搜索 |
| | | getAdvancedData(Obj).then((res) => { |
| | | if (res?.success) { |
| | | this.tableData = res.list.map((item) => { |
| | | return { |
| | | id: item.personId, |
| | | name: |
| | | item?.NAME?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | alias: |
| | | item?.ALIAS?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | place: |
| | | item?.NATIVE_PLACE?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | medicalBranch: |
| | | item?.MEDICAL_BRANCH?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | socialDistinction: |
| | | item?.SOCIAL_IDENTITY?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | period: |
| | | item?.PERIOD?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | workName: |
| | | item?.REPRESENTATIVE_WORKS?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | personLabel: |
| | | item?.PERSON_LABEL?.map((e, i) => { |
| | | i += 1; |
| | | return e["content" + i]; |
| | | }).join("、") ?? "", |
| | | }; |
| | | }); |
| | | // 总数量 |
| | | this.formData.total = res.npage.totalCount; |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | selectActively() { |
| | |
| | | } |
| | | return arr; |
| | | }, |
| | | |
| | | //数组去重 |
| | | deduplicateArray(arr, idKey) { |
| | | // 使用一个辅助对象来跟踪已经见过的ID |
| | |
| | | const div = document.getElementById("customDialog"); |
| | | div.style.display = "none"; |
| | | }, |
| | | |
| | | // 基础搜索 |
| | | onSearch(val, index) { |
| | | console.log(val); |
| | |
| | | this.searchPerson(val.text); |
| | | } |
| | | }, |
| | | |
| | | // 根据关键字检索人物 |
| | | searchPerson(key) { |
| | | academicSearch({ |
| | |
| | | this.showPerson = true; |
| | | }); |
| | | }, |
| | | |
| | | // 关系图 点击里面的元素 |
| | | spaceTimeArr(id) { |
| | | // 关系图的数据 |
| | |
| | | url: "/pages/character/detail?id=" + id, |
| | | }); |
| | | }, |
| | | |
| | | // 获取朝代echarts的数据 |
| | | echartsArr() { |
| | | getDataStatistics().then((res) => { |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | // 热门搜索 |
| | | hotSearch() { |
| | | getHotSearch().then((res) => { |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | isAvancedClick() { |
| | | this.isAdvancedSearch = !this.isAdvancedSearch; |
| | | // this.$nextTick(() => { |
| | |
| | | box-sizing: border-box; |
| | | } |
| | | |
| | | .drawerPage |
| | | >>> .el-pagination.is-background |
| | | .el-pager |
| | | li:not(.disabled).active { |
| | | } |
| | | |
| | | .drawerBtn { |
| | | display: flex; |
| | | justify-content: flex-end; |