移除控制器修复权限问题

This commit is contained in:
lingling 2025-02-20 23:27:27 +08:00
parent 79911a28b5
commit 1553b0d112
9 changed files with 110 additions and 453 deletions

View File

@ -1,6 +1,6 @@
<?php <?php
namespace app\controller\api\v1; namespace app\controller\admin\api\v1;
use support\Request; use support\Request;
use hg\apidoc\annotation as Apidoc; use hg\apidoc\annotation as Apidoc;
@ -14,10 +14,10 @@ use App\model\Dictionary;
* @Apidoc\Title("客服字典") * @Apidoc\Title("客服字典")
*/ */
class DictionaryController class DictionaryController
{ {
/**d /**
* @Apidoc\Title("查找所有客服字典") * @Apidoc\Title("查找所有客服字典")
* @Apidoc\Url("/api/v1/dictionary/lists") * @Apidoc\Url("admin/api/v1/dictionary/lists")
* @Apidoc\Method("POST") * @Apidoc\Method("POST")
*/ */
public function lists() public function lists()
@ -26,14 +26,14 @@ class DictionaryController
$db = Dictionary::all(); $db = Dictionary::all();
//操作不成功 //操作不成功
if (!$db) { if (!$db) {
return ApiResponse::error (402, '操作失败'); return ApiResponse::error(402, '操作失败');
} }
return ApiResponse::success (200, $db ); return ApiResponse::success(200, $db);
} }
/** /**
* @Apidoc\Title("根据id更新客服字典") * @Apidoc\Title("根据id更新客服字典")
* @Apidoc\Url("/api/v1/dictionary/updateId") * @Apidoc\Url("admin/api/v1/dictionary/updateId")
* @Apidoc\Method("POST") * @Apidoc\Method("POST")
* @Apidoc\Query("id", type="string",require=true, desc="id",default="1") * @Apidoc\Query("id", type="string",require=true, desc="id",default="1")
* @Apidoc\Query("key", type="string",require=true, desc="key",default="1") * @Apidoc\Query("key", type="string",require=true, desc="key",default="1")
@ -41,11 +41,7 @@ class DictionaryController
*/ */
public function updateId(Request $request) public function updateId(Request $request)
{ {
$data = $request->post(); $data = $request->post();
foreach ($data as $key => $value) { foreach ($data as $key => $value) {
$db = Dictionary::where('key', $key)->first(); $db = Dictionary::where('key', $key)->first();
$db->value = $value; $db->value = $value;
@ -53,8 +49,8 @@ class DictionaryController
} }
//根据id改数据库中的数据 //根据id改数据库中的数据
if (!$db) { if (!$db) {
return ApiResponse::error (402, '操作失败'); return ApiResponse::error(402, '操作失败');
} }
return ApiResponse::success (200, $db ); return ApiResponse::success(200, $db);
} }
} }

View File

