Merge branch 'merge_latest_SIT' of https://hub.utsmyanmar.com/Kyaw_Min_Khant/KBZ-POS into merge_latest_SIT
This commit is contained in:
commit
a1c0f55472
@ -27,6 +27,7 @@ public class ManagementViewModel extends ViewModel {
|
||||
public SingleLiveEvent<String> processCodeText = new SingleLiveEvent<>();
|
||||
|
||||
public SingleLiveEvent<PayDetail> payDetail = new SingleLiveEvent<>();
|
||||
public SingleLiveEvent<List<PayDetail>> payDetails = new SingleLiveEvent<>();
|
||||
|
||||
public SingleLiveEvent<String> panErrorMsg = new SingleLiveEvent<>();
|
||||
|
||||
@ -75,6 +76,10 @@ public class ManagementViewModel extends ViewModel {
|
||||
return repository.getLastSettlement(voucherNo);
|
||||
}
|
||||
|
||||
public LiveData<List<PayDetail>> getLastSettlementQR(String voucherNo){
|
||||
return repository.getLastSettlementQR(voucherNo);
|
||||
}
|
||||
|
||||
public LiveData<List<PayDetail>> getLastTransaction(String voucherNo){
|
||||
return repository.getLastTransaction(voucherNo);
|
||||
}
|
||||
|
||||
@ -72,6 +72,7 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi
|
||||
}
|
||||
}
|
||||
|
||||
checkQRButtonVisibility();
|
||||
// try {
|
||||
// int result = MyApplication.getInstance().basicOptBinder.setScreenMode(1);
|
||||
// } catch (RemoteException e) {
|
||||
@ -168,14 +169,16 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi
|
||||
|
||||
observerData();
|
||||
|
||||
isReturnTransactions();
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void isReturnTransactions() {
|
||||
if(sharedViewModel.getTransMenu().getValue() == TransMenu.VOID || sharedViewModel.getTransMenu().getValue() == TransMenu.PRE_AUTH_COMPLETE_VOID || sharedViewModel.getTransMenu().getValue() == TransMenu.REVERSAL || sharedViewModel.getTransMenu().getValue() == TransMenu.PRE_AUTH_FULL_VOID) {
|
||||
private void checkQRButtonVisibility() {
|
||||
if(sharedViewModel.getTransMenu().getValue() == TransMenu.VOID || sharedViewModel.getTransMenu().getValue() == TransMenu.PRE_AUTH_COMPLETE_VOID || sharedViewModel.getTransMenu().getValue() == TransMenu.REVERSAL || sharedViewModel.getTransMenu().getValue() == TransMenu.PRE_AUTH_FULL_VOID || sharedViewModel.getTransMenu().getValue() == TransMenu.LAST_SETTLEMENT) {
|
||||
sharedViewModel.qrPayVisibility.setValue(8);
|
||||
} else {
|
||||
sharedViewModel.qrPayVisibility.setValue(0);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -268,6 +271,7 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi
|
||||
public void onChanged(List<PayDetail> payDetails) {
|
||||
if (payDetails != null) {
|
||||
if (!payDetails.isEmpty()) {
|
||||
managementViewModel.payDetails.setValue(payDetails);
|
||||
routeId = R.id.action_selectHostFragment_to_settlementTransactionFragment;
|
||||
} else {
|
||||
showSingleInfoDialog(getString(R.string.txt_no_trans_to_print));
|
||||
@ -283,6 +287,7 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
private void observeRoute() {
|
||||
switch (Objects.requireNonNull(sharedViewModel.getTransMenu().getValue())) {
|
||||
case REVERSAL:
|
||||
@ -296,13 +301,14 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi
|
||||
clearBatch();
|
||||
break;
|
||||
case LAST_SETTLEMENT:
|
||||
if(sharedViewModel.hostType.getValue() == HostType.MPU)
|
||||
observeLastSettlement();
|
||||
else {
|
||||
showSingleInfoDialog(getString(R.string.txt_no_trans_to_print));
|
||||
routeId = R.id.action_selectHostFragment_to_nav_main;
|
||||
safeNavigateToRouteId();
|
||||
}
|
||||
observeLastSettlement();
|
||||
// if(sharedViewModel.hostType.getValue() != HostType.QR) {
|
||||
// observeLastSettlement();
|
||||
// } else {
|
||||
// showSingleInfoDialog(getString(R.string.txt_no_trans_to_print));
|
||||
// routeId = R.id.action_selectHostFragment_to_nav_main;
|
||||
// safeNavigateToRouteId();
|
||||
// }
|
||||
break;
|
||||
case CLEAR_REVERSAL:
|
||||
clearReversal();
|
||||
|
||||
@ -18,6 +18,7 @@ import com.utsmyanmar.paylibs.model.TradeData;
|
||||
import com.utsmyanmar.paylibs.utils.POSUtil;
|
||||
import com.utsmyanmar.paylibs.utils.core_utils.SystemParamsOperation;
|
||||
import com.utsmyanmar.paylibs.utils.enums.HostType;
|
||||
import com.utsmyanmar.paylibs.utils.enums.TransMenu;
|
||||
import com.utsmyanmar.paylibs.utils.iso_utils.TransactionsType;
|
||||
import com.utsmyanmar.paylibs.utils.params.Params;
|
||||
import com.utsmm.kbz.BR;
|
||||
@ -84,15 +85,31 @@ public class QRSettlementTransactionFragment extends DataBindingFragment impleme
|
||||
sharedViewModel.merchantName.postValue("Default Value");
|
||||
}
|
||||
|
||||
if(sharedViewModel.getTransMenu().getValue() == TransMenu.LAST_SETTLEMENT) {
|
||||
setToolBarTitleWithBackIcon(getString(R.string.txt_subtitle_reprint_last_settle_report));
|
||||
delayFunctionCall(this::observeQRLastSettlementTransactions);
|
||||
} else {
|
||||
setToolBarTitleWithBackIcon(getString(R.string.title_view_batch));
|
||||
delayFunctionCall(this::observeQRTransactions);
|
||||
}
|
||||
|
||||
showLoadingView();
|
||||
setupQRSettlementData();
|
||||
// setupQRSettlementData();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
setupBackButtonPressDetection(this);
|
||||
observeQRTransactions();
|
||||
|
||||
setupQRSettlementData();
|
||||
}
|
||||
|
||||
private void showLoadingView() {
|
||||
@ -163,7 +180,52 @@ public class QRSettlementTransactionFragment extends DataBindingFragment impleme
|
||||
});
|
||||
}
|
||||
|
||||
private void observeQRLastSettlementTransactions() {
|
||||
List<PayDetail> payDetailList = managementViewModel.payDetails.getValue();
|
||||
if( payDetailList != null) {
|
||||
qrTransactionsList.clear();
|
||||
count = 0;
|
||||
totalAmount = 0;
|
||||
|
||||
for (PayDetail payDetail : payDetailList) {
|
||||
// Filter for QR transactions only
|
||||
if ((payDetail.getTransactionType() == TransactionsType.MMQR.value
|
||||
|| payDetail.getTransactionType() == TransactionsType.MMQR_REFUND.value)
|
||||
&& payDetail.getQrTransStatus() == 1
|
||||
&& POSUtil.getInstance().getYesterdayDate().compareTo(POSUtil.getInstance().getDateByString(payDetail.transDate)) < 1) {
|
||||
|
||||
boolean isNeedMinusSign = payDetail.getTransactionType() == TransactionsType.MMQR_REFUND.value;
|
||||
qrTransactionsList.add(payDetail);
|
||||
count++;
|
||||
if (isNeedMinusSign) {
|
||||
totalAmount -= payDetail.getAmount();
|
||||
} else {
|
||||
totalAmount += payDetail.getAmount();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (qrTransactionsList.isEmpty()) {
|
||||
showEmptyDataView();
|
||||
settlementViewModel.isNoData.setValue(true);
|
||||
} else {
|
||||
showDataView();
|
||||
settlementViewModel.isNoData.setValue(false);
|
||||
}
|
||||
|
||||
setupSettlementDisplayData();
|
||||
|
||||
} else {
|
||||
showEmptyDataView();
|
||||
settlementViewModel.isNoData.setValue(true);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void setupSettlementDisplayData() {
|
||||
|
||||
// Calculate QR sale and refund counts/amounts
|
||||
int qrSaleCount = 0;
|
||||
long qrSaleAmount = 0;
|
||||
@ -199,7 +261,11 @@ public class QRSettlementTransactionFragment extends DataBindingFragment impleme
|
||||
payDetail.setAmount(totalAmount);
|
||||
payDetail.setTradeAnswerCode("000");
|
||||
|
||||
sharedViewModel.insertPayDetail(payDetail);
|
||||
if(sharedViewModel.getTransMenu().getValue() != TransMenu.LAST_SETTLEMENT) {
|
||||
sharedViewModel.insertPayDetail(payDetail);
|
||||
}
|
||||
|
||||
|
||||
sharedViewModel.setAmount(String.valueOf(qrSaleAmount - qrRefundAmount));
|
||||
|
||||
sharedViewModel.payDetail.setValue(payDetail);
|
||||
@ -233,24 +299,40 @@ public class QRSettlementTransactionFragment extends DataBindingFragment impleme
|
||||
popBackStack();
|
||||
}
|
||||
|
||||
private void navigateToMain() {
|
||||
routeId = R.id.action_QRSettlementTransactionFragment_to_nav_main;
|
||||
safeNavigateToRouteId();
|
||||
}
|
||||
|
||||
public class ClickEvent {
|
||||
|
||||
public void onCancel() {
|
||||
if (sharedViewModel.isEcr.getValue() != null && sharedViewModel.isEcr.getValue()) {
|
||||
finishECRProcess();
|
||||
if(sharedViewModel.getTransMenu().getValue() == TransMenu.SETTLEMENT) {
|
||||
if (sharedViewModel.isEcr.getValue() != null && sharedViewModel.isEcr.getValue()) {
|
||||
finishECRProcess();
|
||||
}
|
||||
popBackStack();
|
||||
} else if(sharedViewModel.getTransMenu().getValue() == TransMenu.LAST_SETTLEMENT) {
|
||||
navigateToMain();
|
||||
}
|
||||
popBackStack();
|
||||
|
||||
}
|
||||
|
||||
public void onConfirm() {
|
||||
if (!qrTransactionsList.isEmpty()) {
|
||||
for (PayDetail payDetail : qrTransactionsList) {
|
||||
settlementViewModel.deletePayDetail(payDetail);
|
||||
}
|
||||
if(sharedViewModel.getTransMenu().getValue() == TransMenu.SETTLEMENT) {
|
||||
if (!qrTransactionsList.isEmpty()) {
|
||||
for (PayDetail payDetail : qrTransactionsList) {
|
||||
settlementViewModel.deletePayDetail(payDetail);
|
||||
}
|
||||
|
||||
updateData();
|
||||
navigateToResult();
|
||||
updateData();
|
||||
navigateToResult();
|
||||
}
|
||||
} else if(sharedViewModel.getTransMenu().getValue() == TransMenu.LAST_SETTLEMENT) {
|
||||
routeId = R.id.action_QRSettlementTransactionFragment_to_reprintReceiptFragment;
|
||||
safeNavigateToRouteId();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -322,6 +322,12 @@
|
||||
app:popUpToInclusive="true"
|
||||
android:id="@+id/action_QRSettlementTransactionFragment_to_transactionResultFragment"
|
||||
app:destination="@id/transactionResultFragment" />
|
||||
<action
|
||||
app:launchSingleTop="true"
|
||||
app:popUpTo="@+id/mobile_navigation"
|
||||
app:popUpToInclusive="true"
|
||||
android:id="@+id/action_QRSettlementTransactionFragment_to_reprintReceiptFragment"
|
||||
app:destination="@id/reprintReceiptFragment" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/transactionHistoryFragment"
|
||||
@ -786,6 +792,12 @@
|
||||
app:popUpToInclusive="true"
|
||||
android:id="@+id/action_selectHostFragment_to_settlementTransactionFragment"
|
||||
app:destination="@id/settlementTransactionFragment" />
|
||||
<action
|
||||
app:launchSingleTop="true"
|
||||
app:popUpTo="@+id/selectHostFragment"
|
||||
app:popUpToInclusive="true"
|
||||
android:id="@+id/action_selectHostFragment_to_QRSettlementTransactionFragment"
|
||||
app:destination="@id/QRSettlementTransactionFragment" />
|
||||
<action
|
||||
app:launchSingleTop="true"
|
||||
app:popUpTo="@+id/selectHostFragment"
|
||||
|
||||
@ -127,6 +127,9 @@ public interface PayDetailDao {
|
||||
@Query("SELECT * FROM paydetail WHERE transactionType = 3 AND voucherNo <= :voucherNo")
|
||||
LiveData<List<PayDetail>> getLastSettlement(String voucherNo);
|
||||
|
||||
@Query("SELECT * FROM paydetail WHERE transactionType = 35 AND voucherNo <= :voucherNo")
|
||||
LiveData<List<PayDetail>> getLastSettlementQR(String voucherNo);
|
||||
|
||||
// @Query("SELECT * FROM paydetail WHERE transactionType != 10 AND voucherNo <= :voucherNo")
|
||||
@Query("SELECT * FROM paydetail WHERE transactionType != 10 AND voucherNo IN(:voucherNo)")
|
||||
LiveData<List<PayDetail>> getLastTransaction(String voucherNo);
|
||||
|
||||
@ -285,8 +285,8 @@ public class NetworkModule {
|
||||
tmsAddress = getTMSUrlFromNative();
|
||||
}
|
||||
|
||||
// String baseUrl = tmsAddress.trim() + "/api/v1/";
|
||||
String baseUrl = tmsAddress.trim() + "/";
|
||||
String baseUrl = tmsAddress.trim() + "/api/v1/";
|
||||
// String baseUrl = tmsAddress.trim() + "/";
|
||||
|
||||
final Gson gson =
|
||||
new GsonBuilder().create();
|
||||
|
||||
@ -137,6 +137,7 @@ public class Repository {
|
||||
public LiveData<List<PayDetail>> getTransactionHistory(){ return payDetailDao.getTransactionHistory();}
|
||||
|
||||
public LiveData<List<PayDetail>> getLastSettlement(String voucherNo) { return payDetailDao.getLastSettlement(voucherNo);}
|
||||
public LiveData<List<PayDetail>> getLastSettlementQR(String voucherNo) { return payDetailDao.getLastSettlementQR(voucherNo);}
|
||||
|
||||
public LiveData<List<PayDetail>> getLastTransaction(String voucherNo) { return payDetailDao.getLastTransaction(voucherNo);}
|
||||
|
||||
|
||||
BIN
paylibs/src/main/assets/fonts/ubuntu_mono.ttf
Normal file
BIN
paylibs/src/main/assets/fonts/ubuntu_mono.ttf
Normal file
Binary file not shown.
@ -9,6 +9,8 @@ import android.os.Build;
|
||||
import android.os.RemoteException;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.core.content.res.ResourcesCompat;
|
||||
|
||||
import com.nexgo.oaf.apiv3.SdkResult;
|
||||
import com.nexgo.oaf.apiv3.device.printer.AlignEnum;
|
||||
import com.nexgo.oaf.apiv3.device.printer.DotMatrixFontEnum;
|
||||
@ -20,6 +22,7 @@ import com.sunmi.pay.hardware.aidl.AidlConstants;
|
||||
import com.sunmi.peripheral.printer.InnerResultCallback;
|
||||
import com.utsmyanmar.paylibs.Constant;
|
||||
import com.utsmyanmar.paylibs.PayLibsUtils;
|
||||
import com.utsmyanmar.paylibs.R;
|
||||
import com.utsmyanmar.paylibs.model.MsgField;
|
||||
import com.utsmyanmar.paylibs.model.PayDetail;
|
||||
import com.utsmyanmar.paylibs.model.SettleData;
|
||||
@ -77,8 +80,13 @@ public abstract class BaseXPrint {
|
||||
protected final int FONT_SIZE_SMALL = 20;
|
||||
protected final int FONT_SIZE_NORMAL = 24;
|
||||
protected final int FONT_SIZE_BIG = 24;
|
||||
protected FontEntity fontSmall = new FontEntity(DotMatrixFontEnum.CH_SONG_20X20, DotMatrixFontEnum.ASC_SONG_8X16);
|
||||
protected FontEntity fontNormal = new FontEntity(DotMatrixFontEnum.CH_SONG_24X24, DotMatrixFontEnum.ASC_SONG_12X24);
|
||||
|
||||
protected int fontSmall = 20;
|
||||
// protected FontEntity fontSmall = new FontEntity(DotMatrixFontEnum.CH_SONG_20X20, DotMatrixFontEnum.ASC_SONG_8X16);
|
||||
|
||||
protected int fontNormal = 25;
|
||||
|
||||
// protected FontEntity fontNormal = new FontEntity(DotMatrixFontEnum.CH_SONG_24X24, DotMatrixFontEnum.ASC_SONG_12X24);
|
||||
protected FontEntity fontBold = new FontEntity(DotMatrixFontEnum.CH_SONG_24X24, DotMatrixFontEnum.ASC_SONG_BOLD_16X24);
|
||||
protected FontEntity fontBig = new FontEntity(DotMatrixFontEnum.CH_SONG_24X24, DotMatrixFontEnum.ASC_SONG_12X24, false, true);
|
||||
|
||||
@ -107,7 +115,9 @@ public abstract class BaseXPrint {
|
||||
// LogUtil.d(TAG, Arrays.toString(returnText));
|
||||
// printer.setTypeface(Typeface.DEFAULT);
|
||||
Resources resources = PayLibsUtils.getInstance().context.getResources();
|
||||
printer.setTypeface(Typeface.createFromAsset(PayLibsUtils.getInstance().context.getAssets(), "consolas.ttf"));
|
||||
// Typeface typeface = ResourcesCompat.getFont(PayLibsUtils.getInstance().context, R.font.consolas);
|
||||
// printer.setTypeface(typeface);
|
||||
printer.setTypeface(Typeface.createFromAsset(PayLibsUtils.getInstance().context.getAssets(), "fonts/ubuntu_mono.ttf"));
|
||||
printer.setGray(getGrayLevel());
|
||||
|
||||
}
|
||||
@ -144,7 +154,7 @@ public abstract class BaseXPrint {
|
||||
protected void emptyLine(int no) {
|
||||
|
||||
for (int i = 0; i < no; i++) {
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
|
||||
@ -176,22 +186,22 @@ public abstract class BaseXPrint {
|
||||
}
|
||||
|
||||
protected void lineBreak() {
|
||||
printer.appendPrnStr("******************************", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("******************************", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
}
|
||||
|
||||
protected void dashBreak() {
|
||||
printer.appendPrnStr("------------------------------", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("------------------------------", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
}
|
||||
|
||||
protected void dashBreakEnding() {
|
||||
printer.appendPrnStr("--------X----------X----------", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("--------X----------X----------", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
}
|
||||
|
||||
protected void breakingLine() {
|
||||
printer.appendPrnStr("******************************", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("******************************", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
}
|
||||
|
||||
@ -243,9 +253,9 @@ public abstract class BaseXPrint {
|
||||
|
||||
String receiptFooter = SystemParamsOperation.getInstance().getReceiptFooter();
|
||||
String finalVersion = SystemParamsOperation.getInstance().getFinalVersion();
|
||||
printer.appendPrnStr("***** MERCHANT COPY *****", fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(finalVersion, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("***** MERCHANT COPY *****", fontNormal, AlignEnum.CENTER,false);
|
||||
printer.appendPrnStr(finalVersion, fontNormal, AlignEnum.CENTER,false);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER,false);
|
||||
|
||||
|
||||
}
|
||||
@ -296,7 +306,7 @@ public abstract class BaseXPrint {
|
||||
if (payDetail.getTradeAnswerCode().equals("00") || payDetail.getTradeAnswerCode().equals("000")) {
|
||||
String currencySign = currencyCodeToText(payDetail.getCurrencyCode());
|
||||
if (payDetail.getTransactionType() == TransactionType.BALANCE_INQUIRY) {
|
||||
printer.appendPrnStr("MMK " + PrintUtils.getInstance().getBalanceInquiryNumberFormat(payDetail.getAmount()), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("MMK " + PrintUtils.getInstance().getBalanceInquiryNumberFormat(payDetail.getAmount()), fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
} else if (payDetail.getTransactionType() == TransactionType.VOID || payDetail.getTransactionType() == TransactionType.REFUND || payDetail.getTransactionType() == TransactionType.PRE_SALE_CANCEL || payDetail.getTransactionType() == TransactionType.PRE_SALE_COMPLETE_VOID) {
|
||||
print2ColumnsStringNoSpace("TOTAL " + currencySign, "- " + PrintUtils.getInstance().getSeparatorNumberFormat(payDetail.getAmount()));
|
||||
@ -310,8 +320,8 @@ public abstract class BaseXPrint {
|
||||
|
||||
lineBreak();
|
||||
emptyLine(2);
|
||||
printer.appendPrnStr("TRANSACTION FAIL", fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(BaseErrorCode.getCode(payDetail.getTradeAnswerCode()), fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("TRANSACTION FAIL", fontNormal, AlignEnum.CENTER,true);
|
||||
printer.appendPrnStr(BaseErrorCode.getCode(payDetail.getTradeAnswerCode()), fontNormal, AlignEnum.CENTER,true);
|
||||
|
||||
emptyLine(2);
|
||||
lineBreak();
|
||||
@ -370,33 +380,33 @@ public abstract class BaseXPrint {
|
||||
batchNum = payDetail.getBatchNo();
|
||||
|
||||
|
||||
printer.appendPrnStr("DATE :" + payDetail.getTransDate() + " TIME: " + payDetail.getTransTime(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("DATE :" + payDetail.getTransDate() + " TIME: " + payDetail.getTransTime(), fontNormal, AlignEnum.LEFT,false);
|
||||
if (Objects.equals(payDetail.getAccountType(), CardScheme.MPU_CTLS.name)) {
|
||||
hostName = HOST_NAME_MPU;
|
||||
} else {
|
||||
hostName = HOST_NAME_VM;
|
||||
}
|
||||
printer.appendPrnStr("HOST:" + hostName, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("TID :" + payDetail.getTerminalNo(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("MID :" + payDetail.getMerchantNo(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("HOST:" + hostName, fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("TID :" + payDetail.getTerminalNo(), fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("MID :" + payDetail.getMerchantNo(), fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
if (payDetail.getTransType().equals("SUMMARY_REPORT")) {
|
||||
printer.appendPrnStr("BATCH NO :" + batchNum, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("BATCH NO :" + batchNum, fontNormal, AlignEnum.LEFT,false);
|
||||
} else {
|
||||
// printer.printColumnsString(new String[]{"BATCH NO :" + batchNum, "INV NO: " + invoiceNo}, new int[]{2, 2}, new int[]{0, 2}, null);
|
||||
printer.appendPrnStr("BATCH NO :" + batchNum + " TRACE NO:" + traceNo, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("BATCH NO :" + batchNum + " TRACE NO:" + traceNo, fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
|
||||
printer.appendPrnStr(transType.replace("_", " "), fontBold, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(transType.replace("_", " "), fontNormal, AlignEnum.CENTER,true);
|
||||
|
||||
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
}
|
||||
|
||||
@ -406,52 +416,52 @@ public abstract class BaseXPrint {
|
||||
String schemeName = "";
|
||||
schemeName = payDetail.getAccountType() == null ? "" : payDetail.getAccountType();
|
||||
|
||||
// printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(PrintUtils.getInstance().maskCardNumberPciDss(payDetail.getCardNo()), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(PrintUtils.getInstance().getFormatExpDateWithSlash(payDetail.getEXPDate()), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(PrintUtils.getInstance().getEntryType(payDetail.getCardType()) + " ENTRY", fontNormal, AlignEnum.LEFT);
|
||||
// printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr(PrintUtils.getInstance().maskCardNumberPciDss(payDetail.getCardNo()), fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr(PrintUtils.getInstance().getFormatExpDateWithSlash(payDetail.getEXPDate()), fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr(PrintUtils.getInstance().getEntryType(payDetail.getCardType()) + " ENTRY", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
if (payDetail.getTradeAnswerCode().equals(Constant.ANSWER_CODE_APPROVED) || payDetail.getTradeAnswerCode().equals(Constant.ANSWER_CODE_ACCEPT)) {
|
||||
printer.appendPrnStr("APPR CODE:" + payDetail.getApprovalCode(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("APPR CODE:" + payDetail.getApprovalCode(), fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
// manual entry or refund
|
||||
if (payDetail.getCardType() == -1 || payDetail.getTransactionType() == TransactionsType.REFUND.value) {
|
||||
printer.appendPrnStr("RRN:" + payDetail.getReferNo(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("RRN:" + payDetail.getReferNo(), fontNormal, AlignEnum.LEFT,false);
|
||||
} else {
|
||||
printer.appendPrnStr("RRN:" + payDetail.getReferNo() + " TVR:" + payDetail.getTVR(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("TSI :" + payDetail.getTSI(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("TC :" + payDetail.getArqC(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("RRN:" + payDetail.getReferNo() + " TVR:" + payDetail.getTVR(), fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("TSI :" + payDetail.getTSI(), fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("TC :" + payDetail.getArqC(), fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
}
|
||||
|
||||
} else {
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("TVR :" + payDetail.getTVR(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("TVR :" + payDetail.getTVR(), fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
//actually we can remove
|
||||
if (payDetail.getCardType() != -1 || payDetail.getTransactionType() != TransactionsType.REFUND.value) {
|
||||
printer.appendPrnStr("AID :" + payDetail.getAID(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("APP NAME :" + payDetail.getAppLabel(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("AID :" + payDetail.getAID(), fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("APP NAME :" + payDetail.getAppLabel(), fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
// check is pin change
|
||||
if (payDetail.getTradeAnswerCode().equals("00") || payDetail.getTradeAnswerCode().equals("000")) {
|
||||
|
||||
String currencySign = currencyCodeToText(payDetail.getCurrencyCode());
|
||||
// CurrencyType currencySign = currencyTextToCurrencyType(payDetail.getCurrencyCode());
|
||||
if (payDetail.getTransactionType() == TransactionType.BALANCE_INQUIRY) {
|
||||
printer.appendPrnStr("MMK " + PrintUtils.getInstance().getBalanceInquiryNumberFormat(payDetail.getAmount()), fontBold, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("MMK " + PrintUtils.getInstance().getBalanceInquiryNumberFormat(payDetail.getAmount()), fontNormal, AlignEnum.LEFT,true);
|
||||
} else {
|
||||
printer.appendPrnStr("TOTAL " + currencySign + " " + PrintUtils.getInstance().getSeparatorNumberFormat(payDetail.getAmount()), fontBold, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("TOTAL " + currencySign + " " + PrintUtils.getInstance().getSeparatorNumberFormat(payDetail.getAmount()), fontNormal, AlignEnum.LEFT,true);
|
||||
}
|
||||
} else {
|
||||
|
||||
lineBreak();
|
||||
emptyLine(3);
|
||||
printer.appendPrnStr(BaseErrorCode.getCode(payDetail.getTradeAnswerCode()), fontBold, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(BaseErrorCode.getCode(payDetail.getTradeAnswerCode()), fontNormal, AlignEnum.CENTER,true);
|
||||
emptyLine(3);
|
||||
lineBreak();
|
||||
}
|
||||
@ -467,7 +477,7 @@ public abstract class BaseXPrint {
|
||||
if (isNegative) {
|
||||
amountString = "-" + amountString;
|
||||
}
|
||||
printer.appendPrnStr(label + countStringFormat(count) + MMK + " " + PrintUtils.getInstance().getSeparatorNumberFormat(amount), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(label + countStringFormat(count) + MMK + " " + PrintUtils.getInstance().getSeparatorNumberFormat(amount), fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
}
|
||||
@ -484,20 +494,20 @@ public abstract class BaseXPrint {
|
||||
|
||||
if (settleData.getSaleCount() == 0 && settleData.getVoidSaleCount() == 0 && settleData.getWavePayCount() == 0 && settleData.getCashAdvanceCount() == 0) {
|
||||
printErrorBlock("NO TRANSACTION FOUND");
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
return;
|
||||
}
|
||||
if (payDetail.getAccountType().equals("WALLET")) {
|
||||
printer.appendPrnStr("PAYMENT NAME: QR", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("PAYMENT NAME: QR", fontNormal, AlignEnum.LEFT,false);
|
||||
} else {
|
||||
printer.appendPrnStr("CARD NAME:" + payDetail.getAccountType(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("CARD NAME:" + payDetail.getAccountType(), fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
printer.appendPrnStr(" " + "COUNT " + " " + " TOTAL", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(" " + "COUNT " + " " + " TOTAL", fontNormal, AlignEnum.LEFT,false);
|
||||
// printer.printColumnsString(new String[]{"", "COUNT", "TOTAL"}, new int[]{2,1, 1}, new int[]{ 2,1, 2}, innerResultCallback);
|
||||
emptyLine(1);
|
||||
if (settleData.getSaleCount() > 0)
|
||||
printColumnString("SALES", settleData.getSaleCount(), settleData.getSaleAmount(), false);
|
||||
// printer.appendPrnStr("SALES "+ countStringFormat(settleData.getSaleCount())+MMK+" "+ PrintUtils.getInstance().getSeparatorNumberFormat(settleData.getSaleAmount()), fontNormal, AlignEnum.LEFT);
|
||||
// printer.appendPrnStr("SALES "+ countStringFormat(settleData.getSaleCount())+MMK+" "+ PrintUtils.getInstance().getSeparatorNumberFormat(settleData.getSaleAmount()), fontNormal, AlignEnum.LEFT,false);
|
||||
if (settleData.getVoidSaleCount() > 0)
|
||||
printColumnString("VOID SALES", settleData.getVoidSaleCount(), settleData.getVoidSaleAmount(), true);
|
||||
if (settleData.getCashAdvanceCount() > 0)
|
||||
@ -520,14 +530,14 @@ public abstract class BaseXPrint {
|
||||
printColumnString("TOTAL", totalCount, totalAmount, false);
|
||||
|
||||
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("GRAND TOTAL", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(" " + "COUNT " + " " + " TOTAL", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("GRAND TOTAL", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr(" " + "COUNT " + " " + " TOTAL", fontNormal, AlignEnum.LEFT,false);
|
||||
// printer.printColumnsString(new String[]{"", "COUNT", "TOTAL"}, new int[]{2,1, 1}, new int[]{ 2,1, 2}, innerResultCallback);
|
||||
emptyLine(1);
|
||||
if (settleData.getSaleCount() > 0)
|
||||
printColumnString("SALES", settleData.getSaleCount(), settleData.getSaleAmount(), false);
|
||||
// printer.appendPrnStr("SALES "+ countStringFormat(settleData.getSaleCount())+MMK+" "+ PrintUtils.getInstance().getSeparatorNumberFormat(settleData.getSaleAmount()), fontNormal, AlignEnum.LEFT);
|
||||
// printer.appendPrnStr("SALES "+ countStringFormat(settleData.getSaleCount())+MMK+" "+ PrintUtils.getInstance().getSeparatorNumberFormat(settleData.getSaleAmount()), fontNormal, AlignEnum.LEFT,false);
|
||||
if (settleData.getVoidSaleCount() > 0)
|
||||
printColumnString("VOID SALES", settleData.getVoidSaleCount(), settleData.getVoidSaleAmount(), true);
|
||||
if (settleData.getCashAdvanceCount() > 0)
|
||||
@ -549,8 +559,8 @@ public abstract class BaseXPrint {
|
||||
dashBreak();
|
||||
printColumnString("TOTAL", totalCount, totalAmount, false);
|
||||
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
|
||||
}
|
||||
@ -594,28 +604,28 @@ public abstract class BaseXPrint {
|
||||
}*/
|
||||
|
||||
protected void printString(String text) {
|
||||
printer.appendPrnStr(text, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(text, fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
protected void print2ColumnsString(String first, String second) {
|
||||
printer.appendPrnStr(first + " " + second, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(first + " " + second, fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
protected void print2ColumnsStringNoSpace(String first, String second) {
|
||||
printer.appendPrnStr(first + " " + second, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(first + " " + second, fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
protected void print2ColumnsStringBold(String first, String second) {
|
||||
printer.appendPrnStr(first + " " + second, fontBold, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(first + " " + second, fontNormal, AlignEnum.LEFT,true);
|
||||
}
|
||||
|
||||
protected void print2ColumnsStringBoldCenter(String first, String second) {
|
||||
printer.appendPrnStr(first + " " + second, fontBold, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(first + " " + second, fontNormal, AlignEnum.CENTER,true);
|
||||
}
|
||||
|
||||
protected void print3ColumnsString(String first, String second, String third) {
|
||||
// printer.appendPrnStr(first + " " + second + " " + third, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(first + " " + second + " " + third, fontNormal, AlignEnum.LEFT);
|
||||
// printer.appendPrnStr(first + " " + second + " " + third, fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr(first + " " + second + " " + third, fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
protected void printTransDetailReport(List<PayDetail> lists, HostType hostType) {
|
||||
@ -767,7 +777,7 @@ public abstract class BaseXPrint {
|
||||
|
||||
addSignatureBitmap(payDetail);
|
||||
|
||||
printer.appendPrnStr(cvmText, fontBold, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(cvmText, fontNormal, AlignEnum.CENTER,true);
|
||||
|
||||
|
||||
// if (payDetail.getIsFreeSign()) {
|
||||
@ -777,20 +787,20 @@ public abstract class BaseXPrint {
|
||||
// }
|
||||
|
||||
emptyLine(1);
|
||||
printer.appendPrnStr("I AGREE TO PAY THE ABOVE TOTAL AMOUNT", fontSmall, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("I AGREE TO PAY THE ABOVE TOTAL AMOUNT", fontSmall, AlignEnum.CENTER,false);
|
||||
if (isQR) {
|
||||
printer.appendPrnStr("ACCORDING TO THE ISSUER AGREEMENT", fontSmall, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("ACCORDING TO THE ISSUER AGREEMENT", fontSmall, AlignEnum.CENTER,false);
|
||||
} else {
|
||||
printer.appendPrnStr("ACCORDING TO THE CARD ISSUER AGREEMENT", fontSmall, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("ACCORDING TO THE CARD ISSUER AGREEMENT", fontSmall, AlignEnum.CENTER,false);
|
||||
}
|
||||
|
||||
if (isMerchantCopy) {
|
||||
printer.appendPrnStr("***** MERCHANT COPY *****", fontSmall, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("***** MERCHANT COPY *****", fontSmall, AlignEnum.CENTER,false);
|
||||
} else {
|
||||
printer.appendPrnStr("***** CUSTOMER COPY *****", fontSmall, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("***** CUSTOMER COPY *****", fontSmall, AlignEnum.CENTER,false);
|
||||
}
|
||||
printer.appendPrnStr(finalVersion, fontSmall, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(receiptFooter, fontSmall, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(finalVersion, fontSmall, AlignEnum.CENTER,false);
|
||||
printer.appendPrnStr(receiptFooter, fontSmall, AlignEnum.CENTER,false);
|
||||
|
||||
|
||||
}
|
||||
@ -854,10 +864,10 @@ public abstract class BaseXPrint {
|
||||
}
|
||||
|
||||
|
||||
printer.appendPrnStr(receiptHeader, fontBold, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(merchantAddress, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(merchantAddress2, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(merchantPhoneNo, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(receiptHeader, fontNormal, AlignEnum.CENTER,false);
|
||||
printer.appendPrnStr(merchantAddress, fontNormal, AlignEnum.CENTER,false);
|
||||
printer.appendPrnStr(merchantAddress2, fontNormal, AlignEnum.CENTER,false);
|
||||
printer.appendPrnStr(merchantPhoneNo, fontNormal, AlignEnum.CENTER,false);
|
||||
emptyLine(2);
|
||||
|
||||
|
||||
@ -871,11 +881,11 @@ public abstract class BaseXPrint {
|
||||
|
||||
String ksn = ByteUtil.bytes2HexStr(ksnData);
|
||||
|
||||
printer.appendPrnStr("<<< DUKPT Key Information >>>", fontBold, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("<<< DUKPT Key Information >>>", fontNormal, AlignEnum.CENTER,true);
|
||||
|
||||
lineBreak();
|
||||
printer.appendPrnStr("Key Index (" + keyIndex + ")", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("KSN :" + ksn, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("Key Index (" + keyIndex + ")", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("KSN :" + ksn, fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
lineBreak();
|
||||
emptyLine(4);
|
||||
@ -914,28 +924,28 @@ public abstract class BaseXPrint {
|
||||
batchNum = payDetail.getBatchNo();
|
||||
|
||||
|
||||
printer.appendPrnStr("DATE :" + payDetail.getTransDate() + " TIME:" + payDetail.getTransTime(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("DATE :" + payDetail.getTransDate() + " TIME:" + payDetail.getTransTime(), fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
if (payDetail.getTransactionType() == TransactionsType.MMQR.value && payDetail.getQrTransStatus() == 1) {
|
||||
printer.appendPrnStr("TRACE NO:" + traceNum + " INV NO: " + invoiceNo, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("TRACE NO:" + traceNum + " INV NO: " + invoiceNo, fontNormal, AlignEnum.LEFT,false);
|
||||
} else if (!payDetail.getTransType().equals(SETTLEMENT) && !payDetail.getTransType().equals(SUMMARY) && payDetail.getTransactionType() != TransactionsType.MMQR_REFUND.value && payDetail.getTransactionType() != TransactionsType.MMQR.value) {
|
||||
printer.appendPrnStr("BTH NO :" + batchNum + " INV NO: " + invoiceNo, fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("BTH NO :" + batchNum + " INV NO: " + invoiceNo, fontNormal, AlignEnum.LEFT,false);
|
||||
} else if (payDetail.getTransType().equals(SUMMARY)) {
|
||||
printer.appendPrnStr("HOST :" + HOST_NAME_MPU + "", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("HOST :" + HOST_NAME_MPU + "", fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
/* 17 Sept 2024 Yoma requested to changed slip design for QR*/
|
||||
// printer.printColumnsString(new String[]{"MID :" + payDetail.getMerchantNo(), ""}, new int[]{3, 1}, new int[]{0, 2}, innerResultCallback);
|
||||
// printer.printColumnsString(new String[]{"TID :" + payDetail.getTerminalNo(), ""}, new int[]{3, 1}, new int[]{0, 2}, innerResultCallback);
|
||||
printer.appendPrnStr("MID :" + payDetail.getMerchantNo(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("TID :" + payDetail.getTerminalNo(), fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("MID :" + payDetail.getMerchantNo(), fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("TID :" + payDetail.getTerminalNo(), fontNormal, AlignEnum.LEFT,false);
|
||||
|
||||
emptyLine(1);
|
||||
printer.appendPrnStr(transType.replace("_", " "), fontBold, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(transType.replace("_", " "),fontNormal, AlignEnum.CENTER,true);
|
||||
|
||||
if (!(payDetail.getQrTransStatus() != 1 && (payDetail.getTransactionType() == TransactionsType.MMQR_REFUND.value || payDetail.getTransactionType() == TransactionsType.MMQR.value))) {
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -169,7 +169,7 @@ public class PrintXImpl extends BaseXPrint implements PrintX {
|
||||
} else {
|
||||
String receiptFooter = SystemParamsOperation.getInstance().getReceiptFooter();
|
||||
emptyLine(1);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER,false);
|
||||
|
||||
}
|
||||
|
||||
@ -270,8 +270,8 @@ public class PrintXImpl extends BaseXPrint implements PrintX {
|
||||
printTransFooter(false,payDetail, isMerchantCopy);
|
||||
} else {
|
||||
String receiptFooter = SystemParamsOperation.getInstance().getReceiptFooter();
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER,false);
|
||||
}
|
||||
|
||||
|
||||
@ -294,8 +294,8 @@ public class PrintXImpl extends BaseXPrint implements PrintX {
|
||||
printTransFooter(false,payDetail, isMerchantCopy);
|
||||
} else {
|
||||
String receiptFooter = SystemParamsOperation.getInstance().getReceiptFooter();
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("\n", fontNormal, AlignEnum.LEFT,false);
|
||||
printer.appendPrnStr(receiptFooter, fontNormal, AlignEnum.CENTER,false);
|
||||
}
|
||||
|
||||
|
||||
@ -359,31 +359,31 @@ public class PrintXImpl extends BaseXPrint implements PrintX {
|
||||
} else {
|
||||
|
||||
if(payDetail.getTransactionType() == TransactionsType.MMQR_REFUND.value) {
|
||||
printer.appendPrnStr("(TRANSACTION FAIL)", fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("(TRANSACTION FAIL)", fontNormal, AlignEnum.CENTER,false);
|
||||
emptyLine(1);
|
||||
printer.appendPrnStr(reformattedExceededString(payDetail.getTradeResultDes()), fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(reformattedExceededString(payDetail.getTradeResultDes()), fontNormal, AlignEnum.CENTER,false);
|
||||
} else {
|
||||
printer.appendPrnStr("(TRANSACTION FAIL)", fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr("(TRANSACTION FAIL)", fontNormal, AlignEnum.CENTER,false);
|
||||
emptyLine(1);
|
||||
|
||||
if(payDetail.getQrTransStatus() == -1) {
|
||||
// printer.printText("TRANSACTION FAIL\nPAYMENT CREDIT FAILURE\n", null);
|
||||
printer.appendPrnStr(reformattedExceededString("PAYMENT CREDIT FAILURE"), fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(reformattedExceededString("PAYMENT CREDIT FAILURE"), fontNormal, AlignEnum.CENTER,false);
|
||||
|
||||
} else if(payDetail.getQrTransStatus() == 2) {
|
||||
|
||||
if(POSUtil.getInstance().isCurrentDateTimePassed(payDetail.getTransDate(),payDetail.getTransTime())) {
|
||||
// printer.printText("TRANSACTION FAIL\nEXPIRE\n", null);
|
||||
printer.appendPrnStr(reformattedExceededString("EXPIRE"), fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(reformattedExceededString("EXPIRE"), fontNormal, AlignEnum.CENTER,false);
|
||||
|
||||
} else {
|
||||
printer.appendPrnStr(reformattedExceededString("PAYMENT CREDIT IN-PROGRESS"), fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(reformattedExceededString("PAYMENT CREDIT IN-PROGRESS"), fontNormal, AlignEnum.CENTER,false);
|
||||
|
||||
// printer.printText("TRANSACTION FAIL\nPAYMENT CREDIT IN-PROGRESS\n", null);
|
||||
}
|
||||
|
||||
} else if(payDetail.getQrTransStatus() == 3) {
|
||||
printer.appendPrnStr(reformattedExceededString("COMMUNICATION ERROR"), fontNormal, AlignEnum.CENTER);
|
||||
printer.appendPrnStr(reformattedExceededString("COMMUNICATION ERROR"), fontNormal, AlignEnum.CENTER,false);
|
||||
// printer.printText("COMMUNICATION ERROR\n", null);
|
||||
}
|
||||
}
|
||||
|
||||
@ -42,8 +42,8 @@ public class SystemParamsSettings implements Serializable {
|
||||
|
||||
// private String tmsAddress = "https://tms.smile-mm.com";
|
||||
// private String tmsAddress = "http://128.199.170.203";
|
||||
// private String tmsAddress = "http://sirius-nest.utsmyanmar.com";
|
||||
private String tmsAddress = "https://api-tms-uat.kbzbank.com:8443/sirius";
|
||||
private String tmsAddress = "http://sirius-nest.utsmyanmar.com";
|
||||
// private String tmsAddress = "https://api-tms-uat.kbzbank.com:8443/sirius";
|
||||
private String ereceiptAddress = "http://receipt-nest.utsmyanmar.com";
|
||||
|
||||
private String terminalCapability = "E0E8C8";
|
||||
|
||||
BIN
paylibs/src/main/res/font/consolas.ttf
Normal file
BIN
paylibs/src/main/res/font/consolas.ttf
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user