package com.fuban.user.ui.mine
|
|
import android.app.Activity
|
import androidx.core.os.bundleOf
|
import cn.sinata.xldutils.utils.isValidPhone
|
import cn.sinata.xldutils.utils.myToast
|
import com.fuban.user.R
|
import com.fuban.user.dialog.RegionDialog
|
import com.fuban.user.dialog.TipDialog
|
import com.fuban.user.network.HttpManager
|
import com.fuban.user.network.entity.City
|
import com.fuban.user.network.request
|
import com.fuban.user.ui.TransparentStatusBarActivity
|
import kotlinx.android.synthetic.main.activity_commit_goods.*
|
import org.jetbrains.anko.sdk27.coroutines.onClick
|
|
class CommitGoodsActivity:TransparentStatusBarActivity() {
|
override fun setContentView() = R.layout.activity_commit_goods
|
|
private val id by lazy {
|
intent.getIntExtra("id",0)
|
}
|
private val province = arrayListOf<City>()
|
private var provinceIndex = 0
|
private var cityIndex = 0
|
private var regionIndex = 0
|
|
override fun initClick() {
|
tv_region.onClick {
|
if (province.isEmpty())
|
getRegion()
|
else{
|
val regionDialog = RegionDialog()
|
regionDialog.arguments = bundleOf("province" to province,"provinceIndex" to provinceIndex,
|
"cityIndex" to cityIndex,"regionIndex" to regionIndex)
|
regionDialog.setCallback(object : RegionDialog.OnOkClick{
|
override fun onOk(region: String, provinceIndex: Int, cityIndex: Int, regionIndex: Int) {
|
tv_region.text = region
|
this@CommitGoodsActivity.provinceIndex = provinceIndex
|
this@CommitGoodsActivity.cityIndex = cityIndex
|
this@CommitGoodsActivity.regionIndex = regionIndex
|
}
|
})
|
regionDialog.show(supportFragmentManager,"region")
|
}
|
}
|
tv_action.onClick {
|
val name = et_name.text.toString()
|
if (name.isEmpty()){
|
myToast("请输入收件人名称")
|
return@onClick
|
}
|
val region = tv_region.text.toString()
|
if (region.isEmpty()){
|
myToast("请选择收件地区")
|
return@onClick
|
}
|
val address = et_address.text.toString()
|
if (address.isEmpty()){
|
myToast("请输入收件人地址")
|
return@onClick
|
}
|
val phone = et_phone.text.toString()
|
if (!phone.isValidPhone()){
|
myToast("请输入正确的手机号")
|
return@onClick
|
}
|
val remark = et_remark.text.toString()
|
val tipDialog = TipDialog()
|
tipDialog.arguments = bundleOf("msg" to "是否确认兑换该商品?")
|
tipDialog.setCallback(object :TipDialog.OnClickCallback{
|
override fun onOk() {
|
HttpManager.addIntegralOrder(region+address,name,phone,id,remark)
|
.request(this@CommitGoodsActivity,false, {_,_->
|
setResult(Activity.RESULT_OK)
|
val tipDialog = TipDialog()
|
tipDialog.arguments = bundleOf("msg" to "兑换成功","isAlert" to true)
|
tipDialog.setDismissCallback(object :TipDialog.OnDismiss{
|
override fun onDismiss() {
|
finish()
|
}
|
})
|
tipDialog.show(supportFragmentManager,"suc")
|
}){_,msg->
|
val tipDialog = TipDialog()
|
tipDialog.arguments = bundleOf("msg" to msg,"isAlert" to true)
|
tipDialog.show(supportFragmentManager,"failed")
|
}
|
}
|
|
override fun onCancel() {
|
}
|
})
|
tipDialog.show(supportFragmentManager,"tip")
|
}
|
}
|
|
override fun initView() {
|
}
|
|
private fun getRegion(){
|
showDialog()
|
HttpManager.queryRegions().request(this){ _, data->
|
province.clear()
|
province.addAll(data?: arrayListOf())
|
val dialog = RegionDialog()
|
dialog.arguments = bundleOf("province" to province,"provinceIndex" to provinceIndex,
|
"cityIndex" to cityIndex,"regionIndex" to regionIndex)
|
dialog.setCallback(object :RegionDialog.OnOkClick{
|
override fun onOk(region: String, provinceIndex: Int, cityIndex: Int, regionIndex: Int) {
|
tv_region.text = region
|
this@CommitGoodsActivity.provinceIndex = provinceIndex
|
this@CommitGoodsActivity.cityIndex = cityIndex
|
this@CommitGoodsActivity.regionIndex = regionIndex
|
}
|
})
|
dialog.show(supportFragmentManager,"region")
|
}
|
}
|
|
}
|