You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
1.1 KiB
32 lines
1.1 KiB
3 years ago
|
package com.gyf.csams.activity.model
|
||
|
|
||
|
import android.app.Application
|
||
|
import androidx.lifecycle.viewModelScope
|
||
|
import com.google.gson.reflect.TypeToken
|
||
|
import com.gyf.csams.module.ActivityVo
|
||
|
import com.gyf.csams.module.ApiResponse
|
||
|
import com.gyf.csams.module.FindTendencyVo
|
||
|
import com.gyf.csams.module.TendencyType
|
||
|
import com.gyf.lib.model.ScrollViewModel
|
||
|
import com.gyf.lib.util.*
|
||
|
import kotlinx.coroutines.launch
|
||
|
|
||
|
class TendencyViewModel(application: Application) :
|
||
|
ScrollViewModel<ActivityVo>(application = application) {
|
||
|
|
||
|
fun load(type: TendencyType) {
|
||
|
viewModelScope.launch {
|
||
|
HttpClient.post(
|
||
|
url = Api.buildUrl(ActivityApi.FindTendency),
|
||
|
callback = HttpCallback<MutableList<ActivityVo>>(
|
||
|
action = "加载${type.desc}活动",
|
||
|
onSuccess = {
|
||
|
it.body?.apply { _data.postValue(this) }
|
||
|
},
|
||
|
typeToken = object : TypeToken<ApiResponse<MutableList<ActivityVo>>>() {}.type
|
||
|
),
|
||
|
jsonParam = FindTendencyVo(type = type, token = TokenManager.getToken())
|
||
|
)
|
||
|
}
|
||
|
}
|
||
|
}
|