罗明文
2 天以前 7bed3f6090b14391d7dad4ca4bd632fb28d847c0
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
package com.dollearn.student.ui.mine
 
import android.content.Intent
import androidx.core.os.bundleOf
import androidx.recyclerview.widget.LinearLayoutManager
import com.dollearn.student.R
import com.dollearn.student.dialog.TipDialog
import com.dollearn.student.network.HttpManager
import com.dollearn.student.network.entity.Recipient
import com.dollearn.student.network.request
import com.dollearn.student.ui.TransparentStatusBarActivity
import com.dollearn.student.ui.mine.adapter.ReceiverAdapter
import kotlinx.android.synthetic.main.activity_change_address.*
 
class ChangeAddressActivity:TransparentStatusBarActivity() {
    override fun setContentView() = R.layout.activity_change_address
 
    private val list = arrayListOf<Recipient>()
    private val adapter = ReceiverAdapter(list)
    private val id by lazy { intent.getStringExtra("id") }
 
    override fun initClick() {
        adapter.setOnItemClickListener { view, position ->
            if (id.isNullOrEmpty()){
                val intent = Intent()
                intent.putExtra("address",list[position])
                setResult(RESULT_OK,intent)
                finish()
            }else{
                val tipDialog = TipDialog()
                tipDialog.arguments = bundleOf("msg" to "确认修改当前收货地址吗?")
                tipDialog.setCallback(object :TipDialog.OnClickCallback{
                    override fun onOk() {
                        HttpManager.updateOrderAddress(id?:"",list[position].id).request(this@ChangeAddressActivity){_,_->
                            setResult(RESULT_OK)
                            finish()
                        }
                    }
 
                    override fun onCancel() {
                    }
                })
                tipDialog.show(supportFragmentManager,"change")
            }
        }
    }
 
    override fun initView() {
        rv_address.layoutManager = LinearLayoutManager(this)
        rv_address.adapter = adapter
        getData()
    }
 
    private fun getData(){
        HttpManager.getOrderAddress().request(this){_,data->
            list.clear()
            list.addAll(data?: arrayListOf())
            adapter.notifyDataSetChanged()
        }
    }
 
}