GoodsPromotion.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * =========================================================
  9. */
  10. namespace addon\topic\event;
  11. use addon\topic\model\TopicGoods;
  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[ 'topic' ])) {
  31. $topic_model = new TopicGoods();
  32. $condition = [
  33. [ 'pt.topic_id', '=', $promotion_addon[ 'topic' ] ],
  34. [ 'sku.sku_id', '=', $param[ 'sku_id' ] ],
  35. [ 'pt.status', '=', 2 ]
  36. ];
  37. $field = 'sku.goods_id,sku.sku_id,sku.price,sku.site_id,ptg.id,ptg.topic_id,ptg.topic_price,pt.topic_name';
  38. $goods_detail = $topic_model->getTopicGoodsDetail($condition, $field)[ 'data' ];
  39. if (!empty($goods_detail)) {
  40. $goods_detail[ 'promotion_type' ] = 'topic';
  41. $goods_detail[ 'promotion_name' ] = '专题活动';
  42. return $goods_detail;
  43. }
  44. }
  45. }
  46. return [];
  47. }
  48. }