数据库: - db/schema_phase1.sql 16 张业务表(类目/服务/地址/师傅/订单/流水/取证/报价/评价/券/钱包/提现/结算/消息) - db/seed_phase1.sql 15 类目 + 32 服务项目 + 新人券(幂等) 后端 API (application/api/controller): - Base/Auth/Home/Address/Order/Master/Review - app/common/library/OrderStatus 11 状态机 + 流转矩阵 - application/api/common.php PHP 8.5 兼容垫片(E_DEPRECATED 不再升级为异常) 测试: - tests/e2e_flow.js 用户下单→支付→师傅抢单→履约→验收→结算→评价 全链路 65 项断言 - 含异常用例:越权/重复操作/非法状态流转/2h 未联系自动回流
74 行
2.2 KiB
PHP
可执行文件
74 行
2.2 KiB
PHP
可执行文件
<?php
|
|
|
|
namespace app\api\controller;
|
|
|
|
use app\common\controller\Api;
|
|
|
|
/**
|
|
* 示例接口
|
|
*/
|
|
class Demo extends Api
|
|
{
|
|
|
|
//如果$noNeedLogin为空表示所有接口都需要登录才能请求
|
|
//如果$noNeedRight为空表示所有接口都需要验证权限才能请求
|
|
//如果接口已经设置无需登录,那也就无需鉴权了
|
|
//
|
|
// 无需登录的接口,*表示全部
|
|
protected $noNeedLogin = ['test', 'test1'];
|
|
// 无需鉴权的接口,*表示全部
|
|
protected $noNeedRight = ['test2'];
|
|
|
|
/**
|
|
* 测试方法
|
|
*
|
|
* @ApiTitle (测试名称)
|
|
* @ApiSummary (测试描述信息)
|
|
* @ApiMethod (POST)
|
|
* @ApiRoute (/api/demo/test/id/{id}/name/{name})
|
|
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
|
|
* @ApiParams (name="id", type="integer", required=true, description="会员ID")
|
|
* @ApiParams (name="name", type="string", required=true, description="用户名")
|
|
* @ApiParams (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据")
|
|
* @ApiReturnParams (name="code", type="integer", required=true, sample="0")
|
|
* @ApiReturnParams (name="msg", type="string", required=true, sample="返回成功")
|
|
* @ApiReturnParams (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据返回")
|
|
* @ApiReturn ({
|
|
'code':'1',
|
|
'msg':'返回成功'
|
|
})
|
|
*/
|
|
public function test()
|
|
{
|
|
$this->success('返回成功', $this->request->param());
|
|
}
|
|
|
|
/**
|
|
* 无需登录的接口
|
|
*
|
|
*/
|
|
public function test1()
|
|
{
|
|
$this->success('返回成功', ['action' => 'test1']);
|
|
}
|
|
|
|
/**
|
|
* 需要登录的接口
|
|
*
|
|
*/
|
|
public function test2()
|
|
{
|
|
$this->success('返回成功', ['action' => 'test2']);
|
|
}
|
|
|
|
/**
|
|
* 需要登录且需要验证有相应组的权限
|
|
*
|
|
*/
|
|
public function test3()
|
|
{
|
|
$this->success('返回成功', ['action' => 'test3']);
|
|
}
|
|
|
|
}
|