lmw
2023-06-20 7e4a923b472a1ffb9d6deeb80302551ba4178ca3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package com.fanghua.driver.ui.mine.money_bag
 
import android.view.View
import androidx.core.os.bundleOf
import com.fanghua.driver.R
import com.fanghua.driver.base.BaseEvent
import com.fanghua.driver.base.BaseRecyclerFragment
import com.fanghua.driver.bean.IncomeBean
import com.fanghua.driver.bean.IncomeData
import com.fanghua.driver.bean.Rank
import com.fanghua.driver.bean.RankBean
import com.fanghua.driver.netUtls.Api
import com.fanghua.driver.netUtls.getMapByAny
import com.fanghua.driver.ui.adapter.IncomeRecordAdapter
import com.fanghua.driver.ui.adapter.RankAdapter
import com.fanghua.driver.ui.mine.RankActivity
import com.google.gson.Gson
import kotlinx.android.synthetic.main.header_rank.view.*
import org.greenrobot.eventbus.Subscribe
import java.util.HashMap
 
class RankFragment:BaseRecyclerFragment<Rank>(RankAdapter()) {
    override fun pathUrl(): String = Api.queryPerformanceSummary
 
    private val type by lazy { arguments?.getInt("type")?:1 } //1=订单量,2=佣金,3=收入
 
    override fun mapObject(): HashMap<String?, Any?> {
        val map = getMapByAny()
        map["type"] = type
        map["dayType"] = (requireActivity() as RankActivity).type
        map["time"] = (requireActivity() as RankActivity).getTime()
        return map
    }
 
    override fun mapString(): HashMap<String?, String?>? = null
 
    override fun getDatas(t: String?): List<Rank> {
        val fromJson = Gson().fromJson(t, RankBean::class.java)
        if (fromJson.resultUtil.code == 10000){
            (requireActivity() as RankActivity).showData(fromJson.resultUtil.data)
            return fromJson.resultUtil.data.list
        }else{
            showToast(fromJson.resultUtil.msg)
            return emptyList()
        }
    }
 
    override fun onItemClick(view: View?, position: Int) {
    }
 
    override fun initView() {
        (adapter as RankAdapter).type = type
        pageSize = Int.MAX_VALUE
        val view = layoutInflater.inflate(R.layout.header_rank, header, false)
        view.tv_rank_type.text = if (type == 1) "单量" else if (type == 2) "佣金" else "收入"
        addTopView(view)
        addBottomView(layoutInflater.inflate(R.layout.bottom_income,bottom,false))
    }
 
    @Subscribe
    fun onRefresh(e:BaseEvent){
        if (e.code == BaseEvent.REFRESH_DATE){
            refresh()
        }
    }
 
    companion object{
        fun newInstance(type:Int):RankFragment{
            val rankFragment = RankFragment()
            rankFragment.arguments = bundleOf("type" to type)
            return rankFragment
        }
    }
}