DefaultController.php 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577
  1. <?php
  2. namespace addons\MembersCard\api\modules\v1\controllers;
  3. use Yii;
  4. use api\controllers\OnAuthController;
  5. use common\enums\StatusEnum;
  6. use addons\MembersCard\common\enums\MembersCardEnum;
  7. use addons\MembersCard\common\models\MembersCardGive;
  8. use addons\MembersCard\common\models\MembersCard;
  9. use addons\MembersCard\common\models\MembersCardUsedLog;
  10. use addons\MembersCard\common\models\CommissionLog;
  11. use addons\Store\common\models\Store;
  12. use common\models\order\Order;
  13. use common\models\order\OrderDetail;
  14. use common\models\goods\Goods;
  15. use common\models\user\User;
  16. use addons\Store\common\models\StoreCashierOrder;
  17. use common\enums\RedisKeyEnum;
  18. use common\helpers\LockHelper;
  19. /**
  20. * 默认控制器
  21. *
  22. * Class DefaultController
  23. * @package addons\MembersCard\api\modules\v1\controllers
  24. */
  25. class DefaultController extends OnAuthController
  26. {
  27. public $modelClass = '';
  28. /**
  29. * 不用进行登录验证的方法
  30. *
  31. * 例如: ['index', 'update', 'create', 'view', 'delete']
  32. * 默认全部需要验证
  33. *
  34. * @var array
  35. */
  36. protected $authOptional = ['index'];
  37. /**
  38. * 首页
  39. *
  40. * @return string
  41. */
  42. public function actionIndex()
  43. {
  44. return 'Hello world';
  45. }
  46. public function actionList(){
  47. try{
  48. if (\Yii::$app->request->isGet) {
  49. $params = \Yii::$app->request->get();
  50. $where[] = ['=', 'mall_id', $this->mall_id];
  51. $where[] = ['status' => StatusEnum::ENABLED];
  52. $where[] = ['user_id' => $this->user['id']];
  53. if(isset($params['type']) && $params['type'] == 2){
  54. $where[] = [
  55. 'or',
  56. ['<','expired_at',time()],
  57. ['is_recycle'=>1],
  58. ];
  59. }elseif($params['type']==1){
  60. $members_card_give = MembersCardGive::find()
  61. ->where(['mall_id'=>$this->mall_id,'status'=>StatusEnum::ENABLED])
  62. ->andWhere(['>','parent_card_id',0])
  63. ->asArray()
  64. ->all();
  65. $parent_card_ids = array_column($members_card_give,'parent_card_id');
  66. $where[] = ['in','id',$parent_card_ids];
  67. $where[] = [
  68. 'and',
  69. ['>=','expired_at',time()],
  70. ['is_recycle'=>0],
  71. ];
  72. }else{
  73. $where[] = [
  74. 'and',
  75. ['>=','expired_at',time()],
  76. ['is_recycle'=>0],
  77. ];
  78. }
  79. $params['where'] = $where;
  80. $params['select'] = 'id,card_id,discount,child_num,parent_card_id,expired_at,created_at,card_no,is_recycle,recycle_at';
  81. $data = MembersCardGive::listPage($params, false);
  82. if(!empty($data['list'])){
  83. $config = Yii::$app->services->setting->addons->get($this->mall_id, MembersCardEnum::ADDONS_NAME, 'basic');
  84. foreach($data['list'] as &$list){
  85. $list['expired_at'] = date("Y-m-d",$list['expired_at']);
  86. $list['created_at'] = date("Y-m-d",$list['created_at']);
  87. $list['name'] = '';
  88. $list['background_url'] = '';
  89. //是否显示赠送亲友
  90. $list['is_give'] = 0;
  91. //是否显示子卡列表
  92. $list['is_list'] = 0;
  93. //是否显示使用记录
  94. $list['is_used'] = 1;
  95. //是否显示去升级
  96. $list['is_up'] = 0;
  97. $list['is_up_desc'] = '';
  98. $list['is_up_link'] = '';
  99. $list['is_show'] = 0;
  100. $list['user'] = [];
  101. $members_card = MembersCard::findOne(['id'=>$list['card_id']]);
  102. if($members_card){
  103. $list['name'] = $members_card['name'];
  104. $list['background_url'] = $members_card['background_url'];
  105. $levels = json_decode($members_card['member_limit'],true);
  106. if(!empty($levels) && !in_array($this->user['level'],$levels) && $list['parent_card_id']){
  107. $list['is_up'] = 1;
  108. $list['is_up_desc'] = $config ? $config['description'] : '';
  109. $list['is_up_link'] = $members_card['child_upgrade_links'];
  110. }
  111. }
  112. //子卡已使用数量
  113. $members_card_give_num = MembersCardGive::find()->where(['mall_id'=>$this->mall_id,'status'=>StatusEnum::ENABLED,'parent_card_id'=>$list['id']])->count();
  114. $list['child_used_num'] = $members_card_give_num ?? 0;
  115. if(!$list['parent_card_id']){
  116. if($list['child_used_num'] < $list['child_num']){
  117. $list['is_give'] = 1;
  118. }
  119. }
  120. $list['child_num'] = $list['child_num'] - $list['child_used_num'];
  121. $list['child_num'] = $list['child_num'] > 0 ? $list['child_num'] : 0;
  122. //已赠送列表不显示送亲友按钮
  123. if($members_card_give_num && isset($params['type']) && $params['type'] == 1){
  124. $list['is_list'] = 1;
  125. $list['is_give'] = 0;
  126. }
  127. if($list['parent_card_id']){
  128. $list['is_show'] = 1;
  129. $parent = MembersCardGive::findOne(['mall_id'=>$this->mall_id,'status'=>StatusEnum::ENABLED,'id'=>$list['parent_card_id']]);
  130. if($parent){
  131. $parent_user = User::findOne(['id'=>$parent['user_id']]);
  132. }
  133. $list['give_user'] = [
  134. 'user_id' => $parent_user['id'],
  135. 'avatar_url' => $parent_user['avatar_url'],
  136. 'nickname' => $parent_user['nickname'],
  137. ];
  138. }
  139. }
  140. }
  141. return $this->success('操作成功', $data);
  142. }else{
  143. throw new \Exception("请求方法错误!");
  144. }
  145. }catch(\Exception $e){
  146. return $this->error();
  147. }
  148. }
  149. //子卡列表
  150. public function actionChildList(){
  151. try{
  152. if (\Yii::$app->request->isGet) {
  153. $params = \Yii::$app->request->get();
  154. if(!isset($params['id'])){
  155. throw new \Exception("参数错误!");
  156. }
  157. $where[] = ['=','parent_card_id',$params['id']];
  158. $where[] = ['=', 'mall_id', $this->mall_id];
  159. $where[] = ['status' => StatusEnum::ENABLED];
  160. // $where[] = ['user_id' => $this->user['id']];
  161. $params['where'] = $where;
  162. $params['select'] = 'id,card_id,user_id,discount,expired_at,created_at,is_recycle,card_no';
  163. $data = MembersCardGive::listPage($params, false);
  164. if(!empty($data['list'])){
  165. foreach($data['list'] as &$list){
  166. $list['expired_at'] = date("Y-m-d",$list['expired_at']);
  167. $list['created_at'] = date("Y-m-d",$list['created_at']);
  168. $list['name'] = '';
  169. $list['background_url'] = '';
  170. $members_card = MembersCard::findOne(['id'=>$list['card_id']]);
  171. if($members_card){
  172. $list['name'] = $members_card['name'];
  173. $list['background_url'] = $members_card['background_url'];
  174. }
  175. $user = User::findOne(['id'=>$list['user_id']]);
  176. $list['user'] = [
  177. 'user_id' => $user['id'],
  178. 'avatar_url' => $user['avatar_url'],
  179. 'nickname' => $user['nickname'],
  180. ];
  181. }
  182. }
  183. return $this->success('操作成功', $data);
  184. }else{
  185. throw new \Exception("请求方法错误!");
  186. }
  187. }catch(\Exception $e){
  188. return $this->error();
  189. }
  190. }
  191. public function actionUsedLog(){
  192. try{
  193. if (\Yii::$app->request->isGet) {
  194. $params = \Yii::$app->request->get();
  195. if(!isset($params['id'])){
  196. throw new \Exception("参数错误!");
  197. }
  198. $where[] = ['=','card_give_id',$params['id']];
  199. $where[] = ['=', 'mall_id', $this->mall_id];
  200. $where[] = ['status' => StatusEnum::ENABLED];
  201. // $where[] = ['user_id' => $this->user['id']];
  202. if($params['created_at']){
  203. $start_time = strtotime(date('Y-m-01 00:00:00', strtotime($params['created_at'])));
  204. $end_time = strtotime(date('Y-m-t 23:59:59', strtotime($params['created_at'])));
  205. $where[] = ['>', 'created_at', $start_time];
  206. $where[] = ['<=', 'created_at', $end_time];
  207. }
  208. $params['where'] = $where;
  209. $params['select'] = 'id,discount_money,pay_money,order_id,order_detail_id,store_id,is_cashier';
  210. $data = MembersCardUsedLog::listPage($params, false);
  211. $newList = [];
  212. if(!empty($data['list'])){
  213. foreach($data['list'] as &$list){
  214. if(!isset($newList[$list['order_id']])){
  215. $list['store_name'] = '平台';
  216. if($list['store_id']){
  217. $store = Store::getOne([['id' => $list['store_id']], ['mall_id' => $this->mall_id]]);
  218. if(!empty($store)){
  219. $list['store_name'] = $store['store_name'];
  220. }
  221. }
  222. if($list['is_cashier']){
  223. $order = StoreCashierOrder::findOne(['id'=>$list['order_id']]);
  224. $list['goods'][] = [
  225. 'name' => '门店扫码',
  226. 'price' => $order['money'],
  227. 'goods_attr_name' => '',
  228. 'num' => 1,
  229. 'discount_money' => $list['discount_money'],
  230. 'pic_url' => '',
  231. ];
  232. }else{
  233. $order = Order::findOne(['id'=>$list['order_id']]);
  234. $order_detail = OrderDetail::findOne(['id'=>$list['order_detail_id']]);
  235. if($order_detail){
  236. $list['goods'][] = [
  237. 'name' => $order_detail['goods_name'],
  238. 'price' => $order_detail['price'],
  239. 'goods_attr_name' => $order_detail['goods_attr_name'],
  240. 'num' => $order_detail['num'],
  241. 'discount_money' => $list['discount_money'],
  242. 'pic_url' => $order_detail['pic_url'],
  243. ];
  244. }
  245. }
  246. if($order){
  247. $list['pay_time'] = date("Y-m-d H:i:s",$order['pay_time']);
  248. $list['pay_money'] = $order['pay_money'];
  249. }
  250. $newList[$list['order_id']] = $list;
  251. unset($newList[$list['order_id']]['discount_money'],$newList[$list['order_id']]['order_id'],$newList[$list['order_id']]['order_detail_id']);
  252. }else{
  253. if(!$list['is_cashier']){
  254. $order_detail = OrderDetail::findOne(['id'=>$list['order_detail_id']]);
  255. if($order_detail){
  256. $newList[$list['order_id']]['goods'][] = [
  257. 'name' => $order_detail['goods_name'],
  258. 'price' => $order_detail['price'],
  259. 'goods_attr_name' => $order_detail['goods_attr_name'],
  260. 'num' => $order_detail['num'],
  261. 'discount_money' => $list['discount_money'],
  262. 'pic_url' => $order_detail['pic_url'],
  263. ];
  264. }
  265. }
  266. }
  267. }
  268. // $data['list'] = $newList;
  269. }
  270. $arr = [];
  271. foreach($newList as $key => $item){
  272. $arr[] = $item;
  273. }
  274. $data['list'] = $arr;
  275. return $this->success('操作成功', $data);
  276. }else{
  277. throw new \Exception("请求方法错误!");
  278. }
  279. }catch(\Exception $e){
  280. return $this->error();
  281. }
  282. }
  283. /**
  284. * @name:
  285. * @msg: 会员卡信息信息
  286. * @param {integer} $card_give_id
  287. * @return {*}
  288. */
  289. public function actionGiveCardInfo()
  290. {
  291. if (!\Yii::$app->request->isGet) {
  292. return $this->error('请求方式错误');
  293. }
  294. $user_id = $this->user_id;
  295. $card_give_id = \Yii::$app->request->get('card_give_id');
  296. if (empty($card_give_id)) {
  297. return $this->error('参数错误');
  298. }
  299. $card_give = MembersCardGive::find()->where(['id' => $card_give_id, 'mall_id' => $this->mall_id])->asArray()->one();
  300. if (empty($card_give)) return $this->error('母卡不存在');
  301. $members_card = MembersCard::find()->where(['id' => $card_give['card_id'], 'mall_id' => $this->mall_id])->asArray()->one();
  302. if (empty($members_card)) return $this->error('数据不存在');
  303. $members_card_give_num = MembersCardGive::find()->where(['mall_id'=>$this->mall_id,'status'=>StatusEnum::ENABLED,'parent_card_id'=>$card_give_id])->count();
  304. if($members_card_give_num && $members_card_give_num >= $card_give['child_num']){
  305. return $this->error('来晚啦,亲友卡已被领完~');
  306. }
  307. $give_user = User::findOne(['id'=>$card_give['user_id']]);
  308. if(!$give_user){
  309. return $this->error('分享用户不存在');
  310. }
  311. $detail = [
  312. 'card_give_id' => $card_give_id,
  313. 'discount' => $card_give['child_discount'],
  314. 'name' => $members_card['name'],
  315. 'background_url' => $members_card['background_url'],
  316. 'desc' => '领取亲友卡,可享受'.$card_give['child_discount'].'的优惠折扣',
  317. 'user_id' => $give_user['id'],
  318. 'avatar_url' => $give_user['avatar_url'],
  319. 'nickname' => $give_user['nickname'],
  320. 'created_at' => date("Y-m-d",time()),
  321. 'expired_at' => date("Y-m-d",strtotime("+".$card_give['child_expired_days']." day")),
  322. ];
  323. return $this->success('操作成功', ['card_info' => $detail]);
  324. }
  325. //领取亲友卡
  326. public function actionReceive(){
  327. $params = \Yii::$app->request->post();
  328. $res = Yii::$app->services->validate->validate($params, [
  329. [['card_give_id'], 'required'],
  330. ]);
  331. if ($res === false) return $this->error(\Yii::$app->services->validate->getErrorMessage());
  332. $lock_key = RedisKeyEnum::suffix(RedisKeyEnum::LOCK_USER_WALLET , $params['card_give_id']);
  333. $identification = uniqid();
  334. if (!LockHelper::lock($lock_key, $identification, 100, 100)) {
  335. \Yii::error(__CLASS__ . ' batchHandle error : 抢不到锁,task_id:' . $task_id);
  336. return $this->error('网络异常,请稍后再试~');
  337. }
  338. $trans = \Yii::$app->db->beginTransaction();
  339. try {
  340. $card_give = MembersCardGive::find()->where(['id' => $params['card_give_id'], 'mall_id' => $this->mall_id])->asArray()->one();
  341. if (empty($card_give)) throw new \Exception('数据异常');
  342. if($this->user['id'] == $card_give['user_id']){
  343. throw new \Exception('不能领取自己赠送的亲友卡');
  344. }
  345. $card_give_log = MembersCardGive::find()->where(['parent_card_id' =>$params['card_give_id'], 'mall_id' => $this->mall_id,'user_id'=>$this->user['id'],'status'=>StatusEnum::ENABLED])->one();
  346. if($card_give_log){
  347. throw new \Exception('您已领取过亲友卡!');
  348. }
  349. $members_card_give_num = MembersCardGive::find()->where(['mall_id'=>$this->mall_id,'status'=>StatusEnum::ENABLED,'parent_card_id'=>$params['card_give_id']])->count();
  350. if($members_card_give_num && $members_card_give_num + 1 >= $card_give['child_num']){
  351. throw new \Exception('来晚啦,亲友卡已被领完~');
  352. }
  353. if(!$members_card_give_num){
  354. $card_no = 1;
  355. }else{
  356. $card_no = $members_card_give_num + 1;
  357. }
  358. $expired_at = strtotime("+".$card_give['child_expired_days']." day");
  359. if($expired_at > $card_give['expired_at']){
  360. $expired_at = $card_give['expired_at'];
  361. }
  362. $data = [
  363. 'mall_id' => $this->mall_id,
  364. 'user_id' => $this->user['id'],
  365. 'discount' => $card_give['child_discount'],
  366. 'parent_card_id' => $card_give['id'],
  367. 'card_id' => $card_give['card_id'],
  368. 'receive_at' => time(),
  369. 'expired_at' => $expired_at,
  370. 'card_no' => $card_no,
  371. ];
  372. $model = MembersCardGive::setData($data);
  373. if(!$model){
  374. throw new \Exception('领取失败');
  375. }
  376. $members_card = MembersCard::find()->where(['id' => $card_give['card_id'], 'mall_id' => $this->mall_id])->asArray()->one();
  377. $detail = [
  378. 'id' => $model['id'],
  379. 'discount' => $model['discount'],
  380. 'name' => $members_card['name'],
  381. 'background_url' => $members_card['background_url'],
  382. 'created_at' => date("Y-m-d",$model['created_at']),
  383. 'expired_at' => date("Y-m-d",$model['expired_at']),
  384. ];
  385. $trans->commit();
  386. LockHelper::uLock($lock_key, $identification);
  387. return $this->success('领取成功', ['card_info' => $detail]);
  388. } catch (\Exception $e) {
  389. $trans->rollBack();
  390. LockHelper::uLock($lock_key, $identification);
  391. \Yii::error($e->getMessage());
  392. return $this->error($e->getMessage());
  393. }
  394. }
  395. /**
  396. * @name:
  397. * @msg: 回收亲友卡
  398. * @param {integer} $card_give_id
  399. * @return {*}
  400. */
  401. public function actionRecycle()
  402. {
  403. if (!\Yii::$app->request->isPost) {
  404. return $this->error('请求方式错误');
  405. }
  406. $user_id = $this->user['id'];
  407. $card_give_id = \Yii::$app->request->post('id');
  408. if (empty($card_give_id)) {
  409. return $this->error('参数错误');
  410. }
  411. $card_give = MembersCardGive::find()->where(['id' => $card_give_id, 'mall_id' => $this->mall_id])->one();
  412. if (empty($card_give)) return $this->error('亲友卡不存在');
  413. $parent_card = MembersCardGive::find()->where(['id' => $card_give['parent_card_id'], 'mall_id' => $this->mall_id])->asArray()->one();
  414. if($parent_card['user_id'] != $user_id){
  415. return $this->error('您无权回收该亲友卡');
  416. }
  417. $card_give->is_recycle = 1;
  418. $card_give->recycle_at = time();
  419. $card_give->status = StatusEnum::DISABLED;
  420. if(!$card_give->save()){
  421. return $this->error('回收失败');
  422. }
  423. return $this->success('回收成功');
  424. }
  425. /**
  426. * @name:
  427. * @msg: 批量回收亲友卡
  428. * @param {integer} $card_give_id
  429. * @return {*}
  430. */
  431. public function actionRecycleAll()
  432. {
  433. if (!\Yii::$app->request->isPost) {
  434. return $this->error('请求方式错误');
  435. }
  436. $user_id = $this->user['id'];
  437. $card_give_id = \Yii::$app->request->post('id');
  438. if (empty($card_give_id)) {
  439. return $this->error('参数错误');
  440. }
  441. $card_give = MembersCardGive::find()->where(['id' => $card_give_id, 'mall_id' => $this->mall_id])->one();
  442. if (empty($card_give)) return $this->error('母卡不存在');
  443. if($card_give['user_id'] != $user_id){
  444. return $this->error('您无权回收该亲友卡子卡');
  445. }
  446. $t = \Yii::$app->db->beginTransaction();
  447. try{
  448. $card_list = MembersCardGive::find()->where(['parent_card_id' => $card_give_id, 'mall_id' => $this->mall_id,'is_recycle'=>0,'status'=>StatusEnum::ENABLED])->all();
  449. if($card_list){
  450. foreach($card_list as $list){
  451. $list->is_recycle = 1;
  452. $list->recycle_at = time();
  453. $list->status = StatusEnum::DISABLED;
  454. if(!$list->save()){
  455. throw new \Exception('保存失败');
  456. }
  457. }
  458. }
  459. $t->commit();
  460. return $this->success('回收成功');
  461. }catch(\Exception $e){
  462. $t->rollBack();
  463. $this->error('回收失败');
  464. }
  465. }
  466. //佣金列表
  467. public function actionIncomeList(){
  468. try{
  469. if (\Yii::$app->request->isGet) {
  470. $params = \Yii::$app->request->get();
  471. if(isset($params['type']) && $params['type'] == 1){
  472. $where[] = ['=','is_frozen',1];
  473. }else{
  474. $where[] = ['=','is_frozen',0];
  475. }
  476. $where[] = ['=', 'mall_id', $this->mall_id];
  477. $where[] = ['status' => StatusEnum::ENABLED];
  478. $where[] = ['reward_user_id' => $this->user['id']];
  479. $params['where'] = $where;
  480. $params['select'] = 'id,discount_money,user_id,card_give_id,reward_money,goods_name,order_id,store_id,is_cashier,order_detail_id';
  481. $data = CommissionLog::listPage($params, false);
  482. if(!empty($data['list'])){
  483. foreach($data['list'] as &$list){
  484. $list['nickname'] = $list['avatar_url'] = '';
  485. $user = User::findOne(['id'=>$list['user_id']]);
  486. if($user){
  487. $list['nickname'] = $user['nickname'];
  488. $list['avatar_url'] = $user['avatar_url'];
  489. }
  490. $list['store_name'] = '平台';
  491. if($list['store_id']){
  492. $store = Store::findOne(['id'=>$list['store_id']]);
  493. if($store){
  494. $list['store_name'] = $store['store_name'];
  495. }
  496. }
  497. if($list['is_cashier']){
  498. $order = StoreCashierOrder::findOne(['id'=>$list['order_id']]);
  499. $list['money'] = $order['money'];
  500. }else{
  501. $order = Order::findOne(['id'=>$list['order_id']]);
  502. $order_detail = OrderDetail::findOne(['id'=>$list['order_detail_id']]);
  503. $list['money'] = $order_detail['price'];
  504. }
  505. if($order){
  506. $list['pay_time'] = date("Y-m-d H:i:s",$order['pay_time']);
  507. $list['pay_money'] = $order['pay_money'];
  508. $list['order_no'] = $order['order_no'];
  509. }
  510. $card_give = MembersCardGive::findOne(['id'=>$list['card_give_id']]);
  511. $members_card = MembersCard::findOne(['id'=>$card_give['card_id']]);
  512. $list['card_name'] = $members_card['name'] ?? '';
  513. unset($list['card_give_id'],$list['order_id'],$list['store_id'],$list['is_cashier'],$list['order_detail_id']);
  514. }
  515. }
  516. $data['user'] = [
  517. 'user_id' => $this->user['id'],
  518. 'nickname' => $this->user['nickname'],
  519. 'avatar_url' => $this->user['avatar_url'],
  520. ];
  521. $data['imcome']['total_income'] = CommissionLog::find()->where(['mall_id'=>$this->mall_id,'reward_user_id'=>$this->user['id'],'is_frozen'=>0])->sum('reward_money') ?? 0;
  522. $data['imcome']['wait_income'] = CommissionLog::find()->where(['mall_id'=>$this->mall_id,'reward_user_id'=>$this->user['id'],'is_frozen'=>1])->sum('reward_money') ?? 0;
  523. return $this->success('操作成功', $data);
  524. }else{
  525. throw new \Exception("请求方法错误!");
  526. }
  527. }catch(\Exception $e){
  528. return $this->error();
  529. }
  530. }
  531. }