class SysLogController extends AbstractController {
    private final SysLogService sysLogService;
    private final SysLoginLogService sysLoginLogService;

    /**
     * 列表
     */
    @GetMapping(value = "/list")
    public R list(@RequestParam Map<String, Object> params) {
        //查询列表数据
        QueryWrapper<SysLog> queryWrapper = new QueryWrapper<>();
        final String keyword = mpPageConvert.getKeyword(params);
        if (StrUtil.isNotEmpty(keyword)) {
            queryWrapper
                    .lambda()
                    .like(SysLog::getUsername, keyword)
                    .or()
                    .like(SysLog::getOperation, keyword);
        }
        queryWrapper.lambda().orderByDesc(SysLog::getCreateDate);
        IPage<SysLog> listPage = sysLogService.page(mpPageConvert.<SysLog>pageParamConvert(params), queryWrapper);
        return R.ok().setData(listPage);
    }

    /**
     * 列表
     */
    @GetMapping(value = "/loginList")
    public R loginList(@RequestParam Map<String, Object> params) {<FILL_FUNCTION_BODY>}

}

        //查询列表数据
        QueryWrapper<SysLoginLog> queryWrapper = new QueryWrapper<>();
        final String keyword = mpPageConvert.getKeyword(params);
        if (StrUtil.isNotEmpty(keyword)) {
            queryWrapper
                    .lambda()
                    .like(SysLoginLog::getUsername, keyword)
                    .or()
                    .like(SysLoginLog::getOptionName, keyword);
        }
        queryWrapper.lambda().orderByDesc(SysLoginLog::getOptionTime);
        IPage<SysLoginLog> listPage = sysLoginLogService.page(mpPageConvert.<SysLoginLog>pageParamConvert(params), queryWrapper);
        return R.ok().setData(listPage);
    
<methods>public non-sealed void <init>() <variables>protected com.suke.czx.common.utils.MPPageConvert mpPageConvert,public com.fasterxml.jackson.databind.ObjectMapper objectMapper