This commit is contained in:
2023-12-04 18:05:57 +08:00
parent 902fcef9b2
commit 00964a15f3
146 changed files with 3486 additions and 205 deletions

View File

@@ -12,9 +12,38 @@ import top.fatweb.api.vo.permission.TokenVo
* @since 1.0.0
*/
interface IAuthenticationService {
/**
* Login
*
* @param request
* @param user User object
* @return LoginVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see HttpServletRequest
* @see User
* @see LoginVo
*/
fun login(request: HttpServletRequest, user: User): LoginVo
/**
* Logout
*
* @param token Token
* @return Logout result
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
*/
fun logout(token: String): Boolean
/**
* Renew token
*
* @param token Token
* @return TokenVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see TokenVo
*/
fun renewToken(token: String): TokenVo
}

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.Func
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see Func
*/
interface IFuncService : IService<Func>

View File

@@ -12,21 +12,95 @@ import top.fatweb.api.vo.permission.GroupWithRoleVo
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see Group
*/
interface IGroupService : IService<Group> {
/**
* Get group in page
*
* @param groupGetParam Get group parameters
* @return PageVo<GroupWithRoleVo> object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see GroupGetParam
* @see PageVo
* @see GroupWithRoleVo
*/
fun getPage(groupGetParam: GroupGetParam?): PageVo<GroupWithRoleVo>
/**
* Get one group by ID
*
* @param id ID
* @return GroupWithRoleVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see GroupWithRoleVo
*/
fun getOne(id: Long): GroupWithRoleVo?
/**
* Get all group in list
*
* @return List of GroupVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see GroupVo
*/
fun listAll(): List<GroupVo>
/**
* Add group
*
* @param groupAddParam Add group parameters
* @return GroupVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see GroupAddParam
* @see GroupVo
*/
fun add(groupAddParam: GroupAddParam): GroupVo?
/**
* Update group
*
* @param groupUpdateParam Update group parameters
* @return GroupVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see GroupUpdateParam
* @see GroupVo
*/
fun update(groupUpdateParam: GroupUpdateParam): GroupVo?
/**
* Update status of group
*
* @param groupUpdateStatusParam Update status of group parameters
* @return Result
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see GroupUpdateStatusParam
*/
fun status(groupUpdateStatusParam: GroupUpdateStatusParam): Boolean
/**
* Delete group by ID
*
* @param id ID
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
*/
fun deleteOne(id: Long)
/**
* Delete group by list
*
* @param groupDeleteParam Delete group parameters
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see GroupDeleteParam
*/
fun delete(groupDeleteParam: GroupDeleteParam)
}

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.Menu
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see Menu
*/
interface IMenuService : IService<Menu>

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.Module
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see Module
*/
interface IModuleService : IService<Module>

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.Operation
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see Operation
*/
interface IOperationService : IService<Operation>

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.PowerRole
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see PowerRole
*/
interface IPowerRoleService : IService<PowerRole>

View File

@@ -9,7 +9,17 @@ import top.fatweb.api.vo.permission.PowerSetVo
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see Power
*/
interface IPowerService : IService<Power> {
/**
* Get all power as list
*
* @return powerSetVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see PowerSetVo
*/
fun getList(): PowerSetVo
}

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.RoleGroup
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see RoleGroup
*/
interface IRoleGroupService : IService<RoleGroup>

View File

@@ -12,21 +12,95 @@ import top.fatweb.api.vo.permission.RoleWithPowerVo
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see Role
*/
interface IRoleService : IService<Role> {
/**
* Get role in page
*
* @param roleGetParam Get role parameters
* @return PageVo<RoleWithPowerVo> object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RoleGetParam
* @see PageVo
* @see RoleWithPowerVo
*/
fun getPage(roleGetParam: RoleGetParam?): PageVo<RoleWithPowerVo>
/**
* Get user by ID
*
* @param id ID
* @return RoleWithPowerVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RoleWithPowerVo
*/
fun getOne(id: Long): RoleWithPowerVo?
/**
* Get all role in list
*
* @return List of RoleVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RoleVo
*/
fun listAll(): List<RoleVo>
/**
* Add role
*
* @param roleAddParam Add role parameters
* @return RoleVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RoleAddParam
* @see RoleVo
*/
fun add(roleAddParam: RoleAddParam): RoleVo?
/**
* Update role
*
* @param roleUpdateParam Update role parameters
* @return RoleVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RoleUpdateParam
* @see RoleVo
*/
fun update(roleUpdateParam: RoleUpdateParam): RoleVo?
/**
* Update status of role
*
* @param roleUpdateStatusParam Update status of role parameters
* @return Result
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RoleUpdateStatusParam
*/
fun status(roleUpdateStatusParam: RoleUpdateStatusParam): Boolean
/**
* Delete role by ID
*
* @param id ID
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
*/
fun deleteOne(id: Long)
/**
* Delete role by list
*
* @param roleDeleteParam Delete role parameters
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RoleDeleteParam
*/
fun delete(roleDeleteParam: RoleDeleteParam)
}

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.UserGroup
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see UserGroup
*/
interface IUserGroupService : IService<UserGroup>

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.UserInfo
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see UserInfo
*/
interface IUserInfoService : IService<UserInfo>

