后端 (Laravel 10 + Sanctum): - RBAC 四层权限系统 (users→roles→permissions→menus) - 门店隔离中间件 (BelongsToStore Trait + StoreIsolation Middleware) - 操作日志中间件 (自动记录写操作) - 权限检查中间件 (CheckPermission) - 16张数据库表迁移 (系统基础+RBAC+字典+配置) - 11个 Eloquent Model - Auth API (登录/登出/用户信息) - 系统设置模块 CRUD (门店/部门/职务/用户/角色/菜单/权限/字典/日志) - 45条 RESTful API 路由 - InitSeeder 初始数据 (超管/角色/76权限/31菜单) 前端 (Vue 3 + Element Plus + Vite): - Axios 请求封装 + Token 注入 - Pinia 状态管理 (user + permission store) - 动态路由 (服务端菜单→前端路由自动生成) - 后台布局 (侧边栏+顶栏+主内容区) - 登录页 + 仪表盘首页 - 系统设置 7 个 CRUD 页面 技术方案文档 (7卷): - 技术总览/数据库设计/API规范/RBAC设计/模块详设/小程序设计/部署方案
133 lines
4.2 KiB
PHP
133 lines
4.2 KiB
PHP
<?php
|
|
|
|
use Monolog\Handler\NullHandler;
|
|
use Monolog\Handler\StreamHandler;
|
|
use Monolog\Handler\SyslogUdpHandler;
|
|
use Monolog\Processor\PsrLogMessageProcessor;
|
|
|
|
return [
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Default Log Channel
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This option defines the default log channel that is utilized to write
|
|
| messages to your logs. The value provided here should match one of
|
|
| the channels present in the list of "channels" configured below.
|
|
|
|
|
*/
|
|
|
|
'default' => env('LOG_CHANNEL', 'stack'),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Deprecations Log Channel
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This option controls the log channel that should be used to log warnings
|
|
| regarding deprecated PHP and library features. This allows you to get
|
|
| your application ready for upcoming major versions of dependencies.
|
|
|
|
|
*/
|
|
|
|
'deprecations' => [
|
|
'channel' => env('LOG_DEPRECATIONS_CHANNEL', 'null'),
|
|
'trace' => env('LOG_DEPRECATIONS_TRACE', false),
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Log Channels
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here you may configure the log channels for your application. Laravel
|
|
| utilizes the Monolog PHP logging library, which includes a variety
|
|
| of powerful log handlers and formatters that you're free to use.
|
|
|
|
|
| Available drivers: "single", "daily", "slack", "syslog",
|
|
| "errorlog", "monolog", "custom", "stack"
|
|
|
|
|
*/
|
|
|
|
'channels' => [
|
|
|
|
'stack' => [
|
|
'driver' => 'stack',
|
|
'channels' => explode(',', (string) env('LOG_STACK', 'single')),
|
|
'ignore_exceptions' => false,
|
|
],
|
|
|
|
'single' => [
|
|
'driver' => 'single',
|
|
'path' => storage_path('logs/laravel.log'),
|
|
'level' => env('LOG_LEVEL', 'debug'),
|
|
'replace_placeholders' => true,
|
|
],
|
|
|
|
'daily' => [
|
|
'driver' => 'daily',
|
|
'path' => storage_path('logs/laravel.log'),
|
|
'level' => env('LOG_LEVEL', 'debug'),
|
|
'days' => env('LOG_DAILY_DAYS', 14),
|
|
'replace_placeholders' => true,
|
|
],
|
|
|
|
'slack' => [
|
|
'driver' => 'slack',
|
|
'url' => env('LOG_SLACK_WEBHOOK_URL'),
|
|
'username' => env('LOG_SLACK_USERNAME', 'Laravel Log'),
|
|
'emoji' => env('LOG_SLACK_EMOJI', ':boom:'),
|
|
'level' => env('LOG_LEVEL', 'critical'),
|
|
'replace_placeholders' => true,
|
|
],
|
|
|
|
'papertrail' => [
|
|
'driver' => 'monolog',
|
|
'level' => env('LOG_LEVEL', 'debug'),
|
|
'handler' => env('LOG_PAPERTRAIL_HANDLER', SyslogUdpHandler::class),
|
|
'handler_with' => [
|
|
'host' => env('PAPERTRAIL_URL'),
|
|
'port' => env('PAPERTRAIL_PORT'),
|
|
'connectionString' => 'tls://'.env('PAPERTRAIL_URL').':'.env('PAPERTRAIL_PORT'),
|
|
],
|
|
'processors' => [PsrLogMessageProcessor::class],
|
|
],
|
|
|
|
'stderr' => [
|
|
'driver' => 'monolog',
|
|
'level' => env('LOG_LEVEL', 'debug'),
|
|
'handler' => StreamHandler::class,
|
|
'handler_with' => [
|
|
'stream' => 'php://stderr',
|
|
],
|
|
'formatter' => env('LOG_STDERR_FORMATTER'),
|
|
'processors' => [PsrLogMessageProcessor::class],
|
|
],
|
|
|
|
'syslog' => [
|
|
'driver' => 'syslog',
|
|
'level' => env('LOG_LEVEL', 'debug'),
|
|
'facility' => env('LOG_SYSLOG_FACILITY', LOG_USER),
|
|
'replace_placeholders' => true,
|
|
],
|
|
|
|
'errorlog' => [
|
|
'driver' => 'errorlog',
|
|
'level' => env('LOG_LEVEL', 'debug'),
|
|
'replace_placeholders' => true,
|
|
],
|
|
|
|
'null' => [
|
|
'driver' => 'monolog',
|
|
'handler' => NullHandler::class,
|
|
],
|
|
|
|
'emergency' => [
|
|
'path' => storage_path('logs/laravel.log'),
|
|
],
|
|
|
|
],
|
|
|
|
];
|