54 lines
1.1 KiB
PHP
54 lines
1.1 KiB
PHP
<?php
|
|
|
|
|
|
|
|
namespace app\common\model\store\coupon;
|
|
|
|
|
|
use app\common\model\BaseModel;
|
|
use app\common\repositories\store\coupon\StoreCouponUserRepository;
|
|
|
|
class StoreCouponSend extends BaseModel
|
|
{
|
|
|
|
public static function tablePk(): ?string
|
|
{
|
|
return 'coupon_send_id';
|
|
}
|
|
|
|
public static function tableName(): string
|
|
{
|
|
return 'store_coupon_send';
|
|
}
|
|
|
|
public function setMarkAttr(array $val)
|
|
{
|
|
return json_encode($val);
|
|
}
|
|
|
|
public function getMarkAttr($val)
|
|
{
|
|
return json_decode($val, true) ?: [];
|
|
}
|
|
|
|
public function getUseCountAttr()
|
|
{
|
|
return app()->make(StoreCouponUserRepository::class)->sendNum($this->coupon_id, $this->coupon_send_id, 1);
|
|
}
|
|
|
|
public function getUsedNumAttr()
|
|
{
|
|
return app()->make(StoreCouponUserRepository::class)->usedNum($this->coupon_id);
|
|
}
|
|
|
|
public function getSendNumAttr()
|
|
{
|
|
return app()->make(StoreCouponUserRepository::class)->sendNum($this->coupon_id);
|
|
}
|
|
|
|
public function coupon()
|
|
{
|
|
return $this->hasOne(StoreCoupon::class, 'coupon_id', 'coupon_id');
|
|
}
|
|
}
|