diff --git a/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt b/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt index 34f65ddee77160f438a18db9de1e58bd2284b244..52b63050d563695799b81b4d3222b160e68f6526 100644 --- a/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt +++ b/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt @@ -130,8 +130,8 @@ class SettingsFragment : Fragment() { resetButton.setOnClickListener{ Toast.makeText(appContext, "Transaksi di-reset ...", Toast.LENGTH_SHORT).show() showConfirmationDialog("Reset", "Apakah Anda yakin ingin me-reset data transaksi?") { - //todo - + transactionsViewModel.deleteAllTransactions() + Toast.makeText(appContext, "Transaksi berhasil di-reset ...", Toast.LENGTH_SHORT).show() } } diff --git a/app/src/main/java/com/example/bondoyap/ui/transactions/TransactionsViewModel.kt b/app/src/main/java/com/example/bondoyap/ui/transactions/TransactionsViewModel.kt index 3f5582da6b50d2bb0f8c9f03e2a5e644e783f247..e5d26b61b11d09aaef1e41fdfcbbf6cb3f35bbd0 100644 --- a/app/src/main/java/com/example/bondoyap/ui/transactions/TransactionsViewModel.kt +++ b/app/src/main/java/com/example/bondoyap/ui/transactions/TransactionsViewModel.kt @@ -32,6 +32,10 @@ class TransactionsViewModel( suspend fun getAllTransactionsList(): List<Transactions> { return repository.getAllTransactionsList() } + + fun deleteAllTransactions() = viewModelScope.launch { + repository.deleteAllTransactions() + } } class TransactionsViewModelFactory(private val repository: TransactionsRepository): ViewModelProvider.Factory { diff --git a/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsDao.kt b/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsDao.kt index 00dd1fc2a43c15e7ee6ac69ca1d725245c1b554c..a6701873192e576ebe17d6f2b8ed31706c7cac85 100644 --- a/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsDao.kt +++ b/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsDao.kt @@ -23,4 +23,7 @@ interface TransactionsDao { @Query("SELECT * FROM transactions WHERE transactions.id == :transactionsId") suspend fun getTransactionById(transactionsId: Int?): Transactions + + @Query("DELETE FROM transactions") + suspend fun deleteAllTransactions() } \ No newline at end of file diff --git a/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsRepository.kt b/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsRepository.kt index c376411c484b935896c904d94217d7c0dc023b15..752e4e908bbf87e6eb62ca6ad7551a7ff0071359 100644 --- a/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsRepository.kt +++ b/app/src/main/java/com/example/bondoyap/ui/transactions/data/TransactionsRepository.kt @@ -23,4 +23,9 @@ class TransactionsRepository(private val transactionsDao: TransactionsDao) { suspend fun getAllTransactionsList(): List<Transactions> { return transactionsDao.getTransactionsList() } + + @WorkerThread + suspend fun deleteAllTransactions() { + transactionsDao.deleteAllTransactions() + } } \ No newline at end of file