From ead30029444b919f6007033d8e86129d8dca2571 Mon Sep 17 00:00:00 2001 From: Roman Egorov Date: Tue, 30 May 2023 17:18:14 +0600 Subject: [PATCH 1/2] STDEV-15627 --- .gitignore | 17 +- app/build.gradle | 28 +- app/src/main/AndroidManifest.xml | 36 ++- .../evotor/evotortest6/MainActivity.java | 2 - .../combo_payment/ComboPaymentActivity.kt | 149 +++++++++ .../combo_payment/ComboPaymentService.kt | 45 +++ .../res/layout/activity_combo_payment.xml | 32 ++ build.gradle | 3 +- gradle.properties | 5 +- gradle/wrapper/gradle-wrapper.jar | Bin 54329 -> 59536 bytes gradle/wrapper/gradle-wrapper.properties | 3 +- gradlew | 282 +++++++++++------- gradlew.bat | 173 +++++------ 13 files changed, 552 insertions(+), 223 deletions(-) create mode 100644 app/src/main/java/ru/qualitylab/evotor/evotortest6/combo_payment/ComboPaymentActivity.kt create mode 100644 app/src/main/java/ru/qualitylab/evotor/evotortest6/combo_payment/ComboPaymentService.kt create mode 100644 app/src/main/res/layout/activity_combo_payment.xml mode change 100644 => 100755 gradlew diff --git a/.gitignore b/.gitignore index de362ea..064008a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,14 @@ -/.idea -.gradle -local.properties +/.idea +.gradle +local.properties +======= +codeiris +*.iml +/.idea/workspace.xml +/.idea/libraries +.DS_Store +/build +/captures +*/build +projectFilesBackup/ +/build-logic/convention/build/ diff --git a/app/build.gradle b/app/build.gradle index 4b8d87a..220ba3b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,10 +1,13 @@ apply plugin: 'com.android.application' +apply plugin: 'org.jetbrains.kotlin.android' android { - compileSdkVersion 33 + compileSdk 33 + defaultConfig { applicationId 'ru.qualitylab.evotor.evotortest6' minSdkVersion 23 + //noinspection EditedTargetSdkVersion targetSdkVersion 33 versionCode 6 versionName "6" @@ -28,19 +31,28 @@ android { productFlavors { } namespace 'ru.qualitylab.evotor.evotortest6' + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } + + kotlin { + jvmToolchain(8) + } } dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - + androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0', { + exclude group: 'com.android.support', module: 'support-annotations' + }) implementation 'com.github.evotor:integration-library:v0.6.03' - implementation 'androidx.appcompat:appcompat:1.4.0' - implementation 'com.google.android.material:material:1.8.0' + implementation 'androidx.appcompat:appcompat:1.6.1' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' - implementation "androidx.legacy:legacy-support-v4:1.0.0" + implementation 'com.google.android.material:material:1.9.0' implementation 'com.thedeanda:lorem:2.1' - - testImplementation 'junit:junit:4.12' - androidTestImplementation 'androidx.test.ext:junit:1.1.5' + testImplementation 'junit:junit:4.13.2' + testImplementation 'org.robolectric:robolectric:4.2.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f22b1a7..9aa7040 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,5 +1,6 @@ + @@ -8,6 +9,7 @@ + - + - @@ -32,21 +37,14 @@ + - + - - - + @@ -280,6 +278,20 @@ --> + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/java/ru/qualitylab/evotor/evotortest6/MainActivity.java b/app/src/main/java/ru/qualitylab/evotor/evotortest6/MainActivity.java index 3ae475c..2ee7fb0 100644 --- a/app/src/main/java/ru/qualitylab/evotor/evotortest6/MainActivity.java +++ b/app/src/main/java/ru/qualitylab/evotor/evotortest6/MainActivity.java @@ -127,7 +127,6 @@ public void openReceiptAndEmail() { null, //Наименование "1234", - //Наименование единицы измерения new Measure("12", 0, 0), //Цена без скидок new BigDecimal(1000), @@ -226,7 +225,6 @@ public void openReceipt() { null, //Наименование "Зубочистки", - //Наименование единицы измерения new Measure("кг", 0, 0), //Цена без скидок new BigDecimal(200), diff --git a/app/src/main/java/ru/qualitylab/evotor/evotortest6/combo_payment/ComboPaymentActivity.kt b/app/src/main/java/ru/qualitylab/evotor/evotortest6/combo_payment/ComboPaymentActivity.kt new file mode 100644 index 0000000..f30aa87 --- /dev/null +++ b/app/src/main/java/ru/qualitylab/evotor/evotortest6/combo_payment/ComboPaymentActivity.kt @@ -0,0 +1,149 @@ +package ru.qualitylab.evotor.evotortest6.combo_payment + +import android.os.Bundle +import android.widget.Button +import android.widget.EditText +import android.widget.Toast +import ru.evotor.framework.component.PaymentPerformer +import ru.evotor.framework.core.IntegrationAppCompatActivity +import ru.evotor.framework.core.action.event.receipt.changes.receipt.SetExtra +import ru.evotor.framework.core.action.event.receipt.payment.combined.event.PaymentDelegatorPaybackData +import ru.evotor.framework.core.action.event.receipt.payment.combined.result.PaymentDelegatorSelectedEventResult +import ru.evotor.framework.payment.PaymentPurpose +import ru.evotor.framework.payment.PaymentSystem +import ru.evotor.framework.payment.PaymentType +import ru.evotor.framework.receipt.Receipt +import ru.evotor.framework.receipt.ReceiptApi +import ru.qualitylab.evotor.evotortest6.R +import java.math.BigDecimal +import java.util.UUID + +class ComboPaymentActivity : IntegrationAppCompatActivity() { + private var availablePaybackSums: ArrayList? = null + private lateinit var receiptUuid: String + + private var isPayback: Boolean = false + private var isBuyback: Boolean = false + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_combo_payment) + + availablePaybackSums = intent.getSerializableExtra(KEY_AVAILABLE_PAYBACK_SUM) as ArrayList? + + receiptUuid = intent.getStringExtra(KEY_RECEIPT_UUID)!! + + isPayback = ReceiptApi.getReceipt(this, receiptUuid)?.header?.type == Receipt.Type.PAYBACK + isBuyback = ReceiptApi.getReceipt(this, receiptUuid)?.header?.type == Receipt.Type.BUYBACK + + findViewById