add posts

This commit is contained in:
2022-08-18 18:59:05 +06:00
parent b32b3e7c38
commit 9502accf65
19 changed files with 234 additions and 33 deletions

View File

@@ -0,0 +1,35 @@
package dev.inmo.plaguposter.posts.exposed
import com.benasher44.uuid.uuid4
import dev.inmo.micro_utils.repos.KeyValuesRepo
import dev.inmo.micro_utils.repos.exposed.*
import dev.inmo.plaguposter.posts.models.*
import dev.inmo.plaguposter.posts.repo.PostsRepo
import dev.inmo.tgbotapi.types.ChatId
import org.jetbrains.exposed.sql.*
import org.jetbrains.exposed.sql.statements.InsertStatement
import org.jetbrains.exposed.sql.statements.UpdateStatement
import sun.security.pkcs.ContentInfo
internal class ExposedContentInfoRepo(
override val database: Database,
postIdColumnReference: Column<String>
) : ExposedRepo, Table(name = "posts_content") {
val postIdColumn = (text("post_id") references postIdColumnReference).index()
val chatIdColumn = long("chat_id")
val messageIdColumn = long("message_id")
val groupColumn = text("group").nullable()
val orderColumn = integer("order")
val ResultRow.asObject
get() = PostContentInfo(
ChatId(get(chatIdColumn)),
get(messageIdColumn),
get(groupColumn),
get(orderColumn)
)
init {
initTable()
}
}