v1.2.9.2 fix on generated diet JSON handling

This commit is contained in:
bossanyit 2023-06-15 07:38:55 +02:00
parent d2ef1415a1
commit 4362988c4a
2 changed files with 25 additions and 17 deletions

View File

@ -94,7 +94,7 @@ class DietController(private val dietRepository: DietRepository, private val mea
println("new diet: $diet.dietId") println("new diet: $diet.dietId")
} }
val result: String? var result: String?
this.openAiKey = openaiKey this.openAiKey = openaiKey
if ( !test) { if ( !test) {
val systemInput = "Te egy táplálkozási szakértő vagy. A feladat egy étrend elkészítése ebben a 3 lépésben:\n" + val systemInput = "Te egy táplálkozási szakértő vagy. A feladat egy étrend elkészítése ebben a 3 lépésben:\n" +
@ -115,9 +115,10 @@ class DietController(private val dietRepository: DietRepository, private val mea
} }
runBlocking { runBlocking {
result = deferred.await().toString() result = deferred.await().toString()
result = extractJson(result!!)
} }
if (result == null) { if (result == null || result!!.isEmpty()) {
return ResponseEntity.badRequest().build<String>() return ResponseEntity.badRequest().build<String>()
} }
} else { } else {
@ -268,10 +269,9 @@ class DietController(private val dietRepository: DietRepository, private val mea
} }
val gson = Gson() val gson = Gson()
diet.dietText = result diet.dietText = result!!
diet.startDate = todayString diet.startDate = todayString
diet.premium = 1 diet.premium = 1
diet.generating = 0
val dietSaved = dietRepository.save(diet) val dietSaved = dietRepository.save(diet)
@ -306,10 +306,23 @@ class DietController(private val dietRepository: DietRepository, private val mea
index++ index++
} }
dietSaved.generating = 0
val dietSavedWithMeals = dietRepository.save(dietSaved) val dietSavedWithMeals = dietRepository.save(dietSaved)
return ResponseEntity.ok().body(dietSavedWithMeals) return ResponseEntity.ok().body(dietSavedWithMeals)
} }
fun extractJson(input: String): String {
val jsonStart = input.indexOf("{")
val jsonEnd = input.lastIndexOf("}")
return if(jsonStart != -1 && jsonEnd != -1) {
input.substring(jsonStart, jsonEnd + 1)
} else {
""
}
}
fun addTemporaryQuantity(dietCustom: DietCustom): DietCustom { fun addTemporaryQuantity(dietCustom: DietCustom): DietCustom {
for (i in 0 until dietCustom.meals.size) { for (i in 0 until dietCustom.meals.size) {
var sum = 400 var sum = 400

View File

@ -70,7 +70,7 @@ enum class WeekDays {
companion object WeekDaysExt { companion object WeekDaysExt {
private fun WeekDays.enumToString(): String { private fun WeekDays.enumToString(): String {
return this.toString().toLowerCase() return this.toString().lowercase(Locale.getDefault())
} }
fun WeekDays.equalsStringTo(dayName: String): Boolean { fun WeekDays.equalsStringTo(dayName: String): Boolean {
@ -79,14 +79,13 @@ enum class WeekDays {
private fun WeekDays.getWeekdayNumber(): Int { private fun WeekDays.getWeekdayNumber(): Int {
return when (this) { return when (this) {
WeekDays.monday -> 1 monday -> 1
WeekDays.tuesday -> 2 tuesday -> 2
WeekDays.wednesday -> 3 wednesday -> 3
WeekDays.thursday -> 4 thursday -> 4
WeekDays.friday -> 5 friday -> 5
WeekDays.saturday -> 6 saturday -> 6
WeekDays.sunday -> 7 sunday -> 7
else -> 1
} }
} }
@ -161,12 +160,8 @@ object DietFunctions {
) )
var englishWord = "" var englishWord = ""
var found = false
for (element in hungarianWord) { for (element in hungarianWord) {
englishWord += diacriticals[element] ?: element englishWord += diacriticals[element] ?: element
if (diacriticals.containsKey(element)) {
found = true
}
} }
return englishWord.lowercase(Locale.getDefault()) return englishWord.lowercase(Locale.getDefault())