Optimize SysLogController

This commit is contained in:
2023-11-08 18:18:48 +08:00
parent 34c831a138
commit 0ff2698f33
10 changed files with 121 additions and 30 deletions

View File

@@ -3,6 +3,7 @@ package top.fatweb.api.service.system
import com.baomidou.mybatisplus.core.metadata.IPage
import com.baomidou.mybatisplus.extension.service.IService
import top.fatweb.api.entity.system.SysLog
import top.fatweb.api.param.system.SysLogGetParam
/**
* <p>
@@ -13,5 +14,5 @@ import top.fatweb.api.entity.system.SysLog
* @since 2023-10-18
*/
interface ISysLogService : IService<SysLog> {
fun getPage(page: Long, pageSize: Long): IPage<SysLog>
fun getPage(sysLogGetParam: SysLogGetParam?): IPage<SysLog>
}

View File

@@ -7,7 +7,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
import org.springframework.stereotype.Service
import top.fatweb.api.entity.system.SysLog
import top.fatweb.api.mapper.system.SysLogMapper
import top.fatweb.api.param.system.SysLogGetParam
import top.fatweb.api.service.system.ISysLogService
import top.fatweb.api.util.StrUtil
/**
* <p>
@@ -19,10 +21,24 @@ import top.fatweb.api.service.system.ISysLogService
*/
@Service
class SysLogServiceImpl : ServiceImpl<SysLogMapper, SysLog>(), ISysLogService {
override fun getPage(page: Long, pageSize: Long): IPage<SysLog> {
val sysLogPage = Page<SysLog>(page, pageSize)
sysLogPage.addOrder(OrderItem.desc("start_time"))
override fun getPage(sysLogGetParam: SysLogGetParam?): IPage<SysLog> {
val sysLogPage = Page<SysLog>(sysLogGetParam?.currentPage ?: 1, sysLogGetParam?.pageSize ?: 20)
return baseMapper.selectPage(sysLogPage)
if (sysLogGetParam?.sortField == null && sysLogGetParam?.sortOrder == null) {
sysLogPage.addOrder(OrderItem.desc("start_time"))
} else {
sysLogPage.addOrder(
if (sysLogGetParam.sortOrder?.startsWith(
"desc", true
) == true
) OrderItem.desc(StrUtil.upperToUnderLetter(sysLogGetParam.sortField)) else OrderItem.asc(
StrUtil.upperToUnderLetter(
sysLogGetParam.sortField
)
)
)
}
return baseMapper.selectPage(sysLogPage, sysLogGetParam?.logType?.split(","), sysLogGetParam?.requestMethod?.split(","))
}
}