增加消费码支付功能、支付逻辑优化、金额问题优化、订单绑定优化
This commit is contained in:
@@ -2,6 +2,8 @@ package com.sw.dualscreen.repository
|
||||
|
||||
import com.google.gson.JsonParseException
|
||||
import com.sw.dualscreen.model.response.ApiResponse
|
||||
import com.sw.dualscreen.model.response.RespCodeMsg
|
||||
import com.sw.dualscreen.utils.GsonUtils
|
||||
import retrofit2.HttpException
|
||||
import timber.log.Timber
|
||||
import java.io.IOException
|
||||
@@ -18,7 +20,13 @@ abstract class BaseRepository {
|
||||
|
||||
when (e) {
|
||||
is HttpException -> {
|
||||
ApiResponse(code = "${e.code()}", msg = e.message())
|
||||
val respData = e.response()?.errorBody()?.string()
|
||||
val respCodeMsg = GsonUtils.fromJson(respData, RespCodeMsg::class.java)
|
||||
if (respCodeMsg?.msg.isNullOrBlank()) {
|
||||
ApiResponse(code = "${e.code()}", msg = e.message())
|
||||
} else {
|
||||
ApiResponse(code = respCodeMsg.code ?:"-10", msg = respCodeMsg.msg)
|
||||
}
|
||||
}
|
||||
|
||||
is SocketTimeoutException -> {
|
||||
|
||||
@@ -222,15 +222,33 @@ class RemoteRepository constructor(
|
||||
}
|
||||
}
|
||||
|
||||
suspend fun bindOrder(userId: String, orderId: String): ApiResponse<Any?> {
|
||||
/**
|
||||
* 绑定订单
|
||||
*/
|
||||
suspend fun bindOrder(userId: String, orderId: String, mode: Int): ApiResponse<Any?> {
|
||||
return safeApiCall {
|
||||
apiService.bindOrder(userId = userId, orderId = orderId)
|
||||
apiService.bindOrder(userId = userId, orderId = orderId, mode = mode)
|
||||
}
|
||||
}
|
||||
|
||||
suspend fun getMemberInfo(memberId: String): ApiResponse<MemberInfo?> {
|
||||
/**
|
||||
* 根据id查询会员信息
|
||||
*/
|
||||
suspend fun getMemberInfoById(memberId: String): ApiResponse<MemberInfo?> {
|
||||
return safeApiCall {
|
||||
apiService.getMemberInfo(memberId = memberId)
|
||||
apiService.getMemberInfoById(memberId = memberId)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据id查询会员信息
|
||||
*/
|
||||
suspend fun getMemberInfoByPhone(phone: String, key: String): ApiResponse<MemberInfo?> {
|
||||
return safeApiCall {
|
||||
apiService.getMemberInfoByPhone(param = hashMapOf(
|
||||
"phone" to phone,
|
||||
"password" to key
|
||||
))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user