|
|
<?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() {
}}
|