MemberReceiveRegisterGift.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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\CouponType;
  15. use addon\coupon\model\Coupon;
  16. /**
  17. * 后台添加会员领取新人礼
  18. */
  19. class MemberReceiveRegisterGift
  20. {
  21. /**
  22. * @param $param
  23. * @return array|\multitype
  24. */
  25. public function handle($param)
  26. {
  27. $register_model = new RegisterModel();
  28. $member_account_model = new MemberAccountModel();
  29. $register_config = $register_model->getConfig($param['site_id'])['data'];
  30. $res = [];
  31. if ($register_config['is_use']) {
  32. $register_config = $register_config['value'];
  33. unset($register_config['coupon_list']);
  34. foreach ($register_config as $k => $v) {
  35. if($k == 'coupon'){
  36. $coupon_type = new CouponType();
  37. $coupon_list = $coupon_type->getCouponTypeList([ ['site_id','=',$param['site_id']],['status','=',1],['coupon_type_id','in',$v] ]);
  38. $coupon_list = $coupon_list['data'];
  39. $coupon = new Coupon();
  40. foreach ($coupon_list as $key => $val){
  41. $coupon->receiveCoupon($val['coupon_type_id'], $param['site_id'], $param['member_id'], '3', 0, 0);
  42. }
  43. }else if(!empty($v)) {
  44. $adjust_num = $v;
  45. $account_type = $k;
  46. $remark = '注册奖励';
  47. $res = $member_account_model->addMemberAccount($param['site_id'], $param['member_id'], $account_type, $adjust_num, 'register', 0, $remark);
  48. }
  49. }
  50. }
  51. return $res;
  52. }
  53. }