From b99a68533963f4669593c74e02e12f1e53029e52 Mon Sep 17 00:00:00 2001 From: alex Date: Sun, 1 Nov 2020 13:28:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9D=83=E9=99=90=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + settings.gradle | 2 +- .../com/synebula/zeus/app/config/ZeusBeans.kt | 19 +++++++++++++- .../zeus/app/controller/SignInOutApp.kt | 6 ++++- .../zeus/app/controller/rbac/GroupApp.kt | 1 + .../zeus/app/controller/rbac/RoleApp.kt | 1 + .../zeus/app/controller/rbac/UserApp.kt | 3 ++- .../controller/rbac/resource/InterfaceApp.kt | 21 ++++++++++++++++ .../app/controller/rbac/resource/PageApp.kt | 21 ++++++++++++++++ .../controller/rbac/resource/PermissionApp.kt | 25 +++++++++++++++++++ .../app/controller/rbac/resource/SystemApp.kt | 21 ++++++++++++++++ src/zeus.domain/build.gradle | 1 + .../domain/model/rbac/resource/Permission.kt | 11 ++++++++ .../cmd/rbac/resource/PermissionCmd.kt | 12 +++++++++ .../service/cmd/rbac/resource/ResourceCmd.kt | 4 ++- .../contr/rbac/resource/IPermissionService.kt | 7 ++++++ .../domain/service/impl/rbac/UserService.kt | 4 +-- src/zeus.env/build.gradle | 15 +++++++++++ .../com/synebula/zeus/env/PermissionType.kt | 6 +++++ .../com/synebula/zeus/env/ResourceType.kt | 7 ++++++ src/zeus.query/build.gradle | 1 + .../query/contr/resouce/IInterfaceQuery.kt | 6 +++++ .../zeus/query/contr/resouce/IPageQuery.kt | 6 +++++ .../query/contr/resouce/IPermissionQuery.kt | 6 +++++ .../zeus/query/contr/resouce/ISystemQuery.kt | 6 +++++ .../zeus/query/impl/resouce/InterfaceQuery.kt | 8 ++++++ .../zeus/query/impl/resouce/PageQuery.kt | 8 ++++++ .../query/impl/resouce/PermissionQuery.kt | 8 ++++++ .../zeus/query/impl/resouce/SystemQuery.kt | 7 ++++++ .../query/view/resource/PermissionView.kt | 11 ++++++++ 30 files changed, 248 insertions(+), 7 deletions(-) create mode 100644 src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/InterfaceApp.kt create mode 100644 src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PageApp.kt create mode 100644 src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PermissionApp.kt create mode 100644 src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/SystemApp.kt create mode 100644 src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/resource/Permission.kt create mode 100644 src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/PermissionCmd.kt create mode 100644 src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/contr/rbac/resource/IPermissionService.kt create mode 100644 src/zeus.env/build.gradle create mode 100644 src/zeus.env/src/main/kotlin/com/synebula/zeus/env/PermissionType.kt create mode 100644 src/zeus.env/src/main/kotlin/com/synebula/zeus/env/ResourceType.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IInterfaceQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPageQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPermissionQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/ISystemQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/InterfaceQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PageQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PermissionQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/SystemQuery.kt create mode 100644 src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/resource/PermissionView.kt diff --git a/.gitignore b/.gitignore index 02cfcc9..50f4ba5 100644 --- a/.gitignore +++ b/.gitignore @@ -2,5 +2,6 @@ gradlew* build gradle +logs !.gitignore \ No newline at end of file diff --git a/settings.gradle b/settings.gradle index 52eaa30..4999cac 100644 --- a/settings.gradle +++ b/settings.gradle @@ -3,4 +3,4 @@ rootProject.name = 'myths.zeus' include 'src:zeus.app' include 'src:zeus.domain' include 'src:zeus.query' - +include 'src:zeus.env' diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/config/ZeusBeans.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/config/ZeusBeans.kt index 02cc429..bccc56c 100644 --- a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/config/ZeusBeans.kt +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/config/ZeusBeans.kt @@ -8,24 +8,41 @@ import com.synebula.gaea.log.ILogger import com.synebula.gaea.mongo.query.MongoQuery import com.synebula.gaea.mongo.repository.MongoRepository import com.synebula.gaea.query.IQuery +import com.synebula.zeus.domain.service.contr.component.IUserNotifier import org.springframework.context.annotation.Bean import org.springframework.context.annotation.Configuration +import org.springframework.context.annotation.Primary import org.springframework.data.mongodb.core.MongoTemplate @Configuration open class ZeusBeans { + @Primary @Bean open fun > repository(template: MongoTemplate) : IRepository = MongoRepository(template) + @Primary @Bean - open fun mongoQuery(template: MongoTemplate, logger: ILogger? = null) + open fun query(template: MongoTemplate, logger: ILogger? = null) : IQuery = MongoQuery(template, logger) @Bean open fun gson(): Gson = Gson() + @Bean + open fun userNotifier(): IUserNotifier { + return object : IUserNotifier { + override fun added(id: String, name: String, token: String) { + + } + + override fun forgot(id: String, name: String, token: String) { + } + + } + } + @Bean open fun serializer(gson: Gson): IJsonSerializer { return object : IJsonSerializer { diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/SignInOutApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/SignInOutApp.kt index 0a7271c..cb5c0b6 100644 --- a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/SignInOutApp.kt +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/SignInOutApp.kt @@ -4,13 +4,17 @@ import com.synebula.gaea.app.IApplication import com.synebula.gaea.app.component.HttpMessage import com.synebula.gaea.log.ILogger import com.synebula.zeus.query.contr.IUserQuery +import com.synebula.zeus.query.impl.UserQuery +import org.springframework.data.mongodb.core.MongoTemplate import org.springframework.web.bind.annotation.PostMapping import org.springframework.web.bind.annotation.RequestMapping import org.springframework.web.bind.annotation.RestController @RestController @RequestMapping("/sign") -class SignInOutApp(var query: IUserQuery, override var logger: ILogger?) : IApplication { +class SignInOutApp(template: MongoTemplate, override var logger: ILogger?) : IApplication { + var query: IUserQuery = UserQuery(template) + override var name: String = "用户登录管理" @PostMapping("/in") diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/GroupApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/GroupApp.kt index 4e84b27..af1033c 100644 --- a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/GroupApp.kt +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/GroupApp.kt @@ -6,6 +6,7 @@ import com.synebula.gaea.query.IQuery import com.synebula.zeus.domain.service.cmd.rbac.GroupCmd import com.synebula.zeus.domain.service.contr.rbac.IGroupService import com.synebula.zeus.query.view.GroupView +import org.springframework.beans.factory.annotation.Qualifier import org.springframework.web.bind.annotation.RequestMapping import org.springframework.web.bind.annotation.RestController diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/RoleApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/RoleApp.kt index 6354c7d..bbcdaf1 100644 --- a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/RoleApp.kt +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/RoleApp.kt @@ -6,6 +6,7 @@ import com.synebula.gaea.query.IQuery import com.synebula.zeus.domain.service.cmd.rbac.RoleCmd import com.synebula.zeus.domain.service.contr.rbac.IRoleService import com.synebula.zeus.query.view.RoleView +import org.springframework.beans.factory.annotation.Qualifier import org.springframework.web.bind.annotation.RequestMapping import org.springframework.web.bind.annotation.RestController diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/UserApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/UserApp.kt index f32e4b5..2744c9d 100644 --- a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/UserApp.kt +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/UserApp.kt @@ -10,13 +10,14 @@ import com.synebula.zeus.domain.service.cmd.rbac.UserCmd import com.synebula.zeus.domain.service.contr.rbac.IUserService import com.synebula.zeus.query.view.UserView import org.springframework.beans.factory.annotation.Autowired +import org.springframework.beans.factory.annotation.Qualifier import org.springframework.web.bind.annotation.* @RestController @RequestMapping("/users") class UserApp( service: IUserService, - query: IQuery, + @Qualifier("query") query: IQuery, logger: ILogger ) : Application( "用户信息", UserView::class.java, diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/InterfaceApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/InterfaceApp.kt new file mode 100644 index 0000000..6cfa2ba --- /dev/null +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/InterfaceApp.kt @@ -0,0 +1,21 @@ +package com.synebula.zeus.app.controller.rbac.resource + +import com.synebula.gaea.app.Application +import com.synebula.gaea.log.ILogger +import com.synebula.zeus.domain.service.cmd.rbac.resource.InterfaceCmd +import com.synebula.zeus.domain.service.contr.rbac.resource.IInterfaceService +import com.synebula.zeus.query.impl.resouce.InterfaceQuery +import com.synebula.zeus.query.view.resource.InterfaceView +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RestController + +@RestController +@RequestMapping("/interfaces") +class InterfaceApp( + service: IInterfaceService, + query: InterfaceQuery, + logger: ILogger +) : Application( + "接口信息", InterfaceView::class.java, + service, query, logger +) \ No newline at end of file diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PageApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PageApp.kt new file mode 100644 index 0000000..2acb911 --- /dev/null +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PageApp.kt @@ -0,0 +1,21 @@ +package com.synebula.zeus.app.controller.rbac.resource + +import com.synebula.gaea.app.Application +import com.synebula.gaea.log.ILogger +import com.synebula.zeus.domain.service.cmd.rbac.resource.PageCmd +import com.synebula.zeus.domain.service.contr.rbac.resource.IPageService +import com.synebula.zeus.query.contr.resouce.IPageQuery +import com.synebula.zeus.query.view.resource.PageView +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RestController + +@RestController +@RequestMapping("/pages") +class PageApp( + service: IPageService, + query: IPageQuery, + logger: ILogger +) : Application( + "页面信息", PageView::class.java, + service, query, logger +) \ No newline at end of file diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PermissionApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PermissionApp.kt new file mode 100644 index 0000000..d6616c1 --- /dev/null +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/PermissionApp.kt @@ -0,0 +1,25 @@ +package com.synebula.zeus.app.controller.rbac.resource + +import com.synebula.gaea.app.Application +import com.synebula.gaea.log.ILogger +import com.synebula.zeus.domain.service.cmd.rbac.resource.PageCmd +import com.synebula.zeus.domain.service.cmd.rbac.resource.PermissionCmd +import com.synebula.zeus.domain.service.contr.rbac.resource.IPageService +import com.synebula.zeus.domain.service.contr.rbac.resource.IPermissionService +import com.synebula.zeus.query.contr.resouce.IPageQuery +import com.synebula.zeus.query.contr.resouce.IPermissionQuery +import com.synebula.zeus.query.view.resource.PageView +import com.synebula.zeus.query.view.resource.PermissionView +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RestController + +@RestController +@RequestMapping("/permissions") +class PermissionApp( + service: IPermissionService, + query: IPermissionQuery, + logger: ILogger +) : Application( + "权限信息", PermissionView::class.java, + service, query, logger +) \ No newline at end of file diff --git a/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/SystemApp.kt b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/SystemApp.kt new file mode 100644 index 0000000..5112a24 --- /dev/null +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/resource/SystemApp.kt @@ -0,0 +1,21 @@ +package com.synebula.zeus.app.controller.rbac.resource + +import com.synebula.gaea.app.Application +import com.synebula.gaea.log.ILogger +import com.synebula.zeus.domain.service.cmd.rbac.resource.SystemCmd +import com.synebula.zeus.domain.service.contr.rbac.resource.ISystemService +import com.synebula.zeus.query.contr.resouce.ISystemQuery +import com.synebula.zeus.query.view.resource.SystemView +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RestController + +@RestController +@RequestMapping("/systems") +class SystemApp( + service: ISystemService, + query: ISystemQuery, + logger: ILogger +) : Application( + "系统信息", SystemView::class.java, + service, query, logger +) \ No newline at end of file diff --git a/src/zeus.domain/build.gradle b/src/zeus.domain/build.gradle index 481df92..039e485 100644 --- a/src/zeus.domain/build.gradle +++ b/src/zeus.domain/build.gradle @@ -1,4 +1,5 @@ dependencies { + compile project(":src:zeus.env") compile "com.synebula:gaea:$gaea_version" } diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/resource/Permission.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/resource/Permission.kt new file mode 100644 index 0000000..8b9e67b --- /dev/null +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/resource/Permission.kt @@ -0,0 +1,11 @@ +package com.synebula.zeus.domain.model.rbac.resource + +import com.synebula.gaea.domain.model.AggregateRoot +import com.synebula.zeus.env.PermissionType +import com.synebula.zeus.env.ResourceType + +class Permission(override var id: String?) : AggregateRoot() { + var resource = "" + var type: ResourceType? = null + var authorization = PermissionType.Allow +} \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/PermissionCmd.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/PermissionCmd.kt new file mode 100644 index 0000000..8248f18 --- /dev/null +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/PermissionCmd.kt @@ -0,0 +1,12 @@ +package com.synebula.zeus.domain.service.cmd.rbac.resource + +import com.synebula.gaea.domain.service.Command +import com.synebula.zeus.env.PermissionType +import com.synebula.zeus.env.ResourceType + +class PermissionCmd : Command() { + var id: String? = null + var resource = "" + var type: ResourceType? = null + var authorization = PermissionType.Allow +} \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/ResourceCmd.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/ResourceCmd.kt index 61e3ae8..0d54519 100644 --- a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/ResourceCmd.kt +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/resource/ResourceCmd.kt @@ -1,7 +1,9 @@ package com.synebula.zeus.domain.service.cmd.rbac.resource +import com.synebula.gaea.domain.service.Command -abstract class ResourceCmd(var id: String? = null) { + +abstract class ResourceCmd(var id: String? = null) : Command() { var name = "" var signature = "" val uri: String? = null diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/contr/rbac/resource/IPermissionService.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/contr/rbac/resource/IPermissionService.kt new file mode 100644 index 0000000..7ec3dbd --- /dev/null +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/contr/rbac/resource/IPermissionService.kt @@ -0,0 +1,7 @@ +package com.synebula.zeus.domain.service.contr.rbac.resource + +import com.synebula.gaea.domain.service.IService + +interface IPermissionService : IService { + +} \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/impl/rbac/UserService.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/impl/rbac/UserService.kt index 101dc0b..c6b6f8e 100644 --- a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/impl/rbac/UserService.kt +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/impl/rbac/UserService.kt @@ -20,9 +20,9 @@ class UserService( repository: IRepository, converter: IObjectConverter, logger: ILogger, - var userNotifier: IUserNotifier, groupService: IGroupService, - roleService: IRoleService + roleService: IRoleService, + var userNotifier: IUserNotifier ) : Service(User::class.java, repository, converter, logger), IUserService { init { diff --git a/src/zeus.env/build.gradle b/src/zeus.env/build.gradle new file mode 100644 index 0000000..d6be859 --- /dev/null +++ b/src/zeus.env/build.gradle @@ -0,0 +1,15 @@ +dependencies { + compile "com.synebula:gaea:$gaea_version" +} + +publishing { + publications { + publish(MavenPublication) { + group 'com.synebula' + artifactId 'zeus.env' + version "$version" + from components.java + } + } +} + diff --git a/src/zeus.env/src/main/kotlin/com/synebula/zeus/env/PermissionType.kt b/src/zeus.env/src/main/kotlin/com/synebula/zeus/env/PermissionType.kt new file mode 100644 index 0000000..1df9a95 --- /dev/null +++ b/src/zeus.env/src/main/kotlin/com/synebula/zeus/env/PermissionType.kt @@ -0,0 +1,6 @@ +package com.synebula.zeus.env + +enum class PermissionType { + Deny, + Allow +} \ No newline at end of file diff --git a/src/zeus.env/src/main/kotlin/com/synebula/zeus/env/ResourceType.kt b/src/zeus.env/src/main/kotlin/com/synebula/zeus/env/ResourceType.kt new file mode 100644 index 0000000..d52a359 --- /dev/null +++ b/src/zeus.env/src/main/kotlin/com/synebula/zeus/env/ResourceType.kt @@ -0,0 +1,7 @@ +package com.synebula.zeus.env + +enum class ResourceType { + System, + Page, + Interface +} \ No newline at end of file diff --git a/src/zeus.query/build.gradle b/src/zeus.query/build.gradle index a62203f..2d2cafd 100644 --- a/src/zeus.query/build.gradle +++ b/src/zeus.query/build.gradle @@ -1,4 +1,5 @@ dependencies { + compile project(":src:zeus.env") compile "com.synebula:gaea.mongo:$gaea_version" } diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IInterfaceQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IInterfaceQuery.kt new file mode 100644 index 0000000..480b838 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IInterfaceQuery.kt @@ -0,0 +1,6 @@ +package com.synebula.zeus.query.contr.resouce + +import com.synebula.gaea.query.IQuery + +interface IInterfaceQuery : IQuery { +} \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPageQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPageQuery.kt new file mode 100644 index 0000000..788cdf4 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPageQuery.kt @@ -0,0 +1,6 @@ +package com.synebula.zeus.query.contr.resouce + +import com.synebula.gaea.query.IQuery + +interface IPageQuery : IQuery { +} \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPermissionQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPermissionQuery.kt new file mode 100644 index 0000000..93f70f2 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/IPermissionQuery.kt @@ -0,0 +1,6 @@ +package com.synebula.zeus.query.contr.resouce + +import com.synebula.gaea.query.IQuery + +interface IPermissionQuery : IQuery { +} \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/ISystemQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/ISystemQuery.kt new file mode 100644 index 0000000..af251f8 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/contr/resouce/ISystemQuery.kt @@ -0,0 +1,6 @@ +package com.synebula.zeus.query.contr.resouce + +import com.synebula.gaea.query.IQuery + +interface ISystemQuery : IQuery { +} \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/InterfaceQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/InterfaceQuery.kt new file mode 100644 index 0000000..a4eb103 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/InterfaceQuery.kt @@ -0,0 +1,8 @@ +package com.synebula.zeus.query.impl.resouce + +import com.synebula.gaea.mongo.query.MongoQuery +import com.synebula.zeus.query.contr.resouce.IInterfaceQuery +import org.springframework.data.mongodb.core.MongoTemplate + +class InterfaceQuery(template: MongoTemplate) : MongoQuery(template), IInterfaceQuery { +} \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PageQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PageQuery.kt new file mode 100644 index 0000000..cf2a7aa --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PageQuery.kt @@ -0,0 +1,8 @@ +package com.synebula.zeus.query.impl.resouce + +import com.synebula.gaea.mongo.query.MongoQuery +import com.synebula.zeus.query.contr.resouce.IPageQuery +import org.springframework.data.mongodb.core.MongoTemplate + +class PageQuery(template: MongoTemplate) : MongoQuery(template), IPageQuery { +} \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PermissionQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PermissionQuery.kt new file mode 100644 index 0000000..d82fa12 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/PermissionQuery.kt @@ -0,0 +1,8 @@ +package com.synebula.zeus.query.impl.resouce + +import com.synebula.gaea.mongo.query.MongoQuery +import com.synebula.zeus.query.contr.resouce.IPermissionQuery +import com.synebula.zeus.query.contr.resouce.ISystemQuery +import org.springframework.data.mongodb.core.MongoTemplate + +class PermissionQuery(template: MongoTemplate) : MongoQuery(template), IPermissionQuery \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/SystemQuery.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/SystemQuery.kt new file mode 100644 index 0000000..d96892d --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/impl/resouce/SystemQuery.kt @@ -0,0 +1,7 @@ +package com.synebula.zeus.query.impl.resouce + +import com.synebula.gaea.mongo.query.MongoQuery +import com.synebula.zeus.query.contr.resouce.ISystemQuery +import org.springframework.data.mongodb.core.MongoTemplate + +class SystemQuery(template: MongoTemplate) : MongoQuery(template), ISystemQuery \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/resource/PermissionView.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/resource/PermissionView.kt new file mode 100644 index 0000000..90a6af8 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/resource/PermissionView.kt @@ -0,0 +1,11 @@ +package com.synebula.zeus.query.view.resource + +import com.synebula.zeus.env.PermissionType +import com.synebula.zeus.env.ResourceType + +class PermissionView() { + var id: String? = null + var resource = "" + var type: ResourceType? = null + var authorization = PermissionType.Allow +} \ No newline at end of file