✨ 运单管理新增「确认回单」行操作
回单节点配成「需业务员确认」时,运单会一直停在进行中等人确认,此前后台没有这个入口。 在与「完成」并列的位置加一个「确认回单」行操作:只在进行中的运单上出现,沿用「完成」的 权限码(它比完成更严——后端还要校验司机打卡节点齐全且无未了结异常,故不会多开出任何权限)。 确认后不可撤销,提示里写明。
This commit is contained in:
@@ -14,6 +14,13 @@ export const cancel = api.cancel;
|
|||||||
export const reassign = api.reassign;
|
export const reassign = api.reassign;
|
||||||
export const complete = api.complete;
|
export const complete = api.complete;
|
||||||
export const batchComplete = api.batchComplete;
|
export const batchComplete = api.batchComplete;
|
||||||
|
/** 确认回单:回单节点配成「需业务员确认」时用;后端校验司机打卡节点齐全且无未了结异常后才置完成 */
|
||||||
|
export const confirmReturn = id =>
|
||||||
|
request({
|
||||||
|
url: `${baseUrl}/confirm-return`,
|
||||||
|
method: 'post',
|
||||||
|
params: { id },
|
||||||
|
});
|
||||||
export const changeRoute = data =>
|
export const changeRoute = data =>
|
||||||
request({
|
request({
|
||||||
url: `${baseUrl}/change-route`,
|
url: `${baseUrl}/change-route`,
|
||||||
|
|||||||
@@ -471,7 +471,7 @@ export const config = {
|
|||||||
endDateRange: ['endDateStart', 'endDateEnd'],
|
endDateRange: ['endDateStart', 'endDateEnd'],
|
||||||
createTimeRange: ['createTimeStart', 'createTimeEnd'],
|
createTimeRange: ['createTimeStart', 'createTimeEnd'],
|
||||||
},
|
},
|
||||||
actions: ['copy', 'cancel', 'reassign', 'complete', 'batchComplete'],
|
actions: ['copy', 'cancel', 'reassign', 'complete', 'batchComplete', 'confirmReturn'],
|
||||||
detailButton: true,
|
detailButton: true,
|
||||||
statusProp: 'businessStatus',
|
statusProp: 'businessStatus',
|
||||||
statusTextProp: 'businessStatusName',
|
statusTextProp: 'businessStatusName',
|
||||||
|
|||||||
@@ -1594,6 +1594,13 @@
|
|||||||
<el-link type="primary" v-if="canComplete(row)" @click="handleAction('complete', row)">
|
<el-link type="primary" v-if="canComplete(row)" @click="handleAction('complete', row)">
|
||||||
{{ completeActionLabel }}
|
{{ completeActionLabel }}
|
||||||
</el-link>
|
</el-link>
|
||||||
|
<el-link
|
||||||
|
type="primary"
|
||||||
|
v-if="canConfirmReturn(row)"
|
||||||
|
@click="handleAction('confirmReturn', row)"
|
||||||
|
>
|
||||||
|
确认回单
|
||||||
|
</el-link>
|
||||||
<el-link type="primary" v-if="canMaintainMileage(row)" @click="openMileageDialog(row)">
|
<el-link type="primary" v-if="canMaintainMileage(row)" @click="openMileageDialog(row)">
|
||||||
维护里程
|
维护里程
|
||||||
</el-link>
|
</el-link>
|
||||||
@@ -5113,6 +5120,15 @@ export default {
|
|||||||
const status = this.statusValue(row);
|
const status = this.statusValue(row);
|
||||||
return status === 'processing' || status === 'running';
|
return status === 'processing' || status === 'running';
|
||||||
},
|
},
|
||||||
|
canConfirmReturn(row) {
|
||||||
|
return (
|
||||||
|
this.hasAction('confirmReturn') &&
|
||||||
|
this.hasPermission(`${this.config.permission}_complete`) &&
|
||||||
|
!this.readonlyScope &&
|
||||||
|
!row.readonly &&
|
||||||
|
this.statusValue(row) === 'running'
|
||||||
|
);
|
||||||
|
},
|
||||||
canMaintainMileage(row) {
|
canMaintainMileage(row) {
|
||||||
return (
|
return (
|
||||||
this.config.permission === 'waybill_manage' &&
|
this.config.permission === 'waybill_manage' &&
|
||||||
@@ -10150,8 +10166,14 @@ export default {
|
|||||||
cancel: '取消',
|
cancel: '取消',
|
||||||
complete: this.completeActionLabel,
|
complete: this.completeActionLabel,
|
||||||
reassign: '重新派单',
|
reassign: '重新派单',
|
||||||
|
confirmReturn: '确认回单',
|
||||||
}[action];
|
}[action];
|
||||||
this.$confirm(`确定${actionName}该${this.config.title}?`, '提示', {
|
// 确认回单是终态动作(本轮不做撤销),把后果写在提示里,别让人以为还能退回
|
||||||
|
const confirmText =
|
||||||
|
action === 'confirmReturn'
|
||||||
|
? '确认回单后该运单将置为已完成,且不可撤销。是否继续?'
|
||||||
|
: `确定${actionName}该${this.config.title}?`;
|
||||||
|
this.$confirm(confirmText, '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: '取消',
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
|
|||||||
Reference in New Issue
Block a user