Files
MrleeAdmin/backend/app/schema/response/ErrorResponse.php
T
2026-08-31 11:33:59 +08:00

71 lines
1.5 KiB
PHP

<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\schema\response;
use OpenApi\Attributes as OA;
use madong\swagger\schema\BaseResponseDTO;
#[OA\Schema(
title: '错误响应',
description: '错误响应结构'
)]
class ErrorResponse extends BaseResponseDTO
{
#[OA\Property(
property: 'error',
description: '错误信息',
type: 'string',
example: '参数错误'
)]
public string $error;
#[OA\Property(
property: 'code',
description: '错误码',
type: 'string',
example: 'VALIDATION_ERROR'
)]
public ?string $code = null;
#[OA\Property(
property: 'details',
description: '错误详情',
type: 'array',
items: new OA\Items(type: 'string'),
example: []
)]
public ?array $details = null;
public function __construct(
string $error = '操作失败',
?string $code = null,
?array $details = null
)
{
$this->error = $error;
$this->code = $code;
$this->details = $details;
}
public static function make(
string $error,
?string $code = null,
?array $details = null
): self
{
return new self($error, $code, $details);
}
}