UserSubscribeStatsController.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace App\Http\Controllers\Channel\User;
  3. use App\Http\Controllers\Channel\User\Transformers\UserSubscribeStatsTransformer;
  4. use App\Modules\User\Services\UserSubscribeBehaviorStatsService;
  5. use Illuminate\Http\Request;
  6. use App\Http\Controllers\Channel\BaseController;
  7. use Log;
  8. class UserSubscribeStatsController extends BaseController
  9. {
  10. public function getServiceAccountUsersStats(Request $request) {
  11. $start_date = $request->input('start_date','');
  12. $end_date = $request->input('end_date','');
  13. $appid = $request->input('appid','');
  14. $param = [];
  15. if($start_date) {
  16. $param['start_date']=$start_date;
  17. $param['end_date']=$end_date;
  18. $param['appid'] = $appid;
  19. }
  20. $channel_id = $this->getChannelId();
  21. $res = UserSubscribeBehaviorStatsService::getChannelStats($channel_id,$param);
  22. foreach ($res as $item) {
  23. $item->actual_subscribe_arpu = $item->actual_subscribe_num?round($item->recharge_sum/$item->actual_subscribe_num,2):0;
  24. $item->new_subscribe_arpu = $item->new_subscribe_num?round($item->recharge_sum/$item->new_subscribe_num,2):0;
  25. }
  26. return response()->pagination(new UserSubscribeStatsTransformer(),$res);
  27. }
  28. public function getChannelServiceAccount(Request $request){
  29. $channel_id = $this->getChannelId();
  30. $res = UserSubscribeBehaviorStatsService::getChannelServiceAccount($channel_id);
  31. return response()->success($res);
  32. }
  33. }