From 90fd59b64708acd83c82ce35396a42a5b0643776 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 25 Aug 2026 04:20:29 +0800 Subject: [PATCH] =?UTF-8?q?/user/balance/=20=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../credits-transactions.php | 15 +++++---------- .../user-center-renderers/profile-credits.php | 13 +++++-------- .../widget-system/asset-ledger-contract.test.cjs | 8 ++++++++ 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/inc/helpers/user-center-renderers/credits-transactions.php b/inc/helpers/user-center-renderers/credits-transactions.php index 4f635bdb..38ce338b 100644 --- a/inc/helpers/user-center-renderers/credits-transactions.php +++ b/inc/helpers/user-center-renderers/credits-transactions.php @@ -25,6 +25,9 @@ defined('ABSPATH') || exit; = 0 ? 'is-positive' : 'is-negative'; + $record_note = (string) $row['reason'] === 'points_exchange' + ? (string) $row['ref_key'] + : (string) $row['remark']; ?>
@@ -33,8 +36,8 @@ defined('ABSPATH') || exit;
- - () + + ()
@@ -46,14 +49,6 @@ defined('ABSPATH') || exit; 0 ? '+' : '') . $delta); ?> - - - - 0) : ?> -
diff --git a/inc/helpers/user-center-renderers/profile-credits.php b/inc/helpers/user-center-renderers/profile-credits.php index cd53e943..0612fc7c 100644 --- a/inc/helpers/user-center-renderers/profile-credits.php +++ b/inc/helpers/user-center-renderers/profile-credits.php @@ -82,6 +82,9 @@ if ($show_wallet || $show_credits) : $delta = (int) $row['delta_minor']; $delta_class = $delta >= 0 ? 'is-positive' : 'is-negative'; $delta_txt = ($delta > 0 ? '+' : '-') . \AKSRT\Ledger\AssetAmount::from_minor(\AKSRT\Ledger\AssetType::BALANCE, abs($delta))->formatted(); + $record_note = (string) $row['reason'] === 'points_exchange' + ? (string) $row['ref_key'] + : (string) $row['remark']; ?>
@@ -90,20 +93,14 @@ if ($show_wallet || $show_credits) :
- - () + + ()
- formatted())); ?> - 0) : ?>formatted())); ?> - - - -
diff --git a/tests/widget-system/asset-ledger-contract.test.cjs b/tests/widget-system/asset-ledger-contract.test.cjs index 2ad6ddd6..c06d1c6d 100644 --- a/tests/widget-system/asset-ledger-contract.test.cjs +++ b/tests/widget-system/asset-ledger-contract.test.cjs @@ -77,6 +77,14 @@ test('user asset submissions send idempotency keys', () => { } }) +test('profile asset records show order references and only the changed amount', () => { + for (const file of ['profile-credits.php', 'credits-transactions.php']) { + const source = fs.readFileSync(path.join(root, 'inc', 'helpers', 'user-center-renderers', file), 'utf8') + assert.match(source, /\$record_note\s*=\s*\(string\) \$row\['reason'\] === 'points_exchange'[\s\S]*?\(string\) \$row\['ref_key'\]/) + assert.doesNotMatch(source, /uc-transactions__balance|交易 #%d|\$row\['fee_minor'\]|\$row\['ref_id'\]/) + } +}) + test('core asset paths never use floating-point money helpers', () => { const files = [ 'src/Ledger/AssetAmount.php',