Browse Source

Merge branch 'phoenix' of ssh://120.24.33.109:11022/hyzjshwo/lanzu_api_hyperf into phoenix

# Conflicts:
#	app/Constants/v3/ErrorCode.php
#	config/autoload/dependencies.php
#	config/routes.php
master
weigang 6 years ago
parent
commit
02de242970
  1. 29
      app/Constants/v3/ErrorCode.php
  2. 13
      app/Controller/v3/ExampleController.php
  3. 3
      app/Controller/v3/GoodsController.php
  4. 127
      app/Controller/v3/OnlineOrderController.php
  5. 19
      app/Controller/v3/OrderController.php
  6. 36
      app/Controller/v3/ShopCartController.php
  7. 32
      app/Controller/v3/UpdateShopCartController.php
  8. 29
      app/Service/v3/Implementations/AppointmentTimeService.php
  9. 25
      app/Service/v3/Implementations/DistributionPriceService.php
  10. 13
      app/Service/v3/Implementations/ExampleService.php
  11. 22
      app/Service/v3/Implementations/OnlineOrderService.php
  12. 12
      app/Service/v3/Implementations/OrderService.php
  13. 111
      app/Service/v3/Implementations/ShopCartService.php
  14. 38
      app/Service/v3/Implementations/UpdateShopCartService.php
  15. 12
      app/Service/v3/Interfaces/AppointmentTimeServiceInterface.php
  16. 12
      app/Service/v3/Interfaces/DistributionPriceServiceInterface.php
  17. 4
      app/Service/v3/Interfaces/ExampleServiceInterface.php
  18. 12
      app/Service/v3/Interfaces/OnlineOrderServiceInterface.php
  19. 8
      app/Service/v3/Interfaces/OrderServiceInterface.php
  20. 12
      app/Service/v3/Interfaces/ShopCartServiceInterface.php
  21. 12
      app/Service/v3/Interfaces/UpdateShopCartServiceInterface.php
  22. 6
      config/autoload/dependencies.php
  23. 7
      config/routes.php

29
app/Constants/v3/ErrorCode.php

@ -30,6 +30,7 @@ class ErrorCode extends AbstractConstants
/************************************/
/* 用户相关 701-750 */
/************************************/
/**
* 验证码错误或已失效
* @Message("验证码错误或已失效")
@ -48,6 +49,12 @@ class ErrorCode extends AbstractConstants
*/
const UNBIND_TEL_ERROR = 703;
/**
* 用户未绑定手机号
* @Message("请绑定手机号")
*/
const NOT_BIND_TEL_ERROR = 704;
/**
* 微信登录失败:无效的code
* @Message("微信登录失败:无效的code")
@ -59,7 +66,6 @@ class ErrorCode extends AbstractConstants
* @Message("更新失败")
*/
const USER_INFO_UPDATE_ERROR = 705;
/************************************/
/* 定位相关 751-800 */
/************************************/
@ -84,4 +90,25 @@ class ErrorCode extends AbstractConstants
* @Message("短信发送失败")
*/
const SMS_SEND_FAILURE = 1003;
/************************************/
/* 商品相关 1101-1200 */
/************************************/
/**
* 库存不足
* @Message("库存不足")
*/
const GOODS_INVENTORY_ERROR = 1101;
/**
* 超过商品购买数量限制
* @Message("超过商品购买数量限制")
*/
const PURCHASE_LIMIT_ERROR = 1102;
/**
* 当前特价商品已被购买过
* @Message("当前特价商品已被购买过")
*/
const SPERCIAL_OFFER_GOODS_ERROR = 1103;
}

13
app/Controller/v3/ExampleController.php

@ -6,5 +6,18 @@ use App\Controller\BaseController;
class ExampleController extends BaseController
{
public function do()
{
}
public function check()
{
}
public function undo()
{
}
}

3
app/Controller/v3/GoodsController.php

