PromotionMonitor.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace app\api\model;
  3. use app\common\model\PromotionMonitor as PromotionMonitorModel;
  4. use think\facade\Db;
  5. /**
  6. * 推广监控模型
  7. * @package app\api\model
  8. */
  9. class PromotionMonitor extends PromotionMonitorModel
  10. {
  11. /**
  12. * 判断活动效果归属推广监控
  13. *
  14. * @param $pageType
  15. * @param $monitorId
  16. * @param $pageId
  17. * @return int|mixed
  18. */
  19. public static function checkActEffectOwner($pageType, $monitorId, $pageId)
  20. {
  21. // var_dump($pageType, $monitorId, $pageId);
  22. // die();
  23. $monitor = PromotionMonitor::where('id', $monitorId)->find();
  24. if (empty($monitor)) {
  25. return 0;
  26. }
  27. if ($pageType == 5) { // 砍价活动
  28. $pageId = Db::name('kj_activity_join')->where('id', $pageId)->value('activity_id') ?? 0; // 获取活动ID
  29. }
  30. //秒杀活动 获取活动ID
  31. if ($pageType == 9){
  32. $pageId = Db::name('ms_activity_goods')->where('id', $pageId)->value('ms_activity_id') ?? 0;
  33. }
  34. if ($monitor['page_type'] == $pageType && $monitor['page_id'] == $pageId) { // 监控绑定的活动id等于下单的活动id 则为同一个监控
  35. return $monitorId;
  36. } else { // 根据活动ID查找该活动的监控ID
  37. return PromotionMonitor::where('page_id', $pageId)->where('page_type', $pageType)->value('id') ?? 0;
  38. }
  39. }
  40. }