修改补贴优惠券发放

This commit is contained in:
luofei 2024-03-16 11:35:07 +08:00
parent f0291f4f45
commit 9a0b08b32a
2 changed files with 17 additions and 19 deletions

View File

@ -48,8 +48,9 @@ class StoreCouponRepository extends BaseRepository
const TYPE_STORE_ALL = 0; const TYPE_STORE_ALL = 0;
//店铺商品券 //店铺商品券
const TYPE_STORE_PRODUCT = 1; const TYPE_STORE_PRODUCT = 1;
//店铺现金抵扣券,可结余 //店铺现金抵扣券,可结余,通过购买商品获得
const TYPE_STORE_COUPON = 2; const TYPE_STORE_COUPON = 2;
//店铺现金抵扣券,可结余,通过销售补贴获得
const TYPE_SALE_SUBSIDY = 3; const TYPE_SALE_SUBSIDY = 3;
//平台券 //平台券
const TYPE_PLATFORM_ALL = 10; const TYPE_PLATFORM_ALL = 10;
@ -373,6 +374,9 @@ class StoreCouponRepository extends BaseRepository
if (!empty($this->isFail)) { if (!empty($this->isFail)) {
$data['is_fail'] = $this->isFail; $data['is_fail'] = $this->isFail;
} }
if (!empty($this->status)) {
$data['status'] = $this->status;
}
return $data; return $data;
} }

View File

@ -3,10 +3,10 @@
namespace crmeb\listens; namespace crmeb\listens;
use app\common\model\store\coupon\StoreCouponDetail; use app\common\model\store\coupon\StoreCouponDetail;
use app\common\model\store\coupon\StoreCouponUser;
use app\common\repositories\store\coupon\StoreCouponRepository; use app\common\repositories\store\coupon\StoreCouponRepository;
use app\common\repositories\store\coupon\StoreCouponUserRepository; use app\common\repositories\store\coupon\StoreCouponUserRepository;
use crmeb\interfaces\ListenerInterface; use crmeb\interfaces\ListenerInterface;
use think\facade\Log;
/** /**
* Class OrderDeliveryListen * Class OrderDeliveryListen
@ -37,24 +37,18 @@ class OrderDeliveryListen implements ListenerInterface
StoreCouponDetail::income($order, $couponUser['coupon_user_id'], $coupon->coupon_price, $coupon['title']); StoreCouponDetail::income($order, $couponUser['coupon_user_id'], $coupon->coupon_price, $coupon['title']);
//发放春耕补贴优惠券 //发放春耕补贴优惠券
if (!empty($orderProduct->product->give_coupon_ids) && $couponTotal >= 1000) { if ($couponTotal >= 1000) {
$giveCoupons = $repo->getGiveCoupon($orderProduct->product->give_coupon_ids); $giveCoupon = $repo->validCouponQuery(StoreCouponRepository::TYPE_STORE_COUPON, StoreCouponRepository::GET_COUPON_TYPE_PAY)->find();
foreach ($giveCoupons as $giveCoupon) { if (empty($giveCoupon)) {
if ($giveCoupon['type'] != StoreCouponRepository::TYPE_STORE_COUPON) { return;
continue;
} }
try {
$rate = $this->getRate($couponTotal); $rate = $this->getRate($couponTotal);
$giveCoupon->coupon_price = bcmul($couponTotal, $rate, 2); $giveCoupon->coupon_price = bcmul($couponTotal, $rate, 2);
$repo->startTime = date('Y-m-d H:i:s'); $repo->startTime = date('Y-m-d H:i:s');
$repo->endTime = '2025-07-01'; $repo->endTime = '2025-07-01';
$repo->status = -1; $repo->status = StoreCouponUser::STATUS_REPEAL;
$couponUser = $repo->sendCoupon($giveCoupon, $order['uid'], StoreCouponUserRepository::SEND_TYPE_BUY); $couponUser = $repo->sendCoupon($giveCoupon, $order['uid'], StoreCouponUserRepository::SEND_TYPE_BUY);
StoreCouponDetail::income($order, $couponUser['coupon_user_id'], $giveCoupon->coupon_price, $giveCoupon['title'], 0); StoreCouponDetail::income($order, $couponUser['coupon_user_id'], $giveCoupon->coupon_price, $giveCoupon['title'], 0);
} catch (\Exception $e) {
Log::error('自动发放买赠优惠券出错:' . $e->getMessage());
}
}
} }
} }
} }