Add repository Opinion.addOpinion()

This commit is contained in:
2020-05-12 12:03:52 +02:00
parent 4504600268
commit 5008b8b69f

View File

@@ -70,6 +70,8 @@ abstract class Opinion<T : TargetRef>(requester: Requester) : OpinionChoice(requ
fun updateOpinions(choice: OpinionChoiceRef, citizen: CitizenRef, target: TargetRef): List<OpinionEntity<T>> = fun updateOpinions(choice: OpinionChoiceRef, citizen: CitizenRef, target: TargetRef): List<OpinionEntity<T>> =
updateOpinions(listOf(choice), citizen, target) updateOpinions(listOf(choice), citizen, target)
abstract fun addOpinion(opinion: OpinionEntity<T>): OpinionEntity<T>
/** /**
* Find opinions of one citizen filtered by target ids * Find opinions of one citizen filtered by target ids
*/ */
@@ -130,7 +132,7 @@ abstract class Opinion<T : TargetRef>(requester: Requester) : OpinionChoice(requ
class OpinionArticle(requester: Requester) : Opinion<ArticleRef>(requester) { class OpinionArticle(requester: Requester) : Opinion<ArticleRef>(requester) {
/** /**
* Create an Opinions on Article * Update Opinions on Article (Delete old one)
*/ */
override fun updateOpinions(choices: List<OpinionChoiceRef>, citizen: CitizenRef, target: TargetRef): List<OpinionArticleEntity> { override fun updateOpinions(choices: List<OpinionChoiceRef>, citizen: CitizenRef, target: TargetRef): List<OpinionArticleEntity> {
return requester return requester
@@ -142,4 +144,13 @@ class OpinionArticle(requester: Requester) : Opinion<ArticleRef>(requester) {
"target_reference" to target.reference "target_reference" to target.reference
) )
} }
/**
* Add Opinions on Article
*/
override fun addOpinion(opinion: OpinionEntity<ArticleRef>): OpinionArticleEntity {
return requester
.getFunction("upsert_opinion")
.selectOne("resource" to opinion)!!
}
} }