From 7f0d0f4a871844b19cb196c1ecf008bcfa3467e3 Mon Sep 17 00:00:00 2001 From: Raymond Yang Date: Sun, 9 Aug 2026 02:22:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E6=9B=B4=E6=96=B0=E6=88=90?= =?UTF-8?q?=E5=93=A1=E6=B2=92=E6=9C=89=E5=9B=9E=E6=87=89=E8=B3=87=E6=96=99?= =?UTF-8?q?=E7=9A=84=E5=95=8F=E9=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../database/service/BattleRecordService.kt | 10 +++++----- .../pcrediveclanrecordbackend/plugins/Mongo.kt | 8 ++++++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/database/service/BattleRecordService.kt b/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/database/service/BattleRecordService.kt index 9ade40f..1de9b20 100644 --- a/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/database/service/BattleRecordService.kt +++ b/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/database/service/BattleRecordService.kt @@ -24,19 +24,19 @@ class BattleRecordService(private val database: MongoDatabase) { memberCollection = database.getCollection("member") } - // Create new car + // Create new battle record suspend fun create(data: BattleRecordDto): BattleRecordDto = withContext(Dispatchers.IO) { val doc = data.toDocument() collection.insertOne(doc) doc.let(BattleRecordDto::fromDocument) } - // Read a car + // Read a battle record suspend fun read(date: String): List = withContext(Dispatchers.IO) { collection.find(Filters.eq("date", date)).toList().map(BattleRecordDto::fromDocument) } - // Read a car + // Read a battle record suspend fun read(date: String, uid: String): BattleRecordDto? = withContext(Dispatchers.IO) { val filter = and( Filters.eq("date", date), @@ -45,7 +45,7 @@ class BattleRecordService(private val database: MongoDatabase) { collection.find(filter).first()?.let(BattleRecordDto::fromDocument) } - // Update a car + // Update a battle record suspend fun update(date: String, data: BattleRecordDto): BattleRecordDto? = withContext(Dispatchers.IO) { val filter = and( Filters.eq("date", date), @@ -55,7 +55,7 @@ class BattleRecordService(private val database: MongoDatabase) { collection.find(filter).first()?.let(BattleRecordDto::fromDocument) } - // Delete a car + // Delete a battle record suspend fun delete(date: String, uid: String): Document? = withContext(Dispatchers.IO) { val filter = and( Filters.eq("date", date), diff --git a/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/plugins/Mongo.kt b/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/plugins/Mongo.kt index 4b47bf2..2ad654a 100644 --- a/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/plugins/Mongo.kt +++ b/src/main/kotlin/club/sakunadaisuki/pcrediveclanrecordbackend/plugins/Mongo.kt @@ -36,6 +36,7 @@ fun Application.configureMongo() { call.respond(HttpStatusCode.OK, member) } } + // Read member get("/member/{uid}") { val uid = call.parameters["uid"] ?: throw IllegalArgumentException("No ID found") @@ -43,6 +44,7 @@ fun Application.configureMongo() { call.respond(HttpStatusCode.OK, member) } ?: call.respond(HttpStatusCode.NotFound) } + // Create member post("/member") { val member = call.receive() @@ -54,14 +56,16 @@ fun Application.configureMongo() { call.respond(HttpStatusCode.Conflict) } } + // Update member put("/member/{uid}") { val uid = call.parameters["uid"] ?: throw IllegalArgumentException("No ID found") val member = call.receive() - memberService.update(uid, member.toDto(uid))?.let { - call.respond(HttpStatusCode.OK) + memberService.update(uid, member.toDto(uid))?.let { member -> + call.respond(HttpStatusCode.OK, member) } ?: call.respond(HttpStatusCode.NotFound) } + // Delete member delete("/member/{uid}") { val uid = call.parameters["uid"] ?: throw IllegalArgumentException("No ID found")