67 lines
1.5 KiB
PHP
67 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace app\common\Trait;
|
|
|
|
use think\Response;
|
|
|
|
/**
|
|
* API 响应 Trait
|
|
* 提供统一的 JSON 响应格式
|
|
*/
|
|
trait ApiResponse
|
|
{
|
|
/**
|
|
* 成功响应
|
|
*
|
|
* @param mixed $data 响应数据
|
|
* @param string $msg 响应消息
|
|
* @param int $code 响应码
|
|
* @param int $httpCode HTTP状态码
|
|
* @return Response
|
|
*/
|
|
protected function successResponse($data = [], $msg = '成功', $code = 200, $httpCode = 200)
|
|
{
|
|
return json([
|
|
'code' => $code,
|
|
'msg' => $msg,
|
|
'data' => $data
|
|
], $httpCode);
|
|
}
|
|
|
|
/**
|
|
* 错误响应
|
|
*
|
|
* @param string $msg 错误消息
|
|
* @param mixed $data 错误数据
|
|
* @param int $code 错误码
|
|
* @param int $httpCode HTTP状态码
|
|
* @return Response
|
|
*/
|
|
protected function errorResponse($msg = '失败', $data = null, $code = 400, $httpCode = 400)
|
|
{
|
|
return json([
|
|
'code' => $code,
|
|
'msg' => $msg,
|
|
'data' => $data
|
|
], $httpCode);
|
|
}
|
|
|
|
/**
|
|
* 自定义响应
|
|
*
|
|
* @param int $code 响应码
|
|
* @param string $msg 响应消息
|
|
* @param mixed $data 响应数据
|
|
* @param int $httpCode HTTP状态码
|
|
* @return Response
|
|
*/
|
|
protected function customResponse($code, $msg, $data = [], $httpCode = 200)
|
|
{
|
|
return json([
|
|
'code' => $code,
|
|
'msg' => $msg,
|
|
'data' => $data
|
|
], $httpCode);
|
|
}
|
|
}
|