Compare commits
4 Commits
61c218b0ab
...
064b330300
| Author | SHA1 | Date |
|---|---|---|
|
|
064b330300 | |
|
|
777a335196 | |
|
|
dabf00284e | |
|
|
53b288b94d |
|
|
@ -215,6 +215,16 @@ export function uploadTrack(data) {
|
|||
})
|
||||
}
|
||||
|
||||
// 上传测线轨迹
|
||||
export function uploadLineTrack(data) {
|
||||
return request({
|
||||
url: '/sample/line/track/upload.htm',
|
||||
method: 'post',
|
||||
type: 'multipart/form-data',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 批量导入下潜轨迹
|
||||
export function uploadDiving(data) {
|
||||
return request({
|
||||
|
|
|
|||
|
|
@ -105,7 +105,7 @@
|
|||
<div class="left4" v-if="radio == '航次'">
|
||||
<div v-for="(item, index) in dataList" :key="index" class="left4_1" @click="turnDeatilPage(item)">
|
||||
<div class="left4_top">
|
||||
<p>{{ item.voyage_name }} <span class="mileage">{{ item.voyage_mileage }}海里</span></p>
|
||||
<p :style="currentVoyage === item.tsy_id ? 'color: #409eff' : ''">{{ item.voyage_name }} <span class="mileage">{{ item.voyage_mileage }}海里</span></p>
|
||||
<span class="org">{{ item.funding_org }}</span>
|
||||
</div>
|
||||
<div class="left4_list">
|
||||
|
|
@ -221,6 +221,7 @@ export default {
|
|||
job: '',
|
||||
chooseStation: null,
|
||||
chooseLine: null,
|
||||
currentVoyage: null, // 当前选中的航次
|
||||
// 地图图层基础地址
|
||||
CesiumHostAddr: ''
|
||||
}
|
||||
|
|
@ -389,7 +390,7 @@ export default {
|
|||
res2.array.forEach(point => {
|
||||
points.push(Number(point.nav_lon), Number(point.nav_lat))
|
||||
})
|
||||
this.drawLine(index, item.tsy_id, points)
|
||||
this.drawLine(index, item.tsy_id, points, '航次航线')
|
||||
// 将坐标点添加到航次列表中
|
||||
item.points = points
|
||||
})
|
||||
|
|
@ -409,7 +410,7 @@ export default {
|
|||
// 格式化坐标点
|
||||
res.array.forEach(line => {
|
||||
if (line.start_lon && line.start_lat && line.end_lon && line.end_lat) {
|
||||
this.drawLine(index, line.tsy_id, [Number(line.start_lon), Number(line.start_lat), Number(line.end_lon), Number(line.end_lat)])
|
||||
this.drawLine(index, line.tsy_id, [Number(line.start_lon), Number(line.start_lat), Number(line.end_lon), Number(line.end_lat)], '样品航线')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
|
@ -435,7 +436,7 @@ export default {
|
|||
res.array.forEach(point => {
|
||||
points.push(Number(point.track_lon), Number(point.track_lat))
|
||||
})
|
||||
this.drawLine(index, item.tsy_id, points)
|
||||
this.drawLine(index, item.tsy_id, points, '数据样品集航线')
|
||||
// 将坐标点添加到航次列表中
|
||||
item.points = points
|
||||
})
|
||||
|
|
@ -499,14 +500,17 @@ export default {
|
|||
const pickedObject = this.viewer.scene.pick(click.position);
|
||||
this.currenSample = pickedObject.id._id
|
||||
const type = pickedObject.id._type
|
||||
if (type === 'line') {
|
||||
this.job = '测线作业'
|
||||
} else {
|
||||
if (type === 'point') {
|
||||
this.job = '站位作业'
|
||||
} else {
|
||||
this.job = '测线作业'
|
||||
}
|
||||
this.onSample({
|
||||
tsy_id: pickedObject.id._id
|
||||
})
|
||||
if (type === '航次航线') {
|
||||
this.currentVoyage = pickedObject.id._id
|
||||
}
|
||||
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
|
||||
|
||||
// 叠加叠加影像服务
|
||||
|
|
@ -547,10 +551,10 @@ export default {
|
|||
this.viewer.imageryLayers.addImageryProvider(shipline)
|
||||
},
|
||||
/* cesium 绘制线 */
|
||||
drawLine(index, id, degreeArr) {
|
||||
drawLine(index, id, degreeArr, type) {
|
||||
this.viewer.entities.add({
|
||||
id: id,
|
||||
type: 'line',
|
||||
type: type,
|
||||
polyline: { //polyline折线实体
|
||||
positions: Cesium.Cartesian3.fromDegreesArray(degreeArr),//位置
|
||||
clampToGround: true, //地表层高度模式,
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="16">
|
||||
<el-form-item label="样品类型" prop="data_id">
|
||||
<el-form-item label="数据样品类型" prop="data_id">
|
||||
<el-select v-model="form.data_id" filterable placeholder="" :disabled="disabled" style="width: 100%;">
|
||||
<el-option v-for="item in dataDicts" :key="item.tsy_id" :label="`${item.data_name}(${item.data_alias})`" :value="item.tsy_id"/>
|
||||
</el-select>
|
||||
|
|
@ -28,6 +28,18 @@
|
|||
<el-divider></el-divider>
|
||||
<div class="submit-box">
|
||||
<template v-if="id">
|
||||
<el-upload
|
||||
style="margin-right: 10px;"
|
||||
v-if="form.job_type === '测线作业'"
|
||||
ref="upload"
|
||||
action="action"
|
||||
:multiple="false"
|
||||
:show-file-list="false"
|
||||
:http-request="uploadBpmn"
|
||||
:before-upload="beforeUpload"
|
||||
>
|
||||
<el-button :loading="loading" type="primary">{{ btnText }}</el-button>
|
||||
</el-upload>
|
||||
<el-button type="primary" @click="onNext">修改样品数据集</el-button>
|
||||
<el-button @click="onCopy">复制当前数据集</el-button>
|
||||
<el-button @click="onList">查看数据样品条目</el-button>
|
||||
|
|
@ -38,7 +50,7 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import { dataDict, sampleDatasetEdit } from '@/api/dataTransfer'
|
||||
import { dataDict, sampleDatasetEdit, uploadLineTrack } from '@/api/dataTransfer'
|
||||
export default {
|
||||
name: 'Equipment',
|
||||
data() {
|
||||
|
|
@ -62,7 +74,9 @@ export default {
|
|||
data_id: [
|
||||
{ required: true, message: '此处为必填项', trigger: 'change' }
|
||||
]
|
||||
}
|
||||
},
|
||||
loading: false,
|
||||
btnText: '上传测线轨迹'
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
|
@ -128,6 +142,32 @@ export default {
|
|||
this.$message.success('已创建新的数据集!')
|
||||
})
|
||||
}
|
||||
},
|
||||
beforeUpload(file) { // 上传文件之前钩子
|
||||
const type = file.name.split('.')[1]
|
||||
if (type !== 'txt') {
|
||||
this.$message({ type: 'error', message: '只支持txt文件格式!' })
|
||||
return false
|
||||
}
|
||||
},
|
||||
uploadBpmn(param) {
|
||||
this.loading = true
|
||||
this.btnText = '数据处理中'
|
||||
const formData = new FormData()
|
||||
formData.append('file', param.file)
|
||||
formData.append('dataset_id', this.id)
|
||||
uploadLineTrack(formData).then(res => {
|
||||
if (res.errorCode === 0) {
|
||||
this.loading = false
|
||||
this.btnText = '上传测线轨迹'
|
||||
this.$message.success('上传成功!')
|
||||
this.$store.commit('SET_TRACK_NAME', res.entity)
|
||||
this.getTrackInfo()
|
||||
}
|
||||
}).cache(() => {
|
||||
this.loading = false
|
||||
this.btnText = '上传测线轨迹'
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -135,6 +175,8 @@ export default {
|
|||
|
||||
<style scoped>
|
||||
.submit-box {
|
||||
text-align: center;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -143,31 +143,31 @@
|
|||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="测线编号" prop="line_sn">
|
||||
<el-input v-model="form.line_sn" />
|
||||
<el-input v-model="form.line_sn" :disabled="disabled" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="测线开始时间" prop="start_time">
|
||||
<el-date-picker v-model="form.start_time" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" style="width: 100%;"/>
|
||||
<el-date-picker :disabled="disabled" v-model="form.start_time" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" style="width: 100%;"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="测线结束时间" prop="end_time">
|
||||
<el-date-picker v-model="form.end_time" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" style="width: 100%;"/>
|
||||
<el-date-picker :disabled="disabled" v-model="form.end_time" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" style="width: 100%;"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="测线开始经度" prop="start_lon">
|
||||
<el-input v-model="form.start_lon">
|
||||
<el-input :disabled="disabled" v-model="form.start_lon">
|
||||
<template slot="append">°</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="测线开始纬度" prop="start_lat">
|
||||
<el-input v-model="form.start_lat">
|
||||
<el-input :disabled="disabled" v-model="form.start_lat">
|
||||
<template slot="append">°</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
|
|
@ -176,14 +176,14 @@
|
|||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="测线结束经度" prop="end_lon">
|
||||
<el-input v-model="form.end_lon">
|
||||
<el-input :disabled="disabled" v-model="form.end_lon">
|
||||
<template slot="append">°</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="测线结束纬度" prop="end_lat">
|
||||
<el-input v-model="form.end_lat">
|
||||
<el-input :disabled="disabled" v-model="form.end_lat">
|
||||
<template slot="append">°</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
|
|
@ -236,6 +236,8 @@ export default {
|
|||
name: 'SampleList',
|
||||
data() {
|
||||
return {
|
||||
// 表单禁用
|
||||
disabled: false,
|
||||
jobType: '站位作业',
|
||||
loading: false,
|
||||
// 列表数据
|
||||
|
|
@ -352,6 +354,7 @@ export default {
|
|||
handleAdd() {
|
||||
this.title = '新增'
|
||||
this.open = true
|
||||
this.disabled = false
|
||||
},
|
||||
// 编辑
|
||||
handleEdit(row) {
|
||||
|
|
@ -359,6 +362,7 @@ export default {
|
|||
this.open = true
|
||||
this.form = JSON.parse(JSON.stringify(row))
|
||||
this.dynamicTags = this.form.funding_org.split('、')
|
||||
this.disabled = this.form.track_file_name ? true : false
|
||||
},
|
||||
// 表单参数处理
|
||||
formatParams() {
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@
|
|||
:show-file-list="false"
|
||||
:http-request="uploadReg"
|
||||
:before-upload="beforeUploadReg"
|
||||
accept=".xlsx"
|
||||
>
|
||||
<el-button :loading="loadingRegBtn">{{ textReg }}</el-button>
|
||||
</el-upload>
|
||||
|
|
|
|||
Loading…
Reference in New Issue