提交 cae896b6 authored 作者: 王腾飞's avatar 王腾飞

1115

上级 a48fbc92
<template>
<div id="app">
<router-view></router-view>
<keep-alive>
<router-view v-if="$route.meta.keepAlive"></router-view>
</keep-alive>
<router-view v-if="!$route.meta.keepAlive"></router-view>
</div>
</template>
......
......@@ -140,7 +140,8 @@ export const asyncRouterMap = [{
name: 'resourcecommit',
meta: {
title: '资源提交表单',
routerIds: ['0902']
routerIds: ['0902'],
keepAlive: true
},
hidden:true
},{
......@@ -241,6 +242,25 @@ export const asyncRouterMap = [{
},
hidden: true
}]
},{
path: '/submission/metadatamange',
redirect: '/submission/metadatamange/metadataplan',
component: _import('submission/metadatamange/index'),
alwaysShow: true,
meta: {
title: '元数据管理',
routerIds: ['0904']
},
children: [{
path: 'metadataplan',
component: _import('submission/metadatamange/metadataplan'),
name: 'metadataplan',
meta: {
title: '自定义元数据方案',
routerIds: ['090401'],
search:true
},
}]
}]
},
{
......
......@@ -54,7 +54,7 @@
<img class="peeson_pic" src="~@/assets/img/pic_user.png" alt="人物默认图" v-else>
<div class="content">
<p class="tit">{{item.keyword}}</p>
<p class="work">职业:{{item.works}}</p>
<p class="work">职业:{{item.occupation}}</p>
<p class="text">
{{item.description}}
</p>
......
......@@ -319,6 +319,14 @@ export default {
this.isShow=false;
}
},
beforeRouteLeave(to, from, next) {
if (to.path === '/submission/resourcecommit') {
to.meta.keepAlive = true;
} else {
to.meta.keepAlive = false;
}
next();
}
}
</script>
<style lang="scss">
......
......@@ -60,7 +60,7 @@ export default {
return true
}
return false
}
},
}
}
</script>
......
<template>
<div class="box">
<div class="metaDataTop">
<em v-if="this.$route.query.entityType == 1">人物实体</em>
<em v-if="this.$route.query.entityType == 3">地理位置实体</em>
<em v-if="this.$route.query.entityType == 2">组织机构实体</em>
<em v-if="entityTypeFlag == 1">人物实体</em>
<em v-if="entityTypeFlag == 3">地理位置实体</em>
<em v-if="entityTypeFlag == 2">组织机构实体</em>
<a><span class="" @click="backTo"><i class="el-icon-back" ></i> 返回</span> </a>
</div>
<div class="contentBox">
......@@ -17,16 +17,16 @@
<dd>
<ul>
<li>{{ characterDetailData.name }}</li>
<li v-if="this.$route.query.entityType == 1">{{ characterDetailData.occupation }} | {{ characterDetailData.dateofbirth }}-{{ characterDetailData.elapsedtime }} | {{ characterDetailData.nationality }}</li>
<li v-else-if="this.$route.query.entityType == 3">{{ characterDetailData.detailedaddress }}</li>
<li v-else-if="this.$route.query.entityType == 2">{{ characterDetailData.type }} | {{ characterDetailData.foundertime }} | {{ characterDetailData.abbreviation }}</li>
<li v-if="entityTypeFlag == 1">{{ characterDetailData.occupation }} | {{ characterDetailData.dateofbirth }}-{{ characterDetailData.elapsedtime }} | {{ characterDetailData.nationality }}</li>
<li v-else-if="entityTypeFlag == 3">{{ characterDetailData.detailedaddress }}</li>
<li v-else-if="entityTypeFlag == 2">{{ characterDetailData.type }} | {{ characterDetailData.foundertime }} | {{ characterDetailData.abbreviation }}</li>
<li v-else>{{ characterDetailData.emperorName }} | {{ characterDetailData.startyear }}-{{ characterDetailData.endyear }} | {{ characterDetailData.yearnumber }}</li>
<li>{{ characterDetailData.description }}</li>
</ul>
</dd>
</dl>
<h2 id="moduleId1">>基本信息</h2>
<table class="basicInfo" v-if="this.$route.query.entityType == 1">
<table class="basicInfo" v-if="entityTypeFlag == 1">
<tr>
<td>姓名:</td>
<td>{{ characterDetailData.name }}</td>
......@@ -58,7 +58,7 @@
<td></td>
</tr>
</table>
<table class="basicInfo" v-if="this.$route.query.entityType == 3">
<table class="basicInfo" v-if="entityTypeFlag == 3">
<tr>
<td>名称:</td>
<td>{{ characterDetailData.name }}</td>
......@@ -78,7 +78,7 @@
<td></td>
</tr>
</table>
<table class="basicInfo" v-if="this.$route.query.entityType == 2">
<table class="basicInfo" v-if="entityTypeFlag == 2">
<tr>
<td>名称:</td>
<td>{{ characterDetailData.name }}</td>
......@@ -172,18 +172,18 @@
</table>
<div class="echartsBox" id="moduleId4 moduleId5">
<section class="left">
<h2 v-if="this.$route.query.entityType == 1">>人物关系</h2>
<h2 v-else-if="this.$route.query.entityType == 3">>地点实体关系</h2>
<h2 v-else-if="this.$route.query.entityType == 2">>组织机构实体关系</h2>
<h2 v-if="entityTypeFlag == 1">>人物关系</h2>
<h2 v-else-if="entityTypeFlag == 3">>地点实体关系</h2>
<h2 v-else-if="entityTypeFlag == 2">>组织机构实体关系</h2>
<h2 v-else>>时间实体关系</h2>
<div>
<div id="relationChart" style="width:100%; height:100%;"></div>
</div>
</section>
<section class="right">
<h2 v-if="this.$route.query.entityType == 1">>人物关键词</h2>
<h2 v-else-if="this.$route.query.entityType == 3">>地点关键词</h2>
<h2 v-else-if="this.$route.query.entityType == 2">>组织机构关键词</h2>
<h2 v-if="entityTypeFlag == 1">>人物关键词</h2>
<h2 v-else-if="entityTypeFlag == 3">>地点关键词</h2>
<h2 v-else-if="entityTypeFlag == 2">>组织机构关键词</h2>
<h2 v-else>>时间实体关系</h2>
<div>
<div id="myChart"></div>
......@@ -193,7 +193,7 @@
<h2 id="moduleId6">>相关人物</h2>
<div class="relateCharacer">
<section v-for="(item, key) in relatePeopleData" :key="key">
<dl>
<dl @click="getThisItemDetail(item)">
<dt>
<img :src="item.img" alt="">
</dt>
......@@ -210,7 +210,7 @@
<h2 id="moduleId7">>相关机构</h2>
<div class="relateCharacer">
<section v-for="(item, key) in relateOrganData" :key="key">
<dl>
<dl @click="getThisItemDetail(item)">
<dt>
<img :src="item.img" alt="">
</dt>
......@@ -227,7 +227,7 @@
<h2 id="moduleId8">>相关地点</h2>
<div class="relateCharacer">
<section v-for="(item, key) in relateAreaData" :key="key">
<dl>
<dl @click="getThisItemDetail(item)">
<dt>
<img :src="item.img" alt="">
</dt>
......@@ -455,6 +455,8 @@ export default {
data() {
return {
relateResListState: null,
entityTypeFlag: this.$route.query.entityType ? this.$route.query.entityType : null,
entityId: this.$route.query.id ? this.$route.query.id : null,
relationChart: null,
keywordChart:null,
chartData:[],
......@@ -539,8 +541,8 @@ export default {
},
getDetailAPI() {//人物实体详情查询
var _this = this;
if (this.$route.query.entityType == 1) {
characterDetailAPI(this.$route.query.id)
if (this.entityTypeFlag == 1) {
characterDetailAPI(this.entityId)
.then(res => {
if (res.data.code === 0) {
_this.characterDetailData = res.data.data;
......@@ -548,8 +550,9 @@ export default {
_this.relateResListState = 1;
}
})
} else if (this.$route.query.entityType == 3) {
localtionDetailAPI(this.$route.query.id)
} else if (this.entityTypeFlag == 3) {
console.log(this.entityTypeFlag,'MMM')
localtionDetailAPI(this.entityId)
.then(res => {
if (res.data.code === 0) {
_this.characterDetailData = res.data.data;
......@@ -557,8 +560,8 @@ export default {
_this.relateResListState = 3;
}
})
} else if (this.$route.query.entityType == 2) {
organDetailAPI(this.$route.query.id)
} else if (this.entityTypeFlag == 2) {
organDetailAPI(this.entityId)
.then(res => {
if (res.data.code === 0) {
_this.characterDetailData = res.data.data;
......@@ -568,7 +571,7 @@ export default {
}
})
} else {
timerDetailAPI(this.$route.query.id)
timerDetailAPI(this.entityId)
.then(res => {
if (res.data.code === 0) {
_this.characterDetailData = res.data.data;
......@@ -596,6 +599,7 @@ export default {
console.log(this.peopleName)
relateCharacterAPI(this.peopleName)
.then(res => {
console.log(res, 'OPOPOP999')
if (res.data.code === 0) {
_this.relatePeopleData = res.data.data.slice(0, 6);
}
......@@ -814,27 +818,53 @@ export default {
},
getKeyWordsRelation() {//获取人物关系的
setTimeout(() => {
console.log(this.peopleName,"*(*(*(")
keyWordsRelationAPI(this.peopleName)//先写死
.then(res => {
console.log(this.peopleName,"*(*(*(111111111")
// this.characterRelationData = res.data.data;
//{name: "工程建设情况", showName: "工程建设情况", symbolSize: 50, category: 0},
if(res.data.code===0){
let resData=res.data.data;
console.log(resData,"565656566")
if (resData.length != 0) {
let data=[{name:resData[0]['relationword'] , showName: resData[0]['relationword'], category: 0}];
let data=[
{
name:resData[0]['relationword'] ,
showName: resData[0]['relationword'],
category: 0,
entityTypeFlag: resData[0].state,
entityId: resData[0].bripid
}
];
let links=[];
resData.forEach(list=>{
let state=Number(list.state)
data.push({name: list.brelationword, showName:list.brelationword , category: state})
data.push({
name: list.brelationword,
showName:list.brelationword ,
category: state,
entityTypeFlag: list.state,
entityId: list.bripid
})
links.push({source:list.brelationword, target: resData[0]['relationword'], value: list.relation})
})
relateOptaion.series[0]['data']=data;
relateOptaion.series[0]['links']=links;
relateOptaion.series[0].categories[0]['name']=resData[0]['relationword'];
this.relationChart.setOption(relateOptaion)
this.relationChart.setOption(relateOptaion);
var _this = this;
this.relationChart.on('click', function (params) {
console.log(params.data, "小红真美")//获取点击的头像的数据信息
window.scrollTo(0, 0)
_this.entityTypeFlag = params.data.entityTypeFlag;
_this.entityId = params.data.entityId;
_this.peopleName = params.data.name;
_this.getDetailAPI();
_this.getRelateCharacterAPI();
_this.getRelateOrganAPI();
_this.getRelateAreaAPI();
_this.getRelateResourceListAPI();
_this.getKeyWordsRelation();
_this.drawLine();
});
} else {
let data=[{name:this.peopleName, showName: this.peopleName, category: 0}];
relateOptaion.series[0]['data']=data;
......@@ -848,6 +878,18 @@ export default {
},
backTo(){
this.$router.go(-1)
},
getThisItemDetail(item) {
window.scrollTo(0, 0)
this.entityTypeFlag = item.state;
this.entityId = item.id;
this.getDetailAPI();
this.getRelateCharacterAPI();
this.getRelateOrganAPI();
this.getRelateAreaAPI();
this.getRelateResourceListAPI();
this.getKeyWordsRelation();
this.drawLine();
}
}
}
......@@ -901,6 +943,7 @@ export default {
img {
width:100%;
height:auto;
max-height:100%;
}
}
dd {
......@@ -992,12 +1035,14 @@ export default {
}
dl {
flex:1;
cursor:pointer;
dt {
width:70px;
height:90px;
img {
width:100%;
height:100%;
height:auto;
max-height:100%;
}
}
dd {
......
......@@ -203,10 +203,10 @@
<h2>>已链接资源</h2>
<img :src="imgPathX1" alt="">
</div>
<ul v-if="isShowListOfLinkedRes">
<ul v-if="isShowListOfLinkedRes" class="listUl">
<li v-for="(item, key) in linkedResData" :key="key" @click="goResourceDetail(item)">
<span>
<a href="javascript:;" :title="item.name">{{ item.name ? item.name.length > 22 ? item.name.substring(0, 22) + '...' : item.name : '' }}</a>
<a href="javascript:;" :title="item.name">{{ item.name ? item.name.length > 20 ? item.name.substring(0, 20) + '...' : item.name : '' }}</a>
</span>
</li>
</ul>
......@@ -270,6 +270,7 @@ export default {
],
alreadyEntityData: [],//已选择实体的数据
entityDetail: {},//点击实体列表的实体,得到的对应的详情
alreadyEntityIdData: []
}
},
mounted() {
......@@ -330,19 +331,28 @@ export default {
}
})
}
this.alreadyEntityData.map((item, index) => {
if (this.alreadyEntityIdData.indexOf(item.id) > -1) {
return;
} else {
this.alreadyEntityIdData.push(item.id);
}
})
},
deleteItem(item, key) {
this.alreadyEntityData.splice(key, 1)
this.alreadyEntityIdData.splice(key, 1)
item.choosedAlready = false;
this.getEntityList();
},
closeMark() {
this.searchForm.keyword = null;
this.getEntityList();
//this.getEntityList();
this.$emit('changeStateVal', false);
this.dataList.forEach((val, key) => {
val.choosedAlready = false;
})
this.alreadyEntityData = [];
// this.dataList.forEach((val, key) => {
// val.choosedAlready = false;
// })
//this.alreadyEntityData = [];
},
giveEntityToParent() {
this.$emit('getEntity', this.alreadyEntityData);
......@@ -351,13 +361,18 @@ export default {
getEntityList() {
getEntityListAPI(this.searchForm)
.then(res => {
console.log(res, 'KLKLK')
if (res.data.code === 0) {
console.log(res.data.data.list, "OPL")
this.totalCount = res.data.data.total;
this.dataList = res.data.data.list;
this.dataList.map((item, index) => {
this.$set(item, 'stateVal', null)
this.$set(item, 'choosedAlready', false);
if (this.alreadyEntityIdData.indexOf(item.id) > -1) {
item.choosedAlready = true;
} else {
item.choosedAlready = false;
}
if (item.state == 1) {
item.stateVal = '历史人物'
} else if (item.state == 2) {
......@@ -374,9 +389,9 @@ export default {
},
getSearchResult() {
this.getEntityList();
//this.alreadyEntityData()
},
pagesizeFun(val){
console.log(val,"()()999")
this.searchForm.pageSize = val;
this.getEntityList()
},
......@@ -392,7 +407,6 @@ export default {
getlinkedRes() {
getlinkedResAPI(this.linkedResParams)
.then(res => {
console.log(res, '32323231231231232');
if (res.data.code === 0) {
this.linkedResData = res.data.data
}
......@@ -428,7 +442,7 @@ export default {
}
.entityBox {
width:69.27%;
height:51%;
height:53%;
background:#fff;
margin:2.9% auto;
padding:0 30px;
......@@ -483,7 +497,7 @@ export default {
}
.dataList {
width:100%;
max-height:420px;
max-height:410px;
overflow-y:auto;
&::-webkit-scrollbar {
width:5px;
......@@ -516,7 +530,8 @@ export default {
margin-right:14px;
img {
width:100%;
height:100%;
max-height:100%;
height:auto;
}
}
dd {
......
<template>
<div>
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'metadatamange',
data() {
return {
}
}
}
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
<template>
<div class="metaDataPlanBox">
<div class="metaDataTop">
<em>自定义元数据方案</em>
<span>刷新</span>
</div>
<div class="metaDataPlanList">
<h2>元数据方案列表</h2>
<el-tabs v-model="activeName" type="card" @tab-click="handleClick">
<el-tab-pane label="用户管理" name="first">用户管理</el-tab-pane>
<el-tab-pane label="配置管理" name="second">配置管理</el-tab-pane>
<el-tab-pane label="角色管理" name="third">角色管理</el-tab-pane>
<el-tab-pane label="定时任务补偿" name="fourth">定时任务补偿</el-tab-pane>
</el-tabs>
</div>
</div>
</template>
<script>
export default {
data() {
return {
activeName: 'first'
}
},
methods: {
handleClick(tab, event) {
console.log(tab, event);
}
}
}
</script>
<style lang="less" scoped>
.metaDataPlanBox {
width:100%;
padding:37px 40px 20px;
display:flex;
flex-direction:column;
height:100%;
}
.metaDataTop {
width:100%;
padding-bottom:23px;
em {
color:#3F4560;
font-size:20px;
font-style:normal;
}
span {
float:right;
width:50px;
font-size:14px;
color:#868BA3;
background:url(../../../assets/img/sx.png) no-repeat;
background-size:12px 12px;
background-position:37px 2px;
}
}
</style>
\ No newline at end of file
......@@ -306,6 +306,17 @@ export default {
this.getNowTime();
this.formSixBtn();
},
watch: {
$route: {
handler: function(val, oldVal){
console.log(oldVal, "()()(111");
if (val) {
oldVal.meta.keepAlive = false;
}
},
deep: true
}
},
methods: {
showMark() {
this.isShowMark = true;
......@@ -561,7 +572,11 @@ export default {
this.formData.formationTime = defaultDate;
console.log(this.formData.formationTime,"()***")
},
}
},
beforeRouterLeave(to, from, next) {
from.meta.keepAlive = false;
next();
},
}
</script>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论