diff --git a/VisualNovel/app/src/main/java/com/remax/visualnovel/api/service/ChatService.kt b/VisualNovel/app/src/main/java/com/remax/visualnovel/api/service/ChatService.kt index ecf3c60..cf3fca3 100644 --- a/VisualNovel/app/src/main/java/com/remax/visualnovel/api/service/ChatService.kt +++ b/VisualNovel/app/src/main/java/com/remax/visualnovel/api/service/ChatService.kt @@ -8,7 +8,9 @@ import com.remax.visualnovel.entity.request.ChatAlbum import com.remax.visualnovel.entity.request.ChatSetting import com.remax.visualnovel.entity.request.HeartbeatBuy import com.remax.visualnovel.entity.request.ParamBgUpload +import com.remax.visualnovel.entity.request.ParamLanguage import com.remax.visualnovel.entity.request.ParamSoundList +import com.remax.visualnovel.entity.request.ParamUserid import com.remax.visualnovel.entity.request.RTCRequest import com.remax.visualnovel.entity.request.SearchPage import com.remax.visualnovel.entity.request.SimpleDataDTO @@ -27,8 +29,14 @@ import com.remax.visualnovel.entity.response.Token import com.remax.visualnovel.entity.response.VoiceASR import com.remax.visualnovel.entity.response.base.Response import com.remax.visualnovel.entity.response.basenew.ResponseNew +import okhttp3.MultipartBody +import okhttp3.RequestBody import retrofit2.http.Body +import retrofit2.http.Field +import retrofit2.http.FormUrlEncoded +import retrofit2.http.Multipart import retrofit2.http.POST +import retrofit2.http.Part interface ChatService { @@ -170,12 +178,27 @@ interface ChatService { suspend fun requestSoundList(@Body param: ParamSoundList): ResponseNew> @POST(BuildConfig.API_BASE + "/model/config/list") - suspend fun requestAiModelList(@Body language: Int = 1): ResponseNew> + suspend fun requestAiModelList(@Body language: ParamLanguage): ResponseNew> + + @POST(BuildConfig.API_BASE + "/file/bgImage/upload") suspend fun uploadCustomBgPic(@Body param: ParamBgUpload): ResponseNew + /*@Multipart + @POST(BuildConfig.API_BASE + "/file/bgImage/upload") + suspend fun uploadCustomBgPic(@Part("userId") title: RequestBody, + @Part file: MultipartBody.Part): ResponseNew*/ + + + /* @POST(BuildConfig.API_BASE + "/file/bgImage/list") - suspend fun requestChatBgList(@Body userId: Int): ResponseNew> + suspend fun requestChatBgList(@Body userId: ParamUserid): ResponseNew> + */ + @FormUrlEncoded + @POST(BuildConfig.API_BASE + "/file/bgImage/list") + suspend fun requestChatBgList(@Field("userId") userId: Int): ResponseNew> + + } \ No newline at end of file diff --git a/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/request/ParamLanguage.kt b/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/request/ParamLanguage.kt new file mode 100644 index 0000000..1d365d2 --- /dev/null +++ b/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/request/ParamLanguage.kt @@ -0,0 +1,6 @@ +package com.remax.visualnovel.entity.request + + +data class ParamLanguage( + var language: Int = 1, +) diff --git a/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/request/ParamUserid.kt b/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/request/ParamUserid.kt new file mode 100644 index 0000000..7c5ec85 --- /dev/null +++ b/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/request/ParamUserid.kt @@ -0,0 +1,6 @@ +package com.remax.visualnovel.entity.request + + +data class ParamUserid( + var userId: Int = 1 +) diff --git a/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/response/ChatAiModule.kt b/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/response/ChatAiModule.kt index 276dcbf..357938d 100644 --- a/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/response/ChatAiModule.kt +++ b/VisualNovel/app/src/main/java/com/remax/visualnovel/entity/response/ChatAiModule.kt @@ -1,6 +1,9 @@ package com.remax.visualnovel.entity.response +import android.os.Parcelable +import kotlinx.parcelize.Parcelize +@Parcelize data class ChatAiModule( val modelId: Long = 0, val nameLanguage: String, @@ -11,4 +14,6 @@ data class ChatAiModule( // others var isSelected: Boolean = false, -) +) : Parcelable { + +} diff --git a/VisualNovel/app/src/main/java/com/remax/visualnovel/repository/api/ChatRepository.kt b/VisualNovel/app/src/main/java/com/remax/visualnovel/repository/api/ChatRepository.kt index 89d3439..e5433d8 100644 --- a/VisualNovel/app/src/main/java/com/remax/visualnovel/repository/api/ChatRepository.kt +++ b/VisualNovel/app/src/main/java/com/remax/visualnovel/repository/api/ChatRepository.kt @@ -3,7 +3,9 @@ package com.remax.visualnovel.repository.api import com.remax.visualnovel.api.service.ChatService import com.remax.visualnovel.entity.request.ChatSetting import com.remax.visualnovel.entity.request.ParamBgUpload +import com.remax.visualnovel.entity.request.ParamLanguage import com.remax.visualnovel.entity.request.ParamSoundList +import com.remax.visualnovel.entity.request.ParamUserid import com.remax.visualnovel.entity.request.SimpleDataDTO import com.remax.visualnovel.repository.api.base.BaseRepositoryNew import com.remax.visualnovel.ui.wallet.manager.WalletManager @@ -33,7 +35,7 @@ class ChatRepository @Inject constructor(private val chatService: ChatService) : chatService.requestSoundList(param) } - suspend fun getAiModelList(language: Int = 1) = executeHttp { + suspend fun getAiModelList(language: ParamLanguage) = executeHttp { chatService.requestAiModelList(language) } diff --git a/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatActivity.kt b/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatActivity.kt index df8cfc1..4875710 100644 --- a/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatActivity.kt +++ b/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatActivity.kt @@ -23,7 +23,9 @@ import com.pengxr.modular.eventbus.generated.events.EventDefineOfUserEvents import com.remax.visualnovel.R import com.remax.visualnovel.databinding.ActivityActorChatBinding import com.remax.visualnovel.entity.request.ChatSetting +import com.remax.visualnovel.entity.request.ParamLanguage import com.remax.visualnovel.entity.request.ParamSoundList +import com.remax.visualnovel.entity.request.ParamUserid import com.remax.visualnovel.event.model.OnLoginEvent import com.remax.visualnovel.extension.countDownCoroutines import com.remax.visualnovel.extension.launchAndCollect2 @@ -80,7 +82,7 @@ class ChatActivity : BaseBindingActivity() { private fun loadAiModuleDatas() { launchAndCollect2({ - mViewModel.loadAiModelList(LanguageUtil.instance().getCurrentLanguageCode()) + mViewModel.loadAiModelList(ParamLanguage(LanguageUtil.instance().getCurrentLanguageCode())) }) { onSuccess = { val dataList = it?: emptyList() diff --git a/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatViewModel.kt b/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatViewModel.kt index ff2a4ce..8b47320 100644 --- a/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatViewModel.kt +++ b/VisualNovel/app/src/main/java/com/remax/visualnovel/ui/chat/ChatViewModel.kt @@ -16,7 +16,9 @@ import com.remax.visualnovel.repository.api.MessageRepository import com.google.gson.Gson import com.netease.nimlib.sdk.v2.message.V2NIMMessageCreator import com.remax.visualnovel.entity.request.ParamBgUpload +import com.remax.visualnovel.entity.request.ParamLanguage import com.remax.visualnovel.entity.request.ParamSoundList +import com.remax.visualnovel.entity.request.ParamUserid import com.remax.visualnovel.entity.response.BucketBean import com.remax.visualnovel.entity.response.Character import dagger.hilt.android.lifecycle.HiltViewModel @@ -86,7 +88,7 @@ class ChatViewModel @Inject constructor( //------------------------ new ------------------------ suspend fun loadSoundList(param: ParamSoundList) = chatRepository.getSoundList(param) - suspend fun loadAiModelList(language: Int = 1) = chatRepository.getAiModelList(language) + suspend fun loadAiModelList(language: ParamLanguage) = chatRepository.getAiModelList(language) suspend fun loadChatBgList(userId: Int) = chatRepository.getChatBgList(userId) suspend fun uploadCustomBgPic(param: ParamBgUpload) = chatRepository.uploadCustomBgPic(param)