diff --git a/app/src/main/java/com/nova/brain/glass/model/data/SaveOcrResultRequest.kt b/app/src/main/java/com/nova/brain/glass/model/data/SaveOcrResultRequest.kt new file mode 100644 index 0000000..7232528 --- /dev/null +++ b/app/src/main/java/com/nova/brain/glass/model/data/SaveOcrResultRequest.kt @@ -0,0 +1,9 @@ +package com.nova.brain.glass.model.data + +data class SaveOcrResultRequest( + val taskId: String, + val productionInfoId: String, + val ocrResult: String, + val result: String, + val filePath: String +) diff --git a/app/src/main/java/com/nova/brain/glass/repository/Service.kt b/app/src/main/java/com/nova/brain/glass/repository/Service.kt index 202e772..5564f37 100644 --- a/app/src/main/java/com/nova/brain/glass/repository/Service.kt +++ b/app/src/main/java/com/nova/brain/glass/repository/Service.kt @@ -12,6 +12,7 @@ import com.nova.brain.glass.model.data.BatchUploadResponse import com.nova.brain.glass.model.data.OcrResultData import com.nova.brain.glass.model.data.RecognizeByPathRequest import com.nova.brain.glass.model.data.RecognizeByPathResponse +import com.nova.brain.glass.model.data.SaveOcrResultRequest import com.nova.brain.glass.model.data.SubmitTaskRequest import com.nova.brain.glass.model.data.SubmitTaskResponse import com.nova.brain.glass.model.data.PushToNextData @@ -30,7 +31,6 @@ import okhttp3.RequestBody import okhttp3.ResponseBody import retrofit2.http.Body import retrofit2.http.GET -import retrofit2.http.Headers import retrofit2.http.Multipart import retrofit2.http.Part import retrofit2.http.POST @@ -79,15 +79,8 @@ interface Service { @POST("/skyscopicsecond-api/api/aiGlasses/recognizeByPath") fun recognizeByPath(@Body body: RecognizeByPathRequest): Observable - @Multipart @POST("/skyscopicsecond-api/api/aiGlasses/saveOcrResult") - fun saveOcrResult( - @Part("taskId") taskId: RequestBody, - @Part("productionInfoId") productionInfoId: RequestBody, - @Part("ocrResult") ocrResult: RequestBody, - @Part("result") result: RequestBody, - @Part("filePath") filePath: RequestBody - ): Observable + fun saveOcrResult(@Body body: SaveOcrResultRequest): Observable @POST("/skyscopicsecond-api/api/aiGlasses/submitTask") fun submitTask(@Body body: SubmitTaskRequest): Observable diff --git a/app/src/main/java/com/nova/brain/glass/viewmodel/SprayingResultVM.kt b/app/src/main/java/com/nova/brain/glass/viewmodel/SprayingResultVM.kt index 9844189..cf60102 100644 --- a/app/src/main/java/com/nova/brain/glass/viewmodel/SprayingResultVM.kt +++ b/app/src/main/java/com/nova/brain/glass/viewmodel/SprayingResultVM.kt @@ -3,6 +3,7 @@ package com.nova.brain.glass.viewmodel import androidx.lifecycle.MutableLiveData import com.nova.brain.glass.MyApplication import com.nova.brain.glass.model.ItemItem +import com.nova.brain.glass.model.data.SaveOcrResultRequest import com.nova.brain.glass.model.data.SubmitTaskRequest import com.nova.brain.glass.repository.Service import com.xuqm.base.di.manager.HttpManager @@ -10,8 +11,6 @@ import com.xuqm.base.viewmodel.BaseListViewModel import com.xuqm.base.viewmodel.callback.Response import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.schedulers.Schedulers -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.RequestBody.Companion.toRequestBody enum class SubmitTaskState { IDLE, @@ -75,15 +74,16 @@ class SprayingResultVM : BaseListViewModel() { ) { if (saveOcrState.value == SaveOcrState.LOADING) return saveOcrState.value = SaveOcrState.LOADING - val plain = "text/plain".toMediaTypeOrNull() add( HttpManager.getApi(MyApplication.appComponent2, Service::class.java) .saveOcrResult( - taskId = taskId.toRequestBody(plain), - productionInfoId = productionInfoId.toRequestBody(plain), - ocrResult = ocrResultJson.toRequestBody(plain), - result = resultJson.toRequestBody(plain), - filePath = filePath.toRequestBody(plain) + SaveOcrResultRequest( + taskId = taskId, + productionInfoId = productionInfoId, + ocrResult = ocrResultJson, + result = resultJson, + filePath = filePath + ) ) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread())