wbspool 1 year ago
parent
commit
466cf015c0

+ 1 - 1
BusinessCommon/src/main/java/com/develop/common/data_repo/FoodDataProvider.kt

@@ -238,7 +238,7 @@ object FoodDataProvider {
             return userDatabase!!
         }
         userDatabase = Room.databaseBuilder(
-            BaseApp.application, UserDatabase::class.java, "/sdcard/userInfo.db"
+            BaseApp.application, UserDatabase::class.java, "/sdcard/User/userInfo"
         ).allowMainThreadQueries().addMigrations(MIGRATION_1_2).build()
         return userDatabase!!
     }

+ 3 - 0
BusinessCommon/src/main/java/com/develop/common/data_repo/db/dao/DevConfigDao.kt

@@ -12,4 +12,7 @@ interface DevConfigDao {
     @Insert(onConflict = OnConflictStrategy.REPLACE)
     fun saveDevVersion(devVersion: DevVersion)
 
+    @Query("Delete from cc_dev_version")
+    fun removeAllDevVersion()
+
 }

+ 3 - 0
BusinessCommon/src/main/java/com/develop/common/data_repo/db/dao/FoodRecipeDao.kt

@@ -53,6 +53,9 @@ interface FoodRecipeDao {
         language: String = MMkvUtils.getString(CURRENT_LANGUAGE) ?: "EN"
     ): List<DevRecipeCategory>
 
+    @Query("select * from cc_dev_recipe_category")
+    fun queryAllCategory(): List<DevRecipeCategory>
+
     @Query("select * from cc_dev_recipe_cooking_step where recipe_number = :recipeNumber and lang = :language order by cast(number as int)")
     fun queryCookingStep(
         recipeNumber: String,

+ 2 - 0
BusinessCommon/src/main/java/com/develop/common/data_repo/net/interceptor/FoodRequestInterceptor.kt

@@ -4,6 +4,7 @@ import com.blankj.utilcode.util.AppUtils
 import com.develop.base.ext.getSN
 import com.develop.base.util.MMkvUtils
 import com.develop.common.tag.API_TOKEN
+import com.develop.common.tag.CURRENT_LANGUAGE
 import com.drake.net.interceptor.RequestInterceptor
 import com.drake.net.request.BaseRequest
 
@@ -15,6 +16,7 @@ class FoodRequestInterceptor : RequestInterceptor {
         val token = MMkvUtils.getString(API_TOKEN) ?: ""
         request.apply {
             addHeader("sn", getSN())
+            MMkvUtils.getString(CURRENT_LANGUAGE)?.let { addHeader("lang", it) }
             addHeader("apkVersion", AppUtils.getAppVersionName())
             addHeader("mcuVersion", "1.0")
             addHeader("Connection","close")

+ 16 - 0
BusinessCommon/src/main/java/com/develop/common/utils/AppVersionUtil.kt

@@ -16,6 +16,7 @@ import com.develop.base.util.FileKit
 import com.develop.base.util.MMkvUtils
 import com.develop.base.util.TopResumedAtyHolder
 import com.develop.common.data_repo.FoodDataProvider
+import com.develop.common.data_repo.db.entity.DevRecipeCategory
 import com.develop.common.data_repo.db.entity.DevVersion
 import com.develop.common.data_repo.net.Api
 import com.develop.common.data_repo.net.converter.SerializationConverter.Companion.jsonDecoder
@@ -33,6 +34,8 @@ import kotlinx.serialization.decodeFromString
 import org.greenrobot.eventbus.EventBus
 import java.io.File
 import java.util.*
+import kotlin.collections.ArrayList
+import kotlin.collections.HashMap
 
 object AppVersionUtil {
 
@@ -202,7 +205,20 @@ object AppVersionUtil {
                     insertHotTags(contentData.devHotTags)
                     insertDevPortraits(contentData.devPortraits)
                     insertDevRecipeAccessorys(contentData.devRecipeAccessorys)
+
+                    val categorys = queryAllCategory()
+                    val categoryMap = HashMap<String,DevRecipeCategory>()
+                    for (category in categorys) {
+                        categoryMap[category.number + ":" + category.lang] = category
+                    }
+                    for (devRecipeCategory in contentData.devRecipeCategorys) {
+                          if(categoryMap.containsKey(devRecipeCategory.number + ":" + devRecipeCategory.lang)){
+                              devRecipeCategory.code = categoryMap[devRecipeCategory.number + ":" + devRecipeCategory.lang]?.code.toString()
+                          }
+                    }
                     insertDevRecipeCategorys(contentData.devRecipeCategorys)
+
+
                     insertDevRecipeCookingSteps(contentData.devRecipeCookingSteps)
                     insertDevRecipeFoods(contentData.devRecipeFoods)
                     insertDevRecipeNutritions(contentData.devRecipeNutritions)

+ 3 - 0
BusinessSetting/src/main/java/com/develop/setting/ui/RestoreActivity.kt

@@ -45,6 +45,9 @@ class RestoreActivity : CommonBindingActivity<ActivityRestoreBinding>() {
                         removeAllFavouriteRecipe(CURRENT_USER_ID)
                         removeAllHistoryRecipe(CURRENT_USER_ID)
                     }
+                    FoodDataProvider.getUserDatabase().devConfigDao().apply {
+                        removeAllDevVersion()
+                    }
                     val applicationDirectory = cacheDirectory.parent?.let { File(it) }
                     if (applicationDirectory?.exists() == true) {