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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
package com.fanghua.driver.ui.mine.money_bag
 
import android.view.View
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import cn.sinata.xldutils.utils.TimeUtils
import cn.sinata.xldutils.utils.clickDelay
import com.fanghua.driver.R
import com.fanghua.driver.base.BaseRecyclerActivity
import com.fanghua.driver.base.BaseRvAdapter
import com.fanghua.driver.bean.IncomeDetail
import com.fanghua.driver.bean.IncomeDetailBean
import com.fanghua.driver.netUtls.Api
import com.fanghua.driver.netUtls.getMapByAny
import com.fanghua.driver.ui.adapter.IncomeDetailAdapter
import com.fanghua.driver.utils.citypickerview.picker.widget.builder.TimePickerBuilder
import com.fanghua.driver.utils.citypickerview.picker.widget.configure.TimePickerType
import com.fanghua.driver.utils.citypickerview.picker.widget.listener.OnTimeSelectListener
import com.google.gson.Gson
import kotlinx.android.synthetic.main.activity_base_recycler.*
import kotlinx.android.synthetic.main.header_income_detail.view.*
import java.util.*
 
class IncomeDetailActivity: BaseRecyclerActivity<IncomeDetail>() {
    private val header by lazy {
        layoutInflater.inflate(R.layout.header_income_detail,topView,false)
    }
 
    override fun initView() {
        setTitleText("佣金")
        header.tv_time.text = TimeUtils.getTimeYM(System.currentTimeMillis())
        addTopView(header)
    }
 
    override fun setOnclick() {
        header.tv_time.clickDelay {
            showTimePicker()
        }
    }
 
    override fun getDatas(t: String?): List<IncomeDetail> {
        val fromJson = Gson().fromJson(t, IncomeDetailBean::class.java)
        if (fromJson.resultUtil.code == 10000){
            header.tv_total.text = "总计:%s".format(fromJson.resultUtil.data.total)
            return fromJson.resultUtil.data.list
        }else{
            showToast(fromJson.resultUtil.msg)
            return emptyList()
        }
    }
 
    override fun pathUrl(): String = Api.queryCommissionDetail
 
    override fun mapObject(): HashMap<String?, Any?>? {
        val map = getMapByAny()
        map["time"] = header.tv_time.text.toString()
        return map
    }
 
    override fun getAdapter(): BaseRvAdapter<IncomeDetail> = IncomeDetailAdapter()
 
    override fun getlayoutManager(): RecyclerView.LayoutManager? {
        return LinearLayoutManager(this)
    }
 
    override fun setOnItemClickListener(view: View?, position: Int) {
    }
 
    fun showTimePicker() {
        var startCalendar = Calendar.getInstance()
        var endCalendar = Calendar.getInstance()
        var nowCalendar = Calendar.getInstance()
        startCalendar.set(2023, 1, 1)
        nowCalendar.set(Calendar.YEAR,header.tv_time.text.toString().substring(0,4).toInt())
        nowCalendar.set(Calendar.MONTH,header.tv_time.text.toString().substring(5,7).toInt()-1)
        var timePic = TimePickerBuilder(this,
            OnTimeSelectListener { date, v ->
                header.tv_time.text = TimeUtils.getTimeYM(date.time)
                smart_refresh_layout.autoRefresh()
            })
            .setTitleText("")
            .setBgColor(ContextCompat.getColor(this, R.color.white))
            .setCancelColor(ContextCompat.getColor(this, R.color.black_333333))
            .setSubmitColor(ContextCompat.getColor(this, R.color.main_yellow_shen))
            .setRangDate(startCalendar, endCalendar)
            .setDate(nowCalendar)
            .setType(TimePickerType.YM)
            .setSubmitText("确认")
            .setLineSpacingMultiplier(2f)
            .build()
        timePic.show()
    }
}