chore(admin-js): only auto open receipt details on explicit add-receipt hashes

This commit is contained in:
萝卜
2026-03-16 15:53:37 +08:00
parent 2d4f366621
commit 983fdca237
3 changed files with 20 additions and 3 deletions

View File

@@ -58,7 +58,6 @@
var map = {
'#add-payment-receipt': 'details#add-payment-receipt',
'#add-refund-receipt': 'details#add-refund-receipt',
'#refund-receipts': 'details#add-refund-receipt',
};
if (map[h]) {

View File

@@ -0,0 +1,19 @@
<?php
namespace Tests\Feature;
use Tests\TestCase;
class AdminJsReceiptDetailsMapShouldNotAutoOpenOnSectionHashesTest extends TestCase
{
public function test_admin_js_receipt_details_map_should_not_auto_open_on_section_hashes(): void
{
$js = (string) file_get_contents(public_path('js/admin.js'));
// 治理:滚动到区块(#refund-receipts不应强制展开“追加退款记录”面板。
// 只有显式的动作锚点(#add-xxx-receipt才自动展开。
$this->assertStringNotContainsString("'#refund-receipts': 'details#add-refund-receipt'", $js);
$this->assertStringContainsString("'#add-refund-receipt': 'details#add-refund-receipt'", $js);
$this->assertStringContainsString("'#add-payment-receipt': 'details#add-payment-receipt'", $js);
}
}

View File

@@ -10,8 +10,7 @@ class AdminJsShouldAutoOpenRefundReceiptDetailsWhenHashPresentTest extends TestC
{
$js = (string) file_get_contents(public_path('js/admin.js'));
// 护栏:当 hash 为 #refund-receipts 或 #add-refund-receipt 时,应自动展开 details#add-refund-receipt追加退款记录面板
$this->assertStringContainsString("'#refund-receipts': 'details#add-refund-receipt'", $js);
// 护栏:当 hash 为 #add-refund-receipt 时,应自动展开 details#add-refund-receipt追加退款记录面板
$this->assertStringContainsString("'#add-refund-receipt': 'details#add-refund-receipt'", $js);
$this->assertStringContainsString('if (map[h])', $js);
$this->assertStringContainsString('d.open = true', $js);