出入库功能改版
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
package com.sw.inbound.adapter
|
||||
|
||||
import android.content.Context
|
||||
import android.view.LayoutInflater
|
||||
import android.view.ViewGroup
|
||||
import android.widget.TextView
|
||||
import androidx.core.graphics.toColorInt
|
||||
import androidx.core.view.updateLayoutParams
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.chad.library.adapter4.BaseQuickAdapter
|
||||
import com.chad.library.adapter4.viewholder.QuickViewHolder
|
||||
import com.sw.inbound.R
|
||||
import com.sw.inbound.databinding.ListItemReceiptGoodsBinding
|
||||
import com.sw.inbound.model.bean.ReceiptGoodsInfo
|
||||
import com.sw.inbound.model.response.GoodsInfo
|
||||
import com.sw.inbound.utils.ext.dp
|
||||
import com.sw.inbound.utils.ext.gone
|
||||
import com.sw.inbound.utils.ext.ifNullOrBlank
|
||||
import com.sw.inbound.utils.ext.ifNullOrZero
|
||||
import com.sw.inbound.utils.ext.setShapeDrawable
|
||||
import com.sw.inbound.utils.ext.visible
|
||||
|
||||
class ReceiptGoodsAdapter(var list: MutableList<GoodsInfo>) :
|
||||
BaseQuickAdapter<GoodsInfo, ReceiptGoodsAdapter.VH>(list) {
|
||||
|
||||
inner class VH(var binding: ListItemReceiptGoodsBinding) : QuickViewHolder(binding.root)
|
||||
|
||||
override fun onCreateViewHolder(context: Context, parent: ViewGroup, viewType: Int): VH {
|
||||
val inflater = LayoutInflater.from(context)
|
||||
val binding = ListItemReceiptGoodsBinding.inflate(inflater, parent, false)
|
||||
return VH(binding)
|
||||
}
|
||||
|
||||
override fun onBindViewHolder(holder: VH, position: Int, item: GoodsInfo?) {
|
||||
holder.binding.run {
|
||||
root.updateLayoutParams<RecyclerView.LayoutParams> {
|
||||
height = 100.dp
|
||||
topMargin = 2.dp
|
||||
bottomMargin = 3.dp
|
||||
}
|
||||
root.setShapeDrawable(
|
||||
solidColor = if (item!!.isSelected) "#FFD5E1FF" else "#FFFFFFFF",
|
||||
radius = 6.dp
|
||||
)
|
||||
updateTextView(
|
||||
tvGoodsName, tvProcurementUnit,
|
||||
tvProcurementCount, tvProcurementPrice,
|
||||
tvProcurementAmount, tvReceiptCount, tvGoodsWeight,
|
||||
)
|
||||
tvGoodsName.text = item.goodName.ifNullOrBlank("-")
|
||||
tvProcurementUnit.text = item.unitName.ifNullOrBlank("-")
|
||||
tvProcurementCount.text = item.receiveCountStr.ifNullOrBlank("-")
|
||||
tvProcurementPrice.text = item.recUnitPriceTaxInStr.ifNullOrBlank("-")
|
||||
tvProcurementAmount.text = item.recPriceExItemStr.ifNullOrBlank("-")
|
||||
tvReceiptCount.text = item.receivedNumStr.ifNullOrBlank("-")
|
||||
tvGoodsWeight.text = item.goodsWeightStr.ifNullOrBlank("-")
|
||||
|
||||
tvState.gone()
|
||||
ivState.run {
|
||||
visible()
|
||||
setImageResource(
|
||||
if (item.isSelected.not()) R.mipmap.ic_receipt_no
|
||||
else if (item.isLocalGoods) R.mipmap.ic_receipt_local
|
||||
else if ((item.receivedNum?:0.toDouble()) < (item.receiveCount?:0.toDouble())) R.mipmap.ic_receipt_part
|
||||
else R.mipmap.ic_receipt_all
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private fun updateTextView(vararg views: TextView) {
|
||||
views.forEach {
|
||||
it.setTextColor("#FF1E2832".toColorInt())
|
||||
it.paint.isFakeBoldText = true
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user