CouponClass.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace bizHd\promote\classes;
  3. use bizHd\user\classes\UserAssetClass;
  4. use bizHd\user\classes\UserClass;
  5. use Yii;
  6. use bizHd\base\classes\BaseClass;
  7. class CouponClass extends BaseClass
  8. {
  9. public static $baseFile = '\bizHd\promote\models\Coupon';
  10. //邀请有礼增加优惠券 ssh 2019.12.14
  11. public static function inviteAdd()
  12. {
  13. }
  14. //新增优惠卷
  15. public static function add($data, $returnObject = false)
  16. {
  17. $model = Yii::createObject(['class' => self::$baseFile]);
  18. $respond = $model->add($data, $returnObject);
  19. /**用户领卷次数增加**/
  20. $userId = $data['userId'];
  21. UserAssetClass::getCouponNumIncrease($userId);
  22. return $respond;
  23. }
  24. //整体优惠券信息 ssh 2019.12.11
  25. public static function groupCouponBaseInfo($list)
  26. {
  27. $userIdList = array_column($list, 'userId');
  28. $introIdList = array_column($list, 'introUserId');
  29. $ids = array_merge($userIdList, $introIdList);
  30. $ids = array_unique(array_filter($ids));
  31. $userInfo = UserClass::getByIds($ids, null, 'id');
  32. $userList = UserClass::groupUserBaseInfo($userInfo);
  33. foreach ($list as $key => $val) {
  34. $userId = $val['userId'];
  35. $list[$key]['userName'] = isset($userList[$userId]) ? $userList[$userId]['userName'] : '';
  36. $list[$key]['userAvatar'] = isset($userList[$userId]) ? $userList[$userId]['avatarUrl'] : '';
  37. //过期优惠券置为过期状态
  38. self::setExpire($val);
  39. }
  40. return $list;
  41. }
  42. //已经过期的优惠券处理 ssh 2020.5.25
  43. public static function setExpire($coupon)
  44. {
  45. $now = time();
  46. if (isset($coupon['deadline']) && $now > $coupon['deadline']) {
  47. if ($coupon['status'] == 0) {
  48. $id = $coupon['id'];
  49. self::updateById($id, ['status' => 2]);
  50. }
  51. }
  52. }
  53. }