feature #12: Add constitution Entity, repository and route

This commit is contained in:
2019-08-06 18:20:21 +02:00
parent 6131935036
commit 86d699c9c0
11 changed files with 288 additions and 20 deletions

View File

@@ -5,15 +5,14 @@ import java.util.*
class Article(
id: UUID = UUID.randomUUID(),
var versionId: UUID = UUID.randomUUID(),
var versionNumber: Int? = null,
var title: String?,
var annonymous: Boolean? = true,
var content: String?,
var description: String?,
var tags: List<String> = emptyList(),
override var createdBy: Citizen?
createdBy: Citizen?
):
UuidEntity(id),
EntityVersioning<UUID, Int> by UuidEntityVersioning(),
EntityCreatedAt by EntityCreatedAtImp(),
CreatedBy<Citizen> by EntityCreatedByImp()
CreatedBy<Citizen> by EntityCreatedByImp(createdBy)

View File

@@ -0,0 +1,32 @@
package fr.dcproject.entity
import fr.postgresjson.entity.*
import java.util.*
class Constitution(
id: UUID = UUID.randomUUID(),
var title: String?,
var annonymous: Boolean?,
var titles: List<Title>,
createdBy: Citizen?
): UuidEntity(id),
EntityVersioning<UUID, Int> by UuidEntityVersioning(),
EntityCreatedAt by EntityCreatedAtImp(),
CreatedBy<Citizen> by EntityCreatedByImp(createdBy) {
init{
titles.forEachIndexed { index, title ->
title.createdBy = this.createdBy
title.rank = index
}
}
class Title(
id: UUID = UUID.randomUUID(),
var name: String?,
var rank: Int? = null,
createdBy: Citizen? = null
): UuidEntity(id),
EntityCreatedAt by EntityCreatedAtImp(),
CreatedBy<Citizen> by EntityCreatedByImp(createdBy)
}