Card For Credit Adapter
Card For Credit Adapter
uz.maroqand.asakamobile.ui.credit.main.new_credit.microloan.card_selection.adapter
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import com.bumptech.glide.Glide
import com.bumptech.glide.load.MultiTransformation
import com.bumptech.glide.load.resource.bitmap.CenterCrop
import com.bumptech.glide.load.resource.bitmap.RoundedCorners
import uz.maroqand.asakamobile.R
import uz.maroqand.asakamobile.data.constant.Constants
import uz.maroqand.asakamobile.data.db.entity.UserCard
import uz.maroqand.asakamobile.databinding.ItemCardMicroloanBinding
import uz.maroqand.asakamobile.util.AppUtils
import uz.maroqand.asakamobile.util.ViewUtils.px
fun unselectAllCards() {
for (i in cardList.indices) {
cardList[i].isSelected = false
}
notifyDataSetChanged()
}
Glide.with(mContext)
.load(cardItem.backgroundImage)
.transform(MultiTransformation(CenterCrop(), RoundedCorners(8.px)))
.into(cardBinding.cardImg)
with(cardBinding) {
txtCardNumber.text = cardItem.cardNumber!!.takeLast(4)
cardBinding.imgCardChecked.visibility = if (cardItem.isSelected)
View.VISIBLE else View.GONE
imgCardSubType.visibility = View.GONE
val imgId = when (cardItem.cardType) {
Constants.HUMO -> R.drawable.ic_microloan_card_type_humo
Constants.MASTERCARD ->
R.drawable.ic_microloan_card_type_mastercard
Constants.MASTERCARD_UZCARD_COLBEYJ -> {
imgCardSubType.setImageResource(R.drawable.ic_microloan_card_type_uzcard)
imgCardSubType.visibility = View.VISIBLE
R.drawable.ic_microloan_card_type_mastercard
}
Constants.MASTERCARD_HUMO_COLBEYJ -> {
imgCardSubType.setImageResource(R.drawable.ic_microloan_card_type_humo)
imgCardSubType.visibility = View.VISIBLE
R.drawable.ic_microloan_card_type_mastercard
}
else -> R.drawable.ic_microloan_card_type_uzcard
}
imgCardType.setImageResource(imgId)
if (cardItem.status == Constants.CARD_ACTIVE) {
tvCardError.visibility = View.GONE
txtBalanceUzs.text = AppUtils.getFormattedBalance(mContext,
uzsBalance, Constants.UZS, hideBalance = cardItem.hideBalance ?: false)
txtBalanceUsd.text = AppUtils.getFormattedBalance(mContext,
usdBalance, Constants.USD, hideBalance = cardItem.hideBalance ?: false)
} else {
txtBalanceUzs.visibility = View.GONE
txtBalanceUsd.visibility = View.GONE
tvCardError.visibility = View.VISIBLE
tvCardError.text = cardItem.statusText
}
}
}
}
}