diff --git a/.gradle/8.13/executionHistory/executionHistory.bin b/.gradle/8.13/executionHistory/executionHistory.bin index 626cd1a..5dfd7e2 100644 Binary files a/.gradle/8.13/executionHistory/executionHistory.bin and b/.gradle/8.13/executionHistory/executionHistory.bin differ diff --git a/.gradle/8.13/executionHistory/executionHistory.lock b/.gradle/8.13/executionHistory/executionHistory.lock index ea6113f..45e0e39 100644 Binary files a/.gradle/8.13/executionHistory/executionHistory.lock and b/.gradle/8.13/executionHistory/executionHistory.lock differ diff --git a/.gradle/8.13/fileHashes/fileHashes.bin b/.gradle/8.13/fileHashes/fileHashes.bin index 5d04fdf..2d575b0 100644 Binary files a/.gradle/8.13/fileHashes/fileHashes.bin and b/.gradle/8.13/fileHashes/fileHashes.bin differ diff --git a/.gradle/8.13/fileHashes/fileHashes.lock b/.gradle/8.13/fileHashes/fileHashes.lock index bae8709..201eacf 100644 Binary files a/.gradle/8.13/fileHashes/fileHashes.lock and b/.gradle/8.13/fileHashes/fileHashes.lock differ diff --git a/.gradle/8.13/fileHashes/resourceHashesCache.bin b/.gradle/8.13/fileHashes/resourceHashesCache.bin index 17e6104..41698e9 100644 Binary files a/.gradle/8.13/fileHashes/resourceHashesCache.bin and b/.gradle/8.13/fileHashes/resourceHashesCache.bin differ diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 009ba71..ab2422b 100644 Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe index bf73d03..f15b7c3 100644 Binary files a/.gradle/file-system.probe and b/.gradle/file-system.probe differ diff --git a/app/src/main/java/com/ck/ckcollar/app/ui/act/home/MainActivity.kt b/app/src/main/java/com/ck/ckcollar/app/ui/act/home/MainActivity.kt index 8ce3177..7a83fbf 100644 --- a/app/src/main/java/com/ck/ckcollar/app/ui/act/home/MainActivity.kt +++ b/app/src/main/java/com/ck/ckcollar/app/ui/act/home/MainActivity.kt @@ -29,6 +29,7 @@ import com.ck.ckcollar.app.utils.networkone.ICallback import com.ck.ckcollar.app.utils.networkone.TTHttpClient import com.ck.ckcollar.app.utils.networkone.model.TTRequestParam import com.google.gson.Gson +import com.tt.kit.utils.TTUtils import java.io.File @@ -221,18 +222,26 @@ class MainActivity : CKLHBaseActivity(),View.OnClickListener { } fun checkUpdate(){ + if (hasCheckedUpdate) return + hasCheckedUpdate = true TTHttpClient.get(this,"更新", TTRequestParam(),object : ICallback{ override fun onSuccess(data: String) { val model = Gson().fromJson(data, UpdateModel::class.java) - if (model.hasUpdate) { + val currentVersionCode = TTUtils.getVersionCode(this@MainActivity) + if (model.versionCode > currentVersionCode) { val updateContent = model.content.orEmpty().replace("\\n", "\n") updateDialog = CKUpdateAlertDialog(this@MainActivity, updateContent, model.isForce, object : CKUpdateAlertDialog.AlertClickListener{ override fun onBack(isConfirm: Boolean) { - if (isConfirm) requestUpdateDownload(model) + if (isConfirm) { + if (!model.isForce) { + toast("更新下载进度可在任务栏中查看") + } + requestUpdateDownload(model) + } } }).also { it.show() } } @@ -329,5 +338,6 @@ class MainActivity : CKLHBaseActivity(),View.OnClickListener { companion object { const val EXTRA_SHOW_HOME = "extra_show_home" private const val EXIT_INTERVAL_MS = 2_000L + private var hasCheckedUpdate = false } } diff --git a/app/src/main/java/com/ck/ckcollar/app/ui/act/order/PayOrderActivity.kt b/app/src/main/java/com/ck/ckcollar/app/ui/act/order/PayOrderActivity.kt index 8cb9816..0f724c8 100644 --- a/app/src/main/java/com/ck/ckcollar/app/ui/act/order/PayOrderActivity.kt +++ b/app/src/main/java/com/ck/ckcollar/app/ui/act/order/PayOrderActivity.kt @@ -105,6 +105,10 @@ class PayOrderActivity : CKBaseActivity() { binding.btnBalance.setOnClickListener { + if (clearBalanceIfPointsSufficient()) { + toast("积分足够无需使用余额") + return@setOnClickListener + } if ((memberModel?.balance ?: 0.0) <= 0.0){ toast(getString(R.string.balance_over)) return@setOnClickListener @@ -130,6 +134,7 @@ class PayOrderActivity : CKBaseActivity() { }else{ binding.image4.setImageResource(R.mipmap.image_address_check_narmal) } + clearBalanceIfPointsSufficient() clearExternalPaymentIfNotNeeded() } @@ -429,6 +434,14 @@ class PayOrderActivity : CKBaseActivity() { return pointsDeduction >= payAmount } + private fun clearBalanceIfPointsSufficient(): Boolean { + if (!canPointsCoverPayAmount()) return false + + selectBalance = false + binding.image3.setImageResource(R.mipmap.image_address_check_narmal) + return true + } + private fun calculatePointsDeduction(): BigDecimal? { val member = memberModel ?: return null val intoAmounts = member.intoAmounts?.toBigDecimalOrNull() ?: return null diff --git a/app/src/main/java/com/ck/ckcollar/app/ui/act/shop/OrderActivity.kt b/app/src/main/java/com/ck/ckcollar/app/ui/act/shop/OrderActivity.kt index dc98647..3d9931a 100644 --- a/app/src/main/java/com/ck/ckcollar/app/ui/act/shop/OrderActivity.kt +++ b/app/src/main/java/com/ck/ckcollar/app/ui/act/shop/OrderActivity.kt @@ -121,6 +121,10 @@ class OrderActivity : CKBaseActivity() { binding.btnWX.setOnClickListener(payClick) binding.btnBalance.setOnClickListener { + if (clearBalanceIfPointsSufficient()) { + toast("积分足够无需使用余额") + return@setOnClickListener + } if ((memberModel?.balance ?: 0.0) <= 0.0){ toast(getString(R.string.balance_over)) return@setOnClickListener @@ -146,6 +150,7 @@ class OrderActivity : CKBaseActivity() { }else{ binding.image4.setImageResource(R.mipmap.image_address_check_narmal) } + clearBalanceIfPointsSufficient() clearExternalPaymentIfNotNeeded() } @@ -566,6 +571,14 @@ class OrderActivity : CKBaseActivity() { return pointsDeduction >= payAmount } + private fun clearBalanceIfPointsSufficient(): Boolean { + if (!canPointsCoverPayAmount()) return false + + selectBalance = false + binding.image3.setImageResource(R.mipmap.image_address_check_narmal) + return true + } + private fun calculatePointsDeduction(): BigDecimal? { val member = memberModel ?: return null val intoAmounts = member.intoAmounts?.toBigDecimalOrNull() ?: return null diff --git a/app/src/main/res/layout/dialog_update_alert.xml b/app/src/main/res/layout/dialog_update_alert.xml index 2ee361f..734e5af 100644 --- a/app/src/main/res/layout/dialog_update_alert.xml +++ b/app/src/main/res/layout/dialog_update_alert.xml @@ -46,9 +46,11 @@ android:id="@+id/updateProgress" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" - android:layout_height="8dp" + android:layout_height="12dp" + android:layout_marginBottom="20dp" android:max="100" - android:progress="0" /> + android:progress="0" + android:progressDrawable="@drawable/progress_update_rounded" /> + android:textSize="13sp" + android:visibility="gone"/>