diff --git a/backend/internal/modules/dispute/arbitration.go b/backend/internal/modules/dispute/arbitration.go
index 488e8dc..b844a20 100644
--- a/backend/internal/modules/dispute/arbitration.go
+++ b/backend/internal/modules/dispute/arbitration.go
@@ -337,7 +337,7 @@ func buildArbitrationHandoffContent(req ArbitrateRequest, settlement arbitration
content += "\n结算给号主:" + money.FormatWithSymbol(settlement.OwnerIncomeAmountCent)
}
if settlement.DepositDeductAmountCent > 0 {
- content += "\n押金扣除:" + money.FormatWithSymbol(settlement.DepositDeductAmountCent)
+ content += "\n押金赔付扣除:" + money.FormatWithSymbol(settlement.DepositDeductAmountCent)
}
return content
}
diff --git a/backend/internal/modules/order/checkout.go b/backend/internal/modules/order/checkout.go
index 2241d65..764974e 100644
--- a/backend/internal/modules/order/checkout.go
+++ b/backend/internal/modules/order/checkout.go
@@ -139,7 +139,12 @@ func (r *Repository) CounterCheckout(ctx context.Context, userID uint64, orderID
First(&checkout).Error; err != nil {
return err
}
- next, err := buildCheckout(order, checkout.InitiatedBy, checkoutStatusCountered, checkout.Content, req.EvidenceURLS, req.ConsumableAmountCent, req.CoinConsumedM, req.OtherAmountCent, req.DepositDeductAmountCent, true)
+ // 号主修正只认押金赔付扣除;other 与 deduct 对齐,避免双字段语义分裂
+ depositDeductCent := req.DepositDeductAmountCent
+ if depositDeductCent <= 0 && req.OtherAmountCent > 0 {
+ depositDeductCent = req.OtherAmountCent
+ }
+ next, err := buildCheckout(order, checkout.InitiatedBy, checkoutStatusCountered, checkout.Content, req.EvidenceURLS, req.ConsumableAmountCent, req.CoinConsumedM, depositDeductCent, depositDeductCent, true)
if err != nil {
return err
}
diff --git a/frontend/src/features/admin/views/AdminOrderDetailView.vue b/frontend/src/features/admin/views/AdminOrderDetailView.vue
index f508516..9303c69 100644
--- a/frontend/src/features/admin/views/AdminOrderDetailView.vue
+++ b/frontend/src/features/admin/views/AdminOrderDetailView.vue
@@ -821,7 +821,7 @@ function paymentPaidAt(record: AdminPayment) {
{{ moneyCent(order.checkout.owner_income_amount_cent) }}
-
押金扣除
+ 押金赔付扣除
{{ moneyCent(order.checkout.deposit_deduct_amount_cent) }}
diff --git a/frontend/src/features/orders/components/OrderResourceUsageEditor.vue b/frontend/src/features/orders/components/OrderResourceUsageEditor.vue
index 20edf46..39fb1e8 100644
--- a/frontend/src/features/orders/components/OrderResourceUsageEditor.vue
+++ b/frontend/src/features/orders/components/OrderResourceUsageEditor.vue
@@ -107,7 +107,7 @@ function updateNumberField(field: 'coin_consumed_m' | 'otherAmountYuan', event:
订单快照 {{ quantity(props.snapshotHafCoinM) }}M,预计剩余
{{ quantity(props.remainingHafCoinM) }}M
-
+
计入实际结算租金
- 其他押金赔付
+ 押金赔付扣除
¥{{ money(props.checkoutForm.otherAmountYuan) }}
- 从押金赔付扣除
+ 从预收押金中扣除
@@ -225,7 +225,7 @@ function updateNumberField(field: 'coin_consumed_m' | 'otherAmountYuan', event:
- 其他押金赔付
+ 押金赔付扣除
仅押金扣除项
封禁、违规、资产损坏等需要从押金赔付的费用,不含额外消耗品。
@@ -250,9 +250,9 @@ function updateNumberField(field: 'coin_consumed_m' | 'otherAmountYuan', event:
按上方物资数量自动计算,计入实际结算租金
- 其他押金赔付
+ 押金赔付扣除
¥{{ money(props.checkoutForm.otherAmountYuan) }}
- 作为押金赔付扣除,和额外消耗品分开展示
+ 从预收押金中扣除,与额外消耗品分开展示
0
+ ? checkout.deposit_deduct_amount_cent
+ : checkout.other_amount_cent
+ )
return {
consumableAmountYuan: amountYuan(checkout.consumable_amount_cent),
coin_consumed_m: checkout.coin_consumed_m,
- otherAmountYuan: amountYuan(checkout.other_amount_cent),
- depositDeductAmountYuan: amountYuan(checkout.deposit_deduct_amount_cent),
+ depositDeductAmountYuan: depositDeductYuan,
reason: '',
evidenceText: '',
}
@@ -193,16 +197,9 @@ export function hydrateCounterFormFromCheckout(checkout: Checkout): CounterFormS
export function calculateCounterTotal(counterForm: {
consumableAmountYuan: number
- coin_consumed_m: number
- otherAmountYuan: number
depositDeductAmountYuan: number
}) {
- return roundMoney(
- counterForm.consumableAmountYuan +
- counterForm.coin_consumed_m +
- counterForm.otherAmountYuan +
- counterForm.depositDeductAmountYuan
- )
+ return roundMoney(counterForm.consumableAmountYuan + counterForm.depositDeductAmountYuan)
}
export function getSnapshotHafCoinM(order: Order | null) {
diff --git a/frontend/src/features/orders/views/MobileOrderDetailView.vue b/frontend/src/features/orders/views/MobileOrderDetailView.vue
index 4707fc1..5044eb4 100644
--- a/frontend/src/features/orders/views/MobileOrderDetailView.vue
+++ b/frontend/src/features/orders/views/MobileOrderDetailView.vue
@@ -465,15 +465,6 @@ async function copyListingCode() {
/>
-
-
-
-
-
route.query.focus, order, loading], () => {
controls-position="right"
/>
-
-
-
-
+