|
|
@@ -8,6 +8,7 @@ use yii\base\Behavior;
|
|
|
use yii\db\ActiveRecord;
|
|
|
use yii\db\AfterSaveEvent;
|
|
|
use bizHd\user\classes\UserGrowthClass;
|
|
|
+use bizHd\custom\classes\UserConsumeClass;
|
|
|
|
|
|
class BuyAmountObserver extends Behavior
|
|
|
{
|
|
|
@@ -32,11 +33,31 @@ class BuyAmountObserver extends Behavior
|
|
|
if (bccomp($newBuyAmount, $oldBuyAmount, 2) === 0) {
|
|
|
return;
|
|
|
}
|
|
|
+
|
|
|
+ $buyAmountDelta = bcsub($newBuyAmount, $oldBuyAmount, 2);
|
|
|
+ $shopId = $model->getAttribute('shopId');
|
|
|
+ $userId = $model->getAttribute('userId');
|
|
|
+ $userName = $model->getAttribute('name');
|
|
|
+ $relateId = $model->relateId;
|
|
|
+ $relateType = $model->relateType;
|
|
|
+ $eventRemark = isset($model->eventRemark) ? trim((string) $model->eventRemark) : '';
|
|
|
+ //buyAmount变动记录
|
|
|
+ $consumeData = [
|
|
|
+ 'shopId' => $shopId,
|
|
|
+ 'userId' => $userId,
|
|
|
+ 'userName' => $userName,
|
|
|
+ 'event' => $eventRemark,
|
|
|
+ 'relateId' => $relateId,
|
|
|
+ 'relateType' => $relateType,
|
|
|
+ 'num' => $buyAmountDelta,
|
|
|
+ 'buyAmount' => $newBuyAmount,
|
|
|
+ 'createTime' => date('Y-m-d H:i:s'),
|
|
|
+ ];
|
|
|
+ UserConsumeClass::add($consumeData);
|
|
|
|
|
|
$oldGrowth = array_key_exists('growth', $event->changedAttributes)
|
|
|
? $event->changedAttributes['growth']
|
|
|
: $model->getAttribute('growth'); // changedAttributes 里没有 growth 时,说明这次更新没改 growth,这时直接取模型当前值即可(它就等于旧值)。
|
|
|
- $buyAmountDelta = bcsub($newBuyAmount, $oldBuyAmount, 2);
|
|
|
$newGrowth = bcadd($oldGrowth, $buyAmountDelta, 2);
|
|
|
|
|
|
$oldIntegral = array_key_exists('integral', $event->changedAttributes)
|
|
|
@@ -66,14 +87,14 @@ class BuyAmountObserver extends Behavior
|
|
|
}
|
|
|
|
|
|
$createTime = date('Y-m-d H:i:s');
|
|
|
- $growthEventRemark = isset($model->growthEventRemark) ? trim((string) $model->growthEventRemark) : '';
|
|
|
+ //成长值变动记录
|
|
|
$growthData = [
|
|
|
- 'shopId' => $model->getAttribute('shopId'),
|
|
|
- 'userId' => $model->getAttribute('userId'),
|
|
|
- 'userName' => $model->getAttribute('name'),
|
|
|
- 'event' => $growthEventRemark !== '' ? $growthEventRemark . ',成长值同步变更' : '累计消费变更同步成长值',
|
|
|
- 'relateId' => $model->relateId,
|
|
|
- 'relateType' => $model->relateType,
|
|
|
+ 'shopId' => $shopId,
|
|
|
+ 'userId' => $userId,
|
|
|
+ 'userName' => $userName,
|
|
|
+ 'event' => $eventRemark !== '' ? $eventRemark . ',成长值同步变更' : '累计消费变更同步成长值',
|
|
|
+ 'relateId' => $relateId,
|
|
|
+ 'relateType' => $relateType,
|
|
|
'num' => $buyAmountDelta,
|
|
|
'growth' => $newGrowth,
|
|
|
'operatorId' => 0,
|
|
|
@@ -83,12 +104,12 @@ class BuyAmountObserver extends Behavior
|
|
|
|
|
|
//积分变动记录
|
|
|
$integralData = [
|
|
|
- 'shopId' => $model->getAttribute('shopId'),
|
|
|
- 'userId' => $model->getAttribute('userId'),
|
|
|
- 'userName' => $model->getAttribute('name'),
|
|
|
- 'event' => $growthEventRemark !== '' ? $growthEventRemark . ',积分同步变更' : '累计消费变更同步积分',
|
|
|
- 'relateId' => $model->relateId,
|
|
|
- 'relateType' => $model->relateType,
|
|
|
+ 'shopId' => $shopId,
|
|
|
+ 'userId' => $userId,
|
|
|
+ 'userName' => $userName,
|
|
|
+ 'event' => $eventRemark !== '' ? $eventRemark . ',积分同步变更' : '累计消费变更同步积分',
|
|
|
+ 'relateId' => $relateId,
|
|
|
+ 'relateType' => $relateType,
|
|
|
'num' => $buyAmountDelta,
|
|
|
'integral' => $newIntegral,
|
|
|
'operatorId' => 0,
|