switched BPC host

This commit is contained in:
kizzy 2025-11-23 20:19:00 +07:00
parent ab4801d687
commit 49b929ab27
22 changed files with 46 additions and 45 deletions

View File

@ -1 +1 @@
KBZ-Master
KBZ-Master-latest

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="21" />
<bytecodeTargetLevel target="17" />
</component>
</project>

View File

@ -5,12 +5,6 @@
<SelectionState runConfigName="app">
<option name="selectionMode" value="DROPDOWN" />
</SelectionState>
<SelectionState runConfigName="testVoidPacket()">
<option name="selectionMode" value="DROPDOWN" />
</SelectionState>
<SelectionState runConfigName="ExampleInstrumentedTest">
<option name="selectionMode" value="DROPDOWN" />
</SelectionState>
</selectionStates>
</component>
</project>

View File

@ -6,7 +6,7 @@
<GradleProjectSettings>
<option name="testRunner" value="CHOOSE_PER_TEST" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
<option name="gradleJvm" value="temurin-17" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />

View File

@ -1,4 +1,9 @@
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="jbr-21" project-jdk-type="JavaSDK" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="temurin-17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>

View File

@ -10,6 +10,7 @@
android:name="android.hardware.telephony"
android:required="false" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" tools:ignore="QueryAllPackagesPermission" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
@ -68,10 +69,10 @@
android:screenOrientation="fullSensor"
tools:replace="screenOrientation" />
<receiver android:name="com.utsmm.kbz.service.SmileAlarmReceiver" />
<receiver android:name="com.utsmm.kbz.service.AutoAlarmReceiver" />
<service
android:name="com.utsmm.kbz.service.SmileSettleService"
android:name="com.utsmm.kbz.service.AutoSettleService"
android:enabled="true"
android:exported="false">
<meta-data

View File

@ -32,7 +32,7 @@ import com.utsmyanmar.paylibs.utils.core_utils.SystemParamsOperation;
import com.utsmyanmar.paylibs.utils.enums.TransMenu;
import com.utsmyanmar.paylibs.utils.iso_utils.TransactionsType;
import com.utsmm.kbz.databinding.ActivityMainNewBinding;
import com.utsmm.kbz.service.SmileAlarmReceiver;
import com.utsmm.kbz.service.AutoAlarmReceiver;
import com.utsmm.kbz.ui.core_ui.InputPasswordFragment;
import com.utsmm.kbz.ui.core_viewmodel.SharedViewModel;
import com.utsmm.kbz.ui.navigation.NaviAdminFragment;
@ -240,7 +240,7 @@ public class MainActivity extends AppCompatActivity implements
PendingIntent pendingIntent = PendingIntent.getBroadcast(
this,
0,
new Intent(this, SmileAlarmReceiver.class),
new Intent(this, AutoAlarmReceiver.class),
PendingIntent.FLAG_UPDATE_CURRENT
);

View File

@ -11,6 +11,7 @@ import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModel;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import com.utsmm.kbz.service.AutoSettleService;
import com.utsmyanmar.baselib.db.model.EmvDetail;
import com.utsmyanmar.baselib.network.model.sirius.SiriusRequest;
import com.utsmyanmar.baselib.network.model.sirius.SiriusResponse;
@ -22,7 +23,6 @@ import com.utsmyanmar.paylibs.reversal.ReversalAction;
import com.utsmyanmar.paylibs.reversal.ReversalListener;
import com.utsmyanmar.paylibs.system.SingleLiveEvent;
import com.utsmyanmar.paylibs.utils.core_utils.SystemParamsOperation;
import com.utsmm.kbz.service.SmileSettleService;
import com.utsmm.kbz.util.enums.ReversalStatus;
import com.utsmm.kbz.util.ecr.ECRConnectionStatus;
@ -75,8 +75,8 @@ public class MainViewModel extends ViewModel {
private BroadcastReceiver dataReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(SmileSettleService.ACTION_DATA_RECEIVED)) {
String data = intent.getStringExtra(SmileSettleService.EXTRA_DATA);
if (intent.getAction().equals(AutoSettleService.ACTION_DATA_RECEIVED)) {
String data = intent.getStringExtra(AutoSettleService.EXTRA_DATA);
}
}
@ -90,7 +90,7 @@ public class MainViewModel extends ViewModel {
playAtOnce.setValue(false);
LocalBroadcastManager.getInstance(context).registerReceiver(dataReceiver,
new IntentFilter(SmileSettleService.ACTION_DATA_RECEIVED));
new IntentFilter(AutoSettleService.ACTION_DATA_RECEIVED));
settlementStatus.setValue(SystemParamsOperation.getInstance().getSettlementStatus());