@ -1,6 +1,6 @@
<?php <?php
namespace app\controller\api\v1; namespace app\controller\admin\api\v1;
use support\Request; use support\Request;
use hg\apidoc\annotation as Apidoc; use hg\apidoc\annotation as Apidoc;
@ -17,7 +17,7 @@ class ExchangeRateController
{ {
/** /**
* @Apidoc\Title("查找所有汇率") * @Apidoc\Title("查找所有汇率")
* @Apidoc\Url("/api/v1/ExchangeRate/lists") * @Apidoc\Url("admin/api/v1/ExchangeRate/lists")
* @Apidoc\Method("POST") * @Apidoc\Method("POST")
*/ */
public function lists() public function lists()
@ -33,7 +33,7 @@ class ExchangeRateController
/** /**
* @Apidoc\Title("根据id更新汇率") * @Apidoc\Title("根据id更新汇率")
* @Apidoc\Url("/api/v1/ExchangeRate/updateId") * @Apidoc\Url("admin/api/v1/ExchangeRate/updateId")
* @Apidoc\Method("POST") * @Apidoc\Method("POST")
* @Apidoc\Query("id", type="string",require=true, desc="id",default="1") * @Apidoc\Query("id", type="string",require=true, desc="id",default="1")
* @Apidoc\Query("points", type="string",require=true, desc="points",default="1") * @Apidoc\Query("points", type="string",require=true, desc="points",default="1")

View File

@ -7,6 +7,8 @@ use support\Request;
use App\Utils\ApiResponse; use App\Utils\ApiResponse;
use App\model\Admin; use App\model\Admin;
use app\model\User; use app\model\User;
use app\model\UserPhone;
use app\model\UserPhoneLog;
use hg\apidoc\annotation as Apidoc; use hg\apidoc\annotation as Apidoc;
use app\model\Withdraw; use app\model\Withdraw;
@ -44,15 +46,19 @@ class JobuserController
// 根据 status 过滤,假设 status 字段存在并且不是 -1 // 根据 status 过滤,假设 status 字段存在并且不是 -1
if (isset($data['status']) && $data['status'] != -1) { if (isset($data['status']) && $data['status'] != -1) {
$status = (int)$data['status']; // 强制转换为整数 $status = (int)$data['status']; // 强制转换为整数
$query->where('status', $status); // 使用 users 表的别名明确指定 status 字段
$query->where('users.status', $status);
} }
// 执行查询并返回数据 // 使用 join 进行关联查询 f_id 对应的用户名称
$users = $query->get(); // 或者使用 paginate() 来进行分页 $users = $query->leftJoin('users as u', 'users.f_id', '=', 'u.id') // 假设 users 表有 id 字段f_id 关联到父用户
->select('users.*', 'u.username as parent_username') // 选择用户表的字段和关联表的 username 字段
->get(); // 或者使用 paginate() 来进行分页
// 格式化结果为数组 // 格式化结果为数组
return ApiResponse::success(200, $users->toArray()); return ApiResponse::success(200, $users->toArray());
} }
/** /**
* @Apidoc\Title("1.0 封禁用户") * @Apidoc\Title("1.0 封禁用户")
* @Apidoc\Url("admin/api/v1/Jobuser/black") * @Apidoc\Url("admin/api/v1/Jobuser/black")
@ -166,7 +172,39 @@ class JobuserController
{ {
// 获取请求数据 // 获取请求数据
$data = $request->post(); $data = $request->post();
$Withdraw = Withdraw::where('user_id',$data['id'])->orderByDesc('id')->get(); $Withdraw = Withdraw::where('user_id', $data['id'])->orderByDesc('id')->get();
return ApiResponse::success(200, $Withdraw); return ApiResponse::success(200, $Withdraw);
} }
/**
* @Apidoc\Title("1.0 查询用户手机号和在线时间")
* @Apidoc\Url("admin/api/v1/Jobuser/set_user_password")
* @Apidoc\Method("POST")
* @Apidoc\Param("id", type="username",require=true, desc="用户名称")
*/
public function get_user_wphone(Request $request)
{
// 获取请求数据
$data = $request->post();
$user=User::where('username',$data['username'])->first();
// 查询用户的手机号
$UserPhone = UserPhone::where('user_id', $user->id)->get();
// 创建一个数组来存储手机号和对应的在线时间
$userPhonesWithTime = [];
// 遍历每个手机号,查询该手机号的在线时间总和
foreach ($UserPhone as $v) {
$time = UserPhoneLog::where('phone', $v->phone)->sum('time');
// 将手机号和总时间添加到结果数组中
$userPhonesWithTime[] = [
'phone' => $v->phone,
'total_time' => floor($time/60)
];
}
$res['user']=$user;
$res['userPhonesWithTime']=$userPhonesWithTime;
// 返回计算结果
return ApiResponse::success(200, $res);
}
} }

View File

