12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- <?php namespace App\Http\Controllers\Api;
- use App\Http\Controllers\Api\Api;
- use App\Models\CouponProduct;
- use App\Models\Coupon as Model;
- use App\Http\Requests\Api\Coupon as Request;
- /**
- * 优惠券接口
- *
- * @author 刘相欣
- *
- * */
- class Coupon extends Api{
- /**
- * 获取优惠券可用商品 /api/coupon/get_product
- *
- * @param string $code 授权码
- *
- * */
- public function get_product(Request $request,Model $Model,CouponProduct $CouponProduct){
- // 接口验签
- // $this->verify_sign();
- // 验证参数
- $request->scene('get_product')->validate();
- // 检查登录
- $uid = $this->checkLogin();
- // 接收参数
- $couponId = request('coupon_id',0);
- $limit = request('limit',10);
- // 显示
- $map = [['id','=',$couponId],['status','=',0]];
- // 查询
- $coupon = $Model->query()->where($map)->first();
- // 获取优惠券可用商品列表
- $Paginator = $CouponProduct->query()
- ->join('product','coupon_product.product_id','=','product.id')
- ->where([['coupon_product.coupon_id','=',$couponId],['product.status','=',0]])
- ->orderBy('product.sort')
- ->orderBy('product.id')
- ->paginate($limit,['product.id','product.sort','product.name','product.thumb','product.spec','product.price','product.market_price','product.stock']);
- // 获取数据
- $data['total'] = $Paginator->total();
- $data['current_page'] = $Paginator->currentPage();
- $data['per_page'] = $Paginator->perPage();
- $data['last_page'] = $Paginator->lastPage();
- $data['data'] = $Paginator->items();
- // 处理请求
- foreach ( $data['data'] as $key => $value ) {
- // 处理数据
- $value['thumb'] = path_compat($value['thumb']);
- // 重组数据
- $data['data'][$key] = $value;
- }
- // 返回结果
- return json_send(['code'=>'success','msg'=>'获取成功','data'=>$data]);
- }
-
- }
|