GoodsPromotion.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * =========================================================
  9. */
  10. namespace addon\groupbuy\event;
  11. use addon\groupbuy\model\Groupbuy;
  12. use app\model\goods\Goods as GoodsModel;
  13. /**
  14. * 商品营销活动信息
  15. */
  16. class GoodsPromotion
  17. {
  18. /**
  19. * 商品营销活动信息
  20. * @param $param
  21. * @return array
  22. */
  23. public function handle($param)
  24. {
  25. if (empty($param[ 'goods_id' ])) return [];
  26. $goods_model = new GoodsModel();
  27. $goods_info = $goods_model->getGoodsInfo([ [ 'goods_id', '=', $param[ 'goods_id' ] ] ], 'promotion_addon')[ 'data' ];
  28. if (!empty($goods_info[ 'promotion_addon' ])) {
  29. $promotion_addon = json_decode($goods_info[ 'promotion_addon' ], true);
  30. if (!empty($promotion_addon[ 'groupbuy' ])) {
  31. $groupbuy_model = new Groupbuy();
  32. $condition = [
  33. [ 'pg.groupbuy_id', '=', $promotion_addon[ 'groupbuy' ] ],
  34. [ 'pg.goods_id', '=', $param[ 'goods_id' ] ],
  35. [ 'pg.status', '=', 2 ],
  36. [ 'g.goods_state', '=', 1 ],
  37. [ 'g.is_delete', '=', 0 ]
  38. ];
  39. $goods_detail = $groupbuy_model->getGroupbuyInfo($condition, 'pg.groupbuy_id,pg.site_id,pg.goods_id,pg.goods_price,pg.groupbuy_price,g.sku_id')[ 'data' ];
  40. if (!empty($goods_detail)) {
  41. $goods_detail[ 'promotion_type' ] = 'groupbuy';
  42. $goods_detail[ 'promotion_name' ] = '团购';
  43. return $goods_detail;
  44. }
  45. }
  46. }
  47. return [];
  48. }
  49. }