From 4ffdc1f67956e68f3834dbced7993c03371f05f0 Mon Sep 17 00:00:00 2001 From: moon <56061215+MgKyawLay@users.noreply.github.com> Date: Mon, 15 Jun 2026 23:32:27 +0630 Subject: [PATCH] signature in void --- .../kbz/ui/adapters/MyBindingAdapter.java | 14 +++++++ .../EmvTransactionProcessViewModel.java | 1 + .../core_viewmodel/TransProcessViewModel.java | 1 + .../res/layout/fragment_trans_info_screen.xml | 40 +++++++++++++++++++ app/src/main/res/values/strings.xml | 1 + .../paylibs/print/printx/BaseXPrint.java | 9 +++-- 6 files changed, 63 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/utsmm/kbz/ui/adapters/MyBindingAdapter.java b/app/src/main/java/com/utsmm/kbz/ui/adapters/MyBindingAdapter.java index 366cc31..84f015b 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/adapters/MyBindingAdapter.java +++ b/app/src/main/java/com/utsmm/kbz/ui/adapters/MyBindingAdapter.java @@ -2,6 +2,7 @@ package com.utsmm.kbz.ui.adapters; import android.annotation.SuppressLint; import android.graphics.Bitmap; +import android.graphics.BitmapFactory; import android.graphics.PorterDuff; import android.view.View; import android.view.ViewGroup; @@ -264,6 +265,19 @@ public class MyBindingAdapter { imageView.setImageBitmap(bitmap); } + @BindingAdapter("signatureBlob") + public static void setSignatureFromBlob(ImageView imageView, byte[] blob) { + if (blob != null && blob.length > 0) { + Bitmap bitmap = BitmapFactory.decodeByteArray(blob, 0, blob.length); + if (bitmap != null) { + imageView.setImageBitmap(bitmap); + imageView.setVisibility(View.VISIBLE); + return; + } + } + imageView.setVisibility(View.GONE); + } + @BindingAdapter({"mmpayData"}) public static void setMMPayQRCode(AppCompatImageView imageView,String data) { //250 diff --git a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/EmvTransactionProcessViewModel.java b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/EmvTransactionProcessViewModel.java index ebf42f2..6129e71 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/EmvTransactionProcessViewModel.java +++ b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/EmvTransactionProcessViewModel.java @@ -452,6 +452,7 @@ public class EmvTransactionProcessViewModel extends EmvBaseViewModel implements public void processVoidDB(PayDetail payResult) { mPayDetail.setIsCanceled(true); updatePayDetail(mPayDetail); + payResult.setESignBlob(mPayDetail.getESignBlob()); repository.insertPayDetail(updateCurrentDateAndTime(payResult)); } diff --git a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/TransProcessViewModel.java b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/TransProcessViewModel.java index 7e0709a..9328f4f 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/TransProcessViewModel.java +++ b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/TransProcessViewModel.java @@ -292,6 +292,7 @@ public class TransProcessViewModel extends ViewModel implements ProcessingTransa public void processVoidDB(PayDetail payResult) { payDetail.setIsCanceled(true); updatePayDetail(payDetail); + payResult.setESignBlob(payDetail.getESignBlob()); repository.insertPayDetail(updateCurrentDateAndTime(payResult)); } diff --git a/app/src/main/res/layout/fragment_trans_info_screen.xml b/app/src/main/res/layout/fragment_trans_info_screen.xml index 3d616af..65e850e 100644 --- a/app/src/main/res/layout/fragment_trans_info_screen.xml +++ b/app/src/main/res/layout/fragment_trans_info_screen.xml @@ -478,6 +478,46 @@ tools:text="12/12/2024 12:12:12" /> + + + + + + + + + + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 5fb336c..5a35d64 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -461,6 +461,7 @@ Batch Number Base Amount Date/Time + Signature TIP ADJUST NOT ALLOW WavePay Connecting to host diff --git a/paylibs/src/main/java/com/utsmyanmar/paylibs/print/printx/BaseXPrint.java b/paylibs/src/main/java/com/utsmyanmar/paylibs/print/printx/BaseXPrint.java index cfa4828..df00844 100644 --- a/paylibs/src/main/java/com/utsmyanmar/paylibs/print/printx/BaseXPrint.java +++ b/paylibs/src/main/java/com/utsmyanmar/paylibs/print/printx/BaseXPrint.java @@ -1420,9 +1420,12 @@ public abstract class BaseXPrint { } private void addSignatureBitmap(PayDetail payDetail) { - if (payDetail.getESignHexData() != null) { - Bitmap signatureBitmap = BitmapUtils.hexStringToBitmap(payDetail.getESignHexData()); - printer.appendImage(signatureBitmap, AlignEnum.CENTER); + byte[] blob = payDetail.getESignBlob(); + if (blob != null && blob.length > 0) { + Bitmap signatureBitmap = android.graphics.BitmapFactory.decodeByteArray(blob, 0, blob.length); + if (signatureBitmap != null) { + printer.appendImage(signatureBitmap, AlignEnum.CENTER); + } } }