| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-select |
| | | v-model="selectedClan" |
| | | placeholder="请选择家族" |
| | | @change="handleClanChange" |
| | | style="margin-bottom: 20px; width: 200px;" |
| | | > |
| | | <el-option |
| | | v-for="clan in clanList" |
| | | :key="clan.id" |
| | | :label="clan.name" |
| | | :value="clan.id" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | 6565565665 |
| | | <!-- <div class="text" style="background-color: #FEF7FC;" > |
| | | <h1 style="font-size: 21px;">{{ greeting +',' + user.userName }}</h1></div> --> |
| | | <div class="image-container" style="background-color: #FEF7FC;"> |
| | | <img class="top-image" src="../../assets/images/zhang.png" alt="Top Image"> |
| | | <img class="top-image" src="../../assets/images/awd.png" alt="Top Image"> |
| | | </div> |
| | | <superMindmap v-if="showMindMap" :active='active' :data="mapData" @activeChange="activeChange" class="mind-map-container "> |
| | | |
| | |
| | | showMindMap: false, |
| | | user: {}, |
| | | greeting: "", |
| | | rootList:[] |
| | | rootList:[], |
| | | // 新增家族列表 |
| | | clanList: [], |
| | | // 新增当前选中的家族 ID |
| | | selectedClan: null |
| | | }; |
| | | }, |
| | | mounted() { |
| | |
| | | }) |
| | | |
| | | }, |
| | | |
| | | // 加载对应家族的家谱图数据 |
| | | loadMindMapData(clanId) { |
| | | listRoot(10, clanId).then(response => { |
| | | this.rootList = response.data; |
| | | const mindMapData = this.rootList[0]; |
| | | console.log(mindMapData); |
| | | console.log('9999'); |
| | | this.mapData = this.drawData(mindMapData); |
| | | this.showMindMap = true; |
| | | }); |
| | | }, |
| | | |
| | | // 处理家族选择变化 |
| | | handleClanChange(clanId) { |
| | | this.loadMindMapData(clanId); |
| | | }, |
| | | |
| | | drawData(mpdata) { |
| | | let tp = "https://www.bendudu.com:8080/profile/upload/2023/03/19/test7_20230319222030A007.jpg" |
| | | if (mpdata == null) |
| | | return null; |
| | | |
| | | var data = { |
| | | "label": mpdata['spouse'] != null ? eval(mpdata['spouse']).nickName : '', |
| | | "prop": mpdata['nickName'], |
| | | "url": mpdata['url'] != null ? 'https://www.bendudu.com:8080/' + mpdata['url'] : tp, |
| | | "purl": mpdata['spouse'] != null ? (mpdata['spouse'].url != null ? 'https://www.bendudu.com:8080/' + mpdata['spouse'].url : tp) : tp, |
| | | "id": mpdata['userId'], |
| | | "spid": mpdata['spouseId'] != null ? mpdata['spouseId'] : '', |
| | | "link": mpdata['nickName'], |
| | | "children": [] |
| | | }; |
| | | |
| | | if (mpdata['childList'] != null) { |
| | | for (var i = 0; i < mpdata['childList'].length; i++) { |
| | | var dt = { |
| | | "label": mpdata['childList'][i]['spouse'] != null ? eval(mpdata['childList'][i]['spouse']).nickName : "", |
| | | "prop": mpdata['childList'][i]['nickName'], |
| | | "url": mpdata['childList'][i]['url'] != null ? 'https://www.bendudu.com:8080/' + mpdata['childList'][i]['url'] : tp, |
| | | "id": mpdata['childList'][i]['userId'], |
| | | "spid": mpdata['childList'][i]['spouseId'] != null ? mpdata['childList'][i]['spouseId'] : '', |
| | | "purl": (mpdata['childList'][i]['spouse'] != null) ? (mpdata['childList'][i]['spouse'].url != null ? 'https://www.bendudu.com:8080/' + mpdata['childList'][i]['spouse'].url : tp) : tp, |
| | | "link": mpdata['childList'][i]['nickName'], |
| | | "children": [] |
| | | }; |
| | | if (mpdata['childList'][i]['childList'] != null) { |
| | | for (var j = 0; j < mpdata['childList'][i]['childList'].length; j++) { |
| | | dt['children'].push(this.drawData(mpdata['childList'][i]['childList'][j])); |
| | | } |
| | | } |
| | | data['children'].push(dt); |
| | | } |
| | | } |
| | | return data; |
| | | }, |
| | | drawData(mpdata) { |
| | | let tp = "https://www.bendudu.com:8080/profile/upload/2023/03/19/test7_20230319222030A007.jpg" |
| | | if (mpdata == null) |