LogController.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace App\Http\Controllers\Behavior;
  3. use App\Http\Controllers\Controller;
  4. use App\Repositories\Behavior\BehaviorLogRepository;
  5. use App\Transformers\Behavior\BehaviorLogTransformer;
  6. use Illuminate\Http\Request;
  7. use League\Fractal\Manager;
  8. use League\Fractal\Pagination\IlluminatePaginatorAdapter;
  9. use League\Fractal\Resource\Collection;
  10. /**
  11. * Created by PhpStorm.
  12. * User: durong
  13. * Date: 2019/6/13
  14. * Time: 下午7:01
  15. */
  16. class LogController extends Controller
  17. {
  18. public function __construct(BehaviorLogRepository $behaviorLogRepository)
  19. {
  20. $this->behaviorLogRepository = $behaviorLogRepository;
  21. }
  22. //日志列表
  23. public function index(Request $request)
  24. {
  25. $logList = $this->behaviorLogRepository->log($request->all());
  26. $fractal = new Manager();
  27. $resource = new Collection($logList, new BehaviorLogTransformer());
  28. $resource->setPaginator(new IlluminatePaginatorAdapter($logList));
  29. $data = $fractal->createData($resource)->toArray();
  30. $data['extra'] = [
  31. 'filters' => [
  32. 'type',
  33. 'created_at',
  34. ],
  35. 'columns' => [
  36. 'id',
  37. 'username',
  38. 'behavior_id',
  39. 'operator_id',
  40. 'type',
  41. 'created_at',
  42. 'content',
  43. ]
  44. ];
  45. return $data;
  46. }
  47. }