@@ -32,13 +32,12 @@ class Citizen(
|
||||
override val id: UUID = UUID.randomUUID(),
|
||||
override val name: Name,
|
||||
override val email: String,
|
||||
override val birthday: DateTime,
|
||||
val birthday: DateTime,
|
||||
override val voteAnonymous: Boolean = true,
|
||||
override val followAnonymous: Boolean = true,
|
||||
override val user: User,
|
||||
deletedAt: DateTime? = null
|
||||
) : CitizenFull,
|
||||
CitizenBasicI,
|
||||
) : CitizenWithEmail,
|
||||
CitizenCreatorI,
|
||||
CitizenWithUserI,
|
||||
CitizenRef(id),
|
||||
@@ -75,33 +74,14 @@ interface CitizenCreatorI : CitizenWithUserI, CitizenWithEmail, CitizenCartI, De
|
||||
override val deletedAt: DateTime?
|
||||
}
|
||||
|
||||
@Deprecated("")
|
||||
data class CitizenBasic(
|
||||
override var id: UUID = UUID.randomUUID(),
|
||||
override var name: Name,
|
||||
override var email: String,
|
||||
override var birthday: DateTime,
|
||||
override var voteAnonymous: Boolean = true,
|
||||
override var followAnonymous: Boolean = true,
|
||||
override val user: User,
|
||||
override val deletedAt: DateTime? = null
|
||||
) : CitizenBasicI,
|
||||
CitizenRefWithUser(id, user),
|
||||
DeletedAt by DeletedAt.Imp(deletedAt)
|
||||
|
||||
@Deprecated("")
|
||||
open class CitizenSimple(
|
||||
id: UUID = UUID.randomUUID(),
|
||||
var name: Name,
|
||||
user: UserRef
|
||||
) : CitizenRefWithUser(id, user)
|
||||
|
||||
class CitizenCart(
|
||||
id: UUID = UUID.randomUUID(),
|
||||
override val name: Name,
|
||||
override val user: UserRef
|
||||
override val user: UserRef,
|
||||
override val deletedAt: DateTime? = null,
|
||||
) : CitizenRef(id),
|
||||
CitizenCartI
|
||||
CitizenCartI,
|
||||
DeletedAt by DeletedAt.Imp(deletedAt)
|
||||
|
||||
interface CitizenCartI : CitizenI, CitizenWithUserI {
|
||||
val name: Name
|
||||
@@ -133,19 +113,6 @@ interface CitizenI : EntityI {
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated("")
|
||||
interface CitizenBasicI : CitizenWithUserI, CitizenWithEmail, DeletedAt {
|
||||
val name: Name
|
||||
val birthday: DateTime
|
||||
val voteAnonymous: Boolean
|
||||
val followAnonymous: Boolean
|
||||
}
|
||||
|
||||
@Deprecated("")
|
||||
interface CitizenFull : CitizenBasicI {
|
||||
override val user: User
|
||||
}
|
||||
|
||||
interface CitizenWithUserI : CitizenI {
|
||||
val user: UserI
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ class CitizenRepository(override var requester: Requester) : RepositoryI {
|
||||
sort: String? = null,
|
||||
direction: RepositoryI.Direction? = null,
|
||||
search: String? = null
|
||||
): Paginated<CitizenBasic> = requester
|
||||
): Paginated<CitizenCart> = requester
|
||||
.getFunction("find_citizens")
|
||||
.select(
|
||||
page,
|
||||
|
||||
@@ -9,7 +9,7 @@ import fr.dcproject.common.entity.TargetRef
|
||||
import fr.dcproject.common.entity.VersionableId
|
||||
import fr.dcproject.component.article.ArticleForListing
|
||||
import fr.dcproject.component.article.ArticleI
|
||||
import fr.dcproject.component.citizen.CitizenSimple
|
||||
import fr.dcproject.component.citizen.CitizenCreator
|
||||
import fr.dcproject.component.citizen.CitizenWithUserI
|
||||
import fr.dcproject.component.constitution.ConstitutionSimple.TitleSimple
|
||||
import java.util.UUID
|
||||
@@ -21,8 +21,8 @@ class Constitution(
|
||||
titles: MutableList<TitleSimple<ArticleForListing>> = mutableListOf(),
|
||||
draft: Boolean = false,
|
||||
lastVersion: Boolean = false,
|
||||
override val createdBy: CitizenSimple
|
||||
) : ConstitutionSimple<CitizenSimple, TitleSimple<ArticleForListing>>(
|
||||
override val createdBy: CitizenCreator
|
||||
) : ConstitutionSimple<CitizenCreator, TitleSimple<ArticleForListing>>(
|
||||
id,
|
||||
title = title,
|
||||
anonymous = anonymous,
|
||||
|
||||
@@ -8,7 +8,7 @@ import fr.dcproject.common.entity.EntityI
|
||||
import fr.dcproject.common.entity.TargetRef
|
||||
import fr.dcproject.component.article.ArticleRepository
|
||||
import fr.dcproject.component.article.ArticleWithTitleI
|
||||
import fr.dcproject.component.citizen.CitizenBasicI
|
||||
import fr.dcproject.component.citizen.CitizenCreatorI
|
||||
import fr.dcproject.component.citizen.CitizenRepository
|
||||
import fr.dcproject.component.follow.FollowForView
|
||||
import java.util.UUID
|
||||
@@ -42,7 +42,7 @@ class NotificationEmailSender(
|
||||
}
|
||||
}
|
||||
|
||||
private fun generateHtmlContent(citizen: CitizenBasicI, target: EntityI): String? {
|
||||
private fun generateHtmlContent(citizen: CitizenCreatorI, target: EntityI): String? {
|
||||
return when (target) {
|
||||
is ArticleWithTitleI -> """
|
||||
Hello ${citizen.name.getFullName()},<br/>
|
||||
@@ -52,7 +52,7 @@ class NotificationEmailSender(
|
||||
}
|
||||
}
|
||||
|
||||
private fun generateContent(citizen: CitizenBasicI, target: EntityI): String {
|
||||
private fun generateContent(citizen: CitizenCreatorI, target: EntityI): String {
|
||||
return when (target) {
|
||||
is ArticleWithTitleI -> """
|
||||
Hello ${citizen.name.getFullName()},
|
||||
|
||||
@@ -6,7 +6,7 @@ import fr.dcproject.common.security.AccessControl
|
||||
import fr.dcproject.common.security.AccessResponse
|
||||
import fr.dcproject.component.citizen.CitizenI
|
||||
import fr.dcproject.component.vote.entity.VoteForUpdateI
|
||||
import fr.dcproject.component.vote.entity.Vote as VoteEntity
|
||||
import fr.dcproject.component.vote.entity.VoteForView as VoteEntity
|
||||
|
||||
class VoteAccessControl : AccessControl() {
|
||||
fun <S> canCreate(subject: VoteForUpdateI<S, *>, citizen: CitizenI?): AccessResponse where S : DeletedAt, S : TargetI = when {
|
||||
|
||||
@@ -15,7 +15,7 @@ import fr.postgresjson.connexion.Requester
|
||||
import fr.postgresjson.repository.RepositoryI
|
||||
import java.util.UUID
|
||||
import fr.dcproject.component.citizen.Citizen as CitizenEntity
|
||||
import fr.dcproject.component.vote.entity.Vote as VoteEntity
|
||||
import fr.dcproject.component.vote.entity.VoteForView as VoteEntity
|
||||
|
||||
abstract class VoteRepositoryAbs<T : TargetI>(override var requester: Requester) : RepositoryI {
|
||||
fun vote(vote: VoteForUpdateI<T, *>, anonymous: Boolean? = null): VoteAggregation {
|
||||
|
||||
@@ -7,22 +7,21 @@ import fr.dcproject.common.entity.ExtraI
|
||||
import fr.dcproject.common.entity.HasTarget
|
||||
import fr.dcproject.common.entity.TargetI
|
||||
import fr.dcproject.common.entity.UpdatedAt
|
||||
import fr.dcproject.component.citizen.CitizenBasic
|
||||
import fr.dcproject.component.citizen.CitizenBasicI
|
||||
import fr.dcproject.component.citizen.CitizenCreator
|
||||
import fr.dcproject.component.citizen.CitizenCreatorI
|
||||
import fr.dcproject.component.citizen.CitizenI
|
||||
import java.util.UUID
|
||||
|
||||
@Deprecated("")
|
||||
class Vote<T : TargetI>(
|
||||
class VoteForView<T : TargetI>(
|
||||
id: UUID = UUID.randomUUID(),
|
||||
override val createdBy: CitizenBasic,
|
||||
override val createdBy: CitizenCreator,
|
||||
override val target: T,
|
||||
var note: Int,
|
||||
var anonymous: Boolean = true
|
||||
) : ExtraI<T, CitizenBasicI>,
|
||||
) : ExtraI<T, CitizenCreatorI>,
|
||||
VoteRef(id),
|
||||
CreatedAt by CreatedAt.Imp(),
|
||||
CreatedBy<CitizenBasicI> by CreatedBy.Imp(createdBy),
|
||||
CreatedBy<CitizenCreatorI> by CreatedBy.Imp(createdBy),
|
||||
UpdatedAt by UpdatedAt.Imp() {
|
||||
init {
|
||||
if (note > 1 && note < -1) {
|
||||
@@ -1,6 +1,5 @@
|
||||
package fr.dcproject.component.workgroup
|
||||
|
||||
import fr.dcproject.component.citizen.CitizenBasic
|
||||
import fr.dcproject.component.citizen.CitizenCreator
|
||||
import fr.dcproject.component.citizen.CitizenI
|
||||
import fr.dcproject.component.citizen.CitizenRef
|
||||
@@ -59,24 +58,24 @@ class WorkgroupRepository(override var requester: Requester) : RepositoryI {
|
||||
"members" to Member(citizen, roles).serialize()
|
||||
)
|
||||
|
||||
fun <Z : CitizenI> addMembers(workgroup: WorkgroupI, members: List<Member<Z>>): List<Member<CitizenBasic>> = requester
|
||||
fun <Z : CitizenI> addMembers(workgroup: WorkgroupI, members: List<Member<Z>>): List<Member<CitizenCreator>> = requester
|
||||
.getFunction("add_workgroup_members")
|
||||
.select(
|
||||
"id" to workgroup.id,
|
||||
"members" to members.serialize()
|
||||
)
|
||||
|
||||
fun <Z : CitizenI> removeMember(workgroup: WorkgroupI, memberToDelete: Member<Z>): List<Member<CitizenBasic>> =
|
||||
fun <Z : CitizenI> removeMember(workgroup: WorkgroupI, memberToDelete: Member<Z>): List<Member<CitizenCreator>> =
|
||||
removeMembers(workgroup, listOf(memberToDelete))
|
||||
|
||||
fun <Z : CitizenI> removeMembers(workgroup: WorkgroupI, membersToDelete: List<Member<Z>>): List<Member<CitizenBasic>> = requester
|
||||
fun <Z : CitizenI> removeMembers(workgroup: WorkgroupI, membersToDelete: List<Member<Z>>): List<Member<CitizenCreator>> = requester
|
||||
.getFunction("remove_workgroup_members")
|
||||
.select(
|
||||
"id" to workgroup.id,
|
||||
"members" to membersToDelete
|
||||
)
|
||||
|
||||
fun <Z : CitizenI> updateMembers(workgroup: WorkgroupI, members: List<Member<Z>>): List<Member<CitizenBasic>> = requester
|
||||
fun <Z : CitizenI> updateMembers(workgroup: WorkgroupI, members: List<Member<Z>>): List<Member<CitizenCreator>> = requester
|
||||
.getFunction("update_workgroup_members")
|
||||
.select(
|
||||
"id" to workgroup.id,
|
||||
|
||||
Reference in New Issue
Block a user