@ -12,7 +12,8 @@ class GoodsController extends BaseController
* @var GoodsServiceInterface
*/
protected $goods;
public function detail(){
public function detail()
{
$res = $this->goods->detail();
return $this->success($res);
}

127
app/Controller/v3/OnlineOrderController.php

@ -0,0 +1,127 @@
<?php
namespace App\Controller\v3;
use App\Constants\v3\ErrorCode;
use App\Controller\BaseController;
use App\Exception\ErrorCodeException;
use App\Service\CouponServiceInterface;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\OnlineOrderServiceInterface;
use App\Service\v3\Interfaces\UserBindTelServiceInterface;
use App\Service\v3\Interfaces\AppointmentTimeServiceInterface;
class OnlineOrderController extends BaseController
{
/**
* @Inject
* @var OnlineOrderServiceInterface
*/
protected $order;
/**
* @Inject
* @var UserBindTelServiceInterface
*/
protected $userBindTel;
/**
* @Inject
* @var CouponServiceInterface
*/
protected $couponService;
/**
* @Inject
* @var AppointmentTimeServiceInterface
*/
protected $appointmentTime;
/*
* 如果没有绑手机号去绑定页面
* 收货地址接口
* 返回预约送达时间
* 商品数据接口
* 红包独立接口
* 配送费独立接口 可根据距离动态计算费用
* 增值服务接口
* */
public function detail()
{
$params = $this->request->all();
//判断用户有没有绑定手机
$telExists = $this->userBindTel->check($params['user_id']);
if(!$telExists){
throw new ErrorCodeException(ErrorCode::NOT_BIND_TEL_ERROR);
}
//获取用户收货地址
$res['address'] = [
'address' => '南宁市良庆区五象海尔·青啤联合广场',
'area' => 'A栋八单元' ,
'lat' => '22.759950637817383',
'lng' => '108.3835678100586',
'sex' => '1',
'tel' => '15677717734',
'user_name' => '李小龙',
'user_id' => '214'
];
//返回预约送达时间 数组
$res['appointment_time'] = [
'08:30 - 09:00',
'09:00 - 09:30',
'09:30 - 10:00',
'10:00 - 10:30'
];
//
$res['store_list'] = [
'50' => [
'store_nmae' => '五金杂货铺',
'goods_list' => [
'id' => 3765,
'goods_id' => 836,
'name' => '扳手',
'num' => 2,
'price' => '50.00',
'total' => '100.00'
]
],
'99' => [
'store_nmae' => '回味手撕鸡J009',
'goods_list' =>
[
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
],
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
]
]
],
];
//获取用户优惠券
$res['coupon'] = $this->couponService->getUserAvailableCoupons('',$params['user_id'],'',2,'','');
//获取配送费
$res['distribution'] = '5.0';
//增值服务接口
$res['value_added_service'] = [
'select' => 1,
'price' => 3.50
];
return $this->success($res);
}
public function check()
{
}
public function undo()
{
}
}

19
app/Controller/v3/OrderController.php

@ -1,19 +0,0 @@
<?php
namespace App\Controller\v3;
use App\Controller\BaseController;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\OrderServiceInterface;
class OrderController extends BaseController
{
/**
* @Inject
* @var OrderServiceInterface
*/
protected $order;
public function detail(){
$res = $this->order->detail();
return $this->success($res);
}
}

36
app/Controller/v3/ShopCartController.php

@ -0,0 +1,36 @@
<?php
namespace App\Controller\v3;
use App\Controller\BaseController;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\ShopCartServiceInterface;
class ShopCartController extends BaseController
{
/**
* @Inject
* @var ShopCartServiceInterface
*/
protected $shopCart;
public function detail()
{
//获取购物车商品信息
$res['store_goood_lists'] = $this->shopCart->detail();
//获取购物车失效商品信息
$res['store_invalid_goood_lists'] = $this->shopCart->undo();
//计算购物车价格
$res['total'] = '820.00';
return $this->success($res);
}
public function check()
{
}
public function undo()
{
}
}

32
app/Controller/v3/UpdateShopCartController.php

@ -0,0 +1,32 @@
<?php
namespace App\Controller\v3;
use App\Controller\BaseController;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\UpdateShopCartServiceInterface;
class UpdateShopCartController extends BaseController
{
/**
* @Inject
* @var UpdateShopCartServiceInterface
*/
protected $updateShopCarService;
public function update()
{
$res = $this->updateShopCarService->update($this->request->all());
return $this->success($res);
}
public function check()
{
}
public function delete()
{
$res = $this->updateShopCarService->delete($this->request->all());
return $this->success($res);
}
}

29
app/Service/v3/Implementations/AppointmentTimeService.php

@ -0,0 +1,29 @@
<?php
namespace App\Service\v3\Implementations;
use App\Service\v3\Interfaces\AppointmentTimeServiceInterface;
use phpDocumentor\Reflection\Types\Object_;
class AppointmentTimeService implements AppointmentTimeServiceInterface
{
public function get()
{
return [
'08:30 - 09:00',
'09:00 - 09:30',
'09:30 - 10:00',
'10:00 - 10:30'
];
}
public function check()
{
// TODO: Implement check() method.
}
public function undo()
{
// TODO: Implement undo() method.
}
}