@ -18,7 +18,7 @@ use support\exception\BusinessException;
*/ */
class UploadController class UploadController
{ {
protected $noNeedLogin = ['image','index','imageAiEditor']; protected $noNeedLogin = ['image', 'index', 'imageAiEditor'];
/** /**
* @Apidoc\Title("1.0 测试图片上传") * @Apidoc\Title("1.0 测试图片上传")
* @Apidoc\Url("admin/api/v1/Upload/image") * @Apidoc\Url("admin/api/v1/Upload/image")
@ -77,8 +77,9 @@ class UploadController
] ]
]); ]);
} }
public function index(Request $request){ public function index(Request $request)
return ApiResponse::success(200,[]); {
return ApiResponse::success(200, []);
} }
/** /**
* 获取上传数据 * 获取上传数据
@ -149,7 +150,7 @@ class UploadController
'ext' => $ext, 'ext' => $ext,
]; ];
} }
/** /**
* @Apidoc\Title("1.0 AiEditor图片上传") * @Apidoc\Title("1.0 AiEditor图片上传")
* @Apidoc\Url("admin/api/v1/Upload/imageAiEditor") * @Apidoc\Url("admin/api/v1/Upload/imageAiEditor")
* @Apidoc\Method("POST") * @Apidoc\Method("POST")

View File

@ -3,11 +3,15 @@
namespace app\controller\admin\api\v1; namespace app\controller\admin\api\v1;
use app\dao\UserDao; use app\dao\UserDao;
use app\dao\UserRewardDao;
use support\Request; use support\Request;
use App\Utils\ApiResponse; use App\Utils\ApiResponse;
use App\model\Admin; use App\model\Admin;
use app\model\ExchangeRate;
use app\model\Userbank;
use hg\apidoc\annotation as Apidoc; use hg\apidoc\annotation as Apidoc;
use app\model\Withdraw; use app\model\Withdraw;
use App\Utils\API\PaymentNew;
/** /**
* @Apidoc\Title("账变明细控制器") * @Apidoc\Title("账变明细控制器")
@ -32,7 +36,7 @@ class WithdrawController
// 直接从数组中获取开始和结束日期 // 直接从数组中获取开始和结束日期
$startDate = $data['updatedat'][0]; $startDate = $data['updatedat'][0];
$endDate = $data['updatedat'][1]; $endDate = $data['updatedat'][1];
if ($startDate === $endDate) { if ($startDate === $endDate) {
// 如果开始日期和结束日期相同,则查询这一天的所有记录 // 如果开始日期和结束日期相同,则查询这一天的所有记录
$query->whereDate('updated_at', '=', $startDate); $query->whereDate('updated_at', '=', $startDate);
@ -59,4 +63,49 @@ class WithdrawController
// 格式化结果为数组 // 格式化结果为数组
return ApiResponse::success(200, $users); return ApiResponse::success(200, $users);
} }
/**
* @Apidoc\Title("管理员同意转账")
* @Apidoc\Url("admin/api/v1/withdraw/")
* @Apidoc\Method("POST")
*/
public function pushMoney(Request $request)
{
//金额
$amount = $request->post('amount');
//转账订单id
$id = $request->post('id');
//管理员审批结果
$type = $request->post('type');
//用户id
$user_id = $request->post('user_id');
//是否同意转账
$type = $request->post('type');
//不同意
if ($type == 1) {
$Withdraw = Withdraw::where('id', $id)->first();
$Withdraw->status = 3;
$Withdraw->status_text = '已驳回';
$Withdraw->save();
$rate = ExchangeRate::where('type', 'BDT')->get();
//计算积分
$money = $amount * 100 / $rate[0]['points'] + 300;
//用户id
$user_id = $request->data['id'];
//用户积分增加$money
UserRewardDao::base($user_id, 1, $money, '提现失败返还');
return ApiResponse::success(200, null, '操作成功');
}
//同意
$userbank = Userbank::where('user_id', $user_id)->first();
if ($userbank) {
PaymentNew::pushMoney($amount, $userbank->bank_username, $userbank->account, $userbank->bank_name, $id);
$Withdraw = Withdraw::where('id', $id)->first();
$Withdraw->status = 2;
$Withdraw->status_text = '已到账';
$Withdraw->save();
return ApiResponse::success(200, null, '操作成功');
} else {
return ApiResponse::error(200, null, '用户银行信息存在问题');
}
}
} }

View File

