lmw
2023-05-27 ff365ff4346d220edf2ec1d0041f2284befe3870
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
package com.fanghua.driver.ui.adapter
 
import android.view.View
import cn.sinata.xldutils.utils.TimeUtils
import cn.sinata.xldutils.utils.clickDelay
import com.fanghua.driver.R
import com.fanghua.driver.base.BaseEvent
import com.fanghua.driver.base.BaseRvAdapter
import com.fanghua.driver.base.BaseViewHolder
import com.fanghua.driver.bean.BaseBean
import com.fanghua.driver.bean.RightsData
import com.fanghua.driver.netUtls.Api
import com.fanghua.driver.netUtls.callNet
import com.fanghua.driver.netUtls.getMapByAny
import com.fanghua.driver.ui.DialogUtil
import com.google.gson.Gson
import kotlinx.android.synthetic.main.item_rights.view.*
import org.greenrobot.eventbus.EventBus
 
class RightsAdapter: BaseRvAdapter<RightsData>() {
 
    override fun getLayoutResId(viewType: Int): Int {
        return R.layout.item_rights
    }
 
    override fun onBindItem(holder: BaseViewHolder?, view: View?, item: RightsData) {
        holder?.let {
            it.itemView.tv_name.text = item.name
            it.itemView.tv_rights.text = item.content
            it.itemView.tv_score.text = "${item.integral}积分"
            it.itemView.tv_action.text = if (item.state == "1"||item.state == "2") "兑换成功" else "立即兑换"
            it.itemView.tv_action.clickDelay {
                if (!(item.state == "1"||item.state == "2"))
                    DialogUtil.getDelAndSureDialog(context,"确定","取消","确认消耗${item.integral}积分兑换?",{}){
                        val map = getMapByAny()
                        map["id"] = item.id
                        callNet(context, Api.redeemBenefits,map){
                            val bean = Gson().fromJson(it, BaseBean::class.java)
                            if (bean.resultUtil.code == 10000){
                                toast("兑换成功")
                                item.state = "1"
                                EventBus.getDefault().post(BaseEvent(BaseEvent.SCORE_USED,item.integral))
                                notifyItemChanged(holder.adapterPosition)
                            }else
                                DialogUtil.getOnlySureDialog(context,bean.resultUtil.msg){}
                        }
                    }
            }
        }
    }
 
}