25
app/Service/v3/Implementations/DistributionPriceService.php

@ -0,0 +1,25 @@
<?php
namespace App\Service\v3\Implementations;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\DistributionPriceServiceInterface;
class DistributionPriceService implements DistributionPriceServiceInterface
{
public function do()
{
return '配送费';
}
public function check()
{
// TODO: Implement check() method.
}
public function undo()
{
// TODO: Implement undo() method.
}
}

13
app/Service/v3/Implementations/ExampleService.php

@ -6,5 +6,18 @@ use App\Service\v3\Interfaces\ExampleServiceInterface;
class ExampleService implements ExampleServiceInterface
{
public function do()
{
// TODO: Implement check() method.
}
public function check()
{
// TODO: Implement check() method.
}
public function undo()
{
// TODO: Implement undo() method.
}
}

22
app/Service/v3/Implementations/OnlineOrderService.php

@ -0,0 +1,22 @@
<?php
namespace App\Service\v3\Implementations;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\OnlineOrderServiceInterface;
class OnlineOrderService implements OnlineOrderServiceInterface
{
public function detail($params){
return [];
}
public function check()
{
// TODO: Implement check() method.
}
public function undo()
{
// TODO: Implement undo() method.
}
}

12
app/Service/v3/Implementations/OrderService.php

@ -1,12 +0,0 @@
<?php
namespace App\Service\v3\Implementations;
use App\Service\v3\Interfaces\OrderServiceInterface;
class OrderService implements OrderServiceInterface
{
public function detail(){
return '接入成功';
}
}

111
app/Service/v3/Implementations/ShopCartService.php

@ -0,0 +1,111 @@
<?php
namespace App\Service\v3\Implementations;
use App\Service\v3\Interfaces\ShopCartServiceInterface;
class ShopCartService implements ShopCartServiceInterface
{
public function detail()
{
$res = [
[
'store_nmae' => '五金杂货铺',
'price' => '100.00',
'note' => '多放辣椒',
'store_id' => 66,
'goods_list' =>
[
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
]
]
],
[
'store_nmae' => '回味手撕鸡J009',
'note' => '手撕鸡加辣',
'store_price' => '720.00',
'store_id' => 123,
'goods_list' =>
[
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
],
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
]
]
],
];
return $res;
}
public function check()
{
// TODO: Implement check() method.
}
public function undo()
{
$res = [
[
'store_nmae' => '五金杂货铺',
'price' => '100.00',
'note' => '多放辣椒',
'store_id' => 66,
'goods_list' =>
[
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
]
]
],
[
'store_nmae' => '回味手撕鸡J009',
'note' => '手撕鸡加辣',
'store_price' => '720.00',
'store_id' => 123,
'goods_list' =>
[
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
],
[
'id' => 3971,
'goods_id' => 1301,
'name' => '半边手撕鸡',
'num' => 4,
'price' => '90.00',
'total' => '360.00'
]
]
],
];
return $res;
}
}

38
app/Service/v3/Implementations/UpdateShopCartService.php

@ -0,0 +1,38 @@
<?php
namespace App\Service\v3\Implementations;
use App\Constants\v3\ErrorCode;
use App\Exception\ErrorCodeException;
use App\Service\v3\Interfaces\UpdateShopCartServiceInterface;
class UpdateShopCartService implements UpdateShopCartServiceInterface
{
public function update($params)
{
switch ($params['goods_id'])
{
case 1000:
throw new ErrorCodeException(ErrorCode::GOODS_INVENTORY_ERROR);
break;
case 2000:
throw new ErrorCodeException(ErrorCode::PURCHASE_LIMIT_ERROR);
break;
case 3000:
throw new ErrorCodeException(ErrorCode::SPERCIAL_OFFER_GOODS_ERROR);
break;
default:
return true;
}
}
public function check()
{
// TODO: Implement check() method.
}
public function delete($params)
{
return true;
}
}

12
app/Service/v3/Interfaces/AppointmentTimeServiceInterface.php

@ -0,0 +1,12 @@
<?php
namespace App\Service\v3\Interfaces;
interface AppointmentTimeServiceInterface
{
public function get();
public function check();
public function undo();
}

12
app/Service/v3/Interfaces/DistributionPriceServiceInterface.php