@ -149,77 +149,6 @@ class WithdrawController
// return ApiResponseApp::success(null, '转账成功'); // return ApiResponseApp::success(null, '转账成功');
} }
/**
* @Apidoc\Title("管理员同意转账")
* @Apidoc\Url("api/withdraw/pushMoney")
* @Apidoc\Method("POST")
*/
public function pushMoney(Request $request)
{
//金额
$amount = $request->post('amount');
//转账订单id
$id = $request->post('id');
//管理员审批结果
$type = $request->post('type');
//用户id
$user_id = $request->post('user_id');
//是否同意转账
$type = $request->post('type');
//不同意
if($type==1){
$Withdraw = Withdraw::where('id', $id)->first();
$Withdraw->status = 3;
$Withdraw->status_text = '已驳回';
$Withdraw->save();
$rate = ExchangeRate::where('type', 'BDT')->get();
//计算积分
$money = $amount * 100 / $rate[0]['points'] + 300;
//用户id
$user_id = $request->data['id'];
//用户积分增加$money
UserRewardDao::base($user_id, 1, $money, '提现失败返还');
return ApiResponse::success(200, null,'操作成功');
}
//同意
$userbank = Userbank::where('user_id',$user_id)->first();
if ($userbank) {
PaymentNew::pushMoney($amount,$userbank->bank_username, $userbank->account, $userbank->bank_name,$id);
$Withdraw = Withdraw::where('id', $id)->first();
$Withdraw->status = 2;
$Withdraw->status_text = '已到账';
$Withdraw->save();
return ApiResponse::success(200,null,'操作成功');
}else{
return ApiResponse::error(200, null, '用户银行信息存在问题');
}
// if ($type == 1) {
// $res = PaymentNew::pushMoney($amount, $bank_username, $account, $bank_name,$id);
// var_dump($res);
// if ($res['Success'] == 200) {
// $Withdraw = Withdraw::where('id', $id)->first();
// $Withdraw->status = 2;
// $Withdraw->status_text = '已到账';
// $Withdraw->save();
// return ApiResponseApp::success(null, '转账成功');
// } else {
// return ApiResponseApp::error(null, '转账失败');
// }
// } else {
// $Withdraw = Withdraw::where('id', $id)->first();
// $Withdraw->status = 3;
// $Withdraw->status_text = '已驳回';
// $Withdraw->save();
// $rate = ExchangeRate::where('type', 'BDT')->get();
// //计算积分
// $money = $amount * 100 / $rate[0]['points'] + 300;
// //用户id
// $user_id = $request->data['id'];
// //用户积分增加$money
// UserRewardDao::base($user_id, 1, $money, '提现失败返还');
// return ApiResponseApp::error(null, '操作成功');
// }
}
/** /**
* @Apidoc\Title("请求回调") * @Apidoc\Title("请求回调")

View File

@ -1,219 +0,0 @@
<?php
namespace app\controller\api\v1;
use support\Request;
use hg\apidoc\annotation as Apidoc;
use App\Utils\ApiResponse;
use App\model\Invite;
// use App\dao\UserDao;
/**
* @Apidoc\Title("用户层级")
*/
class InviteController
{
/**
* @Apidoc\Title("根据username找父级")
* @Apidoc\Url("/api/v1/Invite/getDayId")
* @Apidoc\Method("POST")
* @Apidoc\Query("id", type="string",require=true, desc="账户id",default="1")
*/
public function getDayId(Request $request)
{
$data = $request->post();
//根据id查找用户
$db = Invite::where('invitename', $data['id'])->first();
//操作不成功
if (!$db) {
return ApiResponse::error (402, '操作失败');
}
return ApiResponse::success (200, $db );
}
/**
* @Apidoc\Title("根据username找子级")
* @Apidoc\Url("/api/v1/Invite/getSonId")
* @Apidoc\Method("POST")
* @Apidoc\Query("id", type="string",require=true, desc="账户id",default="1")
*/
public function getSonId(Request $request)
{
$data = $request->post();
$db = Invite::where('username', $data['id'])->get();
// 如果查询结果为空,返回错误信息
if ($db->isEmpty()) {
return ApiResponse::error(402, '操作失败');
}
// 成功时返回查询结果
return ApiResponse::success(200, $db);
}
// /**
// * @Apidoc\Title("1.0 登录")
// * @Apidoc\Url("api/v1/user/login")
// * @Apidoc\Method("POST")
// * @Apidoc\Param("phone", type="string",require=true, desc="用户名|手机号")
// * @Apidoc\Param("password", type="string",require=true, desc="密码")
// * @Apidoc\Returned("user", type="object", desc="用户信息")
// * @Apidoc\Returned("token", type="object", desc="令牌")
// */
// public function login(Request $request)
// {
// // 获取请求数据
// $data = $request->post();
// // 根据手机号查询用户
// $db = Users::where('phone', '=', $data['phone'])->first();
// // 如果未找到用户,返回错误
// if (!$db) {
// return ApiResponse::error(402, '用户未注册');
// }
// // 获取用户输入的密码
// $password = $data['password'];
// // 验证密码是否正确
// if (password_verify($password, $db->password)) {
// $user = [
// 'id' => $db->id,
// 'nickname' => $db->nickname,
// 'phone' => $db->phone
// ];
// // 如果密码正确,生成 JWT 令牌
// $token = JwtToken::generateToken($user);
// // 返回成功响应和用户信息(可以将 token 添加到响应中)
// return ApiResponse::success(200, [
// 'user' => $user, // 返回用户信息
// 'token' => $token // 返回生成的 token
// ]);
// } else {
// // 密码错误,返回错误响应
// return ApiResponse::error(402, '密码错误');
// }
// }
// /**
// * @Apidoc\Title("1.0 注册")
// * @Apidoc\Url("api/v1/user/register")
// * @Apidoc\Method("POST")
// * @Apidoc\Param("phone", type="string",require=true, desc="用户名|手机号")
// * @Apidoc\Param("password", type="string",require=true, desc="密码")
// * @Apidoc\Param("idcard", type="string",require=true, desc="身份证号")
// * @Apidoc\Returned("token", type="object", desc="令牌")
// */
// public function register(Request $request)
// {
// $data = $request->post();
// $user = UserDao::register($data['phone'], $data['password'], $data['idcard']);
// if ($user['code'] != 200) {
// return ApiResponse::error(402, [], $user['message']);
// }
// $db = Users::where('phone', '=', $data['phone'])->first();
// $user = [
// 'id' => $db->id,
// 'nickname' => $db->nickname,
// 'phone' => $db->phone
// ];
// // 如果密码正确,生成 JWT 令牌
// $token = JwtToken::generateToken($user);
// $msg = new Message();
// $msg->title ="系统提醒";
// $msg->content = "您已注册成功";
// $msg->type =0;
// $msg->userid =$db->id;
// $msg->parameters="";
// // 返回成功响应和用户信息(可以将 token 添加到响应中)
// return ApiResponse::success(200, [
// 'user' => $user, // 返回用户信息
// 'token' => $token // 返回生成的 token
// ]);
// }
// /**
// * @Apidoc\Title("1.0 修改用户信息")
// * @Apidoc\Url("api/v1/user/edi")
// * @Apidoc\Method("POST")
// * @Apidoc\Param("nickname", type="string",require=true, desc="昵称")
// * @Apidoc\Param("oldpassword", type="string",require=true, desc="旧密码")
// * @Apidoc\Param("password", type="string",require=true, desc="密码")
// */
// public function edi(Request $request)
// {
// $data = $request->post();
// $user = $request->data;
// $userid = $user['id'];
// $db = Users::where('id', '=', $userid)->first();
// if (isset($data['password']) && $data['password'] != '') {
// if (password_verify($data['oldpassword'], $db->password)) {
// UserDao::chang_passwd($userid, $data['password']);
// return ApiResponse::success(200, [], "修改密码成功");
// }
// return ApiResponse::success(402, [], "旧密码错误");
// }
// if (isset($data['nickname']) && $data['nickname'] != '') {
// UserDao::chang_nickname($userid, $data['nickname']);
// $user = [
// 'id' => $db->id,
// 'nickname' => $data['nickname'],
// ];
// // 返回成功响应和用户信息(可以将 token 添加到响应中)
// return ApiResponse::success(200, [
// 'user' => $user, // 返回用户信息
// ]);
// }
// }
// /**
// * @Apidoc\Title("1.0 获取用户信息")
// * @Apidoc\Url("api/v1/user/get_info")
// * @Apidoc\Method("POST")
// */
// public function get_info(Request $request)
// {
// $data = $request->post();
// $user = $request->data;
// $userid = $user['id'];
// $db = Users::where('id', '=', $userid)->first(['phone', 'nickname']);
// return ApiResponse::success(200, $db);
// }
// /**
// * @Apidoc\Title("1.0 设置用户短信是否接受")
// * @Apidoc\Url("api/v1/user/set_msg_setting")
// * @Apidoc\Param("acceptmessages", type="int",require=true, desc="1接受0不接受")
// * @Apidoc\Method("POST")
// */
// public function set_msg_setting(Request $request)
// {
// $data = $request->post();
// $user = $request->data;
// $userid = $user['id'];
// $db = Users::where('id', '=', $userid)->first();
// $db->acceptmessages=$data['acceptmessages'];
// $db->save();
// return ApiResponse::success(200, $db);
// }
// /**
// * @Apidoc\Title("1.0 获取用户短信设置")
// * @Apidoc\Url("api/v1/user/get_msg_setting")
// * @Apidoc\Method("POST")
// */
// public function get_msg_setting(Request $request)
// {
// $data = $request->post();
// $user = $request->data;
// $userid = $user['id'];
// $db = Users::where('id', '=', $userid)->first(['acceptmessages']);
// return ApiResponse::success(200, $db);
// }
}

