- 基础环境:Docker 部署配置,源码挂载实时同步 - 修复:super_admin 权限补全、登录重定向循环 - 开发:店铺营销账户账单 - 抖音账户(15字段汇总账单) - 开发:店铺营销账户账单 - 淘系支付宝账户(8字段流水账单) - 开发:店铺营销账户账单 - 拼多多账户(7字段流水账单) - 业务页面导航集成:config/business_navigation.php + Business\Pages 控制器 - 各平台独立表结构和视图,互不影响
117 lines
4.0 KiB
PHP
117 lines
4.0 KiB
PHP
<x-layouts.admin>
|
|
<x-slot name="title">
|
|
{{ $page['title'] ?? $section['title'] }}
|
|
</x-slot>
|
|
|
|
<x-slot name="content">
|
|
<style>
|
|
#main-body > .container {
|
|
max-width: none;
|
|
width: auto;
|
|
margin-left: 1.5rem;
|
|
margin-right: 1.5rem;
|
|
}
|
|
|
|
.business-tab-bar {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 2.25rem;
|
|
min-height: 5rem;
|
|
padding: 0 2rem;
|
|
overflow-x: auto;
|
|
border: 1px solid #e5e7eb;
|
|
border-radius: 1rem;
|
|
background: #ffffff;
|
|
box-shadow: 0 8px 24px rgba(31, 41, 55, 0.06);
|
|
}
|
|
|
|
.business-tab-link {
|
|
position: relative;
|
|
display: inline-flex;
|
|
flex: 0 0 auto;
|
|
align-items: center;
|
|
gap: 0.65rem;
|
|
min-height: 5rem;
|
|
color: #4b5563;
|
|
font-size: 1rem;
|
|
font-weight: 600;
|
|
white-space: nowrap;
|
|
transition: color 150ms ease;
|
|
}
|
|
|
|
.business-tab-link:hover,
|
|
.business-tab-link.is-active {
|
|
color: #4f46e5;
|
|
}
|
|
|
|
.business-tab-link.is-active::after {
|
|
position: absolute;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
height: 3px;
|
|
border-radius: 999px 999px 0 0;
|
|
background: #4f46e5;
|
|
content: '';
|
|
}
|
|
|
|
.business-blank-page {
|
|
min-height: 34rem;
|
|
margin-top: 1.5rem;
|
|
border: 1px solid #eef0f4;
|
|
border-radius: 1rem;
|
|
background: #ffffff;
|
|
}
|
|
|
|
.business-content-section {
|
|
margin-top: 1.5rem;
|
|
padding: 1.5rem;
|
|
border: 1px solid #eef0f4;
|
|
border-radius: 1rem;
|
|
background: #ffffff;
|
|
}
|
|
|
|
@media (min-width: 1280px) {
|
|
#main-body > .container {
|
|
margin-left: 2.5rem;
|
|
margin-right: 2.5rem;
|
|
}
|
|
}
|
|
</style>
|
|
|
|
<div class="my-6">
|
|
@if ($tabs->isNotEmpty())
|
|
<nav class="business-tab-bar" aria-label="{{ $page['title'] }}">
|
|
@foreach ($tabs as $tab)
|
|
<a
|
|
href="{{ route('business.pages.show', [
|
|
'section' => $section['slug'],
|
|
'page' => $page['slug'],
|
|
'tab' => $tab['slug'],
|
|
]) }}"
|
|
@class([
|
|
'business-tab-link',
|
|
'is-active' => $activeTab['slug'] === $tab['slug'],
|
|
])
|
|
@if ($activeTab['slug'] === $tab['slug']) aria-current="page" @endif
|
|
>
|
|
<span class="material-icons-outlined text-xl" aria-hidden="true">
|
|
{{ $tab['icon'] ?? 'description' }}
|
|
</span>
|
|
<span>{{ $tab['title'] }}</span>
|
|
</a>
|
|
@endforeach
|
|
</nav>
|
|
@endif
|
|
|
|
@if ($page && !empty($content) && !empty($content['view']))
|
|
<section class="business-content-section" aria-label="{{ $activeTab['title'] ?? ($page['title'] ?? $section['title']) }}">
|
|
@include($content['view'], $content)
|
|
</section>
|
|
@else
|
|
<section class="business-blank-page" aria-label="{{ $activeTab['title'] ?? ($page['title'] ?? $section['title']) }}"></section>
|
|
@endif
|
|
</div>
|
|
</x-slot>
|
|
</x-layouts.admin>
|