From e2fc293e6b82e6b210c36dfee715d5eb9b867b8e Mon Sep 17 00:00:00 2001 From: moon <56061215+MgKyawLay@users.noreply.github.com> Date: Wed, 1 Apr 2026 20:52:09 +0630 Subject: [PATCH] toast show when e-receipt success and failed --- app/build.gradle | 4 ++-- .../main/java/com/utsmm/kbz/MainActivity.java | 3 ++- .../ui/core_viewmodel/SharedViewModel.java | 19 ++++++++++++++++++- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 6c38b39..9abc76d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -14,8 +14,8 @@ android { applicationId "com.utsmm.kbz" minSdk 24 targetSdk 33 - versionCode 25 - versionName "2.5" + versionCode 28 + versionName "2.8" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/com/utsmm/kbz/MainActivity.java b/app/src/main/java/com/utsmm/kbz/MainActivity.java index 27cebfc..2c87574 100644 --- a/app/src/main/java/com/utsmm/kbz/MainActivity.java +++ b/app/src/main/java/com/utsmm/kbz/MainActivity.java @@ -178,6 +178,7 @@ public class MainActivity extends AppCompatActivity implements private void initViewModels() { sharedViewModel = new ViewModelProvider(this).get(SharedViewModel.class); + sharedViewModel.getToastMsg().observe(this, this::showToast); } private void setupUI() { @@ -674,4 +675,4 @@ public class MainActivity extends AppCompatActivity implements private void showToast(String message) { Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show(); } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java index 903af51..0a4cc12 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java +++ b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java @@ -1,5 +1,6 @@ package com.utsmm.kbz.ui.core_viewmodel; +import android.annotation.SuppressLint; import android.graphics.Bitmap; import android.util.Log; import android.widget.ListView; @@ -163,6 +164,7 @@ public class SharedViewModel extends ViewModel { public MutableLiveData loadingView = new MutableLiveData<>(8); public SingleLiveEvent loadingMsg = new SingleLiveEvent<>(); + private final SingleLiveEvent toastMsg = new SingleLiveEvent<>(); private SingleLiveEvent isFallback = new SingleLiveEvent<>(); private SingleLiveEvent isSeePhone = new SingleLiveEvent<>(); @@ -295,6 +297,14 @@ public class SharedViewModel extends ViewModel { loadingMsg.setValue(""); } + public SingleLiveEvent getToastMsg() { + return toastMsg; + } + + public void postToastMsg(String msg) { + toastMsg.postValue(msg); + } + public Observable getParams(SiriusRequest siriusRequest) { return repository.getParams(siriusRequest); } @@ -471,13 +481,17 @@ public class SharedViewModel extends ViewModel { } + @SuppressLint("CheckResult") public void pushReceipt(Object body){ Log.d("push receipt", new Gson().toJson(body)); repository.sendReceipt(body) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe( - response -> Log.d("E-Receipt", "Success =>"+ response.getMessage()), + response -> { + Log.d("E-Receipt", "Success =>"+ response.getMessage()); + postToastMsg("E-Receipt saved successfully"); + }, error -> { if (error instanceof HttpException) { HttpException httpEx = (HttpException) error; @@ -489,11 +503,14 @@ public class SharedViewModel extends ViewModel { // Parse JSON to model EReceiptResponse res = new Gson().fromJson(errorJson, EReceiptResponse.class); Log.e("E-Receipt", "Parsed Error => " + res.getMessage()); + postToastMsg("E-Receipt save failed!"); } catch (Exception e) { e.printStackTrace(); + postToastMsg("E-Receipt save failed!"); } } else { Log.e("E-Receipt", "Unexpected error => " + error.getMessage()); + postToastMsg("E-Receipt save failed!"); } } );