View File

@ -1,102 +0,0 @@
<?php
namespace app\controller\api\v1;
use support\Request;
use hg\apidoc\annotation as Apidoc;
use App\Utils\ApiResponse;
use App\model\Jobuser;
// use App\dao\UserDao;
/**
* @Apidoc\Title("JOB用户控制器")
*/
class JobuserController
{
/**
* @Apidoc\Title("获取JOB用户列表")
* @Apidoc\Url("/api/v1/jobuser/lists")
* @Apidoc\Method("POST")
* @Apidoc\Param(name="black", type="string", desc="是否黑户", required=false)
* @Apidoc\Param(name="username", type="string", desc="账号", required=false)
*/
public function lists(Request $request)
{
// 获取请求体中的参数
$params = $request->all();
// 初始化查询构造器
$query = Jobuser::query();
if ($params['black'] === null) {
// 查询 black 字段为 null 的记录
$query->whereNull('black');
} else {
// 查询 black 字段等于指定值的记录
$query->where('black', $params['black']);
}
$query->when(!empty($params['username']), function ($query) use ($params) {
$query->where('username', 'like', '%' . $params['username'] . '%');
});
$db = $query->get();
return ApiResponse::success(200, $db);
}
/**
* @Apidoc\Title("拉黑账户")
* @Apidoc\Url("/api/v1/jobuser/getBlack")
* @Apidoc\Method("POST")
* @Apidoc\Query("id", type="string",require=true, desc="账户id",default="1")
*/
public function getBlack(Request $request)
{
$data = $request->post();
//根据id更改数据black字段的值
$db = Jobuser::where('id', $data['id'])->update(['black' => 1]);
//操作不成功
if (!$db) {
return ApiResponse::error(402, '操作失败');
}
return ApiResponse::success(200, $db);
}
/**
* @Apidoc\Title("洗白账户")
* @Apidoc\Url("/api/v1/jobuser/getOutBlack")
* @Apidoc\Method("POST")
* @Apidoc\Query("id", type="string",require=true, desc="账户id",default="1")
*/
public function getOutBlack(Request $request)
{
$data = $request->post();
//根据id更改数据black字段的值
$db = Jobuser::where('id', $data['id'])->update(['black' => null]);
//操作不成功
if (!$db) {
return ApiResponse::error(402, '操作失败');
}
return ApiResponse::success(200, $db);
}
/**
* @Apidoc\Title("根据id找账户")
* @Apidoc\Url("/api/v1/jobuser/getUserById")
* @Apidoc\Method("POST")
* @Apidoc\Query("id", type="string",require=true, desc="账户id",default="1")
*/
public function getUserById(Request $request)
{
$data = $request->post();
//根据id查找用户
$db = Jobuser::where('user_id', $data['id'])->first();
//操作不成功
if (!$db) {
return ApiResponse::error(402, '操作失败');
}
return ApiResponse::success(200, $db);
}
}

View File

@ -1,35 +0,0 @@
<?php
namespace app\controller\api\v1;
use support\Request;
use hg\apidoc\annotation as Apidoc;
use App\Utils\ApiResponse;
use App\model\Withdraw;
// use App\dao\UserDao;
/**
* @Apidoc\Title("提现管理")
*/
class WithdrawController
{
/**
* @Apidoc\Title("查找所有提现记录")
* @Apidoc\Url("/api/v1/withdraw/lists")
* @Apidoc\Param(name="black", type="string", desc="是否黑户", required=false)
* @Apidoc\Param(name="username", type="string", desc="账号", required=false)
* @Apidoc\Method("POST")
*/
public function lists(Request $request)
{
//根据id查找用户
$db = Withdraw::all();
//操作不成功
if (!$db) {
return ApiResponse::error (402, '操作失败');
}
return ApiResponse::success (200, $db );
}
}