⚡ 运单管理行操作「完成」合并为单一入口
待回单确认仍走确认回单(校验打卡节点与未了结异常),进行中/处理中二次确认后置完成。
This commit is contained in:
@@ -1599,14 +1599,7 @@
|
||||
<el-link type="primary" v-if="canCancel(row)" @click="handleAction('cancel', row)">
|
||||
取消
|
||||
</el-link>
|
||||
<el-link type="primary" v-if="canComplete(row)" @click="handleAction('complete', row)">
|
||||
{{ completeActionLabel }}
|
||||
</el-link>
|
||||
<el-link
|
||||
type="primary"
|
||||
v-if="canConfirmReturn(row)"
|
||||
@click="handleAction('confirmReturn', row)"
|
||||
>
|
||||
<el-link type="primary" v-if="canComplete(row)" @click="handleComplete(row)">
|
||||
{{ completeActionLabel }}
|
||||
</el-link>
|
||||
<el-link type="primary" v-if="canMaintainMileage(row)" @click="openMileageDialog(row)">
|
||||
@@ -5178,12 +5171,9 @@ export default {
|
||||
return false;
|
||||
}
|
||||
const status = this.statusValue(row);
|
||||
// 待回单确认的「完成」由确认回单入口承担(走打卡节点与未了结异常校验);
|
||||
// 只有确认回单不可用时才退回这里的普通完成
|
||||
if (status === 'pending_return_confirm') {
|
||||
return !this.canConfirmReturn(row);
|
||||
}
|
||||
return status === 'processing' || status === 'running';
|
||||
// 同一枚「完成」按钮覆盖两种状态:待回单确认走确认回单(后端校验司机打卡节点齐全且无未了结异常),
|
||||
// 进行中/处理中二次确认后直接置完成
|
||||
return status === 'processing' || status === 'running' || status === 'pending_return_confirm';
|
||||
},
|
||||
canConfirmReturn(row) {
|
||||
return (
|
||||
@@ -10252,6 +10242,14 @@ export default {
|
||||
this.mileageForm = { id: '', mileage: '', mileageRemark: '' };
|
||||
this.$refs.mileageFormRef?.clearValidate();
|
||||
},
|
||||
// 行操作「完成」的唯一入口:待回单确认的运单走确认回单(后端校验司机打卡节点齐全且无未了结异常,
|
||||
// 配置里没有确认回单动作时退回普通完成);进行中/处理中的运单二次确认后直接置完成。
|
||||
handleComplete(row) {
|
||||
if (this.canConfirmReturn(row)) {
|
||||
return this.handleAction('confirmReturn', row);
|
||||
}
|
||||
return this.handleAction('complete', row);
|
||||
},
|
||||
handleAction(action, row) {
|
||||
if (action === 'reassign') {
|
||||
this.openReassignDrawer(row);
|
||||
@@ -10265,11 +10263,13 @@ export default {
|
||||
reassign: '重新派单',
|
||||
confirmReturn: '完成',
|
||||
}[action];
|
||||
// 回单确认是终态动作(本轮不做撤销),把后果写在提示里,别让人以为还能退回
|
||||
const confirmText =
|
||||
action === 'confirmReturn'
|
||||
? '回单确认后该运单将置为已完成,且不可撤销。是否继续?'
|
||||
: `确定${actionName}该${this.config.title}?`;
|
||||
// 回单确认与「完成」都是终态动作(本轮不做撤销),把后果写在提示里,别让人以为还能退回
|
||||
let confirmText = `确定${actionName}该${this.config.title}?`;
|
||||
if (action === 'confirmReturn') {
|
||||
confirmText = '回单确认后该运单将置为已完成,且不可撤销。是否继续?';
|
||||
} else if (action === 'complete') {
|
||||
confirmText = `确定完成该${this.config.title}?完成后将置为已完成,且不可撤销。`;
|
||||
}
|
||||
this.$confirm(confirmText, '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
|
||||
Reference in New Issue
Block a user