lmw
2024-07-16 935a87b3578806ca37fee37f03da8c419a3896ce
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
package com.dollearn.student.ui.mine.adapter
 
import android.widget.TextView
import androidx.core.os.bundleOf
import cn.sinata.xldutils.activity.BaseActivity
import cn.sinata.xldutils.adapter.HFRecyclerAdapter
import cn.sinata.xldutils.adapter.util.ViewHolder
import cn.sinata.xldutils.gone
import cn.sinata.xldutils.visible
import com.dollearn.student.R
import com.dollearn.student.dialog.TipDialog
import com.dollearn.student.network.HttpManager
import com.dollearn.student.network.entity.ExchangeRecord
import com.dollearn.student.network.request
import com.dollearn.student.ui.mine.ChangeAddressActivity
import com.facebook.drawee.view.SimpleDraweeView
import org.jetbrains.anko.startActivityForResult
import java.util.ArrayList
 
class ExchangeRecordAdapter(list: ArrayList<ExchangeRecord>) :
    HFRecyclerAdapter<ExchangeRecord>(list, R.layout.item_exchange_record) {
    override fun onBind(holder: ViewHolder, position: Int, data: ExchangeRecord) {
        holder.bind<SimpleDraweeView>(R.id.iv_good).setImageURI(data.coverImg)
        holder.setText(R.id.tv_name, data.goodsName)
        holder.setText(R.id.tv_price, "${data.integral}积分")
        holder.setText(R.id.tv_category, data.goodsType.joinToString(" | ") { it })
        holder.setText(R.id.tv_count, "商品数量:${data.count}")
        holder.setText(R.id.tv_receiver, "收货信息:${data.consigneeName}|${data.consigneePhone}|${data.consigneeAddress}")
        val tvPost = holder.bind<TextView>(R.id.tv_post)
        val tvAction = holder.bind<TextView>(R.id.tv_action)
        val act = context as BaseActivity
 
        val state = when(data.state){//订单状态1待发货2已发货3已完成
            1->{
                tvAction.visible()
                tvAction.text = "修改地址"
                tvPost.gone()
                tvAction.setOnClickListener {
                    act.startActivityForResult<ChangeAddressActivity>(1,"id" to data.orderId)
                }
                "待发货"
            }
            2->{
                tvAction.visible()
                tvAction.text = "已收货"
                tvPost.visible()
                tvPost.text = "发货信息:${data.express}|${data.expressNumber}"
                tvAction.setOnClickListener {
                    val tipDialog = TipDialog()
                    tipDialog.arguments = bundleOf("msg" to "确认已收到货吗?")
                    tipDialog.setCallback(object :TipDialog.OnClickCallback{
                        override fun onOk() {
                            HttpManager.confirmStudy(data.orderId).request(act){_,_->
                                data.state = 3
                                notifyItemChanged(position)
                            }
                        }
 
                        override fun onCancel() {
                        }
                    })
                    tipDialog.show(act.supportFragmentManager,"sure")
                }
                "平台已发货,请耐心等待"
            }
            else->{
                tvAction.gone()
                tvPost.gone()
                "已完成"
            }
        }
        holder.setText(R.id.tv_state, state)
 
    }
 
}