新增店铺违规信息预警子页面 #230
@ -630,7 +630,9 @@ $navigation = [
|
||||
'slug' => 'financial-risk-control',
|
||||
'title' => '财务经营风险管控',
|
||||
'icon' => 'security',
|
||||
'pages' => [],
|
||||
'pages' => [
|
||||
['slug' => 'store-violation-alert', 'title' => '店铺违规信息预警'],
|
||||
],
|
||||
],
|
||||
[
|
||||
'slug' => 'financial-sw',
|
||||
|
||||
@ -1,3 +1,10 @@
|
||||
@php
|
||||
$emptyStateId = $emptyStateId ?? 'financial-risk-control-empty-title';
|
||||
$emptyStateIcon = $emptyStateIcon ?? 'security';
|
||||
$emptyStateTitle = $emptyStateTitle ?? '暂无风险事项';
|
||||
$emptyStateDescription = $emptyStateDescription ?? '风险规则和数据接入后,相关事项将在此展示。';
|
||||
@endphp
|
||||
|
||||
<style>
|
||||
.financial-risk-control-empty {
|
||||
display: flex;
|
||||
@ -45,12 +52,12 @@
|
||||
}
|
||||
</style>
|
||||
|
||||
<section class="financial-risk-control-empty" aria-labelledby="financial-risk-control-empty-title">
|
||||
<section class="financial-risk-control-empty" aria-labelledby="{{ $emptyStateId }}">
|
||||
<div>
|
||||
<span class="financial-risk-control-empty__icon" aria-hidden="true">
|
||||
<span class="material-icons-outlined">security</span>
|
||||
<span class="material-icons-outlined">{{ $emptyStateIcon }}</span>
|
||||
</span>
|
||||
<h2 class="financial-risk-control-empty__title" id="financial-risk-control-empty-title">暂无风险事项</h2>
|
||||
<p class="financial-risk-control-empty__description">风险规则和数据接入后,相关事项将在此展示。</p>
|
||||
<h2 class="financial-risk-control-empty__title" id="{{ $emptyStateId }}">{{ $emptyStateTitle }}</h2>
|
||||
<p class="financial-risk-control-empty__description">{{ $emptyStateDescription }}</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@ -0,0 +1,6 @@
|
||||
@include('business.pages.financial-risk-control.index', [
|
||||
'emptyStateId' => 'store-violation-alert-empty-title',
|
||||
'emptyStateIcon' => 'warning_amber',
|
||||
'emptyStateTitle' => '暂无店铺违规预警',
|
||||
'emptyStateDescription' => '违规规则和店铺数据接入后,相关预警将在此展示。',
|
||||
])
|
||||
@ -54,14 +54,27 @@ class NavigationTest extends FeatureTestCase
|
||||
$this->assertSame('financial-sw', $slugs[$riskControlIndex + 1]);
|
||||
$this->assertSame('财务经营风险管控', $navigation[$riskControlIndex]['title']);
|
||||
$this->assertSame('security', $navigation[$riskControlIndex]['icon']);
|
||||
$this->assertSame([], $navigation[$riskControlIndex]['pages']);
|
||||
$this->assertSame([
|
||||
['slug' => 'store-violation-alert', 'title' => '店铺违规信息预警'],
|
||||
], $navigation[$riskControlIndex]['pages']);
|
||||
|
||||
$this->loginAs()
|
||||
->get(route('business.pages.show', ['section' => 'financial-risk-control']))
|
||||
->assertRedirect(route('business.pages.show', [
|
||||
'section' => 'financial-risk-control',
|
||||
'page' => 'store-violation-alert',
|
||||
]));
|
||||
|
||||
$this->get(route('business.pages.show', [
|
||||
'section' => 'financial-risk-control',
|
||||
'page' => 'store-violation-alert',
|
||||
]))
|
||||
->assertOk()
|
||||
->assertSeeText('财务经营风险管控')
|
||||
->assertSeeText('暂无风险事项')
|
||||
->assertSee('/workspace/financial-risk-control', false);
|
||||
->assertSeeText('店铺违规信息预警')
|
||||
->assertSeeText('暂无店铺违规预警')
|
||||
->assertSeeText('违规规则和店铺数据接入后,相关预警将在此展示。')
|
||||
->assertSee('/workspace/financial-risk-control/store-violation-alert', false);
|
||||
}
|
||||
|
||||
public function testGroupedNavigationKeepsRestrictedPagePermissions(): void
|
||||
|
||||
@ -128,6 +128,24 @@ class UserPermissionsTest extends FeatureTestCase
|
||||
$this->assertSame(['subject-trademark-rules'], $pages->pluck('slug')->all());
|
||||
}
|
||||
|
||||
public function test_financial_risk_control_section_permission_includes_store_violation_alert(): void
|
||||
{
|
||||
$regular = $this->account('user');
|
||||
$subject = 'user_'.$regular->id;
|
||||
setting()->set('system.sidebar_permissions', [
|
||||
'configured' => [$subject],
|
||||
'subjects' => [$subject => ['financial-risk-control']],
|
||||
]);
|
||||
|
||||
$navigation = SidebarPermissions::navigationFor($regular);
|
||||
|
||||
$this->assertSame(['financial-risk-control'], array_column($navigation, 'slug'));
|
||||
$this->assertSame(
|
||||
['store-violation-alert'],
|
||||
array_column($navigation[0]['pages'], 'slug')
|
||||
);
|
||||
}
|
||||
|
||||
public function test_legacy_small_payment_permission_follows_the_page_to_financial_operations(): void
|
||||
{
|
||||
$regular = $this->account('user');
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user