package com.taf.attendance import android.content.Intent import android.os.Bundle import android.widget.ListView import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.lifecycleScope import com.taf.attendance.data.AttendanceRepository import com.taf.attendance.data.PayslipDto import kotlinx.coroutines.launch class PayslipsActivity : AppCompatActivity() { private lateinit var repo: AttendanceRepository override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_payslips) repo = AttendanceRepository(this) val list = findViewById(R.id.payslipList) lifecycleScope.launch { val slips = repo.myPayslips() val adapter = android.widget.ArrayAdapter( this@PayslipsActivity, android.R.layout.simple_list_item_1, slips.map { val period = if (it.start_date != null && it.end_date != null) { "${it.start_date} to ${it.end_date}" } else { "Period not available" } "${it.org_name ?: "Unknown Org"} - $period - $${it.net_pay}" } ) list.adapter = adapter list.setOnItemClickListener { _, _, position, _ -> val id = slips[position].id startActivity(Intent(this@PayslipsActivity, PayslipViewActivity::class.java).putExtra("id", id)) } } } }