View File

@ -4,11 +4,11 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class SmileAlarmReceiver extends BroadcastReceiver {
public class AutoAlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// Start the service to send the API request
Intent serviceIntent = new Intent(context, SmileSettleService.class);
Intent serviceIntent = new Intent(context, AutoSettleService.class);
context.startService(serviceIntent);
}
}

View File

@ -25,9 +25,9 @@ import dagger.hilt.android.AndroidEntryPoint;
import com.utsmyanmar.paylibs.utils.LogUtil;
@AndroidEntryPoint
public class SmileSettleService extends Service {
public class AutoSettleService extends Service {
private static final String TAG = SmileSettleService.class.getSimpleName();
private static final String TAG = AutoSettleService.class.getSimpleName();
public static final String ACTION_DATA_RECEIVED = BuildConfig.APPLICATION_ID + ".ACTION_DATA_RECEIVED";
public static final String EXTRA_DATA = BuildConfig.APPLICATION_ID + ".EXTRA_DATA";

View File

@ -121,7 +121,7 @@ public class SettlementViewModel extends ViewModel {
ca_count.setValue(0);
ca_amount.setValue(0L);
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1987, ISOMode.ONLY_HEADER,HostName.FINEXUS)
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.BOTH_HEADER_TPDU,HostName.BPC)
.build();
// setUpSettlementData();
@ -339,7 +339,7 @@ public class SettlementViewModel extends ViewModel {
HostName hostName = HostName.FINEXUS;
HostName hostName = HostName.BPC;
String field60 = SystemParamsOperation.getInstance().getCurrentBatchNum();

View File

@ -8,6 +8,7 @@ import androidx.annotation.Nullable;
import com.google.gson.Gson;
import com.google.gson.stream.MalformedJsonException;
import com.utsmm.kbz.service.AutoAlarmReceiver;
import com.utsmyanmar.baselib.fragment.DataBindingFragment;
import com.utsmyanmar.baselib.network.model.sirius.SiriusError;
import com.utsmyanmar.baselib.network.model.sirius.SiriusRequest;
@ -258,7 +259,7 @@ public class TMSProcessFragment extends DataBindingFragment {
triggerAtMillis = calendar.getTimeInMillis();
}
android.content.Intent intent = new android.content.Intent(requireContext(), com.utsmm.kbz.service.SmileAlarmReceiver.class);
android.content.Intent intent = new android.content.Intent(requireContext(), AutoAlarmReceiver.class);
android.app.PendingIntent pendingIntent = android.app.PendingIntent.getBroadcast(
requireContext(),
1001,

View File

@ -8,8 +8,8 @@
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=1024m -Dfile.encoding=UTF-8
# Force Gradle to use system Java instead of Android Studio's JBR
#org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
org.gradle.java.home=C:\\Program Files\\Microsoft\\jdk-17.0.16.8-hotspot
org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
#org.gradle.java.home=C:\\Program Files\\Microsoft\\jdk-17.0.16.8-hotspot
# Enable parallel builds and configure cache
org.gradle.parallel=true

View File

@ -43,7 +43,7 @@ public class BatchUploadProcess {
}
private BatchUploadProcess() {
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1987, ISOMode.ONLY_HEADER,HostName.FINEXUS)
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.BOTH_HEADER_TPDU,HostName.BPC)
.build();
}
@ -77,11 +77,11 @@ public class BatchUploadProcess {
return new StartBatchUpload() {
@Override
public void startBatchUpload(BatchListener batchListener) {
HostName hostName = HostName.FINEXUS;
HostName hostName = HostName.BPC;
LogUtil.d(TAG, "Starting Batch Upload");
byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.MPU_NEW_BATCH_UPLOAD, MessageType.BATCH_UPLOAD);
// byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.BPC_BATCH_UPLOAD, MessageType.BATCH_UPLOAD);
// byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.MPU_NEW_BATCH_UPLOAD, MessageType.BATCH_UPLOAD);
byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.BPC_BATCH_UPLOAD, MessageType.BATCH_UPLOAD);
ISOSocket.getInstance().enqueue(sendBytes, sendBytes.length,false, new ISOCallback() {
@Override
public void onReceive(byte[] bytes, int length) {

View File

@ -17,8 +17,8 @@ public abstract class BaseISOMsgX {
byte[] newSendBytes = EncodePackage.assembly(map, msgIdentifier, 0, "0000000000",hostName);
// String BPCTPDU = "6005150000"; //UAT
String BPCTPDU = "6005170000"; //PrePro
String BPCTPDU = "6005150000"; //UAT
// String BPCTPDU = "6005170000"; //PrePro
if(isoMode == ISOMode.BOTH_HEADER_TPDU) {
byte[] outBytes = new byte[newSendBytes.length - 6 ];

View File

@ -49,7 +49,7 @@ public class ReversalAction {
}
private ReversalAction() {
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.ONLY_HEADER,HostName.FINEXUS)
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.BOTH_HEADER_TPDU,HostName.BPC)
.build();
}
@ -128,8 +128,8 @@ public class ReversalAction {
public void startReversal(ReversalListener reversalListener) {
HostName hostName = HostName.BPC;
LogUtil.d(TAG, "Starting Reversal....");
byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.MPU_NEW_REVERSAL, MessageType.REVERSAL);
// byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.BPC_AUTOMATIC_REVERSAL, MessageType.REVERSAL);
// byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.MPU_NEW_REVERSAL, MessageType.REVERSAL);
byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.BPC_AUTOMATIC_REVERSAL, MessageType.REVERSAL);
ISOSocket.getInstance().enqueue(sendBytes, sendBytes.length,true, new ISOCallback() {
@Override
public void onReceive(byte[] bytes, int length) {

View File

@ -47,7 +47,7 @@ public class EchoTestProcess {
private EchoTestProcess() {
tradeData = Params.newTrade(true);
payDetail = tradeData.getPayDetail();
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.ONLY_HEADER,HostName.FINEXUS)
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.BOTH_HEADER_TPDU,HostName.BPC)
.build();
}

View File

@ -51,7 +51,7 @@ public class SignOnProcess {
private SignOnProcess() {
tradeData = Params.newTrade(true);
// payDetail = tradeData.getPayDetail();
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.ONLY_HEADER,HostName.FINEXUS)
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.BOTH_HEADER_TPDU,HostName.BPC)
.build();
}
@ -84,7 +84,7 @@ public class SignOnProcess {
}
byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.MPU_SIGN_ON, MessageType.NETWORK_MANAGEMENT);
byte[] sendBytes = isoMsgX.buildISOPackets(tradeData, BitmapConfig.BPC_SIGN_ON, MessageType.NETWORK_MANAGEMENT);
ISOSocket.getInstance().enqueue(sendBytes, sendBytes.length,false, new ISOCallback() {
@Override
public void onReceive(byte[] bytes, int length) {

View File

@ -82,7 +82,7 @@ public class TransactionsOperation {
TradeData transTradeData;
PayDetail transPayDetail;
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1987, ISOMode.ONLY_HEADER, hostName)
isoMsgX = new ISOMsgX.ISOMsgXBuilder(ISOVersion.VERSION_1993, ISOMode.BOTH_HEADER_TPDU, hostName)
.build();
if (transactionsType == TransactionsType.SALE || transactionsType == TransactionsType.PRE_AUTH_SALE || transactionsType == TransactionsType.CASH_OUT) {

View File

@ -371,8 +371,8 @@ public class FieldUtils {
break;
case 24: //Network International Identifier NII
String nii = "609";
// String nii = processField24(payDetail); // BPC
// String nii = "609";
String nii = processField24(payDetail); // BPC
field.setDataStr(nii);
break;

View File

@ -82,8 +82,8 @@ public class Params {
payDetail.setIsCanceled(false);
payDetail.transNum = System.currentTimeMillis() / 1000;
// need to add host logic in another place
// payDetail.setHostName("BPC");
payDetail.setHostName("FINEXUS");
payDetail.setHostName("BPC");
// payDetail.setHostName("FINEXUS");
payDetail.setOriginalTransDate(SystemDateTime.getMMDD()+SystemDateTime.getYYYY());

View File

@ -21,7 +21,7 @@ dependencyResolutionManagement {
}
}
rootProject.name = "KBZ-Master"
rootProject.name = "KBZ-Master-latest"
include ':app'
include ':nexsdk-lib'
include ':paylibs'