From 12ad7a50e6c4aaf6fe55fadfcfd8bc7a260083b9 Mon Sep 17 00:00:00 2001 From: dashevchenko Date: Thu, 31 Oct 2024 18:38:39 +0200 Subject: [PATCH] fixed qr code settings --- .../QrCodeSettingsDataValidator.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/dao/src/main/java/org/thingsboard/server/dao/service/validator/QrCodeSettingsDataValidator.java b/dao/src/main/java/org/thingsboard/server/dao/service/validator/QrCodeSettingsDataValidator.java index 33d3864c54..6c548cb02d 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/service/validator/QrCodeSettingsDataValidator.java +++ b/dao/src/main/java/org/thingsboard/server/dao/service/validator/QrCodeSettingsDataValidator.java @@ -42,17 +42,18 @@ public class QrCodeSettingsDataValidator extends DataValidator { if (!qrCodeSettings.isUseDefaultApp() && (mobileAppBundleId == null)) { throw new DataValidationException("Mobile app bundle is required to use custom application!"); } - if (!qrCodeSettings.isUseDefaultApp()){ - MobileApp androidApp = mobileAppDao.findByBundleIdAndPlatformType(tenantId, mobileAppBundleId, PlatformType.ANDROID); - StoreInfo androidStoreInfo = androidApp.getStoreInfo(); - if (androidStoreInfo == null) { - throw new DataValidationException("Android app store info is empty! "); + if (!qrCodeSettings.isUseDefaultApp()) { + if (qrCodeSettings.isAndroidEnabled()) { + MobileApp androidApp = mobileAppDao.findByBundleIdAndPlatformType(tenantId, mobileAppBundleId, PlatformType.ANDROID); + if (androidApp != null && androidApp.getStoreInfo() == null) { + throw new DataValidationException("Android app store info is empty! "); + } } - - MobileApp iosApp = mobileAppDao.findByBundleIdAndPlatformType(tenantId, mobileAppBundleId, PlatformType.IOS); - StoreInfo iosStoreInfo = iosApp.getStoreInfo(); - if (iosStoreInfo == null) { - throw new DataValidationException("IOS app store info is empty! "); + if (qrCodeSettings.isIosEnabled()) { + MobileApp iosApp = mobileAppDao.findByBundleIdAndPlatformType(tenantId, mobileAppBundleId, PlatformType.IOS); + if (iosApp != null && iosApp.getStoreInfo() == null) { + throw new DataValidationException("IOS app store info is empty! "); + } } } }