From dc1c7947711669dffdf3f1ae0519b378261c559f Mon Sep 17 00:00:00 2001 From: QYF-GitLab1 <1940665526@qq.com> Date: 星期五, 19 七月 2024 16:02:16 +0800 Subject: [PATCH] 1 --- src/pages/academicSchools/index.vue | 173 ++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 120 insertions(+), 53 deletions(-) diff --git a/src/pages/academicSchools/index.vue b/src/pages/academicSchools/index.vue index 3fdc4ac..074ea68 100644 --- a/src/pages/academicSchools/index.vue +++ b/src/pages/academicSchools/index.vue @@ -284,32 +284,96 @@ const personInfo = this.infoOfPersons.find( (item) => item.id == ele.personId ); - const obj = { - personId: ele.personId, - parentId: parent.id, - id2: personInfo.id, - relationTypeId: ele.relationTypeId, - relationTypeName: ele.relationTypeName, - parentName: parent?.NAME[0]?.content1 ?? parent.parentName, - name2: personInfo?.NAME[0]?.content1, - category: type, - }; - 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[str] && ele[str]?.length) { - order++; - this.getPersonInfo(ele[str], str, newArr, order, type, personInfo); + if (personInfo?.id) { + const obj = { + personId: ele.personId, + parentId: parent.id, + id2: personInfo.id, + relationTypeName: ele.relationTypeName, + parentName: parent?.NAME[0]?.content1 ?? parent.parentName, + name2: personInfo?.NAME[0]?.content1, + category: type, + }; + 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++; + this.getPersonInfo( + ele["kinList"], + "kinList", + newArr, + order, + 0, + personInfo + ); + } + if (ele["teacherStudentList"] && ele["teacherStudentList"]?.length) { + order++; + this.getPersonInfo( + ele["teacherStudentList"], + "teacherStudentList", + newArr, + order, + 1, + personInfo + ); + } + if (ele["literatureList"] && ele["literatureList"]?.length) { + const data = this.changeLiterature( + ele["literatureList"], + "literatureList" + ); + order++; + this.getPersonInfo( + data, + "literatureList", + newArr, + order, + 2, + personInfo + ); + } + + if (ele["socialList"] && ele["socialList"]?.length) { + const data = this.changeLiterature(ele["socialList"], "socialList"); + order++; + this.getPersonInfo( + data, + "socialList", + newArr, + order, + 3, + personInfo + ); + } + if (ele["placeList"] && ele["placeList"]?.length) { + const data = this.changeLiterature(ele["placeList"], "placeList"); + order++; + this.getPersonInfo(data, "placeList", newArr, order, 4, personInfo); + } + if (ele["schoolList"] && ele["schoolList"]?.length) { + const data = this.changeLiterature(ele["schoolList"], "schoolList"); + order++; + this.getPersonInfo( + data, + "schoolList", + newArr, + order, + 5, + personInfo + ); + } } } }, @@ -373,7 +437,7 @@ let place = []; let school = []; if (res && res.success && res.object) { - console.log(res.object); + // console.log(res.object); this.infoOfPersons = res.object?.infoOfPersons; this.infoOfSchools = res.object?.infoOfSchools; if (res.object?.personChain) { @@ -423,6 +487,7 @@ this.ownInfo ); literature = [...newArr]; + // console.log(literature, "literature"); } if (obj.socialList?.length) { let newArr = []; @@ -444,7 +509,6 @@ const data = this.changeLiterature(obj.placeList, "placeList"); this.getPersonInfo(data, "placeList", newArr, 1, 4, this.ownInfo); place = [...newArr]; - // console.log(place, "placeList"); } if (obj.schoolList?.length) { this.categories.push({ name: "瀛︽湳娴佹淳" }); @@ -455,11 +519,10 @@ "schoolList", newArr, 1, - 3, + 5, this.ownInfo ); school = [...newArr]; - // console.log(school, "schoolList"); } } const personData = [ @@ -470,7 +533,14 @@ ...place, ...school, ]; - // console.log(personData) + // const k = personData.filter((item) => item.category == 0); + // const t = personData.filter((item) => item.category == 1); + // const l = personData.filter((item) => item.category == 2); + // const o = personData.filter((item) => item.category == 3); + // const p = personData.filter((item) => item.category == 4); + // const s = personData.filter((item) => item.category == 5); + // const nodesList = [...k, ...t, ...l, ...o, ...p, ...s]; + // console.log(nodesList); personData.forEach((item) => { let exists1 = this.nodes.some( (node) => @@ -575,65 +645,62 @@ var nodeData = nodes; var option; option = { - title: { - text: "", - // subtext: '', - left: "center", - top: FontSize + 10, - textStyle: { - fontSize: FontSize, // 璁剧疆鏍囬鏂囧瓧澶у皬涓� 18px - }, - subtextStyle: { - fontSize: FontSize, // 璁剧疆鍓爣棰樻枃瀛楀ぇ灏忎负 14px - color: "#2C2C2C", - }, - }, backgroundColor: { type: "image", image: "/static/image/characterRelationBg.png", - // repeat: 'repeat-x', // 鏄惁骞抽摵锛屽彲浠ユ槸 'repeat-x', 'repeat-y', 'no-repeat' size: "100% 100%", // 鑳屾櫙鍥剧墖鐨勫昂瀵革紝鍙互鏄櫨鍒嗘瘮鎴栬�呭儚绱� position: "center center", // 鑳屾櫙鍥剧墖鐨勪綅缃紝鍙互鏄� top, bottom, middle 鎴栬�呯櫨鍒嗘瘮 }, tooltip: {}, legend: [ { - // selectedMode: 'single', + left: 20, + top: 20, + orient: "vertical", data: this.categories.map(function (a) { return a.name; }), }, ], - animationDurationUpdate: 1500, - animationEasingUpdate: "quinticInOut", series: [ { type: "graph", - legendHoverLink: false, + legendHoverLink: true, layout: "force", + symbolSize: 40, data: nodeData, links: links, categories: this.categories, roam: true, label: { + show: true, position: "right", formatter: "{b}", }, + labelLayout: { + hideOverlap: true, + }, + scaleLimit: { + min: 0.4, + max: 2, + }, lineStyle: { color: "source", - curveness: 0.3, + curveness: 0.2, }, emphasis: { focus: "adjacency", lineStyle: { - width: 10, + width: 5, }, + }, + force: { + repulsion: 600, + edgeLength: 300, }, }, ], }; - // 灏嗙敓鎴愮殑杩炴帴绾挎坊鍔犲埌echarts鍥捐〃鐨刼ption涓� - // option.series[0].links = links; // 璁剧疆鐐瑰嚮浜嬩欢鐩戝惉 myChart.off("click"); myChart.on("click", (params) => { -- Gitblit v1.9.1