diff --git a/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt b/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt index e3dd4669720cfbecaa59990224c1c14356bf1e88..e83576f837892dd934e0e3967bce63b65b501f7e 100644 --- a/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt +++ b/app/src/main/java/com/sleepee/bondoman/data/util/TransactionReceiver.kt @@ -4,11 +4,28 @@ import android.content.BroadcastReceiver import android.content.Context import android.content.Intent import android.util.Log +import com.sleepee.bondoman.data.model.TransactionDao +import com.sleepee.bondoman.data.model.TransactionDatabase +import kotlin.concurrent.thread class TransactionReceiver : BroadcastReceiver() { - + private lateinit var database: TransactionDatabase + private val transactionDao: TransactionDao by lazy { + database.getTransactionDao() + } override fun onReceive(context: Context, intent: Intent) { + database = TransactionDatabase.getDatabase(context) println(intent.action.toString()) - println(intent.getStringExtra("title")) + val formattedDate = TransactionUtils.getCurrentDate() + val title = intent.getStringExtra("title") + val amount = intent.getIntExtra("amount", 0) + val location = intent.getStringExtra("location") + val category = intent.getStringExtra("category") + println(amount) + + val transaction = TransactionUtils.convertToTransaction(title.toString(), amount, formattedDate, location.toString(), category.toString()) + thread { + transactionDao.createTransaction(transaction) + } } } \ No newline at end of file diff --git a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt index 8cd91f4052c422523c733df2cd49c4e3dc4a0579..a1f629470b92d0b647bb0753ed50b310b344cb1c 100644 --- a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt +++ b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SendTransactionDialogFragment.kt @@ -16,6 +16,8 @@ import androidx.fragment.app.DialogFragment import com.google.gson.Gson import com.sleepee.bondoman.R import com.sleepee.bondoman.data.model.Transaction +import com.sleepee.bondoman.data.util.CredentialManager +import com.sleepee.bondoman.data.util.TokenManager import com.sleepee.bondoman.data.util.TransactionUtils import org.apache.poi.hssf.usermodel.HSSFWorkbook import org.apache.poi.ss.usermodel.FillPatternType @@ -28,7 +30,7 @@ import java.io.FileOutputStream class SendTransactionDialogFragment : DialogFragment() { - private val email = "mindscape.02@gmail.com" + private val email = context?.let { CredentialManager.getEmail(it) } private val fileName = "Attachment" private var format = ".xlsx" private val sendVal = 215 diff --git a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt index 7414db900c11308e604293385432ca1512562f31..c16278c8d124e2d92d301617eb53ab35d786a93a 100644 --- a/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt +++ b/app/src/main/java/com/sleepee/bondoman/presentation/fragment/SettingsFragment.kt @@ -9,6 +9,7 @@ import android.widget.Button import android.widget.Toast import androidx.fragment.app.Fragment import com.sleepee.bondoman.databinding.FragmentSettingsBinding +import kotlin.random.Random class SettingsFragment: Fragment() { private lateinit var binding: FragmentSettingsBinding @@ -48,8 +49,22 @@ class SettingsFragment: Fragment() { acakButton.setOnClickListener { Intent().also { intent -> + + val titles = arrayOf("Jalan-Jalan", "Beli Geprek", "Beli Rendang", "Beli Minecraft", "Beli Sayuran", "Donasi", "Honor", "Gajian Cuy", "Jackpot", "Menang Give Away", "Gacor Kang") + val tidx = Random.nextInt(titles.size) + val pidx = 5 + val selectedTitle = titles[tidx] + val category = if (tidx <= pidx) "Pengeluaran" else "Pemasukan" + val amount = Random.nextInt(1000, 100001) + val locations = arrayOf("Cisistu", "Sangkuriang", "Dago", "Lembang", "ITB", "Jatinangor") + val lidx = Random.nextInt(locations.size) + val selectedLocation = locations[lidx] + intent.setAction("com.sleepee.bondoman.addTransaction") - intent.putExtra("title", "Beli Geprek") + intent.putExtra("title", selectedTitle) + intent.putExtra("amount", amount) + intent.putExtra("category", category) + intent.putExtra("location", selectedLocation) context?.sendBroadcast(intent) } Toast.makeText(requireContext(), "Randomized transaction has been broadcasted", Toast.LENGTH_SHORT).show() @@ -57,6 +72,7 @@ class SettingsFragment: Fragment() { keluarButton.setOnClickListener{ // TO DO Implement + } } } \ No newline at end of file