View File

@@ -8,5 +8,7 @@ import top.fatweb.api.entity.permission.UserRole
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see UserRole
*/
interface IUserRoleService : IService<UserRole>

View File

@@ -14,29 +14,135 @@ import top.fatweb.api.vo.permission.UserWithRoleInfoVo
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IService
* @see User
*/
interface IUserService : IService<User> {
/**
* Get user with power by username
*
* @param username Username
* @return User object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see User
*/
fun getUserWithPowerByUsername(username: String): User?
/**
* Get user information
*
* @return UserWithPowerInfoVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserWithPowerInfoVo
*/
fun getInfo(): UserWithPowerInfoVo?
/**
* Get user in page
*
* @param userGetParam Get user parameters
* @return PageVo<UserWithRoleInfoVo> object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserGetParam
* @see PageVo
* @see UserWithRoleInfoVo
*/
fun getPage(userGetParam: UserGetParam?): PageVo<UserWithRoleInfoVo>
/**
* Get one user by ID
*
* @param id ID
* @return UserWithRoleInfoVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserWithRoleInfoVo
*/
fun getOne(id: Long): UserWithRoleInfoVo?
fun getList(): List<UserWithInfoVo>
/**
* Get all user as list
*
* @return List of UserWithInfoVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserWithInfoVo
*/
fun listAll(): List<UserWithInfoVo>
/**
* Add user
*
* @param userAddParam Add user parameters
* @return UserWithPasswordRoleInfoVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserAddParam
* @see UserWithPasswordRoleInfoVo
*/
fun add(userAddParam: UserAddParam): UserWithPasswordRoleInfoVo?
/**
* Update user
*
* @param userUpdateParam Update user parameters
* @return UserWithRoleInfoVo object
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserUpdateParam
* @see UserWithRoleInfoVo
*/
fun update(userUpdateParam: UserUpdateParam): UserWithRoleInfoVo?
/**
* Update user password
*
* @param userUpdatePasswordParam Update user password parameters
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserUpdatePasswordParam
*/
fun password(userUpdatePasswordParam: UserUpdatePasswordParam)
/**
* Delete user by ID
*
* @param id ID
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
*/
fun deleteOne(id: Long)
/**
* Delete user by list
*
* @param userDeleteParam Delete user parameters
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see UserDeleteParam
*/
fun delete(userDeleteParam: UserDeleteParam)
fun selectIdsWithRoleIds(roleIds: List<Long>): List<Long>
/**
* Get user IDs list by list of role IDs
*
* @param roleIds List of role IDs
* @return User IDs list
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
*/
fun getIdsWithRoleIds(roleIds: List<Long>): List<Long>
fun selectIdsWithGroupIds(groupIds: List<Long>): List<Long>
/**
* Get user IDs list by list of group IDs
*
* @param groupIds List of group IDs
* @return User IDs list
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
*/
fun getIdsWithGroupIds(groupIds: List<Long>): List<Long>
}

View File

