编辑状态下数据样品类型信息页面增加了上传测线轨迹功能

This commit is contained in:
2024-10-16 11:11:32 +08:00
parent dabf00284e
commit 777a335196
3 changed files with 66 additions and 18 deletions

View File

@ -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({

View File

@ -1,8 +1,5 @@
<template>
<div>
<div class="upload-bar" v-if="id && form.job_type === '测线作业'">
<el-button type="primary" @click="onNext">上传测线轨迹</el-button>
</div>
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="200px">
<el-row>
<el-col :span="8">
@ -31,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>
@ -41,7 +50,7 @@
</template>
<script>
import { dataDict, sampleDatasetEdit } from '@/api/dataTransfer'
import { dataDict, sampleDatasetEdit, uploadLineTrack } from '@/api/dataTransfer'
export default {
name: 'Equipment',
data() {
@ -65,7 +74,9 @@ export default {
data_id: [
{ required: true, message: '此处为必填项', trigger: 'change' }
]
}
},
loading: false,
btnText: '上传测线轨迹'
}
},
computed: {
@ -131,18 +142,41 @@ 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 = '上传测线轨迹'
})
}
}
}
</script>
<style scoped>
.upload-bar {
display: flex;
justify-content: right;
margin-bottom: 20px;
}
.submit-box {
text-align: center;
display: flex;
justify-content: center;
align-items: center;
}
</style>

View File

@ -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() {