package com.kuanzhai.user.ui.mine.adapter
|
|
import android.view.LayoutInflater
|
import android.view.View
|
import android.widget.LinearLayout
|
import android.widget.TextView
|
import cn.sinata.xldutils.adapter.HFRecyclerAdapter
|
import cn.sinata.xldutils.adapter.util.ViewHolder
|
import cn.sinata.xldutils.gone
|
import cn.sinata.xldutils.invisible
|
import cn.sinata.xldutils.utils.parserTime
|
import cn.sinata.xldutils.visible
|
import com.facebook.drawee.view.SimpleDraweeView
|
import com.kuanzhai.user.R
|
import com.kuanzhai.user.network.entity.BusinessCoupon
|
import com.kuanzhai.user.network.entity.MyBusinessCoupon
|
import com.kuanzhai.user.ui.mine.CouponDetailActivity
|
import kotlinx.android.synthetic.main.item_sub_my_business_counpon.view.*
|
import org.jetbrains.anko.backgroundResource
|
import org.jetbrains.anko.startActivity
|
import java.util.ArrayList
|
|
class MyBusinessCouponAdapter(datas: ArrayList<MyBusinessCoupon>):HFRecyclerAdapter<MyBusinessCoupon>(datas, R.layout.item_my_business_counpon) {
|
var type = 1
|
override fun onBind(holder: ViewHolder, position: Int, data: MyBusinessCoupon) {
|
val tv_open = holder.bind<TextView>(R.id.tv_open)
|
val ll = holder.bind<LinearLayout>(R.id.ll_coupon)
|
holder.bind<SimpleDraweeView>(R.id.iv_avatar).setImageURI(data.headImg)
|
holder.setText(R.id.tv_name,data.merchantName)
|
ll.removeAllViews()
|
val list:List<BusinessCoupon>
|
tv_open.visibility = if (data.list.size<3){
|
list = data.list
|
View.GONE
|
} else{
|
list = if (data.isOpen){
|
tv_open.text = "收起"
|
tv_open.setCompoundDrawablesWithIntrinsicBounds(0,0,R.mipmap.icon_nav_close,0)
|
data.list
|
}else{
|
tv_open.text = "展开"
|
tv_open.setCompoundDrawablesWithIntrinsicBounds(0,0,R.mipmap.icon_nav_open,0)
|
data.list.take(2)
|
}
|
View.VISIBLE
|
}
|
list.forEach {
|
val inflate = LayoutInflater.from(context).inflate(R.layout.item_sub_my_business_counpon, null)
|
inflate.tv_money.text = String.format("¥%.2f",it.discount)
|
inflate.tv_title.text = it.name
|
if (it.type == 2){
|
inflate.tv_type.visible()
|
inflate.tv_money.invisible()
|
inflate.tv_range.text = it.content
|
}else{
|
inflate.tv_range.text = "店铺购买满%.2f使用".format(it.fullAmount)
|
}
|
val l = it.endTime.parserTime() - System.currentTimeMillis()
|
inflate.tv_info.text = if (l<=0) "已到期" else "距离到期仅剩%d天".format(l/(24*60*60*1000L)+1)
|
inflate.tv_detail.setOnClickListener {_->
|
context.startActivity<CouponDetailActivity>("data" to it,"disable" to (type == 2))
|
}
|
if (type == 2){
|
inflate.cl_left.backgroundResource = R.mipmap.bg_coupon_grey
|
inflate.cl_right.backgroundResource = R.mipmap.bg_coupon_right_grey
|
inflate.iv_tag.visible()
|
}
|
ll.addView(inflate)
|
}
|
tv_open.setOnClickListener {
|
data.isOpen = !data.isOpen
|
notifyItemChanged(position)
|
}
|
}
|
}
|