保存userId

This commit is contained in:
renhaoting 2025-12-08 18:26:52 +08:00
parent 1988f2448c
commit ce0d5084ba
2 changed files with 26 additions and 2 deletions

View File

@ -4,9 +4,11 @@ import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import com.ama.core.architecture.util.AndroidUtil import com.ama.core.architecture.util.AndroidUtil
import com.ama.core.architecture.util.DeviceUtil import com.ama.core.architecture.util.DeviceUtil
import com.ama.core.architecture.util.SpUtil
import com.gamedog.vididin.VidiConst import com.gamedog.vididin.VidiConst
import com.gamedog.vididin.beans.ZeroBuyItem import com.gamedog.vididin.beans.ZeroBuyItem
import com.gamedog.vididin.beans.ZeroBuyResp import com.gamedog.vididin.beans.ZeroBuyResp
import com.gamedog.vididin.core.login.login.AccountManager
import com.gamedog.vididin.netbase.NetworkUtil import com.gamedog.vididin.netbase.NetworkUtil
import com.gamedog.vididin.netbase.Result import com.gamedog.vididin.netbase.Result
import com.gamedog.vididin.request.RequestUtil import com.gamedog.vididin.request.RequestUtil
@ -54,10 +56,18 @@ class ZeroBuyViewModel : ViewModel() {
val curTimeSec = System.currentTimeMillis()/1000 val curTimeSec = System.currentTimeMillis()/1000
val signStr = RequestUtil.getZeroBuyRequestSign(curTimeSec, operationVal) val signStr = RequestUtil.getZeroBuyRequestSign(curTimeSec, operationVal)
val requestHeaders = mapOf("Operation" to operationVal.toString(), "Timestamp" to curTimeSec.toString(), "Sign" to signStr) val requestHeaders = mapOf("Operation" to operationVal.toString(), "Timestamp" to curTimeSec.toString(), "Sign" to signStr)
val requestParams = mutableMapOf("AppId" to VidiConst.ZEROBUY_APPID, "DeviceId" to DeviceUtil.generateDeviceId())
val userId = AccountManager.getAccount()?.userId?: 0
if (userId > 0) {
requestParams.put("UserId", userId.toString())
}
val joinZeroBuyItemIds = SpUtil.instance().getList<Int>(SpUtil.KEY_ZEROBUY_JOINED_ACTIVITY_IDS)
if (joinZeroBuyItemIds.isNotEmpty()) {
requestParams.put("JoinedPurchaseIds", AndroidUtil.object2Json(joinZeroBuyItemIds))
}
val requestParams = mapOf("AppId" to VidiConst.ZEROBUY_APPID, "DeviceId" to DeviceUtil.generateDeviceId())
val result = NetworkUtil.get("${VidiConst.URL_ZERO_BUY}/anynameisok", requestHeaders, requestParams) val result = NetworkUtil.get("${VidiConst.URL_ZERO_BUY}/anynameisok", requestHeaders, requestParams)
when (result) { when (result) {
is Result.Success -> { is Result.Success -> {
val respObj = AndroidUtil.json2Object<ZeroBuyResp>(result.data.string())?.apply { val respObj = AndroidUtil.json2Object<ZeroBuyResp>(result.data.string())?.apply {
@ -65,6 +75,19 @@ class ZeroBuyViewModel : ViewModel() {
mFinishedList = AndroidUtil.json2Object<List<ZeroBuyItem>>(FinishedPurchases) mFinishedList = AndroidUtil.json2Object<List<ZeroBuyItem>>(FinishedPurchases)
} }
respObj?.UserId?.let {
if (userId <= 0) {
AccountManager.saveUserIdInfo(it)
}
}
// TODO - when to record joined activity Ids
/*respObj?.Join?.let {
if (userId <= 0) {
AccountManager.saveUserIdInfo(it)
}
}*/
_ZeroBuyListData.value = Result.Success(respObj!!) _ZeroBuyListData.value = Result.Success(respObj!!)
} }
is Result.Error -> { is Result.Error -> {

View File

@ -31,6 +31,7 @@ class SpUtil private constructor(spFileName: String) {
const val KEY_NEWBIE_JOIN_DISCORD = "KEY_NEWBIE_JOIN_DISCORD" const val KEY_NEWBIE_JOIN_DISCORD = "KEY_NEWBIE_JOIN_DISCORD"
const val KEY_ZEROBUY_JOINED_ACTIVITY_IDS = "KEY_ZEROBUY_JOINED_ACTIVITY_IDS"