diff --git a/src/main/kotlin/repository/Opinion.kt b/src/main/kotlin/repository/Opinion.kt index f19a40e..f4f4b89 100644 --- a/src/main/kotlin/repository/Opinion.kt +++ b/src/main/kotlin/repository/Opinion.kt @@ -70,6 +70,8 @@ abstract class Opinion(requester: Requester) : OpinionChoice(requ fun updateOpinions(choice: OpinionChoiceRef, citizen: CitizenRef, target: TargetRef): List> = updateOpinions(listOf(choice), citizen, target) + abstract fun addOpinion(opinion: OpinionEntity): OpinionEntity + /** * Find opinions of one citizen filtered by target ids */ @@ -130,7 +132,7 @@ abstract class Opinion(requester: Requester) : OpinionChoice(requ class OpinionArticle(requester: Requester) : Opinion(requester) { /** - * Create an Opinions on Article + * Update Opinions on Article (Delete old one) */ override fun updateOpinions(choices: List, citizen: CitizenRef, target: TargetRef): List { return requester @@ -142,4 +144,13 @@ class OpinionArticle(requester: Requester) : Opinion(requester) { "target_reference" to target.reference ) } + + /** + * Add Opinions on Article + */ + override fun addOpinion(opinion: OpinionEntity): OpinionArticleEntity { + return requester + .getFunction("upsert_opinion") + .selectOne("resource" to opinion)!! + } } \ No newline at end of file