线条颜色随机方式更改
This commit is contained in:
parent
9f54205cde
commit
d89ef19138
|
|
@ -294,3 +294,13 @@ export function voyageRegPeopleUpload(data) {
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 批量导入航次数据
|
||||||
|
export function voyageRegImport(data) {
|
||||||
|
return request({
|
||||||
|
url: '/voyage/reg/upload.htm',
|
||||||
|
method: 'post',
|
||||||
|
type: 'multipart/form-data',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -86,3 +86,13 @@ export function getParamsList(query) {
|
||||||
params: query
|
params: query
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 首页统计数据
|
||||||
|
export function statisticsNums(data) {
|
||||||
|
return request({
|
||||||
|
url: '/report/main.htm',
|
||||||
|
method: 'post',
|
||||||
|
type: 'application/x-www-form-urlencoded',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<Header v-if="name!='biologyIndex' && name!='genovariation' && name!='physicalIndex' && name!='physicalDataSearchCTD' && name!='physicalDataDelivery' && name!='phoneVideoIndex'" />
|
<Header v-if="name!='biologyIndex' && name!='genovariation' && name!='physicalIndex' && name!='physicalDataSearchCTD' && name!='physicalDataDelivery' && name!='phoneVideoIndex' && name!='dataSearch'" />
|
||||||
<div class="container container_a">
|
<div class="container container_a">
|
||||||
<router-view />
|
<router-view />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -9,10 +9,10 @@
|
||||||
<ul>
|
<ul>
|
||||||
|
|
||||||
<li><router-link to="/">首页</router-link></li>
|
<li><router-link to="/">首页</router-link></li>
|
||||||
<li><router-link to="/">样品发现</router-link></li>
|
<!-- <li><router-link to="/">样品发现</router-link></li>-->
|
||||||
<li><router-link to="/">数据资源</router-link></li>
|
<li><router-link to="/">数据资源</router-link></li>
|
||||||
<li><router-link to="/">在线服务</router-link></li>
|
<li><router-link to="/">在线服务</router-link></li>
|
||||||
<li><router-link to="/container/news">新闻动态</router-link></li>
|
<!-- <li><router-link to="/container/news">新闻动态</router-link></li>-->
|
||||||
<li><router-link to="/">通知公告</router-link></li>
|
<li><router-link to="/">通知公告</router-link></li>
|
||||||
<li><router-link to="/">联系我们</router-link></li>
|
<li><router-link to="/">联系我们</router-link></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
||||||
|
|
@ -261,6 +261,14 @@ export default {
|
||||||
Cookies.set('JSESSIONID', res.map.FrameSessionId);
|
Cookies.set('JSESSIONID', res.map.FrameSessionId);
|
||||||
this.isLogin = res.login
|
this.isLogin = res.login
|
||||||
localStorage.setItem('isLogin', res.login)
|
localStorage.setItem('isLogin', res.login)
|
||||||
|
const dicts = res.map.FrameDictArray
|
||||||
|
let treatmentStateDict = []
|
||||||
|
dicts.forEach(item => {
|
||||||
|
if (item.dict_name === 'SampleStatus') {
|
||||||
|
treatmentStateDict.push(item)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
localStorage.setItem('treatmentStateDict', JSON.stringify(treatmentStateDict))
|
||||||
if (this.isLogin) {
|
if (this.isLogin) {
|
||||||
this.menuList = this.adminMenu
|
this.menuList = this.adminMenu
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -162,6 +162,8 @@ color:#0ba1e4;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
.filter-item {
|
.filter-item {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
|
|
|
||||||
|
|
@ -134,7 +134,8 @@
|
||||||
<img src="../../static/images/arrow_nav1.png" alt="">
|
<img src="../../static/images/arrow_nav1.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<div class="right">
|
<div class="right">
|
||||||
<div id="cesiumContainerData" style="height: calc(100vh - 90px);width:100%;" />
|
<div id="cesiumContainerData" style="height: 100vh;width:100%;" />
|
||||||
|
<el-image class="logo" src="../../static/images/logo_map.png" @click="goHome" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 航次名称弹窗-->
|
<!-- 航次名称弹窗-->
|
||||||
|
|
@ -790,6 +791,9 @@ export default {
|
||||||
this.chooseLine.polyline.width = 5
|
this.chooseLine.polyline.width = 5
|
||||||
this.chooseLine.polyline.material = this.chooseLine.oldMaterial
|
this.chooseLine.polyline.material = this.chooseLine.oldMaterial
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
goHome() {
|
||||||
|
this.$router.push({name: 'home'})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -801,14 +805,14 @@ export default {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
.shuju_con {
|
.shuju_con {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: calc(100vh - 90px);
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
.left {
|
.left {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 570px;
|
width: 570px;
|
||||||
height: 100%;
|
height: 100vh;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding: 50px 30px;
|
padding: 50px 30px;
|
||||||
|
|
@ -966,6 +970,16 @@ export default {
|
||||||
.right {
|
.right {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
width: 60px;
|
||||||
|
height: 60px;
|
||||||
|
cursor: pointer;
|
||||||
|
position: absolute;
|
||||||
|
bottom: 20px;
|
||||||
|
right: 20px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -990,4 +1004,5 @@ export default {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background: none !important;
|
background: none !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,9 @@
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
|
<div class="search">
|
||||||
|
|
||||||
|
</div>
|
||||||
<div class="checkBtn flex">
|
<div class="checkBtn flex">
|
||||||
<el-button
|
<el-button
|
||||||
v-for="item in btnList"
|
v-for="item in btnList"
|
||||||
|
|
|
||||||
|
|
@ -130,7 +130,7 @@
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="处理状态" prop="sample_status">
|
<el-form-item label="处理状态" prop="sample_status">
|
||||||
<el-select v-model="form.sample_status" filterable placeholder="" style="width: 100%;">
|
<el-select v-model="form.sample_status" filterable placeholder="" style="width: 100%;">
|
||||||
<el-option v-for="item in sampleStatusDicts" :key="item" :label="item" :value="item"/>
|
<el-option v-for="item in sampleStatusDicts" :key="item.dict_text" :label="item.dict_text" :value="item.dict_value"/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
@ -311,7 +311,7 @@ export default {
|
||||||
// 公开期限下拉数据
|
// 公开期限下拉数据
|
||||||
publishRuleDicts: ['公开获取', '延期公开(6个月)', '延期公开(12个月)', '延期公开(24个月)', '不公开'],
|
publishRuleDicts: ['公开获取', '延期公开(6个月)', '延期公开(12个月)', '延期公开(24个月)', '不公开'],
|
||||||
// 公开期限下拉数据
|
// 公开期限下拉数据
|
||||||
sampleStatusDicts: ['原始数据', '预处理数据', '后处理数据'],
|
sampleStatusDicts: [],
|
||||||
// 标签类型下拉数据
|
// 标签类型下拉数据
|
||||||
tagTypes: ['应急搜捞', '全球深渊深潜计划', '崖州湾共享航次', '基金委共享航次'],
|
tagTypes: ['应急搜捞', '全球深渊深潜计划', '崖州湾共享航次', '基金委共享航次'],
|
||||||
inputVisible: false,
|
inputVisible: false,
|
||||||
|
|
@ -329,6 +329,8 @@ export default {
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getData()
|
this.getData()
|
||||||
|
const treatmentStateDict = localStorage.getItem('treatmentStateDict')
|
||||||
|
this.sampleStatusDicts = JSON.parse(treatmentStateDict)
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取列表数据
|
// 获取列表数据
|
||||||
|
|
|
||||||
|
|
@ -9,16 +9,40 @@
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
<div class="checkBtn">
|
<div class="search">
|
||||||
<el-button type="primary" size="medium" @click="handleAdd">航次数据录入</el-button>
|
<el-input placeholder="模糊查询" v-model="params.query" style="width: 300px;">
|
||||||
|
<el-button slot="append" icon="el-icon-search" @click="getData"></el-button>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
<div class="checkBtn" style="display: flex">
|
||||||
|
<el-button type="primary" size="medium" @click="handleAdd" style="margin-right: 10px;">航次数据录入</el-button>
|
||||||
|
<el-upload
|
||||||
|
class="upload-btn"
|
||||||
|
ref="upload"
|
||||||
|
action="action"
|
||||||
|
:multiple="false"
|
||||||
|
:show-file-list="false"
|
||||||
|
:http-request="uploadReg"
|
||||||
|
:before-upload="beforeUploadReg"
|
||||||
|
>
|
||||||
|
<el-button :loading="loadingRegBtn">{{ textReg }}</el-button>
|
||||||
|
</el-upload>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-table ref="tableData" v-loading="loading" stripe border :data="tableData" :header-cell-style="{ background: '#dddfe6',color: '#555960',textAlign: 'center' }" :cell-style="{ textAlign: 'center' }">
|
<el-table ref="tableData" v-loading="loading" stripe border :data="tableData" :header-cell-style="{ background: '#dddfe6',color: '#555960',textAlign: 'center' }" :cell-style="{ textAlign: 'center' }">
|
||||||
<el-table-column type="index" label="#" width="50"/>
|
<el-table-column type="index" label="#" width="50"/>
|
||||||
<el-table-column prop="voyage_name" label="航次名称" />
|
<el-table-column prop="voyage_name" label="航次名称" />
|
||||||
<el-table-column prop="ship_name" label="科考船舶" />
|
<el-table-column prop="ship_name" label="科考船舶" />
|
||||||
<el-table-column prop="voyage_start_date" label="离港日期" />
|
<el-table-column prop="voyage_start_date" label="离港日期">
|
||||||
<el-table-column prop="voyage_end_date" label="返港日期" />
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.voyage_start_date ? scope.row.voyage_start_date.slice(0,10) : '' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="voyage_end_date" label="返港日期">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.voyage_end_date ? scope.row.voyage_end_date.slice(0,10) : '' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column prop="voyage_officer" label="首席" />
|
<el-table-column prop="voyage_officer" label="首席" />
|
||||||
<el-table-column prop="member_total" label="参航人数" />
|
<el-table-column prop="member_total" label="参航人数" />
|
||||||
<el-table-column prop="funding_org" label="资助机构" />
|
<el-table-column prop="funding_org" label="资助机构" />
|
||||||
|
|
@ -347,7 +371,7 @@ import {
|
||||||
voyageRegNav,
|
voyageRegNav,
|
||||||
uploadNavigation,
|
uploadNavigation,
|
||||||
voyageRegPeople,
|
voyageRegPeople,
|
||||||
voyageRegPeopleDelete, voyageRegPeopleEdit, voyageRegPeopleUpload
|
voyageRegPeopleDelete, voyageRegPeopleEdit, voyageRegPeopleUpload, voyageRegImport
|
||||||
} from '@/api/dataTransfer'
|
} from '@/api/dataTransfer'
|
||||||
import { time } from '@/utils/validate'
|
import { time } from '@/utils/validate'
|
||||||
|
|
||||||
|
|
@ -360,7 +384,8 @@ export default {
|
||||||
params: {
|
params: {
|
||||||
start: 0,
|
start: 0,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
group: 10
|
group: 10,
|
||||||
|
query: ''
|
||||||
},
|
},
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
// 列表数据
|
// 列表数据
|
||||||
|
|
@ -448,7 +473,10 @@ export default {
|
||||||
rulesPeople: {},
|
rulesPeople: {},
|
||||||
sexOptions: ['男', '女', '保密'],
|
sexOptions: ['男', '女', '保密'],
|
||||||
textPeople: '上传参航人员',
|
textPeople: '上传参航人员',
|
||||||
loadingPeopleBtn: false
|
loadingPeopleBtn: false,
|
||||||
|
// 航次数据批量导入
|
||||||
|
loadingRegBtn: false,
|
||||||
|
textReg: '航次数据批量导入'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
|
@ -766,6 +794,31 @@ export default {
|
||||||
this.textPeople = '上传参航人员'
|
this.textPeople = '上传参航人员'
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
// 航次数据批量导入
|
||||||
|
beforeUploadReg(file) { // 上传文件之前钩子
|
||||||
|
const type = file.name.split('.')[1]
|
||||||
|
if (type !== 'xlsx') {
|
||||||
|
this.$message({ type: 'error', message: '只支持xlsx文件格式!' })
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
uploadReg(param) {
|
||||||
|
this.loadingRegBtn = true
|
||||||
|
this.textReg = '数据处理中'
|
||||||
|
const formData = new FormData()
|
||||||
|
formData.append('file', param.file)
|
||||||
|
voyageRegImport(formData).then(res => {
|
||||||
|
if (res.errorCode === 0) {
|
||||||
|
this.loadingRegBtn = false
|
||||||
|
this.textReg = '航次数据批量导入'
|
||||||
|
this.$message.success('导入成功!')
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
}).cache(() => {
|
||||||
|
this.loadingRegBtn = false
|
||||||
|
this.textReg = '航次数据批量导入'
|
||||||
|
})
|
||||||
|
},
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
dynamicTags2(arr) {
|
dynamicTags2(arr) {
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,11 @@
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
|
<div class="search">
|
||||||
|
<el-input placeholder="模糊查询" v-model="params.query" style="width: 300px;">
|
||||||
|
<el-button slot="append" icon="el-icon-search" @click="getData"></el-button>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
<div class="checkBtn">
|
<div class="checkBtn">
|
||||||
<el-button type="primary" size="medium" @click="handleAdd">数据样品类型录入</el-button>
|
<el-button type="primary" size="medium" @click="handleAdd">数据样品类型录入</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -85,7 +90,8 @@ export default {
|
||||||
params: {
|
params: {
|
||||||
start: 0,
|
start: 0,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
group: 10
|
group: 10,
|
||||||
|
query: ''
|
||||||
},
|
},
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
// 列表数据
|
// 列表数据
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,11 @@
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
|
<div class="search">
|
||||||
|
<el-input placeholder="模糊查询" v-model="params.query" style="width: 300px;">
|
||||||
|
<el-button slot="append" icon="el-icon-search" @click="getData"></el-button>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
<div class="checkBtn">
|
<div class="checkBtn">
|
||||||
<el-button type="primary" size="medium" @click="handleAdd">设备类型录入</el-button>
|
<el-button type="primary" size="medium" @click="handleAdd">设备类型录入</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -85,7 +90,8 @@ export default {
|
||||||
params: {
|
params: {
|
||||||
start: 0,
|
start: 0,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
group: 10
|
group: 10,
|
||||||
|
query: ''
|
||||||
},
|
},
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
// 列表数据
|
// 列表数据
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,11 @@
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
|
<div class="search">
|
||||||
|
<el-input placeholder="模糊查询" v-model="params.query" style="width: 300px;">
|
||||||
|
<el-button slot="append" icon="el-icon-search" @click="getData"></el-button>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
<div class="checkBtn">
|
<div class="checkBtn">
|
||||||
<el-button type="primary" size="medium" @click="handleAdd">平台类型录入</el-button>
|
<el-button type="primary" size="medium" @click="handleAdd">平台类型录入</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -85,7 +90,8 @@ export default {
|
||||||
params: {
|
params: {
|
||||||
start: 0,
|
start: 0,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
group: 10
|
group: 10,
|
||||||
|
query: ''
|
||||||
},
|
},
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
// 列表数据
|
// 列表数据
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,11 @@
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
|
<div class="search">
|
||||||
|
<el-input placeholder="模糊查询" v-model="params.query" style="width: 300px;">
|
||||||
|
<el-button slot="append" icon="el-icon-search" @click="getData"></el-button>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
<div class="checkBtn">
|
<div class="checkBtn">
|
||||||
<el-button type="primary" size="medium" @click="handleAdd">共享单位录入</el-button>
|
<el-button type="primary" size="medium" @click="handleAdd">共享单位录入</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -101,7 +106,8 @@ export default {
|
||||||
params: {
|
params: {
|
||||||
start: 0,
|
start: 0,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
group: 10
|
group: 10,
|
||||||
|
query: ''
|
||||||
},
|
},
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
// 列表数据
|
// 列表数据
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,11 @@
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-container">
|
<div class="filter-container">
|
||||||
|
<div class="search">
|
||||||
|
<el-input placeholder="模糊查询" v-model="params.query" style="width: 300px;">
|
||||||
|
<el-button slot="append" icon="el-icon-search" @click="getData"></el-button>
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
<div class="checkBtn">
|
<div class="checkBtn">
|
||||||
<el-button type="primary" size="medium" @click="handleAdd">新增参航单位</el-button>
|
<el-button type="primary" size="medium" @click="handleAdd">新增参航单位</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -79,7 +84,8 @@ export default {
|
||||||
params: {
|
params: {
|
||||||
start: 0,
|
start: 0,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
group: 10
|
group: 10,
|
||||||
|
query: ''
|
||||||
},
|
},
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
// 列表数据
|
// 列表数据
|
||||||
|
|
|
||||||
|
|
@ -18,11 +18,11 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="left2">
|
<div class="left2">
|
||||||
<div class="left2_1">
|
<div class="left2_1">
|
||||||
<p>56,204</p>
|
<p>{{ statistics.DataTotal }}</p>
|
||||||
<span>数据样品数</span>
|
<span>数据样品数</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="left2_1">
|
<div class="left2_1">
|
||||||
<p>260</p>
|
<p>{{ statistics.DatasetTotal }}</p>
|
||||||
<span>数据集个数</span>
|
<span>数据集个数</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -33,23 +33,23 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="right2">
|
<div class="right2">
|
||||||
<div class="right2_1">
|
<div class="right2_1">
|
||||||
<p>204</p>
|
<p>{{ statistics.VoyageTotal }}</p>
|
||||||
<span>航次个数</span>
|
<span>航次个数</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="right2_1">
|
<div class="right2_1">
|
||||||
<p>360</p>
|
<p>{{ statistics.DayTotal }}</p>
|
||||||
<span>航次天数</span>
|
<span>航次天数</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="right2_1">
|
<div class="right2_1">
|
||||||
<p>204</p>
|
<p>{{ statistics.ShenHaiTotal }}</p>
|
||||||
<span>“深海勇士”号潜次数</span>
|
<span>“深海勇士”号潜次数</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="right2_1">
|
<div class="right2_1">
|
||||||
<p>204</p>
|
<p>{{ statistics.FenDouTotal }}</p>
|
||||||
<span>“奋斗者”号潜次数</span>
|
<span>“奋斗者”号潜次数</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="right2_1">
|
<div class="right2_1">
|
||||||
<p>5,623</p>
|
<p>{{ statistics.MileageTotal }}</p>
|
||||||
<span>航行里程</span>
|
<span>航行里程</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -155,6 +155,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="dongtai">
|
<div class="dongtai">
|
||||||
|
|
||||||
<el-row>
|
<el-row>
|
||||||
|
|
@ -171,19 +172,32 @@
|
||||||
</el-row>
|
</el-row>
|
||||||
<div class="dongtai_bot">
|
<div class="dongtai_bot">
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="(item, index) in newsList" :key="index" @click="turnPage('news')">
|
<li v-for="(item, index) in dataUpdateList" :key="index" @click="turnDetailPage(item)">
|
||||||
<div class="date">
|
<div class="date">
|
||||||
<p>{{ item.day }}</p>
|
<p>{{ item.voyage_end_date.slice(8,10) }}</p>
|
||||||
<span>{{ item.date }}</span>
|
<span>{{ item.voyage_end_date.slice(0,7) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="des">
|
<div class="des">
|
||||||
<p>{{ item.title }}</p>
|
<p>{{ item.voyage_name }}</p>
|
||||||
<span>{{ item.des }}</span>
|
<span>{{ item.voyage_remark }}</span>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li v-for="(item, index) in sampleDataUpdateList" :key="index">
|
||||||
|
<div class="date">
|
||||||
|
<p>{{ item.create_time.slice(8,10) }}</p>
|
||||||
|
<span>{{ item.create_time.slice(0,7) }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="des">
|
||||||
|
<p>{{ item.dataset_name }}</p>
|
||||||
|
<span>{{ item.job_type }}</span>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="gongju">
|
<div class="gongju">
|
||||||
<div class="gongju_top">
|
<div class="gongju_top">
|
||||||
<img src="../../static/images/shuju5.png" alt="">
|
<img src="../../static/images/shuju5.png" alt="">
|
||||||
|
|
@ -216,9 +230,10 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Footer from '../components/public/Footer'
|
import Footer from '../components/public/Footer'
|
||||||
import { getVoyage, getVoyageLine, getParamsList } from '../api/home'
|
import { getVoyage, getVoyageLine, getParamsList, statisticsNums } from '../api/home'
|
||||||
import { swiper, swiperSlide } from 'vue-awesome-swiper'
|
import { swiper, swiperSlide } from 'vue-awesome-swiper'
|
||||||
import 'swiper/swiper-bundle.css'
|
import 'swiper/swiper-bundle.css'
|
||||||
|
import { sampleDatasetList, voyageRegList } from '@/api/dataTransfer'
|
||||||
const Cesium = window.Cesium
|
const Cesium = window.Cesium
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -230,6 +245,7 @@ export default {
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
statistics: {},
|
||||||
movementTimer: null,
|
movementTimer: null,
|
||||||
iconImgW: require('../../static/images/14-w.png'),
|
iconImgW: require('../../static/images/14-w.png'),
|
||||||
map: null,
|
map: null,
|
||||||
|
|
@ -267,50 +283,8 @@ export default {
|
||||||
},
|
},
|
||||||
chooseIndex: -1,
|
chooseIndex: -1,
|
||||||
voyageList: [],
|
voyageList: [],
|
||||||
newsList: [
|
dataUpdateList: [],
|
||||||
{
|
sampleDataUpdateList: [],
|
||||||
title:
|
|
||||||
'深海工程菌SS-DY31-Ⅱ-W1306-BC-1 样品数据发布,包含4个目、7个科、15个属的共1232个样品数据。',
|
|
||||||
des: '海底热液循环可以改变海水和洋壳的化学组成,也会影响洋壳的增生和冷却过程,对于理解...',
|
|
||||||
day: '25',
|
|
||||||
date: '2023-03'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title:
|
|
||||||
'深海工程菌SS-DY31-Ⅱ-W1306-BC-1 样品数据发布,包含4个目、7个科、15个属的共1232个样品数据。',
|
|
||||||
des: '海底热液循环可以改变海水和洋壳的化学组成,也会影响洋壳的增生和冷却过程,对于理解...',
|
|
||||||
day: '25',
|
|
||||||
date: '2023-03'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title:
|
|
||||||
'深海工程菌SS-DY31-Ⅱ-W1306-BC-1 样品数据发布,包含4个目、7个科、15个属的共1232个样品数据。',
|
|
||||||
des: '海底热液循环可以改变海水和洋壳的化学组成,也会影响洋壳的增生和冷却过程,对于理解...',
|
|
||||||
day: '25',
|
|
||||||
date: '2023-03'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title:
|
|
||||||
'深海工程菌SS-DY31-Ⅱ-W1306-BC-1 样品数据发布,包含4个目、7个科、15个属的共1232个样品数据。',
|
|
||||||
des: '海底热液循环可以改变海水和洋壳的化学组成,也会影响洋壳的增生和冷却过程,对于理解...',
|
|
||||||
day: '25',
|
|
||||||
date: '2023-03'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title:
|
|
||||||
'深海工程菌SS-DY31-Ⅱ-W1306-BC-1 样品数据发布,包含4个目、7个科、15个属的共1232个样品数据。',
|
|
||||||
des: '海底热液循环可以改变海水和洋壳的化学组成,也会影响洋壳的增生和冷却过程,对于理解...',
|
|
||||||
day: '25',
|
|
||||||
date: '2023-03'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title:
|
|
||||||
'深海工程菌SS-DY31-Ⅱ-W1306-BC-1 样品数据发布,包含4个目、7个科、15个属的共1232个样品数据。',
|
|
||||||
des: '海底热液循环可以改变海水和洋壳的化学组成,也会影响洋壳的增生和冷却过程,对于理解...',
|
|
||||||
day: '25',
|
|
||||||
date: '2023-03'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
viewer: null,
|
viewer: null,
|
||||||
color: [Cesium.Color.RED, Cesium.Color.GREEN, Cesium.Color.BLUE, Cesium.Color.CHARTREUSE, Cesium.Color.DARKBLUE],
|
color: [Cesium.Color.RED, Cesium.Color.GREEN, Cesium.Color.BLUE, Cesium.Color.CHARTREUSE, Cesium.Color.DARKBLUE],
|
||||||
// 地图图层基础地址
|
// 地图图层基础地址
|
||||||
|
|
@ -326,6 +300,9 @@ export default {
|
||||||
created() {
|
created() {
|
||||||
this.getVoyageList()
|
this.getVoyageList()
|
||||||
this.getParams()
|
this.getParams()
|
||||||
|
this.getStatisticsNums()
|
||||||
|
this.dataUpdate()
|
||||||
|
this.sampleDataUpdate()
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
// this.initCesium()
|
// this.initCesium()
|
||||||
|
|
@ -496,14 +473,44 @@ export default {
|
||||||
this.chooseIndex = i
|
this.chooseIndex = i
|
||||||
this.drawLine(i, item.tsy_id, item.points)
|
this.drawLine(i, item.tsy_id, item.points)
|
||||||
},
|
},
|
||||||
// 页面跳转
|
// 统计数据
|
||||||
turnPage(val, a) {
|
getStatisticsNums() {
|
||||||
if (!a) {
|
statisticsNums().then(res => {
|
||||||
this.$router.push({ name: val })
|
this.statistics = res.map
|
||||||
} else {
|
})
|
||||||
window.open(val, '_blank')
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
// 数据更新动态
|
||||||
|
dataUpdate() {
|
||||||
|
voyageRegList({
|
||||||
|
start: 0,
|
||||||
|
limit: 3,
|
||||||
|
group: 10,
|
||||||
|
order: 'voyage_end_date',
|
||||||
|
type: 'DESC'
|
||||||
|
}).then(res => {
|
||||||
|
this.dataUpdateList = res.page.records
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 跳转到航次详情页
|
||||||
|
turnDetailPage(item) {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'dataDetail',
|
||||||
|
query: {
|
||||||
|
voyage_name: item.voyage_name
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 样品数据引用动态
|
||||||
|
sampleDataUpdate() {
|
||||||
|
sampleDatasetList({
|
||||||
|
start: 0,
|
||||||
|
limit: 3,
|
||||||
|
group: 10,
|
||||||
|
}).then(res => {
|
||||||
|
console.log(res)
|
||||||
|
this.sampleDataUpdateList = res.page.records
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
@ -1073,9 +1080,11 @@ export default {
|
||||||
.dongtai_bot {
|
.dongtai_bot {
|
||||||
width: 85%;
|
width: 85%;
|
||||||
height: auto;
|
height: auto;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
ul {
|
ul {
|
||||||
width: 100%;
|
width: 45%;
|
||||||
height: auto;
|
height: auto;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
|
|
@ -1083,7 +1092,7 @@ export default {
|
||||||
|
|
||||||
li {
|
li {
|
||||||
margin-bottom: 35px;
|
margin-bottom: 35px;
|
||||||
width: 48%;
|
width: 100%;
|
||||||
height: 170px;
|
height: 170px;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,7 @@ export default {
|
||||||
initInfo().then(res => {
|
initInfo().then(res => {
|
||||||
Cookies.set('JSESSIONID', res.map.FrameSessionId);
|
Cookies.set('JSESSIONID', res.map.FrameSessionId);
|
||||||
this.isLogin = res.login
|
this.isLogin = res.login
|
||||||
location.href = '/'
|
location.href = './'
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.$message.error(res.errorMsg)
|
this.$message.error(res.errorMsg)
|
||||||
|
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 9.4 KiB |
Loading…
Reference in New Issue