LogController.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. namespace App\Http\Controllers\Admin\User\Log\Login;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Controller;
  5. use App\Models\DTO\SearchData;
  6. use App\Models\User;
  7. use App\Models\LoginLog;
  8. class LogController extends Controller
  9. {
  10. private User $userModel;
  11. private LoginLog $loginLogModel;
  12. public function __construct(User $user, LoginLog $loginLogModel)
  13. {
  14. $this->userModel = $user;
  15. $this->loginLogModel = $loginLogModel;
  16. }
  17. /**
  18. * 로그인 이력 관리
  19. * @method GET
  20. * @see /admin/user/log/login
  21. */
  22. public function index(Request $request)
  23. {
  24. $params = SearchData::fromRequest($request);
  25. $userLoginLogData = $this->loginLogModel->data($params);
  26. if ($userLoginLogData->rows > 0) {
  27. $num = listNum($userLoginLogData->total, $params->page, $params->perPage);
  28. foreach ($userLoginLogData->list as $i => $row) {
  29. $row->num = $num--;
  30. $row->createdAt = dateBr($row->created_at);
  31. $userLoginLogData->list[$i] = $row;
  32. }
  33. }
  34. return view('admin.user.log.login.index', [
  35. 'userLoginLogData' => $userLoginLogData,
  36. 'params' => $params
  37. ]);
  38. }
  39. /**
  40. * 로그인 이력 삭제
  41. * @method DELETE
  42. * @see /admin/user/log/login/destroy
  43. */
  44. public function destroy(Request $request)
  45. {
  46. $chk = $request->post('chk');
  47. if ($chk) {
  48. foreach ($chk as $logID) {
  49. $this->loginLogModel->find($logID)->delete();
  50. }
  51. }
  52. $message = '로그인 이력 정보가 삭제되었습니다.';
  53. return redirect()->route('admin.user.log.login.index')->with('message', $message);
  54. }
  55. }