MemberController.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace app\admin\controller\statistics;
  3. use app\model\Member;
  4. use support\Db;
  5. class MemberController
  6. {
  7. public function index()
  8. {
  9. // 权益会员数量
  10. $memberCount = Member::where('member_is_owner', 'N')->count();
  11. // 业主数量
  12. $ownerCount = Member::where('member_is_owner', 'N')->count();
  13. // 用户总数
  14. $userCount = $memberCount + $ownerCount;
  15. // 今日新增用户数
  16. $todayTime = strtotime(date('Y-m-d 00:00:00'));
  17. $todayCount = Member::where('member_addtimes', '>', $todayTime)->count();
  18. // 本月新增用户数
  19. $monthTime = strtotime(date('Y-m-01 00:00:00'));
  20. $monthCount = Member::where('member_addtimes', '>', $monthTime)->count();
  21. // 折线图
  22. $newAddition = Db::select("SELECT DATE_FORMAT(FROM_UNIXTIME(member_addtimes), '%Y/%m') AS `month`,count(*) as `num` FROM app_member group by month");
  23. $newAdditionData = [];
  24. foreach ($newAddition as $item){
  25. $newAdditionData['category'][] = $item->month;
  26. $newAdditionData['data'][] = $item->num;
  27. }
  28. $data = [
  29. 'memberCount'=>$memberCount,
  30. 'ownerCount'=>$ownerCount,
  31. 'userCount'=>$userCount,
  32. 'todayCount'=>$todayCount,
  33. 'monthCount'=>$monthCount,
  34. 'newAdditionData'=>$newAdditionData
  35. ];
  36. return json_success('',$data);
  37. }
  38. }