Browse Source

- Reformat Code

hbw_build
Wong Joon Hui 2 years ago
parent
commit
d480d3dccc
  1. 2
      app/build.gradle
  2. 12
      app/src/main/java/com/cst/im30/ICEchoClient.java
  3. 4
      app/src/main/java/com/cst/im30/MainApplication.java
  4. 21
      app/src/main/java/com/cst/im30/PaymentHandler.java
  5. 27
      app/src/main/java/com/cst/im30/activity/ICCActivity.java
  6. 14
      app/src/main/java/com/cst/im30/activity/MainActivity.java
  7. 18
      app/src/main/java/com/cst/im30/activity/SettingActivity.java
  8. 51
      app/src/main/java/com/cst/im30/api/RetrofitAPICollection.java
  9. 1
      app/src/main/java/com/cst/im30/common/Constants.java
  10. 21
      app/src/main/java/com/cst/im30/common/Parcel.java
  11. 107
      app/src/main/java/com/cst/im30/common/Payment.java
  12. 400
      app/src/main/java/com/cst/im30/entity/Transaction.java
  13. 3
      app/src/main/java/com/cst/im30/service/PaymentService.java
  14. 2
      app/src/main/java/com/cst/im30/service/UploadTransactionPreAuthPaymentService.java
  15. 2
      app/src/main/java/com/cst/im30/service/UploadTransactionSaleCompletionPaymentService.java
  16. 2
      app/src/main/java/com/cst/im30/service/UploadTransactionSalePaymentService.java
  17. 9
      app/src/main/java/com/cst/im30/utility/CloudWatchLogger.java
  18. 11
      app/src/main/java/com/cst/im30/utility/IccTester.java
  19. 2
      app/src/main/java/com/cst/im30/utility/Logger.java
  20. 4
      app/src/main/res/drawable/ic_status_fail.xml
  21. 4
      app/src/main/res/drawable/ic_status_success.xml
  22. 31
      app/src/main/res/layout/activity_pay.xml
  23. 6
      app/src/main/res/layout/pop_up_message_option.xml
  24. 3
      app/src/main/res/layout/toolbar.xml
  25. 3
      app/src/main/res/layout/toolbar_setting.xml
  26. 8
      app/src/main/res/values/strings.xml

2
app/build.gradle

