Untitled
unknown
plain_text
2 years ago
4.9 kB
8
Indexable
package com.app.qualityairsolution.Activities.Adapter
import android.app.Dialog
import android.content.Context
import android.content.Intent
import android.util.Log
import android.view.Gravity
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.Window
import android.view.WindowManager
import android.widget.LinearLayout
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.app.qualityairsolution.Activities.AddNewCustomerActivity
import com.app.qualityairsolution.Activities.ModelClass.DataCustomer
import com.app.qualityairsolution.Activities.Utils.onImageDelete
import com.app.qualityairsolution.R
class CustomerAdapter( var context: Context,var customerList: List<DataCustomer>, private val callback: onImageDelete) :
RecyclerView.Adapter<CustomerAdapter.CompanyViewHolder>() {
class CompanyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val companyNameTextView: TextView = itemView.findViewById(R.id.companynamenew)
val addressTextView: TextView = itemView.findViewById(R.id.address)
val contextTextView: TextView = itemView.findViewById(R.id.contactnocustomer)
val contactbox: LinearLayout = itemView.findViewById(R.id.contactbbox)
val emailTextView1: TextView = itemView.findViewById(R.id.email)
// val emailTextView2: TextView = itemView.findViewById(R.id.Email1)
// val emailTextView3: TextView = itemView.findViewById(R.id.Email3)
// val emailTextView4: TextView = itemView.findViewById(R.id.Email4)
val Delete: LinearLayout = itemView.findViewById(R.id.delete)
val Edit: LinearLayout = itemView.findViewById(R.id.Edit)
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CompanyViewHolder {
val view = LayoutInflater.from(parent.context)
.inflate(R.layout.customer_list_item, parent, false)
return CompanyViewHolder(view)
}
override fun onBindViewHolder(holder: CompanyViewHolder, position: Int) {
val company = customerList[position]
holder.companyNameTextView.text = "Company Name:${company.companyname}"
Log.d("TAG", "onBindViewHolder====>>>contact: "+company.contact)
holder.addressTextView.text ="Address:${company.address}"
holder.contextTextView.text ="Contact No:${company.contact}"
if (company.contact!!.isEmpty()&& company.contact.isNullOrBlank()){
holder.contactbox.visibility = View.GONE
}else
{
holder.contactbox.visibility = View.VISIBLE
}
val emails = listOf(company.email, company.email1, company.email2, company.email3)
.filter { !it.isNullOrEmpty() }
holder.emailTextView1.text = if (emails.isNotEmpty()) {
"Email: ${emails.joinToString(", ")}"
} else {
"Email: No email provided"
}
holder.Delete.setOnClickListener {
val dialog1= Dialog(context,R.style.CustomDialogTheme)
dialog1.requestWindowFeature(Window.FEATURE_NO_TITLE)
dialog1.setCancelable(true)
dialog1.setContentView(R.layout.deletedialog)
// Set the dialog to be full width
val params: WindowManager.LayoutParams = dialog1.getWindow()!!.getAttributes()
params.width = WindowManager.LayoutParams.MATCH_PARENT
dialog1.getWindow()!!.setAttributes(params)
dialog1.getWindow()!!.setGravity(Gravity.CENTER)
val yesBtn: LinearLayout = dialog1.findViewById(R.id.yesbutton)
val noBtn: LinearLayout = dialog1.findViewById(R.id.nobutton)
yesBtn.setOnClickListener {
callback.onImageDelete(company.id!!.toInt(),position)
dialog1.dismiss()
//
}
noBtn.setOnClickListener {
dialog1.dismiss()
}
dialog1.show()
}
holder.Edit.setOnClickListener{
val intent = Intent(context, AddNewCustomerActivity::class.java)
val companyId = company.id?.toInt() ?: 0
intent.putExtra("company", company.companyname)
intent.putExtra("email", company.email)
intent.putExtra("email1", company.email1)
intent.putExtra("email2", company.email2)
intent.putExtra("email3", company.email3)
intent.putExtra("address", company.address)
intent.putExtra("contact", company.contact)
intent.putExtra("companyId", companyId)
Log.d("TAG", "onBindViewHolder: "+company.contact.toString())
context.startActivity(intent)
}
}
override fun getItemCount() = customerList.size
}
Editor is loading...
Leave a Comment