bug修改

This commit is contained in:
yyy 2025-03-26 11:44:24 +08:00
parent 91e3c4bde8
commit 3c43224045
3 changed files with 119 additions and 197 deletions

View File

@ -148,10 +148,10 @@
:inline="true" :inline="true"
label-width="68px" label-width="68px"
> >
<el-form-item label="任务号" prop="taskNo"> <el-form-item label="任务号" prop="taskNo">
<el-input <el-input
v-model="taskLogParams.taskNo" v-model="taskLogParams.taskNo"
placeholder="请输入任务号" placeholder="请输入任务号"
clearable clearable
@keyup.enter="handleQuery" @keyup.enter="handleQuery"
class="!w-240px" class="!w-240px"
@ -231,7 +231,7 @@
v-loading="loading" v-loading="loading"
> >
<el-table-column label="序号" type="index" width="80" align="center" /> <el-table-column label="序号" type="index" width="80" align="center" />
<el-table-column prop="taskNo" label="任务号" align="center" /> <el-table-column prop="taskNo" label="任务号" align="center" />
<el-table-column prop="taskType" label="任务类型" align="center" width="120"> <el-table-column prop="taskType" label="任务类型" align="center" width="120">
<template #default="scope"> <template #default="scope">
<el-text v-if="scope.row.taskType == 1">取放货</el-text> <el-text v-if="scope.row.taskType == 1">取放货</el-text>
@ -332,7 +332,7 @@ const getCarLogList = async () => {
const taskLogParams = reactive({ const taskLogParams = reactive({
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
taskNo: null, // taskNo: null, //
taskType: null, // taskType: null, //
taskStatus: null, // taskStatus: null, //
startTime: null, // startTime: null, //

View File

@ -28,11 +28,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<div <div>
v-if="
formData.taskDetailList[0].taskType !== 2 && formData.taskDetailList[0].taskType !== 3
"
>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="12"> <el-col :span="12">
<el-form-item required label="是否拼接任务" prop="montageTask" label-width="146"> <el-form-item required label="是否拼接任务" prop="montageTask" label-width="146">
@ -49,6 +45,7 @@
<el-col :span="12" v-if="formData.montageTask === 1"> <el-col :span="12" v-if="formData.montageTask === 1">
<el-form-item required label="任务拼接数量" prop="montageNumber" label-width="146"> <el-form-item required label="任务拼接数量" prop="montageNumber" label-width="146">
<el-input-number <el-input-number
:disabled="montageNumberDisable"
class="!w-220px" class="!w-220px"
v-model="formData.montageNumber" v-model="formData.montageNumber"
:min="1" :min="1"
@ -58,13 +55,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<div <div>
v-if="
formData.taskDetailList[0].taskType === 1 ||
formData.taskDetailList[0].taskType === 5 ||
formData.taskDetailList[0].taskType === 6
"
>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item
@ -77,7 +68,7 @@
v-model="formData.doMoveAll" v-model="formData.doMoveAll"
:active-value="1" :active-value="1"
:inactive-value="0" :inactive-value="0"
@change="doMoveAllChange" :before-change="doMoveAllChange.bind()"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -155,7 +146,6 @@
class="task-item" class="task-item"
> >
<div class="index-logo">{{ index + 1 }}</div> <div class="index-logo">{{ index + 1 }}</div>
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="24"> <el-col :span="24">
<el-form-item <el-form-item
@ -170,14 +160,12 @@
placeholder="请选择" placeholder="请选择"
@change="taskTypeChange(detailItem, index)" @change="taskTypeChange(detailItem, index)"
> >
<el-option label="取放货" :value="1" /> <el-option
<el-option label="停车" :value="2" /> v-for="item in detailItem.taskTypeList"
<el-option label="充电" :value="3" /> :key="item.value"
<el-option label="移动" :value="4" /> :label="item.label"
<el-option label="仅取货" :value="5" /> :value="item.value"
<el-option label="仅放货" :value="6" /> />
<!-- <el-option label="扫描码" :value="7" />
<el-option label="检测托盘类型" :value="8" /> -->
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -306,6 +294,7 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="指定车辆"> <el-form-item label="指定车辆">
<el-select <el-select
clearable
v-model="detailItem.robotNo" v-model="detailItem.robotNo"
placeholder="请选择车辆" placeholder="请选择车辆"
@change="chooseCarErrorMsg" @change="chooseCarErrorMsg"
@ -760,7 +749,15 @@ const formData = ref({
takeList: [], // takeList: [], //
robotNo: undefined, //AGV robotNo: undefined, //AGV
needLock: 0, //(0:1:) needLock: 0, //(0:1:)
electricity: undefined //() electricity: undefined, //()
taskTypeList: [
{ label: '取放货', value: 1 },
{ label: '停车', value: 2 },
{ label: '充电', value: 3 },
{ label: '移动', value: 4 },
{ label: '仅取货', value: 5 },
{ label: '仅放货', value: 6 }
]
} }
], // ], //
skuInfo: undefined, // skuInfo: undefined, //
@ -795,7 +792,15 @@ const resetFormData = () => {
takeList: [], // takeList: [], //
robotNo: undefined, //AGV robotNo: undefined, //AGV
needLock: 0, //(0:1:) needLock: 0, //(0:1:)
electricity: undefined //() electricity: undefined, //()
taskTypeList: [
{ label: '取放货', value: 1 },
{ label: '停车', value: 2 },
{ label: '充电', value: 3 },
{ label: '移动', value: 4 },
{ label: '仅取货', value: 5 },
{ label: '仅放货', value: 6 }
]
} }
], // ], //
skuInfo: undefined, // skuInfo: undefined, //
@ -866,185 +871,94 @@ const robotNoChange = (e, detailItem) => {
} }
// //
const montageNumberDisable = computed(() =>
formData.value.taskDetailList.some((item) => {
return item.taskType == 2 || item.taskType == 3
})
)
const taskTypeChange = (item, index) => { const taskTypeChange = (item, index) => {
item.releaseType = 1 item.releaseType = 1
item.takeType = 1 item.takeType = 1
item.releaseId = undefined
item.releaseList = []
item.takeId = undefined
item.takeList = []
item.robotNo = undefined
item.needLock = 0 item.needLock = 0
item.releaseId = undefined
item.takeId = undefined
item.robotNo = undefined
item.electricity = undefined item.electricity = undefined
item.otherMsg = undefined item.otherMsg = undefined
item.releaseList = []
item.takeList = []
let lastItem = formData.value.taskDetailList[index - 1] let nextItem = formData.value.taskDetailList[index + 1]
// let nextItem = formData.value.taskDetailList[index + 1] if (!nextItem) return
if (index === 0) { if (item.taskType === 1) {
formData.value.doCycle = 0 nextItem.taskTypeList = [
formData.value.cycleNumber = 0 { label: '取放货', value: 1 },
{ label: '移动', value: 4 },
if (item.taskType === 2) { { label: '仅取货', value: 5 }
formData.value.montageTask = 0 ]
formData.value.montageNumber = 1 } else if (item.taskType === 2) {
formData.value.taskDetailList = formData.value.taskDetailList.slice(0, 1) formData.value.taskDetailList = formData.value.taskDetailList.slice(0, index + 1)
message.warning('任务1为停车不可拼接任务') formData.value.montageNumber = formData.value.taskDetailList.length
} } else if (item.taskType === 3) {
if (item.taskType === 3) { formData.value.taskDetailList = formData.value.taskDetailList.slice(0, index + 1)
formData.value.montageTask = 0 formData.value.montageNumber = formData.value.taskDetailList.length
formData.value.montageNumber = 1 } else if (item.taskType === 4) {
formData.value.taskDetailList = formData.value.taskDetailList.slice(0, 1) nextItem.taskTypeList = [
message.warning('任务1为充电不可拼接任务') { label: '取放货', value: 1 },
} { label: '移动', value: 4 },
} else { { label: '仅取货', value: 5 }
// ]
if (lastItem.taskType === 1) { } else if (item.taskType === 5) {
if (item.taskType === 2) { nextItem.taskTypeList = [
message.warning('取放货后不可连接停车') { label: '移动', value: 4 },
item.taskType = undefined { label: '仅放货', value: 6 }
return ]
} } else if (item.taskType === 6) {
if (item.taskType === 3) { nextItem.taskTypeList = [
message.warning('取放货后不可连接充电') { label: '取放货', value: 1 },
item.taskType = undefined { label: '移动', value: 4 },
return { label: '仅取货', value: 5 }
} ]
if (item.taskType === 6) {
message.warning('取放货后不可连接仅放货')
item.taskType = undefined
return
}
if (item.taskType === 7) {
message.warning('取放货后不可连接扫描码')
item.taskType = undefined
return
}
if (item.taskType === 8) {
message.warning('取放货后不可连接检测托盘类型')
item.taskType = undefined
return
}
} else if (lastItem.taskType === 2) {
//
} else if (lastItem.taskType === 3) {
//
} else if (lastItem.taskType === 4) {
if (item.taskType === 2) {
message.warning('移动后不可连接停车')
item.taskType = undefined
return
}
if (item.taskType === 3) {
message.warning('移动后不可连接充电')
item.taskType = undefined
return
}
if (item.taskType === 6) {
message.warning('移动后不可连接仅放货')
item.taskType = undefined
return
}
} else if (lastItem.taskType === 5) {
if (item.taskType === 1) {
message.warning('仅取货后不可连接取放货')
item.taskType = undefined
return
}
if (item.taskType === 2) {
message.warning('仅取货后不可连接停车')
item.taskType = undefined
return
}
if (item.taskType === 3) {
message.warning('仅取货后不可连接充电')
item.taskType = undefined
return
}
if (item.taskType === 5) {
message.warning('仅取货后不可连接仅取货')
item.taskType = undefined
return
}
if (item.taskType === 7) {
message.warning('仅取货后不可连接扫描码')
item.taskType = undefined
return
}
if (item.taskType === 8) {
message.warning('仅取货后不可连接检测托盘类型')
item.taskType = undefined
return
}
} else if (lastItem.taskType === 6) {
if (item.taskType === 2) {
message.warning('仅放货后不可连接停车')
item.taskType = undefined
return
}
if (item.taskType === 3) {
message.warning('仅放货后不可连接充电')
item.taskType = undefined
return
}
if (item.taskType === 6) {
message.warning('仅放货后不可连接仅放货')
item.taskType = undefined
return
}
if (item.taskType === 7) {
message.warning('仅放货后不可连接扫描码')
item.taskType = undefined
return
}
} else if (lastItem.taskType === 7) {
if (item.taskType === 2) {
message.warning('扫描码后不可连接停车')
item.taskType = undefined
return
}
if (item.taskType === 3) {
message.warning('扫描码后不可连接充电')
item.taskType = undefined
return
}
if (item.taskType === 6) {
message.warning('扫描码后不可连接仅放货')
item.taskType = undefined
return
}
if (item.taskType === 7) {
message.warning('扫描码后不可连接扫描码')
item.taskType = undefined
return
}
} else if (lastItem.taskType === 8) {
if (item.taskType === 2) {
message.warning('检测托盘类型后不可连接停车')
item.taskType = undefined
return
}
if (item.taskType === 3) {
message.warning('检测托盘类型后不可连接充电')
item.taskType = undefined
return
}
if (item.taskType === 6) {
message.warning('检测托盘类型后不可连接仅放货')
item.taskType = undefined
return
}
}
} }
} }
// //
const doMoveAllChange = (e) => { const doMoveAllChange = (e) => {
if (e === 1) { return new Promise((resolve, reject) => {
formData.value.taskDetailList.forEach((item) => { if (formData.value.doMoveAll === 1) {
item.taskType = 1 resolve(true)
}) } else {
} try {
ElMessageBox.confirm('开启搬空所选线库/区域,任务类型只能选择取放货,是否切换?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(async () => {
resolve(true)
formData.value.taskDetailList = formData.value.taskDetailList.filter((item) => {
return item.taskType === 1
})
formData.value.montageNumber = formData.value.taskDetailList.length //
})
.catch(() => {
ElMessage({
type: 'info',
message: '取消成功'
})
reject(false)
})
} catch (err) {
reject(false)
}
}
})
// if (e === 1) {
// formData.value.taskDetailList.forEach((item) => {
// item.taskType = 1
// })
// }
} }
// //
@ -1063,7 +977,15 @@ const montageNumberChange = (currentValue: number, oldValue: number) => {
takeList: [], // takeList: [], //
robotNo: undefined, //AGV robotNo: undefined, //AGV
needLock: 0, //(0:1:) needLock: 0, //(0:1:)
electricity: undefined //() electricity: undefined, //()
taskTypeList: [
{ label: '取放货', value: 1 },
{ label: '停车', value: 2 },
{ label: '充电', value: 3 },
{ label: '移动', value: 4 },
{ label: '仅取货', value: 5 },
{ label: '仅放货', value: 6 }
]
}) })
} }
} else { } else {
@ -1088,7 +1010,7 @@ const doCycleChange = () => {
resolve(true) resolve(true)
} else { } else {
try { try {
ElMessageBox.confirm('开启循环任务任务类型只能选择取放货,是否切换?', '提示', { ElMessageBox.confirm('开启循环任务任务类型只能选择取放货,是否切换?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'

View File

@ -290,7 +290,7 @@ const cancelTask = async (mainItem, item) => {
// //
const finishTask = async (mainItem, item) => { const finishTask = async (mainItem, item) => {
try { try {
await message.delConfirm('请确认是否取消所有任务?') await message.delConfirm('请确认是否人工完成任务?')
await MapTaskAPi.updateTask({ await MapTaskAPi.updateTask({
id: mainItem.id, id: mainItem.id,
priority: mainItem.priority, priority: mainItem.priority,