/** * Copyright (c) 2018 人人开源 All rights reserved. * * https://www.renren.io * * 版权所有,侵权必究! */ package com.zt.modules.log.controller; import com.zt.common.annotation.LogOperation; import com.zt.common.constant.Constant; import com.zt.common.annotation.QueryParam; import com.zt.common.db.query.QueryFilter; import com.zt.common.servlet.PageResult; import com.zt.common.utils.ExcelUtils; import com.zt.modules.log.excel.SysLogLoginExcel; import com.zt.modules.log.model.SysLogLogin; import com.zt.modules.log.service.SysLogLoginService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; import javax.servlet.http.HttpServletResponse; import java.util.List; /** * 登录日志 * * @author Mark sunlightcs@gmail.com * @since 1.0.0 */ @RestController @RequestMapping("sys/log/login") @Api(tags = "登录日志") public class SysLogLoginController { @Autowired private SysLogLoginService sysLogLoginService; @GetMapping("page") @ApiOperation("分页") @ApiImplicitParams({ @ApiImplicitParam(name = Constant.Q.PAGE, value = Constant.QV.PAGE, required = true, dataType = Constant.QT.INT), @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT), @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING), @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING), @ApiImplicitParam(name = "status", value = "状态 0:失败 1:成功 2:账号已锁定", dataType = Constant.QT.INT, format = "a.status^EQ"), @ApiImplicitParam(name = "creatorName", value = "用户名", dataType = Constant.QT.STRING, format = "a.CREATOR_NAME^LK") }) @RequiresPermissions("sys:log:login") public PageResult page(@ApiIgnore @QueryParam QueryFilter queryFilter) { List list = sysLogLoginService.page(queryFilter); return PageResult.ok(list); } @GetMapping("export") @ApiOperation("导出") @LogOperation("导出") @ApiImplicitParams({ @ApiImplicitParam(name = "status", value = "状态 0:失败 1:成功 2:账号已锁定", dataType = Constant.QT.INT, format = "status^EQ"), @ApiImplicitParam(name = "creatorName", value = "用户名", dataType = Constant.QT.STRING, format = "create_name^LK") }) @RequiresPermissions("sys:log:login") public void export(@ApiIgnore @QueryParam QueryFilter queryFilter, HttpServletResponse response) throws Exception { List list = sysLogLoginService.list(queryFilter); ExcelUtils.exportExcelToTarget(response, null, list, SysLogLoginExcel.class); } }