From 52d4c5a1676bd2483b91b220be98c50a2efc1465 Mon Sep 17 00:00:00 2001 From: androidlover5842 Date: Sat, 31 Jan 2026 01:29:09 +0530 Subject: [PATCH] Fix Aadhaar question branching logic --- .../controller/GuestDocuments.kt | 29 +++++++------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/src/main/kotlin/com/android/trisolarisserver/controller/GuestDocuments.kt b/src/main/kotlin/com/android/trisolarisserver/controller/GuestDocuments.kt index 74a3c70..b51b938 100644 --- a/src/main/kotlin/com/android/trisolarisserver/controller/GuestDocuments.kt +++ b/src/main/kotlin/com/android/trisolarisserver/controller/GuestDocuments.kt @@ -24,8 +24,6 @@ import org.springframework.transaction.annotation.Transactional import org.springframework.web.bind.annotation.* import org.springframework.http.MediaType import jakarta.servlet.http.HttpServletResponse -import org.aspectj.weaver.patterns.TypePatternQuestions -import org.hibernate.validator.constraints.URL import org.springframework.web.multipart.MultipartFile import org.springframework.web.server.ResponseStatusException import java.time.OffsetDateTime @@ -33,11 +31,6 @@ import java.nio.file.Files import java.nio.file.Paths import java.util.UUID import java.security.MessageDigest -import kotlin.collections.component1 -import kotlin.collections.component2 -import kotlin.collections.iterator -import kotlin.collections.set -import kotlin.text.set @RestController @RequestMapping("/properties/{propertyId}/guests/{guestId}/documents") @@ -225,30 +218,30 @@ class GuestDocuments( if (hasAadhar) { val aadharQuestions = linkedMapOf( "hasAddress" to "ADDRESS PRESENT? Answer YES or NO only.", - "hasGender" to "GENDER PRESENT? Answer YES or NO only.", "hasDob" to "DOB? Reply YES or NO.", - "hasGender" to "GENDER MENTIONED? Reply YES or NO.", - ) + "hasGenderMentioned" to "GENDER MENTIONED? Reply YES or NO." + ) for ((key, question) in aadharQuestions) { results[key] = llamaClient.ask(imageUrl, question) } - val hashAddress=isYes("hasAddress") - if (hashAddress){ + val hasAddress = isYes(results["hasAddress"]) + if (hasAddress) { val addressQuestions = linkedMapOf( "pinCode" to "POSTAL ADDRESS PIN CODE (6 digit)? Reply only pin or NONE.", - "address" to "POSTAL ADDRESS? Reply only address or NONE.") + "address" to "POSTAL ADDRESS ONLY (street/area/city/state). Ignore IDs, UUIDs, and codes. Reply only address or NONE." + ) for ((key, question) in addressQuestions) { results[key] = llamaClient.ask(imageUrl, question) } } - val hasDOB=isYes("hasDob") - val hasGender=isYes("hasGender") - if (hasDOB && hasGender){ + val hasDob = isYes(results["hasDob"]) + val hasGender = isYes(results["hasGenderMentioned"]) + if (hasDob && hasGender) { val aadharFrontQuestions = linkedMapOf( "name" to "NAME? Reply only the name or NONE.", "dob" to "DOB? Reply only date or NONE.", "idNumber" to "ID NUMBER? Reply only number or NONE.", - "gender" to "GENDER? Reply only MALE/FEMALE/OTHER or NONE.", + "gender" to "GENDER? Reply only MALE/FEMALE/OTHER or NONE." ) for ((key, question) in aadharFrontQuestions) { results[key] = llamaClient.ask(imageUrl, question) @@ -379,4 +372,4 @@ private fun GuestDocument.toResponse(objectMapper: ObjectMapper): GuestDocumentR private fun isYes(value: String?): Boolean { return value.orEmpty().contains("YES", ignoreCase = true) -} \ No newline at end of file +}