refund crash fixed
This commit is contained in:
parent
7452443a45
commit
ff9450a50c
@ -54,7 +54,6 @@ public class QRPayFragment extends DataBindingFragment {
|
||||
@Override
|
||||
protected DataBindingConfig getDataBindingConfig() {
|
||||
boolean isQrRefundEnable = SystemParamsOperation.getInstance().getQrRefundEnable();
|
||||
LogUtil.d("KMK", "isQrRefundEnable =>" + isQrRefundEnable);
|
||||
List<QRPayItem> features = new ArrayList<>();
|
||||
features.add(new QRPayItem("Sale", R.drawable.ic_qr_pay, true));
|
||||
if(isQrRefundEnable){
|
||||
|
||||
@ -149,7 +149,13 @@ public class QRRefundProcessFragment extends DataBindingFragment {
|
||||
payDetail.setIsCanceled(true);
|
||||
payDetail.setCustomerMobile(response.getResponse().getWalletIdentifier());
|
||||
payDetail.setTradeDateAndTime(response.getResponse().getRefundTime());
|
||||
EReceiptRequest request = EReceiptUtil.getInstance().generateQRRefundReceipt(sharedViewModel.payDetail.getValue(), TransResultStatus.SUCCESS);
|
||||
EReceiptRequest request = EReceiptUtil.getInstance().generateQRRefundReceipt(
|
||||
refundAmount,
|
||||
referenceNo,
|
||||
payDetail != null ? payDetail.getInvoiceNo() : "",
|
||||
payDetail != null ? payDetail.getVoucherNo() : "",
|
||||
TransResultStatus.SUCCESS
|
||||
);
|
||||
sharedViewModel.pushReceipt(request);
|
||||
|
||||
retrievedUpdatePayDetail(referenceNo);
|
||||
@ -165,7 +171,13 @@ public class QRRefundProcessFragment extends DataBindingFragment {
|
||||
errorMsg = response.getResponse().getMsg();
|
||||
}
|
||||
payDetail.setTradeResultDes(errorMsg);
|
||||
EReceiptRequest request = EReceiptUtil.getInstance().generateQRRefundReceipt(sharedViewModel.payDetail.getValue(), TransResultStatus.FAIL);
|
||||
EReceiptRequest request = EReceiptUtil.getInstance().generateQRRefundReceipt(
|
||||
"0",
|
||||
referenceNo,
|
||||
payDetail != null ? payDetail.getInvoiceNo() : "",
|
||||
payDetail != null ? payDetail.getVoucherNo() : "",
|
||||
TransResultStatus.FAIL
|
||||
);
|
||||
sharedViewModel.pushReceipt(request);
|
||||
|
||||
sharedViewModel.payDetail.setValue(payDetail);
|
||||
|
||||
@ -92,9 +92,15 @@ public class EReceiptUtil {
|
||||
return request;
|
||||
}
|
||||
|
||||
public EReceiptRequest generateQRRefundReceipt(PayDetail payDetail, TransResultStatus status) {
|
||||
|
||||
double realAmount = payDetail.getAmount() / 100.0;
|
||||
public EReceiptRequest generateQRRefundReceipt(
|
||||
String refundAmount,
|
||||
String referenceNo,
|
||||
String invoiceNo,
|
||||
String voucherNo,
|
||||
TransResultStatus status
|
||||
) {
|
||||
long amt = POSUtil.getInstance().convertAmount(refundAmount);
|
||||
double realAmount = amt / 100.0;
|
||||
DecimalFormat df = new DecimalFormat("0.00");
|
||||
String amount = df.format(realAmount);
|
||||
|
||||
@ -104,15 +110,15 @@ public class EReceiptUtil {
|
||||
request.setDE3("QRV");
|
||||
|
||||
request.setDE7(currentTimeStamp);
|
||||
request.setDE37(payDetail.getReferNo());
|
||||
request.setDE37(referenceNo);
|
||||
|
||||
request.setDE49("MMK");
|
||||
request.setSerial(serialNum);
|
||||
request.setAppId(packageName);
|
||||
request.setDE41(qrTerminalId);
|
||||
request.setDE42(qrMerchantId);
|
||||
request.setInvoiceNumber(payDetail.getInvoiceNo());
|
||||
request.setDE11(payDetail.getVoucherNo());
|
||||
request.setInvoiceNumber(invoiceNo != null ? invoiceNo : "");
|
||||
request.setDE11(voucherNo != null ? voucherNo : "");
|
||||
|
||||
// need to add payment identifier field too
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user