@ -28,7 +28,7 @@ android {
buildConfigField("String", "IC_CHANNEL_ID", IC_CHANNEL_ID)
buildConfigField("String", "IC_EVENT_TYPE", IC_EVENT_TYPE)
// Bugfendder
// Bugfender
buildConfigField("String", "BUGFENDER_TOKEN", BUGFENDER_TOKEN)
// AWS

12
app/src/main/java/com/cst/im30/ICEchoClient.java

@ -1,12 +0,0 @@
package com.cst.im30;
import com.cst.im30.activity.MainActivity;
public class ICEchoClient extends EchoClient {
public ICEchoClient(MainActivity context, String host) {
super(host);
}
}

4
app/src/main/java/com/cst/im30/MainApplication.java

@ -103,6 +103,10 @@ public class MainApplication extends Application {
this.cloudWatchLogger.log(BuildConfig.LOG_GROUP_NAME, "IcScanLog", message);
}
public void logPayment(String message) {
this.cloudWatchLogger.log(BuildConfig.LOG_GROUP_NAME, "Payment", message);
}
public void logError(String message) {
this.cloudWatchLogger.log(BuildConfig.LOG_GROUP_NAME, "Error", message);
}

21
app/src/main/java/com/cst/im30/PaymentHandler.java

@ -31,6 +31,7 @@ public class PaymentHandler {
public void handlePayFunctionSale(EventLogDetailed eventLogDetailed) {
SaleRequest request = PaymentUtils.createSaleRequest(eventLogDetailed);
if (PaymentUtils.validateSaleRequest(request)) {
MainApplication.getInstance().logPayment("[SALE]" + " Confirmation Number:" + eventLogDetailed.getConfirmationNumber() + " Reference Number:" + eventLogDetailed.getReferenceNumber() + " Amount:" + eventLogDetailed.getPayableAmount() + " Remark:" + eventLogDetailed.getRemark());
initSalePayment(request);
} else {
Toast.makeText(context, "Invalid Sale Request", Toast.LENGTH_SHORT).show();
@ -41,6 +42,7 @@ public class PaymentHandler {
public void handlePayFunctionVoid(EventLogDetailed eventLogDetailed) {
VoidRequest request = PaymentUtils.createVoidRequest(eventLogDetailed);
if (PaymentUtils.validateVoidRequest(request)) {
MainApplication.getInstance().logPayment("[VOID]" + " Confirmation Number:" + eventLogDetailed.getConfirmationNumber() + " Reference Number:" + eventLogDetailed.getReferenceNumber() + " Amount:" + eventLogDetailed.getPayableAmount() + " Remark:" + eventLogDetailed.getRemark());
initVoid(request);
} else {
Toast.makeText(context, "Invalid Void Request", Toast.LENGTH_SHORT).show();
@ -56,6 +58,7 @@ public class PaymentHandler {
public void handlePayFunctionPreAuth(EventLogDetailed eventLogDetailed) {
PreAuthRequest request = PaymentUtils.createPreAuthRequest(eventLogDetailed);
if (PaymentUtils.validatePreAuthRequest(request)) {
MainApplication.getInstance().logPayment("[PRE-AUTH]" + " Confirmation Number:" + eventLogDetailed.getConfirmationNumber() + " Reference Number:" + eventLogDetailed.getReferenceNumber() + " Amount:" + eventLogDetailed.getPayableAmount() + " Remark:" + eventLogDetailed.getRemark());
initPreAuth(request);
} else {
Toast.makeText(context, "Invalid Pre Auth Request", Toast.LENGTH_SHORT).show();
@ -66,6 +69,7 @@ public class PaymentHandler {
public void handlePayFunctionSaleCompletion(EventLogDetailed eventLogDetailed) {
SaleCompletionRequest request = PaymentUtils.createSaleCompletionRequest(eventLogDetailed);
if (PaymentUtils.validateSaleCompletionRequest(request)) {
MainApplication.getInstance().logPayment("[SALE_COMPLETION]" + " Confirmation Number:" + eventLogDetailed.getConfirmationNumber() + " Reference Number:" + eventLogDetailed.getReferenceNumber() + " Amount:" + eventLogDetailed.getPayableAmount() + " Remark:" + eventLogDetailed.getRemark());
initSaleCompletion(request);
} else {
Toast.makeText(context, "Invalid Sale Completion Request", Toast.LENGTH_SHORT).show();
@ -75,6 +79,7 @@ public class PaymentHandler {
public void initSalePayment(SaleRequest request) {
Logger.logD("Direct Payment: " + request.toString());
MainApplication.getInstance().logPayment(request.toString());
Bundle extra = new Bundle();
extra.putString("pay_function", request.getPayFunction());
@ -100,8 +105,10 @@ public class PaymentHandler {
public void initVoid(VoidRequest request) {
Logger.logD("Void Payment: " + request.toString());
MainApplication.getInstance().logPayment(request.toString());
Bundle extra = new Bundle();
extra.putString("pay_function", request.getPayFunction());
extra.putString("pay_amount", String.valueOf(request.getPayAmount()));
extra.putString("pay_print_receipt_id", request.getPayPrintReceiptId());
@ -120,6 +127,7 @@ public class PaymentHandler {
public void initCancel(CancelRequest request) {
Logger.logD(request.toString());
MainApplication.getInstance().logPayment(request.toString());
Bundle extra = new Bundle();
extra.putString("pay_function", request.getPayFunction());
@ -131,6 +139,7 @@ public class PaymentHandler {
public void initPreAuth(PreAuthRequest request) {
Logger.logD(request.toString());
MainApplication.getInstance().logPayment(request.toString());
Bundle extra = new Bundle();
extra.putString("pay_function", request.getPayFunction());
@ -150,14 +159,14 @@ public class PaymentHandler {
public void initSaleCompletion(SaleCompletionRequest request) {
Logger.logD(request.toString());
MainApplication.getInstance().logPayment(request.toString());
Bundle extra = new Bundle();
extra.putString("pay_function", request.getPayFunction());
extra.putString("pay_amount", String.valueOf(request.getPayAmount()));
extra.putString("pay_auth_code", request.getPayAuthCode());
extra.putString("pay_ref_num", request.getPayRefNum());
String payPosTxnId = request.getPayPosTxnId();
if (payPosTxnId != null && !payPosTxnId.isEmpty()) {
extra.putString("pay_pos_txn_id", payPosTxnId);
@ -176,6 +185,7 @@ public class PaymentHandler {
intent.putExtras(bundle);
Logger.logD("App2App Call to: " + Constants.APP_2_APP);
MainApplication.getInstance().logPayment("App2App Call to: " + Constants.APP_2_APP);
context.startActivity(intent);
}
@ -214,6 +224,7 @@ public class PaymentHandler {
response.setPayRespHashPan(extra.getString("pay_resp_hash_pan"));
Logger.logD(response.toString());
MainApplication.getInstance().logPayment(response.toString());
MainApplication.currentSaleResponse = response;
@ -252,6 +263,7 @@ public class PaymentHandler {
response.setPayRespAppLabel(extra.getString("pay_resp_app_label"));
Logger.logD(response.toString());
MainApplication.getInstance().logPayment(response.toString());
MainApplication.currentVoidResponse = response;
@ -266,6 +278,7 @@ public class PaymentHandler {
response.setPayRespCode(extra.getString("pay_resp_code"));
Logger.logD(response.toString());
MainApplication.getInstance().logPayment(response.toString());
MainApplication.currentCancelResponse = response;
}
@ -301,6 +314,7 @@ public class PaymentHandler {
response.setToken(extra.getString("token"));
Logger.logD(response.toString());
MainApplication.getInstance().logPayment(response.toString());
MainApplication.code = response.getPayRespCode();
MainApplication.status = response.getPayRespErrorDesc();
@ -338,6 +352,7 @@ public class PaymentHandler {
response.setPayRespHashPan(extra.getString("pay_resp_hash_pan"));
Logger.logD(response.toString());
MainApplication.getInstance().logPayment(response.toString());
MainApplication.code = response.getPayRespCode();
MainApplication.status = response.getPayRespErrorDesc();

27
app/src/main/java/com/cst/im30/activity/ICCActivity.java

@ -48,10 +48,9 @@ public class ICCActivity extends AppCompatActivity {
private String name;
private String cardNo;
private AlertDialog alertDialogPromptCard;
private Button buttonCancel;
@SuppressLint("HandlerLeak")
private Handler handler = new Handler() {
private final Handler handler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case 0: //got card
@ -159,7 +158,7 @@ public class ICCActivity extends AppCompatActivity {
}
};
@SuppressLint("HandlerLeak")
private Handler handlerCard = new Handler() {
private final Handler handlerCard = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case 0:
@ -191,7 +190,7 @@ public class ICCActivity extends AppCompatActivity {
}
};
@SuppressLint("HandlerLeak")
private Handler handlerInsertCard = new Handler() {
private final Handler handlerInsertCard = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case 0: //got card
@ -270,7 +269,7 @@ public class ICCActivity extends AppCompatActivity {
setContentView(R.layout.activity_icc);
setTitle("Read Card");
buttonCancel = findViewById(R.id.button_cancel);
Button buttonCancel = findViewById(R.id.button_cancel);
buttonCancel.setOnClickListener(v -> cancel());
name = "";
@ -330,23 +329,13 @@ public class ICCActivity extends AppCompatActivity {
}
private void appIsReady() {
if (iccDetectedThread == null) {
iccDetectedThread = new IccDetectedThread();
iccDetectedThread.start();
} else {
iccDetectedThread = new IccDetectedThread();
iccDetectedThread.start();
}
iccDetectedThread = new IccDetectedThread();
iccDetectedThread.start();
}
private void checkCard() {
if (cardDetectedThread == null) {
cardDetectedThread = new CardDetectedThread();
cardDetectedThread.start();
} else {
cardDetectedThread = new CardDetectedThread();
cardDetectedThread.start();
}
cardDetectedThread = new CardDetectedThread();
cardDetectedThread.start();
}
private void insertCard() {

14
app/src/main/java/com/cst/im30/activity/MainActivity.java

@ -59,7 +59,6 @@ import java.util.Objects;
import java.util.regex.Pattern;
public class MainActivity extends AppCompatActivity implements CallableInterface {
public static final String TAG = "MainActivity.";
ActivityResultLauncher<Intent> icVerificationLauncher = registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
result -> {
@ -764,17 +763,4 @@ public class MainActivity extends AppCompatActivity implements CallableInterface
mHandler.postDelayed(mRunnable, 3000);
}
/*private void setupCloudWatch() {
String accessKey = "";
String secretKey = "";
BasicAWSCredentials basicAWSCredentials = new BasicAWSCredentials(accessKey, secretKey);
AmazonCloudWatchLogsClient client = new AmazonCloudWatchLogsClient(basicAWSCredentials);
Regions regions = Regions.AP_SOUTHEAST_1; // Singapore
client.setRegion(Region.getRegion(regions));
String logGroupName = "TEST123";
CreateLogGroupRequest createLogGroupRequest = new CreateLogGroupRequest(logGroupName);
client.createLogGroup(new CreateLogGroupRequest(""));
}*/
}

18
app/src/main/java/com/cst/im30/activity/SettingActivity.java

@ -29,20 +29,17 @@ public class SettingActivity extends AppCompatActivity {
private TextView textViewResponse,
textViewConnectionStatus;
private Button buttonConnect,
buttonCheckConnectionStatus;
private Button buttonConnect;
private boolean isConnected;
private Toolbar toolbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.d(TAG, "onCreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_setting);
toolbar = (Toolbar) findViewById(R.id.toolbar);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
TextView titleMain = findViewById(R.id.title_main_st);
@ -72,7 +69,7 @@ public class SettingActivity extends AppCompatActivity {
buttonConnect = findViewById(R.id.button_connect_st);
buttonCheckConnectionStatus = findViewById(R.id.button_check_connection_status_st);
Button buttonCheckConnectionStatus = findViewById(R.id.button_check_connection_status_st);
buttonCheckConnectionStatus.setOnClickListener(v -> buttonCheckConnectionStatusClicked());
//buttonTriggerCheckPreviousPayment = findViewById(R.id.button_previous_payment);
@ -201,12 +198,9 @@ public class SettingActivity extends AppCompatActivity {
runOnUiThread(() -> textViewResponse.setText(finalData));
final Handler handler = new Handler(Looper.getMainLooper());
handler.postDelayed(new Runnable() {
@Override
public void run() {
//Do something after 5000ms = 5 seconds
//clearInfo();
}
handler.postDelayed(() -> {
//Do something after 5000ms = 5 seconds
//clearInfo();
}, 5000);
//buttonTriggerPayment(finalData);

51
app/src/main/java/com/cst/im30/api/RetrofitAPICollection.java

@ -1,29 +1,17 @@
package com.cst.im30.api;
import com.cst.im30.common.Payment;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.Header;
import retrofit2.http.Headers;
import retrofit2.http.POST;
import retrofit2.http.PUT;
import retrofit2.http.Path;
import retrofit2.http.Query;
@SuppressWarnings({"unused"})
public interface RetrofitAPICollection {
@GET("launch")
Call<String> getLaunch();
//Get data from Laravel Echo Server
@GET("/payment-request")
Call<Payment> getData();
@Headers({
"Accept: application/json",
"Content-Type: application/json"
@ -58,41 +46,4 @@ public interface RetrofitAPICollection {
@Body String body
);
@Headers({
"Accept: application/json"
})
@GET("api/intentpayment/requery")
Call<String> requeryCardPayment(@Header("Authorization") String token,
@Query("reference_number") String referenceNumberQuery,
@Query("merchant_code") String merchantCode,
@Query("payment_type") String paymentType,
@Query("amount") String amount,
@Query("signature") String signature);
@Headers({
"Accept: application/json",
"Content-Type: application/x-www-form-urlencoded"
})
@FormUrlEncoded
@PUT("api/intentpayment/update-status")
Call<String> updateStatusCardPayment(@Header("Authorization") String token,
@Field("reference_number") String referenceNumber,
@Field("status") String status,
@Field("merchant_code") String merchantCode,
@Field("amount") String amount,
@Field("response_code") String response_code,
@Field("signature") String signature,
@Field("params_response") String params_response);
/*Call<Payment> updateStatusCardPayment(@Header("Authorization") String token,
@Field("reference_number") String referenceNumber,
@Field("payment_type") String paymentType,
@Field("payment_function") String paymentFunction,
@Field("payment_camera_mode") String paymentCameraMode,
@Field("signature") String signature,
@Field("amount") String amount,
@Field("status") String status,
@Field("params_response") String paramsResponse);*/
}

1
app/src/main/java/com/cst/im30/common/Constants.java

@ -1,5 +1,6 @@
package com.cst.im30.common;
@SuppressWarnings({"unused"})
public class Constants {
public static final String APP_2_APP = "com.revenue.edc.hlb.pro.app2app";

21
app/src/main/java/com/cst/im30/common/Parcel.java

@ -1,21 +0,0 @@
package com.cst.im30.common;
import org.json.JSONObject;
import java.io.Serializable;
public class Parcel implements Serializable {
private JSONObject obj;
public Parcel(JSONObject obj) {
this.obj = obj;
}
public Parcel(String toString) {
}
public JSONObject getObj() {
return obj;
}
}

107
app/src/main/java/com/cst/im30/common/Payment.java

@ -1,107 +0,0 @@
package com.cst.im30.common;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class Payment {
@SerializedName("reference_number")
@Expose
private String referenceNumber;
/*@Field("reference_number") String referenceNumber,
@Field("payment_type") String paymentType,
@Field("payment_function") String paymentFunction,
@Field("payment_camera_mode") String paymentCameraMode,
@Field("signature") String signature,
@Field("amount") String amount,
@Field("status") String status,
@Field("params_response") String paramsResponse);*/
@SerializedName("payment_type")
@Expose
private String paymentType;
@SerializedName("payment_function")
@Expose
private String paymentFunction;
@SerializedName("payment_camera_mode")
@Expose
private String paymentCameraMode;
@SerializedName("signature")
@Expose
private String signature;
@SerializedName("amount")
@Expose
private String amount;
@SerializedName("status")
@Expose
private String status;
@SerializedName("params_response")
@Expose
private String[] params;
public Payment(String referenceNumber, String paymentType, String paymentFunction, String paymentCameraMode, String signature,
String amount, String status, String[] params) {
this.referenceNumber = referenceNumber;
this.paymentType = paymentType;
this.paymentFunction = paymentFunction;
this.paymentCameraMode = paymentCameraMode;
this.signature = signature;
this.amount = amount;
this.status = status;
this.params = params;
}
//GETTER
public String getReferenceNumber() {
return referenceNumber;
}
public void setReferenceNumber(String referenceNumber) {
this.referenceNumber = referenceNumber;
}
public String getPaymentType() {
return paymentType;
}
public String getPaymentFunction() {
return paymentFunction;
}
public String getPaymentCameraMode() {
return paymentCameraMode;
}
public String getSignature() {
return signature;
}
public String getAmount() {
return amount;
}
public void setAmount(String amount) {
this.amount = amount;
}
//SETTER
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String[] getParams() {
return params;
}
}

400
app/src/main/java/com/cst/im30/entity/Transaction.java

@ -1,400 +0,0 @@
package com.cst.im30.entity;
import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.PrimaryKey;
import java.io.Serializable;
@Entity(tableName = Transaction.TABLE_NAME)
public class Transaction implements Serializable {
public static final String TABLE_NAME = "transactions";
public static final String COLUMN_ID = "id";
public static final String COLUMN_TYPE = "type";
public static final String COLUMN_KEY_INDEX = "key_index";
public static final String COLUMN_SIGNATURE = "signature";
public static final String COLUMN_SIGNATURE_METHOD = "signature_method";
public static final String COLUMN_AMOUNT = "amount";
public static final String COLUMN_CAMERA_MODE = "camera_mode";
public static final String COLUMN_BANK_REF_NUM = "bank_ref_num";
public static final String COLUMN_BATCH_NO = "batch_no";
public static final String COLUMN_RESPONSE_CODE = "response_code";
public static final String COLUMN_RESPONSE_CODE_DESC = "response_code_desc";
public static final String COLUMN_CURRENCY = "currency";
public static final String COLUMN_CUSTOMER_ID = "customer_id";
public static final String COLUMN_DISPLAY_MID = "display_mid";
public static final String COLUMN_DISPLAY_TID = "display_tid";
public static final String COLUMN_ENTRY_MODE = "entry_mode";
public static final String COLUMN_FUNCTION = "function";
public static final String COLUMN_INVOICE_NO = "invoice_no";
public static final String COLUMN_MID = "mid";
public static final String COLUMN_QR_CODE = "qr_code";
public static final String COLUMN_SCHEME = "scheme";
public static final String COLUMN_TID = "tid";
public static final String COLUMN_TRACE_NO = "trace_no";
public static final String COLUMN_TXN_DESC = "txn_desc";
public static final String COLUMN_TXN_DT = "txn_dt";
public static final String COLUMN_TXN_ID = "txn_id";
public static final String COLUMN_STATUS = "status";
public static final String COLUMN_ORI_INVOICE_NO = "ori_invoice_no";
public static final String COLUMN_VOIDED_AT = "voided_at";
public static final String COLUMN_SETTLED_AT = "settled_at";
public static final String COLUMN_CREATED_AT = "created_at";
public static final String COLUMN_UPDATED_AT = "updated_at";
@PrimaryKey(autoGenerate = true)
private int id;
@ColumnInfo(name = COLUMN_TYPE)
private String type;
@ColumnInfo(name = COLUMN_KEY_INDEX)
private String keyIndex;
@ColumnInfo(name = COLUMN_SIGNATURE)
private String signature;
@ColumnInfo(name = COLUMN_SIGNATURE_METHOD)
private String signatureMethod;
@ColumnInfo(name = COLUMN_AMOUNT)
private String amount;
@ColumnInfo(name = COLUMN_CAMERA_MODE)
private String cameraMode;
@ColumnInfo(name = COLUMN_BANK_REF_NUM)
private String bankRefNum;
@ColumnInfo(name = COLUMN_BATCH_NO)
private String batchNo;
@ColumnInfo(name = COLUMN_RESPONSE_CODE)
private String responseCode;
@ColumnInfo(name = COLUMN_RESPONSE_CODE_DESC)
private String responseCodeDesc;
@ColumnInfo(name = COLUMN_CURRENCY)
private String currency;
@ColumnInfo(name = COLUMN_CUSTOMER_ID)
private String customerId;
@ColumnInfo(name = COLUMN_DISPLAY_MID)
private String displayMid;
@ColumnInfo(name = COLUMN_DISPLAY_TID)
private String displayTid;
@ColumnInfo(name = COLUMN_ENTRY_MODE)
private String entryMode;
@ColumnInfo(name = COLUMN_FUNCTION)
private String function;
@ColumnInfo(name = COLUMN_INVOICE_NO)
private String invoiceNo;
@ColumnInfo(name = COLUMN_MID)
private String mid;
@ColumnInfo(name = COLUMN_QR_CODE)
private String qrCode;
@ColumnInfo(name = COLUMN_SCHEME)
private String scheme;
@ColumnInfo(name = COLUMN_TID)
private String tid;
@ColumnInfo(name = COLUMN_TRACE_NO)
private String traceNo;
@ColumnInfo(name = COLUMN_TXN_DESC)
private String transactionDesc;
@ColumnInfo(name = COLUMN_TXN_DT)
private String transactionDt;
@ColumnInfo(name = COLUMN_TXN_ID)
private String transactionId;
@ColumnInfo(name = COLUMN_STATUS)
private String status;
@ColumnInfo(name = COLUMN_ORI_INVOICE_NO)
private String oriInvoiceNo;
@ColumnInfo(name = COLUMN_VOIDED_AT)
private String voidedAt;
@ColumnInfo(name = COLUMN_SETTLED_AT)
private String settledAt;
@ColumnInfo(name = COLUMN_CREATED_AT)
private String createdAt;
@ColumnInfo(name = COLUMN_UPDATED_AT)
private String updatedAt;
public Transaction() {
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getType() {
return type == null ? "" : type;
}
public void setType(String type) {
this.type = type;
}
public String getKeyIndex() {
return keyIndex == null ? "" : keyIndex;
}
public void setKeyIndex(String keyIndex) {
this.keyIndex = keyIndex;
}
public String getSignature() {
return signature == null ? "" : signature;
}
public void setSignature(String signature) {
this.signature = signature;
}
public String getSignatureMethod() {
return signatureMethod == null ? "" : signatureMethod;
}
public void setSignatureMethod(String signatureMethod) {
this.signatureMethod = signatureMethod;
}
public String getAmount() {
return amount == null ? "" : amount;
}
public void setAmount(String amount) {
this.amount = amount;
}
public String getCameraMode() {
return cameraMode == null ? "" : cameraMode;
}
public void setCameraMode(String cameraMode) {
this.cameraMode = cameraMode;
}
public String getBankRefNum() {
return bankRefNum == null ? "" : bankRefNum;
}
public void setBankRefNum(String bankRefNum) {
this.bankRefNum = bankRefNum;
}
public String getBatchNo() {
return batchNo == null ? "" : batchNo;
}
public void setBatchNo(String batchNo) {
this.batchNo = batchNo;
}
public String getResponseCode() {
return responseCode == null ? "" : responseCode;
}
public void setResponseCode(String responseCode) {
this.responseCode = responseCode;
}
public String getResponseCodeDesc() {
return responseCodeDesc == null ? "" : responseCodeDesc;
}
public void setResponseCodeDesc(String responseCodeDesc) {
this.responseCodeDesc = responseCodeDesc;
}
public String getCurrency() {
return currency == null ? "" : currency;
}
public void setCurrency(String currency) {
this.currency = currency;
}
public String getCustomerId() {
return customerId == null ? "" : customerId;
}
public void setCustomerId(String customerId) {
this.customerId = customerId;
}
public String getDisplayMid() {
return displayMid == null ? "" : displayMid;
}
public void setDisplayMid(String displayMid) {
this.displayMid = displayMid;
}
public String getDisplayTid() {
return displayTid == null ? "" : displayTid;
}
public void setDisplayTid(String displayTid) {
this.displayTid = displayTid;
}
public String getEntryMode() {
return entryMode == null ? "" : entryMode;
}
public void setEntryMode(String entryMode) {
this.entryMode = entryMode;
}
public String getFunction() {
return function == null ? "" : function;
}
public void setFunction(String function) {
this.function = function;
}
public String getInvoiceNo() {
return invoiceNo == null ? "" : invoiceNo;
}
public void setInvoiceNo(String invoiceNo) {
this.invoiceNo = invoiceNo;
}
public String getMid() {
return mid == null ? "" : mid;
}
public void setMid(String mid) {
this.mid = mid;
}
public String getQrCode() {
return qrCode == null ? "" : qrCode;
}
public void setQrCode(String qrCode) {
this.qrCode = qrCode;
}
public String getScheme() {
return scheme == null ? "" : scheme;
}
public void setScheme(String scheme) {
this.scheme = scheme;
}
public String getTid() {
return tid == null ? "" : tid;
}
public void setTid(String tid) {
this.tid = tid;
}
public String getTraceNo() {
return traceNo == null ? "" : traceNo;
}
public void setTraceNo(String traceNo) {
this.traceNo = traceNo;
}
public String getTransactionDesc() {
return transactionDesc == null ? "" : transactionDesc;
}
public void setTransactionDesc(String transactionDesc) {
this.transactionDesc = transactionDesc;
}
public String getTransactionDt() {
return transactionDt == null ? "" : transactionDt;
}
public void setTransactionDt(String transactionDt) {
this.transactionDt = transactionDt;
}
public String getTransactionId() {
return transactionId == null ? "" : transactionId;
}
public void setTransactionId(String transactionId) {
this.transactionId = transactionId;
}
public String getStatus() {
return status == null ? "" : status;
}
public void setStatus(String status) {
this.status = status;
}
public String getOriInvoiceNo() {
return oriInvoiceNo == null ? "" : oriInvoiceNo;
}
public void setOriInvoiceNo(String oriInvoiceNo) {
this.oriInvoiceNo = oriInvoiceNo;
}
public String getVoidedAt() {
return voidedAt == null ? "" : voidedAt;
}
public void setVoidedAt(String voidedAt) {
this.voidedAt = voidedAt;
}
public String getSettledAt() {
return settledAt == null ? "" : settledAt;
}
public void setSettledAt(String settledAt) {
this.settledAt = settledAt;
}
public String getCreatedAt() {
return createdAt == null ? "" : createdAt;
}
public void setCreatedAt(String createdAt) {
this.createdAt = createdAt;
}
public String getUpdatedAt() {
return updatedAt == null ? "" : updatedAt;
}
public void setUpdatedAt(String updatedAt) {
this.updatedAt = updatedAt;
}
}

3
app/src/main/java/com/cst/im30/service/PaymentService.java

@ -18,6 +18,7 @@ import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
@SuppressWarnings({"unused"})
public class PaymentService {
public static final String TAG = "PaymentSaleService.";
@ -155,7 +156,7 @@ public class PaymentService {
private void onFailureUpdateBroadcastEventLogDetails(Throwable t) {
if (t instanceof Exception) {
Logger.logE(t.getMessage());
((Exception) t).printStackTrace();
t.printStackTrace();
}
callback.callBack(FAIL_UPDATE_EVENT_LOG, t.getMessage());
}

2
app/src/main/java/com/cst/im30/service/UploadTransactionPreAuthPaymentService.java

@ -87,7 +87,7 @@ public class UploadTransactionPreAuthPaymentService {
private void onFailureHandler(Throwable t) {
if (t instanceof Exception) {
Logger.logE(t.getMessage());
((Exception) t).printStackTrace();
t.printStackTrace();
}
callback.callBack(FAIL, t.getMessage());
}

2
app/src/main/java/com/cst/im30/service/UploadTransactionSaleCompletionPaymentService.java

@ -87,7 +87,7 @@ public class UploadTransactionSaleCompletionPaymentService {
private void onFailureHandler(Throwable t) {
if (t instanceof Exception) {
Logger.logE(t.getMessage());
((Exception) t).printStackTrace();
t.printStackTrace();
}
callback.callBack(FAIL, t.getMessage());
}

2
app/src/main/java/com/cst/im30/service/UploadTransactionSalePaymentService.java

@ -87,7 +87,7 @@ public class UploadTransactionSalePaymentService {
private void onFailureHandler(Throwable t) {
if (t instanceof Exception) {
Logger.logE(t.getMessage());
((Exception) t).printStackTrace();
t.printStackTrace();
}
callback.callBack(FAIL, t.getMessage());
}

9
app/src/main/java/com/cst/im30/utility/CloudWatchLogger.java

@ -21,6 +21,7 @@ import java.util.Date;
import java.util.List;
import java.util.Locale;
@SuppressWarnings({"unused"})
public class CloudWatchLogger {
private AmazonCloudWatchLogsClient client;
@ -72,7 +73,7 @@ public class CloudWatchLogger {
logStreamsRequest.withLimit(10); // Up to 50. Increase/Decrease depending on how many different streamNames you maintain
//logStreamsRequest.setLogStreamNamePrefix(getPrefix());
logStreamsRequest.setLogStreamNamePrefix(getPrefix());
List<LogStream> logStreamList = client.describeLogStreams(logStreamsRequest).getLogStreams();
@ -137,10 +138,6 @@ public class CloudWatchLogger {
String dateString = new SimpleDateFormat("yyyyMMdd", Locale.ENGLISH).format(new Date());
String kioskCode = BuildConfig.KIOSK_CODE;
if (BuildConfig.FLAVOR != null && !BuildConfig.FLAVOR.isEmpty()) {
return dateString + "_IM30_" + kioskCode + "_" + BuildConfig.FLAVOR + "_";
} else {
return dateString + "_IM30_" + kioskCode + "_";
}
return dateString + "_IM30_" + kioskCode + "_" + BuildConfig.FLAVOR + "_";
}
}

11
app/src/main/java/com/cst/im30/utility/IccTester.java

@ -11,7 +11,7 @@ public class IccTester {
public static IDAL idal = null;
private static IccTester iccTester;
private IIcc icc;
private final IIcc icc;
private IccTester(Context context) {
try {
@ -32,7 +32,7 @@ public class IccTester {
}
public byte[] init(byte slot) {
byte[] initRes = null;
byte[] initRes;
try {
initRes = icc.init(slot);
@ -44,14 +44,14 @@ public class IccTester {
}
public boolean detect(byte slot) {
boolean res = false;
boolean res;
try {
res = icc.detect(slot);
return res;
} catch (IccDevException e) {
e.printStackTrace();
return res;
return false;
}
}
@ -73,8 +73,7 @@ public class IccTester {
public byte[] isoCommand(byte slot, byte[] send) {
try {
byte[] resp = icc.isoCommand(slot, send);
return resp;
return icc.isoCommand(slot, send);
} catch (IccDevException e) {
e.printStackTrace();
return null;

2
app/src/main/java/com/cst/im30/utility/Logger.java

@ -110,7 +110,7 @@ public class Logger {
Bugfender.i("IC SCAN", dataToWrite);
MainApplication.getInstance().logICScan(dataToWrite);
MainApplication.getInstance().logICScan(data + " - " + extra);
} catch (IOException e) {
Log.e("Exception", "File write failed: " + e.toString());
}

4
app/src/main/res/drawable/ic_status_fail.xml

@ -1,6 +1,6 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="400dp"
android:height="400dp"
android:width="200dp"
android:height="200dp"
android:tint="#FF0000"
android:viewportWidth="24.0"
android:viewportHeight="24.0">

4
app/src/main/res/drawable/ic_status_success.xml

@ -1,6 +1,6 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="400dp"
android:height="400dp"
android:width="200dp"
android:height="200dp"
android:tint="#00FF00"
android:viewportWidth="24.0"
android:viewportHeight="24.0">

31
app/src/main/res/layout/activity_pay.xml

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/title_top"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="300dp"
android:layout_marginBottom="10dp"
android:text="Revenue Payment API Spec"
android:textColor="@color/teal_700"
android:textSize="20dp"
android:textStyle="bold" />
<TextView
android:id="@+id/title_response"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="0dp"
android:layout_marginBottom="10dp"
android:text="Response code return here..."
android:textColor="@color/green"
android:textSize="20dp"
android:textStyle="italic" />
</LinearLayout>

6
app/src/main/res/layout/pop_up_message_option.xml

@ -56,7 +56,8 @@
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold" />
android:textStyle="bold"
style="?android:attr/buttonBarButtonStyle" />
<Button
android:id="@+id/button_yes_pop_up_message_option"
@ -71,7 +72,8 @@
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="30sp"
android:textStyle="bold" />
android:textStyle="bold"
style="?android:attr/buttonBarButtonStyle" />
</LinearLayout>

3
app/src/main/res/layout/toolbar.xml

@ -26,7 +26,8 @@
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="20dp"
android:src="@drawable/ic_baseline_settings_24" />
android:src="@drawable/ic_baseline_settings_24"
android:contentDescription="TODO" />
</RelativeLayout>

3
app/src/main/res/layout/toolbar_setting.xml

@ -27,7 +27,8 @@
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="20dp"
android:src="@drawable/ic_baseline_keyboard_return_24" />
android:src="@drawable/ic_baseline_keyboard_return_24"
android:contentDescription="TODO" />
</RelativeLayout>

8
app/src/main/res/values/strings.xml

@ -5,8 +5,8 @@
<!--for General usage-->
<string name="txt_title">Title</string>
<string name="txt_message">Message</string>
<string name="txt_wait">Please wait...</string>
<string name="txt_ok">Ok</string>
<string name="txt_wait">Please wait</string>
<string name="txt_ok">OK</string>
<string name="txt_cancel">Cancel</string>
<string name="txt_yes">Yes</string>
<string name="txt_no">No</string>
@ -18,7 +18,7 @@
<string name="status_connected">Online</string>
<!--<string name="status_not_connected">Not Connected</string>-->
<string name="status_not_connected">Offline</string>
<string name="txt_title_main">Processing...</string>
<string name="txt_title_main">Processing</string>
<!--<string name="txt_title_main">Receiving Payment Information...</string>-->
<string name="button_connect">Connect</string>
<string name="button_disconnect">Disconnect</string>
@ -70,7 +70,7 @@
<string name="txt_info_amount_status">RM..</string>
<string name="txt_fail_status">Payment Failed</string>
<string name="txt_fail_info_status">Oops, your payment has failed!</string>
<string name="btn_ok_donation_status">Ok</string>
<string name="btn_ok_donation_status">OK</string>
<string name="btn_pay_again_status">Retry Payment</string>
<string name="btn_no_pay_again_status">Cancel</string>
<string name="success">Success</string>

Loading…
Cancel
Save