Browse Source

处理可用优惠券返回数据结构

master
weigang 5 years ago
parent
commit
214fcfde35
  1. 21
      app/Controller/CouponController.php

21
app/Controller/CouponController.php

@ -221,20 +221,23 @@ class CouponController extends BaseController
->orderByRaw('coupon.discounts DESC, coupon.full_amount DESC') ->orderByRaw('coupon.discounts DESC, coupon.full_amount DESC')
->get(); ->get();
// 剔除用户今天用过的优惠券种类
// 分离用户今天用过的优惠券种类
$container = ApplicationContext::getContainer(); $container = ApplicationContext::getContainer();
$redis = $container->get(Redis::class); $redis = $container->get(Redis::class);
$couponIds = $redis->sMembers('coupon_'.date('Ymd').'_used_'.$userId); $couponIds = $redis->sMembers('coupon_'.date('Ymd').'_used_'.$userId);
$available = $data->reject(function ($item) use ($couponIds) {
return in_array($item->id, $couponIds);
});
$notAvailable = $data->reject(function ($item) use ($couponIds) {
return !in_array($item->id, $couponIds);
});
$notAvailable = [];
foreach ($data as $key => &$item) {
if (in_array($item->id, $couponIds)) {
$notAvailable[] = $item;
unset($item);
}
}
return $this->success(['available' => $available, 'not_available' => $notAvailable]);
return $this->success([
'available' => $data,
'not_available' => $notAvailable
]);
} }

Loading…
Cancel
Save