FillRewardLogic.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace addons\CloudStockTwo\common\logic\reward;
  3. use addons\CloudStockTwo\common\models\CloudStockTwoAgent;
  4. use app\plugins\cloud_stock\helpers\BonusMessage;
  5. use app\plugins\cloud_stock\helpers\SmsConfig;
  6. use common\enums\UserWalletEnum;
  7. use Overtrue\EasySms\EasySms;
  8. class FillRewardLogic extends Reward
  9. {
  10. /**
  11. * 记录奖励
  12. */
  13. public function addRewardLog()
  14. {
  15. $this->getRewardUnitPrice();
  16. //奖励金额,不记录
  17. if (empty($this->reward_unit_price)) return false;
  18. //扣库存数量为0;没有奖励
  19. if (empty($this->goods_num)) return false;
  20. //投递到资产队列
  21. $insert_wallet = $this->getInsertWallet(UserWalletEnum::FILL);
  22. if ($insert_wallet) CloudStockTwoAgent::sendUserWalletQueue($insert_wallet);
  23. }
  24. /**
  25. * 获取对应等级商品奖励金额单价
  26. */
  27. protected function getRewardUnitPrice()
  28. {
  29. $fill_level_list = json_decode($this->stock_goods['fill_level_list'], true);
  30. if (!empty($fill_level_list)) {
  31. foreach ($fill_level_list as $value) {
  32. if ($value['level'] == $this->bonus_agent['level']) {
  33. $this->reward_unit_price = $value['price'];
  34. return;
  35. }
  36. }
  37. }
  38. $this->reward_unit_price = 0;
  39. }
  40. }