售后处置为补救完成或问题不成立时自动退还原追缴金额
This commit is contained in:
@@ -137,7 +137,10 @@ const AfterSalesPanel = forwardRef<AfterSalesPanelHandle>(function AfterSalesPan
|
||||
resolutionNote: String(values.resolutionNote || '').trim(),
|
||||
recoveryAmount: action === 'upheld' ? Number(values.recoveryAmount || 0) : 0,
|
||||
}),
|
||||
'售后问题单已处置',
|
||||
(result) =>
|
||||
(result.data?.refundedTotalAmount || 0) > 0
|
||||
? `售后问题单已处置,已退还原追缴 ${formatMoney(result.data.refundedTotalAmount)} 至打手可用余额`
|
||||
: '售后问题单已处置',
|
||||
)
|
||||
if (!succeeded) return
|
||||
setAfterSalesCase(null)
|
||||
@@ -264,6 +267,11 @@ const AfterSalesPanel = forwardRef<AfterSalesPanelHandle>(function AfterSalesPan
|
||||
追缴 {formatMoney(item.recoveryAmount)},待还 {formatMoney(item.debtAmount)}
|
||||
</Typography.Text>
|
||||
) : null}
|
||||
{item.refundedAmount > 0 ? (
|
||||
<Typography.Text type="success">
|
||||
已退还 {formatMoney(item.refundedAmount)}
|
||||
</Typography.Text>
|
||||
) : null}
|
||||
</div>
|
||||
),
|
||||
},
|
||||
@@ -399,7 +407,11 @@ const AfterSalesPanel = forwardRef<AfterSalesPanelHandle>(function AfterSalesPan
|
||||
>
|
||||
<InputNumber min={0} precision={2} addonAfter="元" className="full-width" />
|
||||
</Form.Item>
|
||||
) : null
|
||||
) : (
|
||||
<Typography.Paragraph type="secondary" style={{ marginBottom: 16 }}>
|
||||
选择补救完成或问题不成立时,系统自动将该工单同一责任打手此前已追缴且未退还的金额退还至其可用余额。
|
||||
</Typography.Paragraph>
|
||||
)
|
||||
}
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
|
||||
@@ -352,6 +352,11 @@ function WorkerAfterSalesItem({
|
||||
待追缴 {formatMoney(item.debtAmount)},后续验收报酬将自动抵扣
|
||||
</Typography.Text>
|
||||
) : null}
|
||||
{Number(item.refundedAmount || 0) > 0 ? (
|
||||
<Typography.Text type="success" strong>
|
||||
已退还追缴 {formatMoney(item.refundedAmount)} 至可用余额
|
||||
</Typography.Text>
|
||||
) : null}
|
||||
</Space>
|
||||
) : null}
|
||||
</Space>
|
||||
|
||||
@@ -37,6 +37,7 @@ const LEDGER_TYPE_OPTIONS = [
|
||||
{ value: 'after_sales_deposit_deduction', label: '售后扣减押金' },
|
||||
{ value: 'after_sales_balance_deduction', label: '售后扣减余额' },
|
||||
{ value: 'after_sales_debt_offset', label: '抵扣售后欠款' },
|
||||
{ value: 'after_sales_refund', label: '售后追缴退还' },
|
||||
]
|
||||
|
||||
const REQUEST_TYPE_OPTIONS = [
|
||||
|
||||
@@ -60,6 +60,7 @@ export function formatLedgerType(ledgerType: string) {
|
||||
after_sales_deposit_deduction: '售后扣减押金',
|
||||
after_sales_balance_deduction: '售后扣减余额',
|
||||
after_sales_debt_offset: '抵扣售后欠款',
|
||||
after_sales_refund: '售后追缴退还',
|
||||
}
|
||||
return labels[ledgerType] || ledgerType || '-'
|
||||
}
|
||||
@@ -77,6 +78,7 @@ export function resolveLedgerTagColor(ledgerType: string) {
|
||||
if (ledgerType === 'after_sales_deposit_deduction') return 'red'
|
||||
if (ledgerType === 'after_sales_balance_deduction') return 'red'
|
||||
if (ledgerType === 'after_sales_debt_offset') return 'orange'
|
||||
if (ledgerType === 'after_sales_refund') return 'green'
|
||||
return 'default'
|
||||
}
|
||||
|
||||
|
||||
@@ -509,10 +509,11 @@ export function resolveAdminAfterSalesCase(
|
||||
recoveryAmount?: number
|
||||
},
|
||||
) {
|
||||
return apiPost<{ case: WorkerAfterSalesCase }>(
|
||||
`/api/v1/admin/worker-platform/after-sales-cases/${caseId}/resolve`,
|
||||
payload,
|
||||
)
|
||||
return apiPost<{
|
||||
case: WorkerAfterSalesCase
|
||||
refundedTotalAmount: number
|
||||
refundedRecoveries: Array<{ caseId: number; caseNo: string; amount: number }>
|
||||
}>(`/api/v1/admin/worker-platform/after-sales-cases/${caseId}/resolve`, payload)
|
||||
}
|
||||
|
||||
export function fetchAdminWorkOrderEvents(workOrderId: number) {
|
||||
|
||||
@@ -182,6 +182,9 @@ export type WorkerAfterSalesCase = {
|
||||
pendingDepositDeductionAmount: number
|
||||
availableDeductionAmount: number
|
||||
debtAmount: number
|
||||
refundedAmount: number
|
||||
refundedAt: string | null
|
||||
refundedBy: string
|
||||
createdBy: string
|
||||
resolvedBy: string
|
||||
resolvedAt: string | null
|
||||
|
||||
Reference in New Issue
Block a user