MemberRegister.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * =========================================================
  9. * 4.0.1升级测试
  10. */
  11. namespace addon\memberregister\event;
  12. use addon\memberregister\model\Register as RegisterModel;
  13. use app\model\member\MemberAccount as MemberAccountModel;
  14. use addon\coupon\model\Coupon;
  15. /**
  16. * 会员注册奖励
  17. */
  18. class MemberRegister
  19. {
  20. /**
  21. * @param $param
  22. * @return array|\multitype
  23. */
  24. public function handle($param)
  25. {
  26. $register_model = new RegisterModel();
  27. $member_account_model = new MemberAccountModel();
  28. $register_config = $register_model->getConfig($param['site_id'])['data'];
  29. $res = [];
  30. if ($register_config['is_use']) {
  31. $register_config = $register_config['value'];
  32. unset($register_config['coupon_list']);
  33. foreach ($register_config as $k => $v) {
  34. if($k == 'coupon'){
  35. $coupon_list = explode(',', $v);
  36. $coupon = new Coupon();
  37. $coupon_list = array_map(function ($value){
  38. return ['coupon_type_id' => $value, 'num' => 1];
  39. }, $coupon_list);
  40. $coupon->giveCoupon($coupon_list, $param['site_id'], $param['member_id'], 6);
  41. }else if(!empty($v)) {
  42. $adjust_num = $v;
  43. $account_type = $k;
  44. $remark = '注册奖励';
  45. $res = $member_account_model->addMemberAccount($param['site_id'], $param['member_id'], $account_type, $adjust_num, 'register', 0, $remark);
  46. }
  47. }
  48. }
  49. return $res;
  50. }
  51. }