Merge branch 'cedar2025:master' into master

This commit is contained in:
socksprox 2025-01-26 10:25:06 +01:00 committed by GitHub
commit e59e5f71a3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 18 additions and 23 deletions

View File

@ -19,7 +19,8 @@ class Handler extends ExceptionHandler
* @var array
*/
protected $dontReport = [
ApiException::class
ApiException::class,
InterceptResponseException::class
];
/**

View File

@ -55,9 +55,10 @@ class TicketController extends Controller
if (!$ticket) {
return $this->fail([400202, '工单不存在']);
}
$ticket->user = UserController::transformUserData($ticket->user);
$ticket->messages->each(function ($message) use ($ticket) {
$message->is_me = $message->user_id !== $ticket->user_id;
});
return $this->success($ticket);
@ -84,13 +85,20 @@ class TicketController extends Controller
});
$this->applyFiltersAndSorts($request, $ticketModel);
return response()->json($ticketModel
$tickets = $ticketModel
->latest('updated_at')
->paginate(
perPage: $request->integer('pageSize', 10),
page: $request->integer('current', 1)
));
);
$tickets->getCollection()->transform(function ($ticket) {
$ticket->user = UserController::transformUserData($ticket->user);
return $ticket;
});
return response([
'data' => $tickets->items(),
'total' => $tickets->total()
]);
}
public function reply(Request $request)

View File

@ -160,7 +160,7 @@ class UserController extends Controller
->paginate($pageSize, ['*'], 'page', $current);
$users->getCollection()->transform(function ($user) {
return $this->transformUserData($user);
return self::transformUserData($user);
});
return response([
@ -175,7 +175,7 @@ class UserController extends Controller
* @param User $user
* @return User
*/
private function transformUserData(User $user): User
public static function transformUserData(User $user): User
{
$user->subscribe_url = Helper::getSubscribeUrl($user->token);
$user->balance = $user->balance / 100;

View File

@ -7,6 +7,7 @@ use App\Services\Plugin\PluginManager;
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
class PluginServiceProvider extends ServiceProvider
{
@ -19,23 +20,8 @@ class PluginServiceProvider extends ServiceProvider
public function boot(): void
{
if (!file_exists(base_path('plugins'))) {
mkdir(base_path('plugins'), 0755, true);
}
try {
$plugins = Plugin::query()
->where('is_enabled', true)
->get();
foreach ($plugins as $plugin) {
$manager = $this->app->make(PluginManager::class);
$manager->enable($plugin->code);
}
} catch (\Exception $e) {
\Log::error('Failed to load plugins: ' . $e->getMessage());
}
}
}

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.