StoreVisit.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. namespace app\admin\model\store;
  12. use traits\ModelTrait;
  13. use basic\ModelBasic;
  14. use app\admin\model\user\User;
  15. /**
  16. * 商品浏览分析
  17. * Class StoreVisit
  18. * @package app\admin\model\store
  19. */
  20. class StoreVisit extends ModelBasic
  21. {
  22. use ModelTrait;
  23. /**
  24. * @param $where
  25. * @return array
  26. */
  27. public static function getVisit($date, $class = [])
  28. {
  29. $model = new self();
  30. switch ($date) {
  31. case null:
  32. case 'today':
  33. case 'week':
  34. case 'year':
  35. if ($date == null) $date = 'month';
  36. $model = $model->whereTime('add_time', $date);
  37. break;
  38. case 'quarter':
  39. list($startTime, $endTime) = User::getMonth('n');
  40. $model = $model->where('add_time', '>', $startTime);
  41. $model = $model->where('add_time', '<', $endTime);
  42. break;
  43. default:
  44. list($startTime, $endTime) = explode('-', $date);
  45. $model = $model->where('add_time', '>', strtotime($startTime));
  46. $model = $model->where('add_time', '<', strtotime($endTime));
  47. break;
  48. }
  49. $list = $model->group('type')->field('sum(count) as sum,product_id,cate_id,type,content')->order('sum desc')->limit(0, 10)->select()->toArray();
  50. $view = [];
  51. foreach ($list as $key => $val) {
  52. $now_list['name'] = $val['type'] == 'viwe' ? '浏览量' : '搜索';
  53. $now_list['value'] = $val['sum'];
  54. $now_list['class'] = isset($class[$key]) ? $class[$key] : '';
  55. $view[] = $now_list;
  56. }
  57. if (empty($list)) {
  58. $view = [['name' => '暂无数据', 'value' => 100, 'class' => '']];
  59. }
  60. return $view;
  61. }
  62. }