package com.fanghua.driver.ui.mine
|
|
import android.content.Intent
|
import androidx.recyclerview.widget.LinearLayoutManager
|
import cn.sinata.xldutils.utils.clickDelay
|
import cn.sinata.xldutils.utils.gone
|
import cn.sinata.xldutils.utils.visible
|
import com.flyco.tablayout.listener.CustomTabEntity
|
import com.fanghua.driver.R
|
import com.fanghua.driver.base.MyBaseFragment
|
import com.fanghua.driver.bean.ScoreBean
|
import com.fanghua.driver.netUtls.Api
|
import com.fanghua.driver.netUtls.callNet
|
import com.fanghua.driver.netUtls.getMapByAny
|
import com.fanghua.driver.ui.adapter.ScoreIncomeAdapter
|
import com.flyco.tablayout.listener.OnTabSelectListener
|
import com.google.gson.Gson
|
import kotlinx.android.synthetic.main.fragment_score_income.*
|
|
class ScoreIncomeFragment :MyBaseFragment(){
|
override fun layoutId() = R.layout.fragment_score_income
|
|
private val adapter = ScoreIncomeAdapter()
|
private var type:Int? = null //类型(1=获取,2=消耗)
|
|
override fun initView() {
|
val list = arrayListOf<CustomTabEntity>()
|
list.addAll(listOf("全部","获取","消耗").map { object :CustomTabEntity{
|
override fun getTabTitle() = it
|
|
override fun getTabSelectedIcon() = 0
|
|
override fun getTabUnselectedIcon() = 0
|
} })
|
tab_layout.setTabData(list)
|
tab_layout.setOnTabSelectListener(object :OnTabSelectListener{
|
override fun onTabSelect(position: Int) {
|
pageNumber = 1
|
type = if (position == 0) null else position
|
callData()
|
}
|
|
override fun onTabReselect(position: Int) {
|
}
|
})
|
recycler_view.layoutManager = LinearLayoutManager(requireContext())
|
recycler_view.adapter = adapter
|
|
smart_refresh_layout.setOnRefreshListener {
|
pageNumber = 1
|
callData()
|
}
|
|
smart_refresh_layout.setOnLoadMoreListener {
|
pageNumber++
|
callData()
|
}
|
|
tv_action.clickDelay {
|
startActivity(Intent(requireContext(),ExchangeActivity::class.java))
|
}
|
|
callData()
|
}
|
|
|
private fun callData(){
|
val map = getMapByAny()
|
map["pageSize"] = PAGE_SIZE
|
map["pageNum"] = pageNumber
|
if (type!=null)
|
map["type"] = type
|
callNet(Api.queryDriverIntegralIncomeAndExpenses,map,{
|
val bean = Gson().fromJson(it, ScoreBean::class.java)
|
if (bean.resultUtil.code == 10000){
|
if (pageNumber == 1)
|
adapter.data.clear()
|
adapter.data.addAll(bean.resultUtil.data)
|
adapter.notifyDataSetChanged()
|
}else{
|
showToast(bean.resultUtil.msg)
|
pageNumber--
|
}
|
showNoData()
|
}){
|
pageNumber--
|
showNoData()
|
}
|
}
|
|
private fun showNoData(){
|
smart_refresh_layout.finishLoadMore()
|
smart_refresh_layout.finishRefresh()
|
if (adapter.data.isEmpty())
|
ll_nothing.visible()
|
else
|
ll_nothing.gone()
|
dismissDialog()
|
}
|
}
|