指派工单时自动核销电子凭证
This commit is contained in:
@@ -275,7 +275,10 @@ export default function WorkOrdersPanel() {
|
||||
assignAdminWorkOrderToWorker(assignOrder.workOrderId, {
|
||||
workerId: assignWorkerId,
|
||||
}),
|
||||
'已指派打手',
|
||||
(response) =>
|
||||
response.data.voucherConsume.voucherCount > 0
|
||||
? '电子凭证已自动核销,订单已指派给打手'
|
||||
: '已指派打手',
|
||||
)
|
||||
if (!succeeded) return
|
||||
setAssignOrder(null)
|
||||
@@ -810,7 +813,7 @@ export default function WorkOrdersPanel() {
|
||||
) : null}
|
||||
{['unassigned', 'open'].includes(row.status) ? (
|
||||
<Button icon={<UserAddOutlined />} onClick={() => openAssignModal(row)}>
|
||||
指派
|
||||
指派并核销
|
||||
</Button>
|
||||
) : null}
|
||||
{row.status === 'in_progress' && row.worker ? (
|
||||
@@ -1567,14 +1570,14 @@ export default function WorkOrdersPanel() {
|
||||
setAssignWorkerId(undefined)
|
||||
}}
|
||||
onOk={() => submitAssign()}
|
||||
okText="确认指派"
|
||||
okText="指派并核销"
|
||||
okButtonProps={{ disabled: !assignWorkerId }}
|
||||
destroyOnHidden
|
||||
width={520}
|
||||
>
|
||||
<Space direction="vertical" size={12} className="full-width">
|
||||
<Typography.Paragraph type="secondary">
|
||||
指派后订单直接进入该打手的「我的订单」,不再出现在抢单大厅;所需押金按订单规则从打手余额冻结。
|
||||
指派后订单直接进入该打手的「我的订单」,不再出现在抢单大厅;有关联电子凭证时会先自动核销,再按订单规则冻结打手押金。核销后取消指派不会恢复电子凭证。
|
||||
</Typography.Paragraph>
|
||||
<Select
|
||||
style={{ width: '100%' }}
|
||||
|
||||
@@ -12,6 +12,16 @@ import type {
|
||||
WorkerUser,
|
||||
} from '@/types/worker-platform'
|
||||
|
||||
type WorkOrderVoucherConsumeResult = {
|
||||
ok: boolean
|
||||
voucherCount: number
|
||||
consumedCount: number
|
||||
alreadyConsumedCount: number
|
||||
failedCount: number
|
||||
voucherCodes: string[]
|
||||
errorMessage: string
|
||||
}
|
||||
|
||||
export function fetchAdminWorkerPlatformSummary() {
|
||||
return apiGet<{
|
||||
pendingWorkerCount: number
|
||||
@@ -137,7 +147,10 @@ export function assignAdminWorkOrderToWorker(
|
||||
workOrderId: number,
|
||||
payload: { workerId: number },
|
||||
) {
|
||||
return apiPost<{ order: WorkOrder }>(
|
||||
return apiPost<{
|
||||
order: WorkOrder
|
||||
voucherConsume: WorkOrderVoucherConsumeResult
|
||||
}>(
|
||||
`/api/v1/admin/worker-platform/orders/${workOrderId}/assign`,
|
||||
payload,
|
||||
)
|
||||
@@ -249,15 +262,7 @@ export function submitAdminWorkOrderMaterial(
|
||||
export function publishAdminWorkOrder(workOrderId: number) {
|
||||
return apiPost<{
|
||||
order: WorkOrder
|
||||
voucherConsume: {
|
||||
ok: boolean
|
||||
voucherCount: number
|
||||
consumedCount: number
|
||||
alreadyConsumedCount: number
|
||||
failedCount: number
|
||||
voucherCodes: string[]
|
||||
errorMessage: string
|
||||
}
|
||||
voucherConsume: WorkOrderVoucherConsumeResult
|
||||
}>(
|
||||
`/api/v1/admin/worker-platform/orders/${workOrderId}/publish`,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user