From 12d99c9a0dc366df61e10101b3e0821e1add6adb Mon Sep 17 00:00:00 2001 From: QYF-GitLab1 <1940665526@qq.com> Date: 星期二, 23 七月 2024 17:40:13 +0800 Subject: [PATCH] 1 --- src/pages/academicSchools/index.vue | 947 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 939 insertions(+), 8 deletions(-) diff --git a/src/pages/academicSchools/index.vue b/src/pages/academicSchools/index.vue index 6f61006..8ecc0ed 100644 --- a/src/pages/academicSchools/index.vue +++ b/src/pages/academicSchools/index.vue @@ -1,19 +1,950 @@ <template> - <view> - <headNav :idIndex="6" text="瀛︽湳娴佹淳" /> + <view + style="width: 100%; height: 100%; display: flex; flex-direction: column" + > + <headNav :idIndex="'6'" text="瀛︽湳娴佹淳" /> + <!-- 楂樼骇鎼滅储 --> + <view + style=" + padding-left: 0.6rem; + margin-top: 0.1rem; + display: flex; + position: relative; + " + > + <advancedSearch + @onSearch="onSearch" + placehold="璇疯緭鍏ュ叧閿瓧" + :isAvancedTrue="false" + :keyword="searchKey" + /> + <view + @click="isAvancedClick" + style=" + color: #244a7b; + cursor: pointer; + font-size: 0.12rem; + margin-left: 0.35rem; + line-height: 0.58rem; + " + >楂樼骇鎼滅储 {{ isAdvancedSearch ? "鈭�" : "鈭�" }}</view + > + <!-- 鐑棬鎼滅储 --> + <view class="flex flex-center hotSearch" style="margin-left: 2rem"> + 鐑棬鎼滅储锛� + <ul class="flex" style="margin-right: 10rpx"> + <li + @click="onSearch({ text: item }, index)" + :class="{ cursor: true, active: hotAciveIndex === index }" + v-for="(item, index) in hotKeyList" + :key="item" + > + {{ item.name }} + </li> + </ul> + </view> + <view v-if="isAdvancedSearch" class="searchDialog"> + <h3 style="margin-bottom: 0.2rem">楂樼骇鎼滅储</h3> + <el-form label-width="100px" :model="formData" size="mini"> + <el-row> + <el-col :span="8"> + <el-form-item label="濮撳悕/鍒悕锛�"> + <el-input v-model="formData.name"></el-input> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="娲诲姩鍦帮細"> + <el-select + style="width: 100%" + v-model="formData.actively" + placeholder="璇烽�夋嫨娲诲姩鍦�" + > + <!-- <el-option label="鍖哄煙涓�" value="shanghai"></el-option> --> + <!-- <el-option label="鍖哄煙浜�" value="beijing"></el-option> --> + </el-select> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="浣滃搧锛�"> + <el-input v-model="formData.works"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="8"> + <el-form-item label="浜虹墿鏍囩锛�"> + <el-select + style="width: 100%" + v-model="formData.personTags" + placeholder="璇烽�夋嫨浜虹墿鏍囩" + > + <!-- <el-option label="鍖哄煙涓�" value="shanghai"></el-option> --> + <!-- <el-option label="鍖哄煙浜�" value="beijing"></el-option> --> + </el-select> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="绀句細韬唤锛�"> + <el-select + style="width: 100%" + v-model="formData.socialIdentity" + placeholder="璇烽�夋嫨绀句細韬唤" + > + <!-- <el-option label="鍖哄煙涓�" value="shanghai"></el-option> --> + <!-- <el-option label="鍖哄煙浜�" value="beijing"></el-option> --> + </el-select> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="鏃舵湡锛�"> + <el-select + style="width: 100%" + v-model="formData.period" + placeholder="璇烽�夋嫨鏃舵湡" + > + <!-- <el-option label="鍖哄煙涓�" value="shanghai"></el-option> --> + <!-- <el-option label="鍖哄煙浜�" value="beijing"></el-option> --> + </el-select> + </el-form-item> + </el-col> + </el-row> + </el-form> + <div style="text-align: right"> + <el-button type="primary" size="mini">鎼滅储</el-button> + <el-button size="mini">閲嶇疆</el-button> + </div> + </view> + <div v-if="showPerson" class="personDialog"> + <i + class="el-icon-circle-close closeBtn" + @click=" + () => { + showPerson = false; + } + " + ></i> + <el-table :data="personList" style="width: 100%"> + <el-table-column prop="name" label="濮撳悕"> + <template slot-scope="scope"> + <span + style="color: #409eff; cursor: pointer" + @click=" + () => { + currentId = scope.row.id; + getData(); + } + " + >{{ scope.row.name }}</span + > + </template> + </el-table-column> + <el-table-column prop="age" label="鏃朵唬"> </el-table-column> + <el-table-column prop="nativePlace" label="绫嶈疮"> </el-table-column> + <el-table-column prop="alias" label="鍒悕"> </el-table-column> + <el-table-column prop="division" label="鍖诲鍒嗙"> </el-table-column> + </el-table> + </div> + </view> + + <!-- 鍏崇郴琛ㄥ湴鍥� --> + <div + id="relation" + style="margin-top: 0.1rem; flex: 1; width: 100%; position: relative" + > + <div + v-if="!loading && relationships.length == 0" + style=" + position: absolute; + top: 30%; + left: 0; + right: 0; + text-align: center; + font-size: 0.2rem; + color: #666; + " + > + 鏆傛棤鐩稿叧鏁版嵁 + </div> + <div + v-if="loading" + v-loading="loading" + style=" + position: absolute; + top: 30%; + left: 0; + right: 0; + text-align: center; + font-size: 0.2rem; + color: #666; + " + ></div> + </div> + <div id="customDialog" class="customDialog"> + <div class="title"> + <span>{{ detailData.name }}</span> + <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> + </div> + <div class="btn" @click="spaceTimeArr(detailData.id)">鏌ョ湅鏇村>>></div> + </div> </view> </template> <script> -// import * as echarts from "echarts"; -// import axios from "axios"; +import { + getPersonData, + getHotSearch, + getPDataStatistics, + academicSearch, +} from "@/api/index.js"; +import * as echarts from "echarts"; export default { data() { - return {}; + return { + loading: true, + hotAciveIndex: "", + currentId: 21682, + // echarts鏁版嵁 + nodes: [], + // echarts涓よ�呯殑鍏崇郴 + relationships: [], + // 鐑棬鎼滅储 + hotKeyList: [], + searchKey: "", + + // 鍒嗙被 + categories: [], + // 浜虹墿淇℃伅 + infoOfPersons: [], + // 瀛︽湳娴佹淳 + infoOfSchools: [], + // 褰撳墠浜虹墿淇℃伅 + ownInfo: null, + detailData: { + name: "", + }, + isAdvancedSearch: false, + formData: { + name: "", + actively: "", + works: "", + personTags: "", + socialIdentity: "", + period: "" + }, + showPerson: false, + personList: [], + personPageInfo: { + totalCount: 0, + page: 1, + limit: 10, + }, + }; }, - onLoad(options) {}, - methods: {} + mounted() { + this.getData(); + // this.echartsArr(); + this.hotSearch(); + // 鐩戝惉绐楀彛澶у皬鍙樺寲 + window.addEventListener("resize", this.relation); + }, + onLoad(options) { + this.searchKey = options.keyword; + }, + methods: { + // 鑾峰彇浜虹墿鍏崇郴 + getPersonInfo(arr, str, newArr, order, type, parent) { + for (let i = 0; i < arr.length; i++) { + const ele = arr[i]; + const personInfo = this.infoOfPersons.find( + (item) => item.id == ele.personId + ); + if (personInfo?.id) { + const obj = { + personId: ele.personId, + parentId: parent.id, + relationTypeName: ele.relationTypeName, + parentName: parent?.NAME[0]?.content1 ?? parent.parentName, + name: personInfo?.NAME[0]?.content1, + category: type, + symbolSize: 15, + }; + if (order > 80) { + order = 80; + } + if (str == "literatureList") { + obj.relationTypeName = ele.literatureName; + } + if (str == "schoolList") { + const nameData = this.infoOfSchools?.find( + (i) => i.schoolId == ele.schoolId + ); + obj.relationTypeName = nameData?.name[0]; + } + if (str == "placeList") { + obj.relationTypeName = ele.ancientName ?? ele.currentName; + } + newArr.push(obj); + if (ele["kinList"] && ele["kinList"]?.length) { + order += 15; + this.getPersonInfo( + ele["kinList"], + "kinList", + newArr, + order, + 0, + personInfo + ); + } + if (ele["teacherStudentList"] && ele["teacherStudentList"]?.length) { + order += 15; + this.getPersonInfo( + ele["teacherStudentList"], + "teacherStudentList", + newArr, + order, + 1, + personInfo + ); + } + if (ele["literatureList"] && ele["literatureList"]?.length) { + const data = this.changeLiterature( + ele["literatureList"], + "literatureList" + ); + order += 15; + this.getPersonInfo( + data, + "literatureList", + newArr, + order, + 2, + personInfo + ); + } + + if (ele["socialList"] && ele["socialList"]?.length) { + const data = this.changeLiterature(ele["socialList"], "socialList"); + order += 15; + this.getPersonInfo( + data, + "socialList", + newArr, + order, + 3, + personInfo + ); + } + if (ele["placeList"] && ele["placeList"]?.length) { + const data = this.changeLiterature(ele["placeList"], "placeList"); + order += 15; + this.getPersonInfo(data, "placeList", newArr, order, 4, personInfo); + } + if (ele["schoolList"] && ele["schoolList"]?.length) { + const data = this.changeLiterature(ele["schoolList"], "schoolList"); + order += 15; + this.getPersonInfo( + data, + "schoolList", + newArr, + order, + 5, + personInfo + ); + } + } + } + }, + + // 澶勭悊鏁版嵁 + changeLiterature(arr, str) { + for (let i = 0; i < arr.length; i++) { + const ele = arr[i]; + if (!ele.personId && ele.personList?.length) { + ele.literatureList = []; + ele.personId = this.ownInfo.id; + if (ele["personList"] && ele["personList"]?.length) { + for (let j = 0; j < ele["personList"].length; j++) { + const item = ele["personList"][j]; + const data = item[str]?.map((e) => { + return { + ...e, + personId: item.personId, + }; + }); + if (ele[str] && data?.length) { + ele[str].push(...data); + } + } + } + } + } + return arr; + }, + + // 鏂囩尞 + + //鏁扮粍鍘婚噸 + deduplicateArray(arr, idKey) { + // 浣跨敤涓�涓緟鍔╁璞℃潵璺熻釜宸茬粡瑙佽繃鐨処D + const seen = {}; + // 浣跨敤filter鏂规硶杩囨护鏁扮粍 + const deduplicatedArray = arr.filter((item) => { + // 鑾峰彇褰撳墠瀵硅薄鐨処D + const id = item[idKey]; + // 濡傛灉ID鍦ㄨ緟鍔╁璞′腑涓嶅瓨鍦紝鍒欏皢鍏舵坊鍔犲埌瀵硅薄骞惰繑鍥瀟rue + if (!seen[id]) { + seen[id] = true; + return true; + } + // 濡傛灉ID宸茬粡瀛樺湪锛岃繑鍥瀎alse + return false; + }); + + return deduplicatedArray; + }, + + // 鏌ヨ璇︽儏 + getData() { + this.loading = true; + getPersonData(this.currentId).then((res) => { + console.log(res,'res') + this.nodes = []; + this.relationships = []; + let kinData = []; + let teacher = []; + let literature = []; + let social = []; + let place = []; + let school = []; + if (res && res.success && res.object) { + this.infoOfPersons = res.object?.infoOfPersons; + this.infoOfSchools = res.object?.infoOfSchools; + console.log(res.object); + if (res.object?.personChain) { + this.ownInfo = this.infoOfPersons.find( + (item) => item.id == res.object?.personChain.personId + ); + const obj = res.object?.personChain; + if (obj.kinList?.length) { + let newArr = []; + this.categories.push({ name: "浜插睘鍏崇郴" }); + this.getPersonInfo( + obj.kinList, + "kinList", + newArr, + 1, + 0, + this.ownInfo + ); + kinData = [...newArr]; + } + if (obj.teacherStudentList?.length) { + this.categories.push({ name: "甯堟壙鍏崇郴" }); + let newArr = []; + this.getPersonInfo( + obj.teacherStudentList, + "teacherStudentList", + newArr, + 1, + 1, + this.ownInfo + ); + teacher = [...newArr]; + } + if (obj.literatureList?.length) { + this.categories.push({ name: "鏂囩尞浣滃搧" }); + let newArr = []; + const data = this.changeLiterature( + obj.literatureList, + "literatureList" + ); + this.getPersonInfo( + data, + "literatureList", + newArr, + 1, + 2, + this.ownInfo + ); + literature = [...newArr]; + } + if (obj.socialList?.length) { + let newArr = []; + this.categories.push({ name: "绀句細鍏崇郴" }); + const data = this.changeLiterature(obj.socialList, "socialList"); + this.getPersonInfo( + data, + "socialList", + newArr, + 1, + 3, + this.ownInfo + ); + social = [...newArr]; + } + if (obj.placeList?.length) { + this.categories.push({ name: "娲诲姩鍦�" }); + let newArr = []; + const data = this.changeLiterature(obj.placeList, "placeList"); + this.getPersonInfo(data, "placeList", newArr, 1, 4, this.ownInfo); + place = [...newArr]; + } + if (obj.schoolList?.length) { + this.categories.push({ name: "瀛︽湳娴佹淳" }); + let newArr = []; + const data = this.changeLiterature(obj.schoolList, "schoolList"); + this.getPersonInfo( + data, + "schoolList", + newArr, + 1, + 5, + this.ownInfo + ); + school = [...newArr]; + } + } + const personData = [ + ...kinData, + ...teacher, + ...literature, + ...social, + ...place, + ...school, + ]; + + personData.forEach((item) => { + this.nodes.push({ + name: item.name, + id: item.personId, + ...item, + }); + let obj = { + source: item.parentName, + target: item.name, + relation: item.relationTypeName || "", // 濡傛灉瀛樺湪 relationName 瀛楁鍒欎娇鐢紝鍚﹀垯涓虹┖瀛楃涓� + }; + this.relationships.push(obj); + }); + } + this.loading = false; + this.relation(); + }); + }, + // 鍏崇郴鍥捐氨 + relation() { + var chartDom = document.getElementById("relation"); + var myChart = echarts.init(chartDom); + // 鍋囪鎮ㄦ湁鑺傜偣鍚嶇О鍜屽畠浠箣闂寸殑鍏崇郴鏁版嵁 + var nodes = this.deduplicateArray(this.nodes, "id"); + var relationships = this.relationships; + + nodes = nodes.map((item) => { + let size = item.symbolSize; + for (let i = 0; i < relationships.length; i++) { + const linkItem = relationships[i]; + if (linkItem.source == item.parentName) { + size += 5; + } + if (linkItem.target == item.parentName) { + size += 5; + } + } + return { + ...item, + symbolSize: size > 80 ? 80 : size, + }; + }); + + let FontSize = 12; // 瀛椾綋澶у皬 + let BorderWidth = 2; // 杈规澶у皬 + let SymbolSize = 80; // 灏哄璺濈 + let Distance = 10; + // 涓嶅悓灏哄涓嬩慨鏀筫charts鐨勫瓧浣� + if (window.innerWidth > 2560 && window.innerWidth <= 3840) { + FontSize = 20; + BorderWidth = 5; + SymbolSize = 90; + Distance = 33; + } else if (window.innerWidth > 1920 && window.innerWidth <= 2560) { + FontSize = 18; + BorderWidth = 4; + SymbolSize = 80; + Distance = 22; + } else if (window.innerWidth >= 1366 && window.innerWidth <= 1920) { + FontSize = 14; + BorderWidth = 4; + SymbolSize = 70; + Distance = 22; + } + // 鏍规嵁鍏崇郴鏁版嵁鐢熸垚杩炴帴绾� + var links = []; + relationships.forEach((relationship, i) => { + var sourceIndex = nodes.findIndex( + (node) => node.parentName === relationship.source + ); + var targetIndex = nodes.findIndex( + (node) => node.name === relationship.target + ); + if (relationship.relation) { + if (sourceIndex !== -1 && targetIndex !== -1) { + links.push({ + source: sourceIndex, + target: targetIndex, + label: { + show: true, + formatter: function (params) { + // 浣跨敤鍑芥暟鍔ㄦ�佺敓鎴愭爣绛惧唴瀹� + // return relationships.find(rel => rel.source === nodes[params.data + // .source] && rel.target === nodes[params.data.target]) + // .relation; + return relationship.relation; + }, // 璁剧疆鍏崇郴鏍囩鍐呭涓�"Child-Parent" + color: "#2C2C2C", + fontSize: FontSize - 2, + backgroundColor: "rgba(255, 255, 255, 1)", + padding: [3, 8], + borderRadius: 30, + position: "middle", // 璁剧疆鏍囩鏂囨湰鍦ㄧ嚎鐨勪腑闂翠綅缃笂灞呬腑鏄剧ず + // z: -1, // 璁剧疆鏍囩鐨剒杞撮珮搴︼紝浣垮叾姣旇繛鎺ョ嚎鏇撮珮 + distance: -10, // 灏嗘爣绛炬斁缃湪杩炴帴绾夸笂 + }, + }); + } + } + }); + // 鏍规嵁nodes鍔ㄦ�佺敓鎴愯妭鐐规暟鎹� + var nodeData = nodes; + var option; + option = { + legend: [ + { + left: 20, + top: 20, + orient: "vertical", + data: this.categories.map(function (a) { + return a.name; + }), + }, + ], + series: [ + { + type: "graph", + legendHoverLink: false, + layout: "force", + symbolSize: 15, + data: nodeData, + links: links, + categories: this.categories, + roam: true, + label: { + show: true, + position: "right", + formatter: "{b}", + }, + scaleLimit: { + min: 0.4, + max: 2, + }, + lineStyle: { + color: "source", + curveness: 0.2, + }, + emphasis: { + focus: "adjacency", + lineStyle: { + width: 5, + }, + }, + force: { + repulsion: 600, + edgeLength: 300, + }, + }, + ], + }; + // 璁剧疆鐐瑰嚮浜嬩欢鐩戝惉 + myChart.off("click"); + myChart.on("click", (params) => { + if (params.dataType === "node") { + this.creatDom(params); + } + }); + myChart.setOption(option); + }, + creatDom(params) { + const e = params.event; + const div = document.getElementById("customDialog"); + div.style.display = "block"; + div.style.left = e.offsetX + 50 + "px"; + div.style.top = e.offsetY - 50 + "px"; + const data = this.infoOfPersons?.find( + (i) => i.id == params.data.personId + ); + 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 ?? "", + }; + this.detailData = obj; + }, + closeDom() { + const div = document.getElementById("customDialog"); + div.style.display = "none"; + }, + // 鍩虹鎼滅储 + onSearch(val, index) { + console.log(val); + if (index !== undefined) { + // 鐑棬鎼滅储鍏抽敭瀛楋紝鐩存帴鏌ヨ鏁版嵁 + this.searchKey = ""; + this.hotAciveIndex = index; + this.currentId = val.text.id; + this.getData(); + } else { + this.hotAciveIndex = ""; + // 鎼滅储鍏堟樉绀轰汉鐗╁垪琛� + this.personPageInfo.page = 1; + this.searchPerson(val.text); + } + }, + // 鏍规嵁鍏抽敭瀛楁绱汉鐗� + searchPerson(key) { + academicSearch({ + keyword: key, + page: this.personPageInfo.page, + pageSize: this.personPageInfo.limit, + }).then((res) => { + this.personList = res.list.map((item) => { + return { + id: item.personId, + name: item.name, + age: + item.periodList && item.periodList.length + ? item.periodList[0].content2 + : "-", + nativePlace: + item.nativePlaceList && item.nativePlaceList.length + ? item.nativePlaceList[0].content1 + : "-", + alias: + item.aliasList && item.aliasList.length + ? item.aliasList[0].content2 + : "-", + division: + item.medicalBranchList && item.medicalBranchList.length + ? item.medicalBranchList[0].content1 + : "-", + }; + }); + this.showPerson = true; + }); + }, + // 鍏崇郴鍥� 鐐瑰嚮閲岄潰鐨勫厓绱� + spaceTimeArr(id) { + // 鍏崇郴鍥剧殑鏁版嵁 + uni.navigateTo({ + url: "/pages/character/detail?id=" + id, + }); + }, + // 鑾峰彇鏈濅唬echarts鐨勬暟鎹� + echartsArr() { + getDataStatistics().then((res) => { + res.object.dynastyStatistic.details.map((item, index) => { + // this.dynasty.id = item.dynastyId + // this.dynasty.name = item.dynastyName + // this.dynasty.coord = item.count + this.dynasty[index].id = item.dynastyId; + this.dynasty[index].name = item.dynastyName; + this.dynasty[index].coord = item.count; + }); + }); + }, + // 鐑棬鎼滅储 + hotSearch() { + getHotSearch().then((res) => { + const indexList = Object.keys(res.object); + indexList.sort((a, b) => parseInt(b) - parseInt(a)); + this.hotKeyList = indexList.map((item) => { + return { + id: item, + name: res.object[item], + }; + }); + }); + }, + isAvancedClick() { + this.isAdvancedSearch = !this.isAdvancedSearch; + // this.$nextTick(() => { + // var box1Height = document.querySelector(".fbox").offsetHeight; + // // let box2Height= document.querySelector('.fbox1').style.height = box1Height + 'px'; + // let box2Height = document.querySelector(".fbox1").offsetHeight; + // if (box1Height <= box2Height) { + // document.querySelector(".fbox1").style.height = box1Height + "px"; + // } + // }); + }, + }, }; </script> -<style></style> +<style> +#relation { + width: 100%; + height: 100%; + position: relative; + background-image: url("../../static/image/characterRelationBg.png"); + background-size: 100% 100%; + background-repeat: no-repeat; + background-position: center; +} + +.customDialog { + width: 300px; + min-height: 240px; + display: none; + position: fixed; + z-index: 99999999; + border-radius: 2px; + background: #fff; +} + +.customDialog .title { + width: 100%; + height: 35px; + display: flex; + justify-content: space-between; + align-items: center; + padding: 10px; + box-sizing: border-box; + background-color: rgb(221, 232, 246); + font-size: 14px; +} +.customDialog .title span:nth-child(1) { + font-size: 16px; + font-weight: 600; +} + +.customDialog .title span:nth-child(2) { + color: rgb(95, 127, 168); + cursor: pointer; +} + +.customDialog .content { + padding: 15px; + box-sizing: border-box; +} + +.customDialog .content p { + margin-bottom: 5px; + display: -webkit-box; /* 鏄剧ず澶氳鏂囨湰瀹瑰櫒 */ + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; /*鏄剧ず琛屾暟*/ + overflow: hidden; /*闅愯棌澶氬嚭閮ㄥ垎鏂囧瓧*/ + text-overflow: ellipsis; /*鐢ㄧ渷鐣ュ彿浠f浛澶氬嚭閮ㄥ垎鏂囧瓧*/ +} + +.customDialog .btn { + display: flex; + justify-content: center; + align-items: center; + color: rgb(95, 127, 168); + cursor: pointer; + font-size: 14px; + height: 35px; +} + +@media screen and (min-width: 2560px) and (max-width: 3840px) { +} + +@media screen and (min-width: 1366px) and (max-width: 1920px) { +} + +::v-deep .uni-input-placeholder { + line-height: 1; + font-size: 0.12rem; +} + +::v-deep .ffff { + border-radius: 0.5rem; +} + +::v-deep .widget_button { + border-radius: 0.5rem; + margin: 0.02rem; +} + +.hotSearch { + font-size: 0.12rem; + color: #2c2c2c; + + li { + color: #244a7b; + margin: 0 0.1rem; + color: #244a7b; + &.active { + color: #027edc; + font-weight: bold; + } + } +} + +.searchDialog { + position: absolute; + top: 0.68rem; + left: 0; + right: 0; + z-index: 999; + padding: 0.1rem 0.4rem; + background: #fff; + min-height: 2rem; +} + +.personDialog { + position: absolute; + top: 0.68rem; + z-index: 999; + padding: 0.1rem; + background: #fff; + border-radius: 6px; + box-shadow: 0 0 10px -3px #000; + .closeBtn { + position: absolute; + right: -10px; + top: -10px; + width: 24px; + height: 24px; + font-size: 24px; + background-color: #fff; + border-radius: 50%; + color: #f56c6c; + cursor: pointer; + } +} +</style> -- Gitblit v1.9.1