@ -0,0 +1,12 @@
<?php
namespace App\Service\v3\Interfaces;
interface DistributionPriceServiceInterface
{
public function do();
public function check();
public function undo();
}

4
app/Service/v3/Interfaces/ExampleServiceInterface.php

@ -4,5 +4,9 @@ namespace App\Service\v3\Interfaces;
interface ExampleServiceInterface
{
public function do();
public function check();
public function undo();
}

12
app/Service/v3/Interfaces/OnlineOrderServiceInterface.php

@ -0,0 +1,12 @@
<?php
namespace App\Service\v3\Interfaces;
interface OnlineOrderServiceInterface
{
public function detail($params);
public function check();
public function undo();
}

8
app/Service/v3/Interfaces/OrderServiceInterface.php

@ -1,8 +0,0 @@
<?php
namespace App\Service\v3\Interfaces;
interface OrderServiceInterface
{
}

12
app/Service/v3/Interfaces/ShopCartServiceInterface.php

@ -0,0 +1,12 @@
<?php
namespace App\Service\v3\Interfaces;
interface ShopCartServiceInterface
{
public function detail();
public function check();
public function undo();
}

12
app/Service/v3/Interfaces/UpdateShopCartServiceInterface.php

@ -0,0 +1,12 @@
<?php
namespace App\Service\v3\Interfaces;
interface UpdateShopCartServiceInterface
{
public function update($params);
public function check();
public function delete($params);
}

6
config/autoload/dependencies.php

@ -40,8 +40,12 @@ return [
\App\Service\v3\Interfaces\HelperServiceInterface::class => \App\Service\v3\Implementations\HelperService::class,
\App\Service\v3\Interfaces\VerifyCodeServiceInterface::class => \App\Service\v3\Implementations\VerifyCodeService::class,
\App\Service\v3\Interfaces\UserBindTelServiceInterface::class => \App\Service\v3\Implementations\UserBindTelService::class,
\App\Service\v3\Interfaces\OrderServiceInterface::class => \App\Service\v3\Implementations\OrderService::class,
\App\Service\v3\Interfaces\OnlineOrderServiceInterface::class => \App\Service\v3\Implementations\OnlineOrderService::class,
\App\Service\v3\Interfaces\DistributionPriceServiceInterface::class => \App\Service\v3\Implementations\DistributionPriceService::class,
\App\Service\v3\Interfaces\AppointmentTimeServiceInterface::class => \App\Service\v3\Implementations\AppointmentTimeService::class,
\App\Service\v3\Interfaces\CategoryServiceInterface::class => \App\Service\v3\Implementations\CategoryService::class,
\App\Service\v3\Interfaces\UpdateShopCartServiceInterface::class => \App\Service\v3\Implementations\UpdateShopCartService::class,
\App\Service\v3\Interfaces\ShopCartServiceInterface::class => \App\Service\v3\Implementations\ShopCartService::class,
\App\Service\v3\Interfaces\WxLoginServiceInterface::class => \App\Service\v3\Implementations\WxLoginService::class,
\App\Service\v3\Interfaces\UserInfoServiceInterface::class => \App\Service\v3\Implementations\UserInfoService::class,
];

7
config/routes.php

@ -79,10 +79,13 @@ Router::addGroup('/wechat/',function () {
Router::addGroup('/v3/', function () {
Router::post('location/getNearestMarket', 'App\Controller\v3\LocationController@getNearestMarket');
Router::post('home/appletIndex', 'App\Controller\v3\HomeController@appletIndex');
Router::post('Goods/detail', 'App\Controller\v3\GoodsController@detail');
Router::post('goods/detail', 'App\Controller\v3\GoodsController@detail');
Router::post('goodsRecommend/getByTabsForAppletIndex', 'App\Controller\v3\GoodsRecommendController@getByTabsForAppletIndex');
Router::post('Order/detail', 'App\Controller\v3\OrderController@detail');
Router::post('onlineOrder/detail', 'App\Controller\v3\OnlineOrderController@detail');
Router::post('distributionPrice/get', 'App\Controller\v3\DistributionPriceController@get');
Router::post('category/all', 'App\Controller\v3\CategoryController@all');
Router::post('UpdateShopCart/update', 'App\Controller\v3\UpdateShopCartController@update');
Router::post('ShopCart/detail', 'App\Controller\v3\ShopCartController@detail');
Router::post('login/wxLogin', 'App\Controller\v3\LoginController@wxLogin');
},['middleware' => [\App\Middleware\Auth\ApiMiddleware::class]]);

Loading…
Cancel
Save