package cn.lihongjie.coal.loginUserHis.controller;

import cn.lihongjie.coal.annotation.SysLog;
import cn.lihongjie.coal.base.dto.CommonQuery;
import cn.lihongjie.coal.base.dto.IdRequest;
import cn.lihongjie.coal.loginUserHis.dto.CreateLoginUserHisDto;
import cn.lihongjie.coal.loginUserHis.dto.LoginUserHisDto;
import cn.lihongjie.coal.loginUserHis.dto.UpdateLoginUserHisDto;
import cn.lihongjie.coal.loginUserHis.service.LoginUserHisService;

import lombok.extern.slf4j.Slf4j;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/loginUserHis")
@SysLog(
    module = "用户登录历史"
)
@Slf4j
public class LoginUserHisController {
  @Autowired
  private LoginUserHisService service;

  @PostMapping("/create")
  public LoginUserHisDto create(@RequestBody CreateLoginUserHisDto request) {
    return this.service.create(request)
        ;
  }

  @PostMapping("/update")
  public LoginUserHisDto update(@RequestBody UpdateLoginUserHisDto request) {
    return this.service.update(request)
        ;
  }

  @PostMapping("/delete")
  public Object delete(@RequestBody IdRequest request) {
    this.service.delete(request);
        return true
        ;
  }

  @PostMapping("/getById")
  public LoginUserHisDto getById(@RequestBody IdRequest request) {
    return this.service.getById(request.getId())
        ;
  }

  @PostMapping("/list")
  public Page<LoginUserHisDto> list(@RequestBody CommonQuery request) {
    return this.service.list(request)
        ;
  }
}