@@ -26,6 +26,10 @@ import java.time.ZoneOffset
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see AuthenticationManager
* @see RedisUtil
* @see IUserService
* @see IAuthenticationService
*/
@Service
class AuthenticationServiceImpl(

View File

@@ -11,6 +11,10 @@ import top.fatweb.api.service.permission.IFuncService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see FuncMapper
* @see Func
* @see IFuncService
*/
@Service
class FuncServiceImpl : ServiceImpl<FuncMapper, Func>(), IFuncService

View File

@@ -25,6 +25,13 @@ import top.fatweb.api.vo.permission.GroupWithRoleVo
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RedisUtil
* @see IRoleGroupService
* @see IUserService
* @see ServiceImpl
* @see GroupMapper
* @see Group
* @see IGroupService
*/
@Service
class GroupServiceImpl(
@@ -140,7 +147,7 @@ class GroupServiceImpl(
}
private fun offlineUser(vararg groupIds: Long) {
val userIds = userService.selectIdsWithGroupIds(groupIds.toList())
val userIds = userService.getIdsWithGroupIds(groupIds.toList())
WebUtil.offlineUser(redisUtil, *userIds.toLongArray())
}
}

View File

@@ -11,6 +11,10 @@ import top.fatweb.api.service.permission.IMenuService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see MenuMapper
* @see Menu
* @see IMenuService
*/
@Service
class MenuServiceImpl : ServiceImpl<MenuMapper, Menu>(), IMenuService

View File

@@ -11,6 +11,10 @@ import top.fatweb.api.service.permission.IModuleService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see ModuleMapper
* @see Module
* @see IModuleService
*/
@Service
class ModuleServiceImpl : ServiceImpl<ModuleMapper, Module>(), IModuleService

View File

@@ -11,6 +11,10 @@ import top.fatweb.api.service.permission.IOperationService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see OperationMapper
* @see Operation
* @see IOperationService
*/
@Service
class OperationServiceImpl : ServiceImpl<OperationMapper, Operation>(), IOperationService

View File

@@ -11,6 +11,10 @@ import top.fatweb.api.service.permission.IPowerRoleService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see PowerRoleMapper
* @see PowerRole
* @see IPowerRoleService
*/
@Service
class PowerRoleServiceImpl : ServiceImpl<PowerRoleMapper, PowerRole>(), IPowerRoleService

View File

@@ -13,6 +13,14 @@ import top.fatweb.api.service.permission.*
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IModuleService
* @see IMenuService
* @see IFuncService
* @see IOperationService
* @see ServiceImpl
* @see PowerMapper
* @see Power
* @see IPowerService
*/
@Service
class PowerServiceImpl(

View File

@@ -11,6 +11,10 @@ import top.fatweb.api.service.permission.IRoleGroupService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see RoleGroupMapper
* @see RoleGroup
* @see IRoleGroupService
*/
@Service
class RoleGroupServiceImpl : ServiceImpl<RoleGroupMapper, RoleGroup>(), IRoleGroupService

View File

@@ -23,6 +23,15 @@ import top.fatweb.api.vo.permission.RoleWithPowerVo
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see RedisUtil
* @see IPowerRoleService
* @see IFuncService
* @see IMenuService
* @see IUserService
* @see ServiceImpl
* @see RoleMapper
* @see Role
* @see IRoleService
*/
@Service
class RoleServiceImpl(
@@ -173,7 +182,7 @@ class RoleServiceImpl(
}
private fun offlineUser(vararg roleIds: Long) {
val userIds = userService.selectIdsWithRoleIds(roleIds.toList())
val userIds = userService.getIdsWithRoleIds(roleIds.toList())
WebUtil.offlineUser(redisUtil, *userIds.toLongArray())
}
}

View File

@@ -11,6 +11,8 @@ import top.fatweb.api.service.permission.IUserService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see IUserService
* @see UserDetailsService
*/
@Service
class UserDetailsServiceImpl(val userService: IUserService) : UserDetailsService {

View File

@@ -11,6 +11,10 @@ import top.fatweb.api.service.permission.IUserGroupService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see UserGroupMapper
* @see UserGroup
* @see IUserGroupService
*/
@Service
class UserGroupServiceImpl : ServiceImpl<UserGroupMapper, UserGroup>(), IUserGroupService

View File

@@ -11,6 +11,9 @@ import top.fatweb.api.service.permission.IUserInfoService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see UserInfoMapper
* @see IUserInfoService
*/
@Service
class UserInfoServiceImpl : ServiceImpl<UserInfoMapper, UserInfo>(), IUserInfoService

View File

@@ -11,6 +11,9 @@ import top.fatweb.api.service.permission.IUserRoleService
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see ServiceImpl
* @see UserRoleMapper
* @see IUserRoleService
*/
@Service
class UserRoleServiceImpl : ServiceImpl<UserRoleMapper, UserRole>(), IUserRoleService

View File

@@ -33,6 +33,19 @@ import java.time.ZoneOffset
*
* @author FatttSnake, fatttsnake@gmail.com
* @since 1.0.0
* @see PasswordEncoder
* @see RedisUtil
* @see IUserInfoService
* @see IModuleService
* @see IMenuService
* @see IFuncService
* @see IOperationService
* @see IUserRoleService
* @see IUserGroupService
* @see ServiceImpl
* @see UserMapper
* @see User
* @see IUserService
*/
@Service
class UserServiceImpl(
@@ -81,7 +94,7 @@ class UserServiceImpl(
override fun getOne(id: Long) =
baseMapper.selectOneWithRoleInfoById(id)?.let { UserConverter.userToUserWithRoleInfoVo(it) }
override fun getList() = baseMapper.selectListWithInfo().map { UserConverter.userToUserWithInfoVo(it) }
override fun listAll() = baseMapper.selectListWithInfo().map { UserConverter.userToUserWithInfoVo(it) }
@Transactional
override fun add(userAddParam: UserAddParam): UserWithPasswordRoleInfoVo? {
@@ -249,7 +262,7 @@ class UserServiceImpl(
WebUtil.offlineUser(redisUtil, *ids.toLongArray())
}
override fun selectIdsWithRoleIds(roleIds: List<Long>) = baseMapper.selectIdsWithRoleIds(roleIds)
override fun getIdsWithRoleIds(roleIds: List<Long>) = baseMapper.selectIdsWithRoleIds(roleIds)
override fun selectIdsWithGroupIds(groupIds: List<Long>) = baseMapper.selectIdsWithGroupIds(groupIds)
override fun getIdsWithGroupIds(groupIds: List<Long>) = baseMapper.selectIdsWithGroupIds(groupIds)
}