dashboard fixed
This commit is contained in:
parent
a6db8970af
commit
6b1c6ef4b5
@ -931,5 +931,24 @@ public class MainFragment extends DataBindingFragment {
|
|||||||
safeNavigateToRouteId();
|
safeNavigateToRouteId();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void onClickVoid(){
|
||||||
|
if (mainViewModel.payDetailSingle.getValue() != null) {
|
||||||
|
mainViewModel.startReversal(mainViewModel.payDetailSingle.getValue());
|
||||||
|
} else if (checkTid()) {
|
||||||
|
showDeclineDialog("Please Download Config!");
|
||||||
|
} else {
|
||||||
|
sharedViewModel.setTransactionsType(TransactionsType.VOID);
|
||||||
|
// sharedViewModel.transMenu.postValue(TransMenu.TRANSACTIONS);
|
||||||
|
sharedViewModel.setTransMenu(TransMenu.TRANSACTIONS);
|
||||||
|
routeId = R.id.action_nav_main_to_inputPasswordFragment;
|
||||||
|
safeRouteTo(currentId(),routeId, hostId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void onClickReport(){
|
||||||
|
routeId = R.id.action_nav_main_to_manageFunctionFragment;
|
||||||
|
safeRouteTo(currentId(), routeId, hostId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,6 +3,8 @@ package com.utsmm.kbz.ui.adapters;
|
|||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
import android.graphics.PorterDuff;
|
import android.graphics.PorterDuff;
|
||||||
|
import android.view.View;
|
||||||
|
import android.view.ViewGroup;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
import android.widget.ImageButton;
|
import android.widget.ImageButton;
|
||||||
@ -299,4 +301,5 @@ public class MyBindingAdapter {
|
|||||||
textView.setText("TRC:"+payDetail.getVoucherNo());
|
textView.setText("TRC:"+payDetail.getVoucherNo());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,6 +13,7 @@ import com.utsmyanmar.baselib.network.model.e_receipt.EReceiptResponse;
|
|||||||
import com.utsmyanmar.baselib.network.model.sirius.SiriusRequest;
|
import com.utsmyanmar.baselib.network.model.sirius.SiriusRequest;
|
||||||
import com.utsmyanmar.baselib.network.model.sirius.SiriusResponse;
|
import com.utsmyanmar.baselib.network.model.sirius.SiriusResponse;
|
||||||
import com.utsmyanmar.baselib.repo.Repository;
|
import com.utsmyanmar.baselib.repo.Repository;
|
||||||
|
import com.utsmyanmar.baselib.util.TerminalUtil;
|
||||||
import com.utsmyanmar.ecr.data.TransType;
|
import com.utsmyanmar.ecr.data.TransType;
|
||||||
import com.utsmyanmar.ecr.data.model.Transactions;
|
import com.utsmyanmar.ecr.data.model.Transactions;
|
||||||
import com.utsmyanmar.paylibs.model.PayDetail;
|
import com.utsmyanmar.paylibs.model.PayDetail;
|
||||||
@ -43,10 +44,6 @@ import javax.inject.Inject;
|
|||||||
@HiltViewModel
|
@HiltViewModel
|
||||||
public class SharedViewModel extends ViewModel {
|
public class SharedViewModel extends ViewModel {
|
||||||
|
|
||||||
public MutableLiveData<String> terminalId = new MutableLiveData<>();
|
|
||||||
|
|
||||||
public MutableLiveData<Boolean> qrPartialRefundEnable = new MutableLiveData<>();
|
|
||||||
|
|
||||||
private static final String TAG = SharedViewModel.class.getSimpleName();
|
private static final String TAG = SharedViewModel.class.getSimpleName();
|
||||||
|
|
||||||
private final Repository repository;
|
private final Repository repository;
|
||||||
@ -170,6 +167,9 @@ public class SharedViewModel extends ViewModel {
|
|||||||
|
|
||||||
private PayDetail mPayDetail = new PayDetail();
|
private PayDetail mPayDetail = new PayDetail();
|
||||||
|
|
||||||
|
public MutableLiveData<String> serialNumber = new MutableLiveData<>();
|
||||||
|
|
||||||
|
|
||||||
// Updated constructor for Hilt ViewModel
|
// Updated constructor for Hilt ViewModel
|
||||||
@Inject
|
@Inject
|
||||||
public SharedViewModel(Repository repository) {
|
public SharedViewModel(Repository repository) {
|
||||||
@ -177,10 +177,8 @@ public class SharedViewModel extends ViewModel {
|
|||||||
setPrintStatus(PrintStatus.FIRST_PRINT);
|
setPrintStatus(PrintStatus.FIRST_PRINT);
|
||||||
isReprint.setValue(false);
|
isReprint.setValue(false);
|
||||||
cardNo.setValue("");
|
cardNo.setValue("");
|
||||||
String tid = SystemParamsOperation.getInstance().getTerminalId();
|
String sn = TerminalUtil.getInstance().getSerialNo();
|
||||||
terminalId.setValue(tid);
|
serialNumber.setValue(sn);
|
||||||
boolean isQrPartialRefundEnable = SystemParamsOperation.getInstance().isQrPartialRefundEnable();
|
|
||||||
qrPartialRefundEnable.setValue(isQrPartialRefundEnable);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -14,7 +14,7 @@ import androidx.annotation.Nullable;
|
|||||||
import com.utsmm.kbz.util.tms.TMSUtil;
|
import com.utsmm.kbz.util.tms.TMSUtil;
|
||||||
import com.utsmyanmar.baselib.fragment.DataBindingFragment;
|
import com.utsmyanmar.baselib.fragment.DataBindingFragment;
|
||||||
import com.utsmyanmar.baselib.network.model.KPayRefund;
|
import com.utsmyanmar.baselib.network.model.KPayRefund;
|
||||||
import com.utsmyanmar.baselib.network.model.e_receipt.EReceiptQRRequest;
|
//import com.utsmyanmar.baselib.network.model.e_receipt.EReceiptQRRequest;
|
||||||
import com.utsmyanmar.baselib.util.DataBindingConfig;
|
import com.utsmyanmar.baselib.util.DataBindingConfig;
|
||||||
import com.utsmyanmar.paylibs.model.PayDetail;
|
import com.utsmyanmar.paylibs.model.PayDetail;
|
||||||
import com.utsmyanmar.paylibs.model.TradeData;
|
import com.utsmyanmar.paylibs.model.TradeData;
|
||||||
|
|||||||
@ -335,7 +335,7 @@ public class QRTransactionFragment extends DataBindingFragment implements DataBi
|
|||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LogUtil.d(TAG, "On Exception::");
|
LogUtil.d(TAG, "On Exception::");
|
||||||
sharedViewModel.pushReceipt(buildEReceiptQRReceipt(payDetail, false, "QR Failed! :" + e.getMessage()));
|
// sharedViewModel.pushReceipt(buildEReceiptQRReceipt(payDetail, false, "QR Failed! :" + e.getMessage()));
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
EReceiptRequest request = EReceiptUtil.getInstance().generateQRReceipt(payDetail, TransResultStatus.TIME_OUT);
|
EReceiptRequest request = EReceiptUtil.getInstance().generateQRReceipt(payDetail, TransResultStatus.TIME_OUT);
|
||||||
sharedViewModel.pushReceipt(request);
|
sharedViewModel.pushReceipt(request);
|
||||||
@ -445,44 +445,44 @@ public class QRTransactionFragment extends DataBindingFragment implements DataBi
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private EReceiptQRRequest buildEReceiptQRReceipt(PayDetail payDetail, boolean isSuccess, String reason) {
|
// private EReceiptQRRequest buildEReceiptQRReceipt(PayDetail payDetail, boolean isSuccess, String reason) {
|
||||||
|
//
|
||||||
// Timestamp (MMddHHmmss)
|
// // Timestamp (MMddHHmmss)
|
||||||
String currentTimestamp = new java.text.SimpleDateFormat(
|
// String currentTimestamp = new java.text.SimpleDateFormat(
|
||||||
"MMddHHmmss", java.util.Locale.getDefault()
|
// "MMddHHmmss", java.util.Locale.getDefault()
|
||||||
).format(new java.util.Date());
|
// ).format(new java.util.Date());
|
||||||
|
//
|
||||||
// Device Info
|
// // Device Info
|
||||||
String serial = TMSUtil.getInstance().getSerialNumber();
|
// String serial = TMSUtil.getInstance().getSerialNumber();
|
||||||
String appId = requireActivity().getPackageName();
|
// String appId = requireActivity().getPackageName();
|
||||||
|
//
|
||||||
// Terminal Info
|
// // Terminal Info
|
||||||
// String terminalId = SystemParamsOperation.getInstance().getTerminalId();
|
//// String terminalId = SystemParamsOperation.getInstance().getTerminalId();
|
||||||
// String merchantId = SystemParamsOperation.getInstance().getMerchantId();
|
//// String merchantId = SystemParamsOperation.getInstance().getMerchantId();
|
||||||
|
//
|
||||||
|
//
|
||||||
// Amount convert (long cents → double → 0.00)
|
// // Amount convert (long cents → double → 0.00)
|
||||||
double realAmount = payDetail.getAmount() / 100.0;
|
// double realAmount = payDetail.getAmount() / 100.0;
|
||||||
DecimalFormat df = new DecimalFormat("0.00");
|
// DecimalFormat df = new DecimalFormat("0.00");
|
||||||
String amount = df.format(realAmount);
|
// String amount = df.format(realAmount);
|
||||||
|
//
|
||||||
EReceiptQRRequest request = new EReceiptQRRequest();
|
// EReceiptQRRequest request = new EReceiptQRRequest();
|
||||||
request.setDE3("QR"); // QR Process Code
|
// request.setDE3("QR"); // QR Process Code
|
||||||
request.setDE4(amount); // Amount
|
// request.setDE4(amount); // Amount
|
||||||
request.setDE7(currentTimestamp); // Timestamp
|
// request.setDE7(currentTimestamp); // Timestamp
|
||||||
request.setDE37(payDetail.getReferNo()); // Reference No
|
// request.setDE37(payDetail.getReferNo()); // Reference No
|
||||||
request.setDE39(isSuccess ? "A" : "E"); // A=Approved, D=Declined/Timeout
|
// request.setDE39(isSuccess ? "A" : "E"); // A=Approved, D=Declined/Timeout
|
||||||
request.setDE41(terminalId);
|
// request.setDE41(terminalId);
|
||||||
request.setDE42(merchantId);
|
// request.setDE42(merchantId);
|
||||||
request.setDE49(mapCurrency(payDetail.getCurrencyCode())); // Currency
|
// request.setDE49(mapCurrency(payDetail.getCurrencyCode())); // Currency
|
||||||
request.setSerial(serial);
|
// request.setSerial(serial);
|
||||||
request.setInvoiceNumber(payDetail.getInvoiceNo());
|
// request.setInvoiceNumber(payDetail.getInvoiceNo());
|
||||||
request.setDE11(payDetail.getVoucherNo()); // STAN
|
// request.setDE11(payDetail.getVoucherNo()); // STAN
|
||||||
request.setAppId(appId);
|
// request.setAppId(appId);
|
||||||
request.setDescription(reason); // Anything: success / timeout / error message
|
// request.setDescription(reason); // Anything: success / timeout / error message
|
||||||
|
//
|
||||||
return request;
|
// return request;
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,7 +17,7 @@ import com.utsmm.kbz.util.ecr.CoreUtils;
|
|||||||
import com.utsmm.kbz.util.tms.TMSUtil;
|
import com.utsmm.kbz.util.tms.TMSUtil;
|
||||||
import com.utsmyanmar.baselib.fragment.DataBindingFragment;
|
import com.utsmyanmar.baselib.fragment.DataBindingFragment;
|
||||||
import com.utsmyanmar.baselib.network.model.KPayRefund;
|
import com.utsmyanmar.baselib.network.model.KPayRefund;
|
||||||
import com.utsmyanmar.baselib.network.model.e_receipt.EReceiptQRRequest;
|
//import com.utsmyanmar.baselib.network.model.e_receipt.EReceiptQRRequest;
|
||||||
import com.utsmyanmar.baselib.util.DataBindingConfig;
|
import com.utsmyanmar.baselib.util.DataBindingConfig;
|
||||||
import com.utsmyanmar.paylibs.model.PayDetail;
|
import com.utsmyanmar.paylibs.model.PayDetail;
|
||||||
import com.utsmyanmar.paylibs.system.SystemDateTime;
|
import com.utsmyanmar.paylibs.system.SystemDateTime;
|
||||||
@ -144,7 +144,7 @@ public class QRRefundProcessFragment extends DataBindingFragment {
|
|||||||
payDetail.setReferNo(referenceNo);
|
payDetail.setReferNo(referenceNo);
|
||||||
payDetail.setIsCanceled(true);
|
payDetail.setIsCanceled(true);
|
||||||
|
|
||||||
sharedViewModel.pushReceipt(buildEReceiptQRReceipt(payDetail, true, "Refund success"));
|
// sharedViewModel.pushReceipt(buildEReceiptQRReceipt(payDetail, true, "Refund success"));
|
||||||
|
|
||||||
retrievedUpdatePayDetail(referenceNo);
|
retrievedUpdatePayDetail(referenceNo);
|
||||||
|
|
||||||
@ -159,7 +159,7 @@ public class QRRefundProcessFragment extends DataBindingFragment {
|
|||||||
errorMsg = response.getResponse().getMsg();
|
errorMsg = response.getResponse().getMsg();
|
||||||
}
|
}
|
||||||
payDetail.setTradeResultDes(errorMsg);
|
payDetail.setTradeResultDes(errorMsg);
|
||||||
sharedViewModel.pushReceipt(buildEReceiptQRReceipt(payDetail, false, "Refund Failed! "+errorMsg));
|
// sharedViewModel.pushReceipt(buildEReceiptQRReceipt(payDetail, false, "Refund Failed! "+errorMsg));
|
||||||
|
|
||||||
sharedViewModel.payDetail.setValue(payDetail);
|
sharedViewModel.payDetail.setValue(payDetail);
|
||||||
navigateToNext();
|
navigateToNext();
|
||||||
@ -233,44 +233,44 @@ public class QRRefundProcessFragment extends DataBindingFragment {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private EReceiptQRRequest buildEReceiptQRReceipt(PayDetail payDetail, boolean isSuccess, String reason) {
|
// private EReceiptQRRequest buildEReceiptQRReceipt(PayDetail payDetail, boolean isSuccess, String reason) {
|
||||||
|
//
|
||||||
// Timestamp (MMddHHmmss)
|
// // Timestamp (MMddHHmmss)
|
||||||
String currentTimestamp = new java.text.SimpleDateFormat(
|
// String currentTimestamp = new java.text.SimpleDateFormat(
|
||||||
"MMddHHmmss", java.util.Locale.getDefault()
|
// "MMddHHmmss", java.util.Locale.getDefault()
|
||||||
).format(new java.util.Date());
|
// ).format(new java.util.Date());
|
||||||
|
//
|
||||||
// Device Info
|
// // Device Info
|
||||||
String serial = TMSUtil.getInstance().getSerialNumber();
|
// String serial = TMSUtil.getInstance().getSerialNumber();
|
||||||
String appId = requireActivity().getPackageName();
|
// String appId = requireActivity().getPackageName();
|
||||||
|
//
|
||||||
|
//
|
||||||
// Terminal Info
|
// // Terminal Info
|
||||||
// String terminalId = SystemParamsOperation.getInstance().getTerminalId();
|
//// String terminalId = SystemParamsOperation.getInstance().getTerminalId();
|
||||||
// String merchantId = SystemParamsOperation.getInstance().getMerchantId();
|
//// String merchantId = SystemParamsOperation.getInstance().getMerchantId();
|
||||||
String terminalId = TransactionUtil.getInstance().getQRTerminalId();
|
// String terminalId = TransactionUtil.getInstance().getQRTerminalId();
|
||||||
String merchantId = TransactionUtil.getInstance().getQRMerchantId();
|
// String merchantId = TransactionUtil.getInstance().getQRMerchantId();
|
||||||
|
//
|
||||||
// Amount convert (long cents → double → 0.00)
|
// // Amount convert (long cents → double → 0.00)
|
||||||
double realAmount = payDetail.getAmount() / 100.0;
|
// double realAmount = payDetail.getAmount() / 100.0;
|
||||||
DecimalFormat df = new DecimalFormat("0.00");
|
// DecimalFormat df = new DecimalFormat("0.00");
|
||||||
String amount = df.format(realAmount);
|
// String amount = df.format(realAmount);
|
||||||
|
//
|
||||||
EReceiptQRRequest request = new EReceiptQRRequest();
|
// EReceiptQRRequest request = new EReceiptQRRequest();
|
||||||
request.setDE3("QRV"); // QR Process Code(fix later with get from config)
|
// request.setDE3("QRV"); // QR Process Code(fix later with get from config)
|
||||||
request.setDE4(amount); // Amount
|
// request.setDE4(amount); // Amount
|
||||||
request.setDE7(currentTimestamp); // Timestamp
|
// request.setDE7(currentTimestamp); // Timestamp
|
||||||
request.setDE37(payDetail.getReferNo()); // Reference No
|
// request.setDE37(payDetail.getReferNo()); // Reference No
|
||||||
request.setDE39(isSuccess ? "A" : "E"); // A=Approved, E=Error/Declined/Timeout
|
// request.setDE39(isSuccess ? "A" : "E"); // A=Approved, E=Error/Declined/Timeout
|
||||||
request.setDE41(terminalId);
|
// request.setDE41(terminalId);
|
||||||
request.setDE42(merchantId);
|
// request.setDE42(merchantId);
|
||||||
request.setDE49(mapCurrency(payDetail.getCurrencyCode())); // Currency(fix later with get from config)
|
// request.setDE49(mapCurrency(payDetail.getCurrencyCode())); // Currency(fix later with get from config)
|
||||||
request.setSerial(serial);
|
// request.setSerial(serial);
|
||||||
request.setInvoiceNumber(payDetail.getInvoiceNo());
|
// request.setInvoiceNumber(payDetail.getInvoiceNo());
|
||||||
request.setDE11(payDetail.getVoucherNo()); // STAN
|
// request.setDE11(payDetail.getVoucherNo()); // STAN
|
||||||
request.setAppId(appId);
|
// request.setAppId(appId);
|
||||||
request.setDescription(reason); // Anything: success / timeout / error message
|
// request.setDescription(reason); // Anything: success / timeout / error message
|
||||||
|
//
|
||||||
return request;
|
// return request;
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|||||||
28
app/src/main/res/drawable/honey.xml
Normal file
28
app/src/main/res/drawable/honey.xml
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="200dp"
|
||||||
|
android:height="200dp"
|
||||||
|
android:viewportWidth="100"
|
||||||
|
android:viewportHeight="100">
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="@color/white"
|
||||||
|
android:strokeColor="@color/white"
|
||||||
|
android:strokeWidth="1"
|
||||||
|
android:strokeLineJoin="round"
|
||||||
|
android:strokeLineCap="round"
|
||||||
|
android:pathData="
|
||||||
|
M55.1858,3.015
|
||||||
|
L87.8142,21.985
|
||||||
|
Q93,25 93,31
|
||||||
|
L93,69
|
||||||
|
Q93,75 87.8142,78.015
|
||||||
|
L55.1858,96.985
|
||||||
|
Q50,100 44.8142,96.985
|
||||||
|
L12.1858,78.015
|
||||||
|
Q7,75 7,69
|
||||||
|
L7,31
|
||||||
|
Q7,25 12.1858,21.985
|
||||||
|
L44.8142,3.015
|
||||||
|
Q50,0 55.1858,3.015
|
||||||
|
Z" />
|
||||||
|
</vector>
|
||||||
35
app/src/main/res/drawable/ic_dash_report.xml
Normal file
35
app/src/main/res/drawable/ic_dash_report.xml
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="422.074"
|
||||||
|
android:viewportHeight="422.073">
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M229.001,392.729H44.522V27.274h198.907V82.69c0,5.6,4.534,10.133,10.131,10.133h53.791l0.009,181.564c9.418,0.215,18.602,1.963,27.266,5.188V77.743c0,-2.168,-0.863,-4.248,-2.396,-5.787L262.667,2.395C261.133,0.862,259.053,0,256.881,0H41.796C28.262,0,17.25,11.008,17.25,24.543v370.915c0,13.533,11.012,24.543,24.547,24.543h206.973C240.466,412.384,233.714,403.114,229.001,392.729z"/>
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M404.824,311.648c0,-4.586,-1.785,-8.896,-5.027,-12.142l-12.844,-12.844c-3.244,-3.242,-7.555,-5.027,-12.139,-5.027c-4.582,0,-8.896,1.785,-12.141,5.029l-19.602,19.6c-10.47,-7.506,-23.304,-11.928,-37.168,-11.928c-35.273,0,-63.867,28.596,-63.867,63.869c0,35.271,28.594,63.867,63.867,63.867c35.271,0,63.867,-28.597,63.867,-63.867c0,-1.43,-0.051,-2.848,-0.145,-4.254l30.166,-30.166C403.039,320.546,404.824,316.232,404.824,311.648z M385.857,315.467l-61.43,61.428c-1.295,1.296,-3.051,2.021,-4.881,2.021h-0.002c-1.832,0,-3.588,-0.729,-4.881,-2.023l-28.465,-28.51c-2.691,-2.693,-2.689,-7.062,0.002,-9.758l5.483,-5.479c2.69,-2.693,7.058,-2.695,9.755,-0.007l18.104,18.058l51.019,-51.021c1.296,-1.296,3.052,-2.021,4.882,-2.021s3.586,0.727,4.881,2.021l5.531,5.53C388.552,308.4,388.552,312.77,385.857,315.467z"/>
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M188.141,108.951l-57.438,13.148l13.149,-57.438c-20.125,-5.047,-42.319,0.296,-58.059,16.035c-23.835,23.834,-23.835,62.478,0,86.312c23.835,23.835,62.478,23.835,86.313,0C187.843,151.269,193.187,129.075,188.141,108.951z"/>
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M188.689,64.113c-8.097,-8.096,-17.901,-13.439,-28.254,-16.035l-13.149,57.437l57.438,-13.149C202.128,82.014,196.785,72.209,188.689,64.113z"/>
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M89.161,249.945h20.993c5.813,0,10.542,-4.729,10.542,-10.543c0,-5.814,-4.729,-10.543,-10.542,-10.543H89.161c-5.813,0,-10.543,4.729,-10.543,10.543C78.618,245.216,83.348,249.945,89.161,249.945z"/>
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M170.153,267.859H89.161c-5.813,0,-10.543,4.729,-10.543,10.543c0,5.813,4.729,10.543,10.543,10.543h80.993c5.813,0,10.542,-4.729,10.542,-10.543C180.695,272.588,175.966,267.859,170.153,267.859z"/>
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:fillColor="#FF000000"
|
||||||
|
android:pathData="M158.153,306.859H89.161c-5.813,0,-10.543,4.729,-10.543,10.543c0,5.813,4.729,10.543,10.543,10.543h68.993c5.813,0,10.542,-4.729,10.542,-10.543C168.695,311.588,163.966,306.859,158.153,306.859z"/>
|
||||||
|
</vector>
|
||||||
53
app/src/main/res/drawable/ic_dash_reports.xml
Normal file
53
app/src/main/res/drawable/ic_dash_reports.xml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="64"
|
||||||
|
android:viewportHeight="64">
|
||||||
|
|
||||||
|
<!-- Centering shift: moved whole document from x=6 to x=12 -->
|
||||||
|
<!-- Document outline -->
|
||||||
|
<path
|
||||||
|
android:pathData="M12,4 H52 V60 H12 Z"
|
||||||
|
android:fillColor="@android:color/transparent"
|
||||||
|
android:strokeColor="#FFFFFF"
|
||||||
|
android:strokeWidth="2"
|
||||||
|
android:strokeLineJoin="round"
|
||||||
|
android:strokeLineCap="round" />
|
||||||
|
|
||||||
|
<!-- Folded corner -->
|
||||||
|
<path
|
||||||
|
android:pathData="M52,4 V16 H42"
|
||||||
|
android:fillColor="@android:color/transparent"
|
||||||
|
android:strokeColor="#FFFFFF"
|
||||||
|
android:strokeWidth="2"
|
||||||
|
android:strokeLineJoin="round"
|
||||||
|
android:strokeLineCap="round" />
|
||||||
|
|
||||||
|
<!-- Bar chart (centered as well) -->
|
||||||
|
<path android:pathData="M20,34 H26 V50 H20 Z" android:fillColor="#FFFFFF"/>
|
||||||
|
<path android:pathData="M28,26 H34 V50 H28 Z" android:fillColor="#FFFFFF"/>
|
||||||
|
<path android:pathData="M36,30 H42 V50 H36 Z" android:fillColor="#FFFFFF"/>
|
||||||
|
|
||||||
|
<!-- Text lines -->
|
||||||
|
<path
|
||||||
|
android:pathData="M20,14 H44"
|
||||||
|
android:fillColor="@android:color/transparent"
|
||||||
|
android:strokeColor="#FFFFFF"
|
||||||
|
android:strokeWidth="1.6"
|
||||||
|
android:strokeLineCap="round" />
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:pathData="M20,18 H44"
|
||||||
|
android:fillColor="@android:color/transparent"
|
||||||
|
android:strokeColor="#FFFFFF"
|
||||||
|
android:strokeWidth="1.6"
|
||||||
|
android:strokeLineCap="round" />
|
||||||
|
|
||||||
|
<path
|
||||||
|
android:pathData="M20,22 H32"
|
||||||
|
android:fillColor="@android:color/transparent"
|
||||||
|
android:strokeColor="#FFFFFF"
|
||||||
|
android:strokeWidth="1.6"
|
||||||
|
android:strokeLineCap="round" />
|
||||||
|
</vector>
|
||||||
BIN
app/src/main/res/drawable/mmqr_logo.png
Normal file
BIN
app/src/main/res/drawable/mmqr_logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 48 KiB |
@ -15,36 +15,33 @@
|
|||||||
<variable name="carouselAdapter" type="androidx.recyclerview.widget.RecyclerView.Adapter"/>
|
<variable name="carouselAdapter" type="androidx.recyclerview.widget.RecyclerView.Adapter"/>
|
||||||
<variable name="myAdapter" type="com.utsmm.kbz.ui.adapters.MainAdapter"/>
|
<variable name="myAdapter" type="com.utsmm.kbz.ui.adapters.MainAdapter"/>
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
|
|
||||||
<!-- ======== ROOT ======== -->
|
<!-- ======== ROOT ======== -->
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:background="@color/colorPrimary"
|
android:background="@color/colorPrimary"
|
||||||
android:padding="16dp">
|
>
|
||||||
|
|
||||||
<FrameLayout
|
<TextView
|
||||||
android:id="@+id/tid"
|
android:id="@+id/serialNumber"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_margin="16dp"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginEnd="16dp"
|
||||||
|
android:textColor="@color/white"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent">
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
tools:text="S/N : N86PW500019"
|
||||||
<TextView
|
android:fontFamily="@font/rubik_medium"
|
||||||
android:id="@+id/tidText"
|
android:text='@{"S/N : " + shareViewModel.serialNumber}'
|
||||||
android:layout_width="wrap_content"
|
android:textSize="14sp"
|
||||||
android:layout_height="wrap_content"
|
android:textStyle="bold"
|
||||||
android:text='@{`TID : ` + shareViewModel.terminalId}'
|
/>
|
||||||
tools:text="TID : 123456789"
|
|
||||||
android:textColor="@color/white"
|
|
||||||
android:textSize="16sp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
android:layout_marginStart="4dp"
|
|
||||||
android:layout_marginBottom="8dp"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintBottom_toTopOf="@id/bannerCard" />
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
<!-- ====================== BANNER ====================== -->
|
<!-- ====================== BANNER ====================== -->
|
||||||
|
|
||||||
@ -52,13 +49,13 @@
|
|||||||
android:id="@+id/bannerCard"
|
android:id="@+id/bannerCard"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:layout_margin="4dp"
|
android:layout_margin="16dp"
|
||||||
app:cardCornerRadius="16dp"
|
app:cardCornerRadius="16dp"
|
||||||
app:cardElevation="6dp"
|
app:cardElevation="6dp"
|
||||||
app:layout_constraintDimensionRatio="16:6"
|
app:layout_constraintDimensionRatio="16:6"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="@id/tid"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/tid">
|
app:layout_constraintTop_toBottomOf="@+id/serialNumber">
|
||||||
|
|
||||||
<com.denzcoskun.imageslider.ImageSlider
|
<com.denzcoskun.imageslider.ImageSlider
|
||||||
android:id="@+id/image_slider"
|
android:id="@+id/image_slider"
|
||||||
@ -78,83 +75,227 @@
|
|||||||
android:id="@+id/menuGrid"
|
android:id="@+id/menuGrid"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
app:layout_constraintTop_toBottomOf="@id/bannerCard"
|
android:paddingTop="12dp"
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
>
|
app:layout_constraintHorizontal_bias="1.0"
|
||||||
<!-- ===== FULL WIDTH SALE BUTTON ===== -->
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
<androidx.cardview.widget.CardView
|
app:layout_constraintTop_toBottomOf="@id/bannerCard"
|
||||||
android:id="@+id/cardMenuCard"
|
app:layout_constraintVertical_bias="1.0">
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="0dp"
|
<FrameLayout
|
||||||
app:cardCornerRadius="18dp"
|
android:id="@+id/btn1"
|
||||||
app:cardElevation="4dp"
|
android:layout_width="120dp"
|
||||||
android:layout_margin="6dp"
|
android:layout_height="120dp"
|
||||||
android:foreground="?attr/selectableItemBackground"
|
android:layout_marginStart="60dp"
|
||||||
android:onClick="@{() -> click.onClickCard()}"
|
android:layout_marginTop="45dp"
|
||||||
app:layout_constraintTop_toTopOf="parent"
|
android:background="@drawable/honey"
|
||||||
|
app:layout_constraintBottom_toTopOf="@+id/btn3"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
app:layout_constraintDimensionRatio="1:0.4">
|
android:onClick="@{() -> click.onClickCard()}">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical"
|
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:padding="20dp"
|
android:orientation="vertical">
|
||||||
android:background="@color/white">
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:layout_width="56dp"
|
android:layout_width="40dp"
|
||||||
android:layout_height="56dp"
|
android:layout_height="40dp"
|
||||||
|
android:layout_marginBottom="6dp"
|
||||||
android:src="@drawable/ic_sale"
|
android:src="@drawable/ic_sale"
|
||||||
app:tint="@color/colorPrimary"
|
app:tint="@color/colorPrimary" />
|
||||||
android:layout_marginBottom="6dp" />
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:fontFamily="@font/rubik_medium"
|
||||||
android:text="@string/menu_sale"
|
android:text="@string/menu_sale"
|
||||||
|
android:textAlignment="center"
|
||||||
android:textColor="@color/colorPrimary"
|
android:textColor="@color/colorPrimary"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold" />
|
||||||
android:fontFamily="@font/rubik_medium"
|
|
||||||
android:textAlignment="center" />
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.cardview.widget.CardView>
|
|
||||||
|
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
<!-- ===== ROW 1 ===== -->
|
<FrameLayout
|
||||||
|
android:id="@+id/btn2"
|
||||||
<!-- Settlement -->
|
android:layout_width="120dp"
|
||||||
<androidx.cardview.widget.CardView
|
android:layout_height="120dp"
|
||||||
android:id="@+id/settlementMenuCard"
|
android:layout_marginTop="45dp"
|
||||||
android:layout_width="0dp"
|
android:layout_marginEnd="60dp"
|
||||||
android:layout_height="0dp"
|
android:background="@drawable/honey"
|
||||||
app:cardCornerRadius="18dp"
|
app:layout_constraintBottom_toTopOf="@+id/bt4"
|
||||||
app:cardElevation="4dp"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
android:layout_margin="6dp"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
android:foreground="?attr/selectableItemBackground"
|
android:clickable="@{mainViewModel.kPayStatus}"
|
||||||
android:onClick="@{() -> click.onClickSettlement()}"
|
android:focusable="@{mainViewModel.kPayStatus}"
|
||||||
app:disableBtn="@{mainViewModel.settlementStatus}"
|
android:alpha="@{mainViewModel.kPayStatus ? 1f : 0.5f}"
|
||||||
app:layout_constraintTop_toBottomOf="@id/cardMenuCard"
|
android:onClick="@{() -> click.onClickQR()}">
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintEnd_toStartOf="@id/signOnMenuCard"
|
|
||||||
app:layout_constraintDimensionRatio="1:0.8">
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:background="@color/white"
|
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical">
|
||||||
android:padding="18dp">
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:layout_width="46dp"
|
android:layout_width="70dp"
|
||||||
android:layout_height="46dp"
|
android:layout_height="70dp"
|
||||||
|
android:layout_marginBottom="6dp"
|
||||||
|
android:src="@drawable/mmqr_logo"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<!-- <TextView-->
|
||||||
|
<!-- android:layout_width="wrap_content"-->
|
||||||
|
<!-- android:layout_height="wrap_content"-->
|
||||||
|
<!-- android:fontFamily="@font/rubik_medium"-->
|
||||||
|
<!-- android:text="@string/qr_pay"-->
|
||||||
|
<!-- android:textAlignment="center"-->
|
||||||
|
<!-- android:textColor="@color/colorPrimary"-->
|
||||||
|
<!-- android:textSize="14sp"-->
|
||||||
|
<!-- android:textStyle="bold" />-->
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/btn3"
|
||||||
|
android:layout_width="120dp"
|
||||||
|
android:layout_height="120dp"
|
||||||
|
android:background="@drawable/honey"
|
||||||
|
android:onClick="@{() -> click.onClickVoid()}"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toStartOf="@+id/bt4"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:layout_marginBottom="6dp"
|
||||||
|
android:src="@drawable/ic_void_dash"
|
||||||
|
app:tint="@color/colorPrimary" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:fontFamily="@font/rubik_medium"
|
||||||
|
android:text="Void"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/bt4"
|
||||||
|
android:layout_width="120dp"
|
||||||
|
android:layout_height="120dp"
|
||||||
|
android:background="@drawable/honey"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
android:onClick="@{() -> click.onClickSignOn()}"
|
||||||
|
>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:gravity="center"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:src="@drawable/ic_signon"
|
||||||
|
android:layout_marginBottom="6dp"
|
||||||
|
app:tint="@color/colorPrimary" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:fontFamily="@font/rubik_medium"
|
||||||
|
android:text="@string/menu_sign_on"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/bt5"
|
||||||
|
android:layout_width="120dp"
|
||||||
|
android:layout_height="120dp"
|
||||||
|
android:background="@drawable/honey"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@+id/bt4"
|
||||||
|
android:onClick="@{() -> click.onClickReport()}"
|
||||||
|
app:layout_constraintTop_toTopOf="parent">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:layout_marginBottom="6dp"
|
||||||
|
android:src="@drawable/ic_dash_report"
|
||||||
|
app:tint="@color/colorPrimary" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:fontFamily="@font/rubik_medium"
|
||||||
|
android:text="Reports"
|
||||||
|
android:textAlignment="center"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/bt6"
|
||||||
|
android:layout_width="120dp"
|
||||||
|
android:layout_height="120dp"
|
||||||
|
android:layout_marginStart="60dp"
|
||||||
|
android:layout_marginBottom="45dp"
|
||||||
|
android:background="@drawable/honey"
|
||||||
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@+id/bt4"
|
||||||
|
android:clickable="@{mainViewModel.settlementStatus}"
|
||||||
|
android:focusable="@{mainViewModel.settlementStatus}"
|
||||||
|
android:alpha="@{mainViewModel.settlementStatus ? 1f : 0.5f}"
|
||||||
|
android:onClick="@{() -> click.onClickSettlement()}">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:gravity="center"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
android:layout_marginBottom="6dp"
|
android:layout_marginBottom="6dp"
|
||||||
android:src="@drawable/ic_settlement"
|
android:src="@drawable/ic_settlement"
|
||||||
app:tint="@color/colorPrimary" />
|
app:tint="@color/colorPrimary" />
|
||||||
@ -162,146 +303,53 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:fontFamily="@font/rubik_medium"
|
||||||
android:text="@string/menu_settlement"
|
android:text="@string/menu_settlement"
|
||||||
|
android:textAlignment="center"
|
||||||
android:textColor="@color/colorPrimary"
|
android:textColor="@color/colorPrimary"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold" />
|
||||||
android:fontFamily="@font/rubik_medium"
|
|
||||||
android:textAlignment="center" />
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.cardview.widget.CardView>
|
</FrameLayout>
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
<!-- Sign On -->
|
android:id="@+id/bt7"
|
||||||
<androidx.cardview.widget.CardView
|
android:layout_width="120dp"
|
||||||
android:id="@+id/signOnMenuCard"
|
android:layout_height="120dp"
|
||||||
android:layout_width="0dp"
|
android:layout_marginEnd="60dp"
|
||||||
android:layout_height="0dp"
|
android:layout_marginBottom="45dp"
|
||||||
app:cardCornerRadius="18dp"
|
android:background="@drawable/honey"
|
||||||
app:cardElevation="4dp"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
android:layout_margin="6dp"
|
|
||||||
android:foreground="?attr/selectableItemBackground"
|
|
||||||
android:onClick="@{() -> click.onClickSignOn()}"
|
|
||||||
app:layout_constraintTop_toBottomOf="@id/cardMenuCard"
|
|
||||||
app:layout_constraintStart_toEndOf="@id/settlementMenuCard"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintDimensionRatio="1:0.8">
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:background="@color/white"
|
|
||||||
android:gravity="center"
|
|
||||||
android:orientation="vertical"
|
|
||||||
android:padding="18dp">
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:layout_width="46dp"
|
|
||||||
android:layout_height="46dp"
|
|
||||||
android:src="@drawable/ic_signon"
|
|
||||||
app:tint="@color/colorPrimary"
|
|
||||||
android:layout_marginBottom="6dp" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@string/menu_sign_on"
|
|
||||||
android:textColor="@color/colorPrimary"
|
|
||||||
android:textSize="14sp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
android:fontFamily="@font/rubik_medium"
|
|
||||||
android:textAlignment="center" />
|
|
||||||
</LinearLayout>
|
|
||||||
</androidx.cardview.widget.CardView>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ===== ROW 2 ===== -->
|
|
||||||
|
|
||||||
<!-- Transactions -->
|
|
||||||
<androidx.cardview.widget.CardView
|
|
||||||
android:id="@+id/otherFeaturesCard"
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
app:cardCornerRadius="18dp"
|
|
||||||
app:cardElevation="4dp"
|
|
||||||
android:layout_margin="6dp"
|
|
||||||
android:foreground="?attr/selectableItemBackground"
|
|
||||||
android:onClick="@{() -> click.onClickTrans()}"
|
android:onClick="@{() -> click.onClickTrans()}"
|
||||||
app:layout_constraintTop_toBottomOf="@id/settlementMenuCard"
|
app:layout_constraintTop_toBottomOf="@+id/bt4">
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintEnd_toStartOf="@id/qrPayMenuCard"
|
|
||||||
app:layout_constraintDimensionRatio="1:0.8">
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:background="@color/white"
|
android:orientation="vertical">
|
||||||
android:orientation="vertical"
|
|
||||||
android:padding="18dp">
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:layout_width="46dp"
|
android:layout_width="39dp"
|
||||||
android:layout_height="46dp"
|
android:layout_height="36dp"
|
||||||
|
android:layout_marginBottom="6dp"
|
||||||
android:src="@drawable/ic_other_features"
|
android:src="@drawable/ic_other_features"
|
||||||
app:tint="@color/colorPrimary"
|
app:tint="@color/colorPrimary" />
|
||||||
android:layout_marginBottom="6dp" />
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/menu_transactions"
|
android:fontFamily="@font/rubik_medium"
|
||||||
|
android:text="@string/dash_see_more"
|
||||||
|
android:textAlignment="center"
|
||||||
android:textColor="@color/colorPrimary"
|
android:textColor="@color/colorPrimary"
|
||||||
android:textSize="14sp"
|
android:textSize="14sp"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold" />
|
||||||
android:fontFamily="@font/rubik_medium"
|
|
||||||
android:textAlignment="center" />
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.cardview.widget.CardView>
|
</FrameLayout>
|
||||||
|
|
||||||
|
|
||||||
<!-- QR Pay -->
|
|
||||||
<androidx.cardview.widget.CardView
|
|
||||||
android:id="@+id/qrPayMenuCard"
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
app:cardCornerRadius="18dp"
|
|
||||||
app:cardElevation="4dp"
|
|
||||||
android:layout_margin="6dp"
|
|
||||||
android:foreground="?attr/selectableItemBackground"
|
|
||||||
android:onClick="@{() -> click.onClickQR()}"
|
|
||||||
app:disableBtn="@{mainViewModel.kPayStatus}"
|
|
||||||
app:layout_constraintTop_toBottomOf="@id/signOnMenuCard"
|
|
||||||
app:layout_constraintStart_toEndOf="@id/otherFeaturesCard"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintDimensionRatio="1:0.8">
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:background="@color/white"
|
|
||||||
android:gravity="center"
|
|
||||||
android:orientation="vertical"
|
|
||||||
android:padding="18dp">
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:layout_width="46dp"
|
|
||||||
android:layout_height="46dp"
|
|
||||||
android:src="@drawable/ic_mmqr"
|
|
||||||
android:layout_marginBottom="6dp" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@string/menu_qrpay"
|
|
||||||
android:textColor="@color/colorPrimary"
|
|
||||||
android:textSize="14sp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
android:fontFamily="@font/rubik_medium"
|
|
||||||
android:textAlignment="center" />
|
|
||||||
</LinearLayout>
|
|
||||||
</androidx.cardview.widget.CardView>
|
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|||||||
@ -69,7 +69,6 @@
|
|||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="Partial Amount"
|
android:text="Partial Amount"
|
||||||
android:textSize="16sp"
|
android:textSize="16sp"
|
||||||
android:visibility="@{sharedViewModel.qrPartialRefundEnable ? View.VISIBLE : View.GONE}"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</RadioGroup>
|
</RadioGroup>
|
||||||
|
|||||||
@ -160,6 +160,9 @@
|
|||||||
<action
|
<action
|
||||||
android:id="@+id/action_nav_main_to_nav_sign_on"
|
android:id="@+id/action_nav_main_to_nav_sign_on"
|
||||||
app:destination="@id/nav_sign_on" />
|
app:destination="@id/nav_sign_on" />
|
||||||
|
<action
|
||||||
|
android:id="@+id/action_nav_main_to_manageFunctionFragment"
|
||||||
|
app:destination="@id/managementFunctionFragment" />
|
||||||
|
|
||||||
</fragment>
|
</fragment>
|
||||||
<fragment
|
<fragment
|
||||||
|
|||||||
@ -518,6 +518,8 @@
|
|||||||
<string name="error_occurred">Error Occured</string>
|
<string name="error_occurred">Error Occured</string>
|
||||||
<string name="nav_app_bar_open_drawer_description">Open navigation drawer</string>
|
<string name="nav_app_bar_open_drawer_description">Open navigation drawer</string>
|
||||||
<string name="no_history">No History yet</string>
|
<string name="no_history">No History yet</string>
|
||||||
|
<string name="qr_pay">QR Pay</string>
|
||||||
|
<string name="dash_see_more">See More</string>
|
||||||
<string-array name="pref_bank_name">
|
<string-array name="pref_bank_name">
|
||||||
<item>UTS</item>
|
<item>UTS</item>
|
||||||
<item>YOMA Bank</item>
|
<item>YOMA Bank</item>
|
||||||
|
|||||||
@ -288,7 +288,6 @@ public class NetworkModule {
|
|||||||
String baseUrl = tmsAddress.trim() + "/api/v1/";
|
String baseUrl = tmsAddress.trim() + "/api/v1/";
|
||||||
// String baseUrl = tmsAddress.trim() + "/";
|
// String baseUrl = tmsAddress.trim() + "/";
|
||||||
|
|
||||||
|
|
||||||
final Gson gson =
|
final Gson gson =
|
||||||
new GsonBuilder().create();
|
new GsonBuilder().create();
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user