Browse Source

路径静态

master
maochaoying 2 years ago
parent
commit
bb29b6e6c9
  1. 16
      src/api/path.js
  2. 29
      src/components/PathPlan.vue
  3. 33
      src/components/Task.vue

16
src/api/path.js

@ -0,0 +1,16 @@
import request from '@/service'
export const checkCanDiyPathApi = id => {
return request({
url: `/path/check/${id}`,
method: 'GET',
})
}
export const pathPlanApi = data => {
return request({
url: `/path/plan`,
method: 'POST',
data,
})
}

29
src/components/PathPlan.vue

@ -5,14 +5,37 @@
{{ getHeaderText(item) }} {{ getHeaderText(item) }}
</div> </div>
<div class="box" v-else> <div class="box" v-else>
<p class="line1"></p>
<p class="line2"></p>
<p class="line1">{{ getLine(item, 1) }}</p>
<p class="line2">{{ getLine(item, 2) }}</p>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script setup> <script setup>
const props = defineProps({
excelData: {
type: Array,
},
})
const getLine = (index, position) => {
const arr = props.excelData.filter(item => item.num == index)
if (arr?.length > 0) {
const obj = arr[0]
if (obj.secondSign && obj.firstSign) {
if (position == 1) {
// 4
return obj.firstSign.substr(-4)
} else {
// 4
return obj.secondSign.substr(-4)
}
}
}
return ''
}
const isTableHeader = index => { const isTableHeader = index => {
return index <= 14 || index % 14 == 1 return index <= 14 || index % 14 == 1
} }
@ -29,7 +52,7 @@ const getHeaderText = index => {
<style lang="scss" scoped> <style lang="scss" scoped>
.excel_container { .excel_container {
width: 800px;
width: 1000px;
height: 800px; height: 800px;
display: grid; display: grid;
grid-template-columns: repeat(14, 1fr); grid-template-columns: repeat(14, 1fr);

33
src/components/Task.vue

@ -40,7 +40,7 @@
:closeBtn="true" :closeBtn="true"
> >
<div class="path_wrap"> <div class="path_wrap">
<PathPlan />
<PathPlan :excelData="excelData" />
</div> </div>
</t-drawer> </t-drawer>
<t-dialog <t-dialog
@ -120,7 +120,9 @@ import {
delTaskApi, delTaskApi,
updateOperByTaskIdApi, updateOperByTaskIdApi,
} from '@/api/task' } from '@/api/task'
import { getNuclearExcelApi } from '@/api'
import PathPlan from 'cpns/PathPlan' import PathPlan from 'cpns/PathPlan'
import { checkCanDiyPathApi, pathPlanApi } from '@/api/path'
import { useAccountStore, useTaskStore, useImageStore } from '@/store' import { useAccountStore, useTaskStore, useImageStore } from '@/store'
import { allOperatorApi } from '@/api/publish' import { allOperatorApi } from '@/api/publish'
import moment from 'moment' import moment from 'moment'
@ -131,6 +133,7 @@ const imageStore = useImageStore()
export default { export default {
data() { data() {
return { return {
excelData: [],
pathVisible: false, pathVisible: false,
userList: [], userList: [],
formData: { operatorId: '' }, formData: { operatorId: '' },
@ -346,6 +349,7 @@ export default {
<t-button <t-button
variant="text" variant="text"
theme="primary" theme="primary"
disabled={row.canUpload}
onClick={() => this.showPathDialog(row.id)} onClick={() => this.showPathDialog(row.id)}
> >
自定义路径规划 自定义路径规划
@ -415,18 +419,37 @@ export default {
}, },
}, },
methods: { methods: {
saveDiyPath() {
console.log('diy')
async getExcelList(taskId) {
const res = await getNuclearExcelApi(taskId)
if (res?.code == 200) {
// dataserialNumber
const list = res.data.list
list.map(item => {
const arr = item.serialNumber.split('-')
item.num = parseInt(arr[0]) * 14 + parseInt(arr[1]) + 1
})
this.excelData = list
}
},
async saveDiyPath() {
const res = await pathPlanApi()
}, },
showPathDialog() {
showPathDialog(taskId) {
this.currentTaskId = taskId
this.getExcelList(taskId)
const confirmDia = this.$dialog.confirm({ const confirmDia = this.$dialog.confirm({
header: '提示', header: '提示',
body: '已开始的任务无法更改路径。复杂路径规划后,将清除创建任务时所选择的规则路径,确认要进行自定义规划吗?', body: '已开始的任务无法更改路径。复杂路径规划后,将清除创建任务时所选择的规则路径,确认要进行自定义规划吗?',
confirmBtn: '确定', confirmBtn: '确定',
cancelBtn: '取消', cancelBtn: '取消',
onConfirm: ({ e }) => {
onConfirm: async ({ e }) => {
const res = await checkCanDiyPathApi(taskId)
if (res?.code == 200) {
// //
this.pathVisible = true this.pathVisible = true
} else {
this.$message.error(res?.msg)
}
confirmDia.destroy() confirmDia.destroy()
}, },
onClose: ({ e, trigger }) => { onClose: ({ e, trigger }) => {

Loading…
Cancel
Save