Add get role controller. Optimize code.

This commit is contained in:
2023-11-09 18:17:00 +08:00
parent 65ddc644fb
commit 5af0c8283e
29 changed files with 454 additions and 93 deletions

View File

@@ -1,7 +1,9 @@
package top.fatweb.api.service.permission
import com.baomidou.mybatisplus.core.metadata.IPage
import com.baomidou.mybatisplus.extension.service.IService
import top.fatweb.api.entity.permission.Group
import top.fatweb.api.param.authentication.GroupGetParam
/**
* <p>
@@ -11,4 +13,6 @@ import top.fatweb.api.entity.permission.Group
* @author FatttSnake
* @since 2023-10-25
*/
interface IGroupService : IService<Group>
interface IGroupService : IService<Group> {
fun getPage(groupGetParam: GroupGetParam?): IPage<Group>
}

View File

@@ -1,7 +1,11 @@
package top.fatweb.api.service.permission
import com.baomidou.mybatisplus.core.metadata.IPage
import com.baomidou.mybatisplus.extension.service.IService
import top.fatweb.api.entity.permission.Role
import top.fatweb.api.param.authentication.RoleAddParam
import top.fatweb.api.param.authentication.RoleGetParam
import top.fatweb.api.vo.permission.RoleVo
/**
* <p>
@@ -11,4 +15,8 @@ import top.fatweb.api.entity.permission.Role
* @author FatttSnake
* @since 2023-10-25
*/
interface IRoleService : IService<Role>
interface IRoleService : IService<Role> {
fun getPage(roleGetParam: RoleGetParam?): IPage<Role>
fun add(roleAddParam: RoleAddParam): RoleVo?
}

View File

@@ -1,10 +1,14 @@
package top.fatweb.api.service.permission.impl
import com.baomidou.mybatisplus.core.metadata.IPage
import com.baomidou.mybatisplus.extension.plugins.pagination.Page
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
import org.springframework.stereotype.Service
import top.fatweb.api.entity.permission.Group
import top.fatweb.api.mapper.permission.GroupMapper
import top.fatweb.api.param.authentication.GroupGetParam
import top.fatweb.api.service.permission.IGroupService
import top.fatweb.api.util.PageUtil
/**
* <p>
@@ -15,4 +19,12 @@ import top.fatweb.api.service.permission.IGroupService
* @since 2023-10-25
*/
@Service
class GroupServiceImpl : ServiceImpl<GroupMapper, Group>(), IGroupService
class GroupServiceImpl : ServiceImpl<GroupMapper, Group>(), IGroupService {
override fun getPage(groupGetParam: GroupGetParam?): IPage<Group> {
val groupPage = Page<Group>(groupGetParam?.currentPage ?: 1, groupGetParam?.pageSize ?: 20)
PageUtil.setPageSort(groupGetParam, groupPage)
return baseMapper.selectPage(groupPage)
}
}

View File

@@ -1,10 +1,20 @@
package top.fatweb.api.service.permission.impl
import com.baomidou.mybatisplus.core.metadata.IPage
import com.baomidou.mybatisplus.extension.plugins.pagination.Page
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
import org.springframework.stereotype.Service
import org.springframework.transaction.annotation.Transactional
import top.fatweb.api.converter.permission.RoleConverter
import top.fatweb.api.entity.permission.PowerRole
import top.fatweb.api.entity.permission.Role
import top.fatweb.api.mapper.permission.RoleMapper
import top.fatweb.api.param.authentication.RoleAddParam
import top.fatweb.api.param.authentication.RoleGetParam
import top.fatweb.api.service.permission.IPowerRoleService
import top.fatweb.api.service.permission.IRoleService
import top.fatweb.api.util.PageUtil
import top.fatweb.api.vo.permission.RoleVo
/**
* <p>
@@ -15,4 +25,35 @@ import top.fatweb.api.service.permission.IRoleService
* @since 2023-10-25
*/
@Service
class RoleServiceImpl : ServiceImpl<RoleMapper, Role>(), IRoleService
class RoleServiceImpl(
private val powerRoleService: IPowerRoleService
) : ServiceImpl<RoleMapper, Role>(), IRoleService {
override fun getPage(roleGetParam: RoleGetParam?): IPage<Role> {
val rolePage = Page<Role>(roleGetParam?.currentPage ?: 1, roleGetParam?.pageSize ?: 20)
PageUtil.setPageSort(roleGetParam, rolePage)
return baseMapper.selectPage(rolePage)
}
@Transactional
override fun add(roleAddParam: RoleAddParam): RoleVo? {
val role = RoleConverter.roleAddParamToRole(roleAddParam)
if (baseMapper.insert(role) == 1) {
if (powerRoleService.saveBatch(
roleAddParam.powerIds?.map {
PowerRole().apply {
roleId = role.id
powerId = it
}
}
)
) {
return RoleConverter.roleToRoleVo(role)
}
}
return null
}
}