// +---------------------------------------------------------------------- namespace crmeb\jobs; use app\common\repositories\store\coupon\StoreCouponRepository; use app\common\repositories\store\coupon\StoreCouponUserRepository; use crmeb\interfaces\JobInterface; use think\facade\Log; class PayGiveCouponJob implements JobInterface { public function fire($job, $data) { $storeCouponRepository = app()->make(StoreCouponRepository::class); $coupons = $storeCouponRepository->getGiveCoupon($data['ids']); foreach ($coupons as $coupon) { if ($coupon->is_limited && 0 == $coupon->remain_count) continue; try { $storeCouponRepository->sendCoupon($coupon, $data['uid'], StoreCouponUserRepository::SEND_TYPE_BUY); } catch (\Exception $e) { Log::info('自动发放买赠优惠券:' . $e->getMessage()); } } $job->delete(); } public function failed($data) { // TODO: Implement failed() method. } }