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 new file mode 100644 index 0000000..70127d1 --- /dev/null +++ b/src/zeus.app/src/main/kotlin/com/synebula/zeus/app/controller/rbac/GroupApp.kt @@ -0,0 +1,24 @@ +package com.synebula.zeus.app.controller.rbac + +import com.synebula.gaea.app.UnionApp +import com.synebula.gaea.log.ILogger +import com.synebula.gaea.query.IQuery +import com.synebula.zeus.domain.service.cmd.rbac.GroupCmd +import com.synebula.zeus.domain.service.cmd.rbac.RoleCmd +import com.synebula.zeus.domain.service.contr.rbac.IGroupService +import com.synebula.zeus.domain.service.contr.rbac.IRoleService +import com.synebula.zeus.query.view.GroupView +import com.synebula.zeus.query.view.RoleView +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RestController + +@RestController +@RequestMapping("/groups") +class GroupApp( + service: IGroupService, + query: IQuery, + logger: ILogger +) : UnionApp( + "分组信息", GroupView::class.java, + service, query, logger +) \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/Group.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/Group.kt new file mode 100644 index 0000000..81ef59c --- /dev/null +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/Group.kt @@ -0,0 +1,7 @@ +package com.synebula.zeus.domain.model.rbac + +import com.synebula.gaea.domain.model.AggregateRoot + +class Group(override var id: String?) : AggregateRoot() { + var name = "" +} \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/Role.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/Role.kt index bae82ba..d8eebe6 100644 --- a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/Role.kt +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/Role.kt @@ -2,7 +2,6 @@ package com.synebula.zeus.domain.model.rbac import com.synebula.gaea.domain.model.AggregateRoot -class Role : AggregateRoot() { - override var id: String? = null +class Role(override var id: String?) : AggregateRoot() { var name = "" } \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/User.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/User.kt index 89b9d8b..86d6cc9 100644 --- a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/User.kt +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/model/rbac/User.kt @@ -8,5 +8,6 @@ class User(override var id: String? = null) : AggregateRoot() { var realName: String? = null var phone: String? = null var role: String = "" + var group: String = "" var token: String? = null } \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/GroupCmd.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/GroupCmd.kt new file mode 100644 index 0000000..c556215 --- /dev/null +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/GroupCmd.kt @@ -0,0 +1,8 @@ +package com.synebula.zeus.domain.service.cmd.rbac + +import com.synebula.gaea.domain.service.Command + +class GroupCmd : Command() { + var id: String? = null + var name = "" +} \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/UserCmd.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/UserCmd.kt index e578b3b..faf48cb 100644 --- a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/UserCmd.kt +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/cmd/rbac/UserCmd.kt @@ -9,4 +9,5 @@ class UserCmd : Command() { var realName: String? = null var phone: String? = null var role: String? = null + var group: String = "" } diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/contr/rbac/IGroupService.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/contr/rbac/IGroupService.kt new file mode 100644 index 0000000..1d112cb --- /dev/null +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/contr/rbac/IGroupService.kt @@ -0,0 +1,7 @@ +package com.synebula.zeus.domain.service.contr.rbac + +import com.synebula.gaea.domain.service.IService + +interface IGroupService : IService { + +} \ No newline at end of file diff --git a/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/impl/rbac/GroupService.kt b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/impl/rbac/GroupService.kt new file mode 100644 index 0000000..7e9805a --- /dev/null +++ b/src/zeus.domain/src/main/kotlin/com/synebula/zeus/domain/service/impl/rbac/GroupService.kt @@ -0,0 +1,14 @@ +package com.synebula.zeus.domain.service.impl.rbac + +import com.synebula.gaea.data.IObjectConverter +import com.synebula.gaea.domain.repository.IRepository +import com.synebula.gaea.domain.service.Service +import com.synebula.gaea.log.ILogger +import com.synebula.zeus.domain.model.rbac.Group +import com.synebula.zeus.domain.service.contr.rbac.IGroupService +import com.synebula.zeus.domain.service.contr.rbac.IRoleService + +class GroupService( + repository: IRepository, + converter: IObjectConverter, logger: ILogger +) : Service(Group::class.java, repository, converter, logger), IGroupService \ No newline at end of file diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/GroupView.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/GroupView.kt new file mode 100644 index 0000000..9a5de91 --- /dev/null +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/GroupView.kt @@ -0,0 +1,6 @@ +package com.synebula.zeus.query.view + +class GroupView { + var id: String? = null + var name = "" +} diff --git a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/UserView.kt b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/UserView.kt index 49f3c2c..1bb3b0a 100644 --- a/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/UserView.kt +++ b/src/zeus.query/src/main/kotlin/com/synebula/zeus/query/view/UserView.kt @@ -16,4 +16,6 @@ class UserView { var phone: String? = null var role: String? = null + + var group: String? = null } \ No newline at end of file