Improve findOtaByName in VC

This commit is contained in:
Andrii Landiak 2025-06-11 16:09:34 +03:00
parent 562b23aef1
commit ae7eee8fdd
6 changed files with 9 additions and 10 deletions

View File

@ -48,7 +48,7 @@ public class OtaPackageImportService extends BaseEntityImportService<OtaPackageI
protected OtaPackage findExistingEntity(EntitiesImportCtx ctx, OtaPackage otaPackage, IdProvider idProvider) {
OtaPackage existingOtaPackage = super.findExistingEntity(ctx, otaPackage, idProvider);
if (existingOtaPackage == null && ctx.isFindExistingByName()) {
existingOtaPackage = otaPackageService.findOtaPackageByTenantIdAndTitle(ctx.getTenantId(), otaPackage.getType(), otaPackage.getTitle());
existingOtaPackage = otaPackageService.findOtaPackageByTenantIdAndTitleAndVersion(ctx.getTenantId(), otaPackage.getTitle(), otaPackage.getVersion());
}
return existingOtaPackage;
}

View File

@ -41,7 +41,7 @@ public interface OtaPackageService extends EntityDaoService {
OtaPackageInfo findOtaPackageInfoById(TenantId tenantId, OtaPackageId otaPackageId);
OtaPackage findOtaPackageByTenantIdAndTitle(TenantId tenantId, OtaPackageType type, String title);
OtaPackage findOtaPackageByTenantIdAndTitleAndVersion(TenantId tenantId, String title, String version);
ListenableFuture<OtaPackageInfo> findOtaPackageInfoByIdAsync(TenantId tenantId, OtaPackageId otaPackageId);

View File

@ -165,9 +165,9 @@ public class BaseOtaPackageService extends AbstractCachedEntityService<OtaPackag
}
@Override
public OtaPackage findOtaPackageByTenantIdAndTitle(TenantId tenantId, OtaPackageType type, String title) {
log.trace("Executing findOtaPackageByTenantIdAndTitle [{}] [{}] [{}]", tenantId, type, title);
return otaPackageDao.findOtaPackageByTenantIdAndTitle(tenantId, type, title);
public OtaPackage findOtaPackageByTenantIdAndTitleAndVersion(TenantId tenantId, String title, String version) {
log.trace("Executing findOtaPackageByTenantIdAndTitle [{}] [{}] [{}]", tenantId, title, version);
return otaPackageDao.findOtaPackageByTenantIdAndTitleAndVersion(tenantId, title, version);
}
@Override

View File

@ -27,6 +27,6 @@ public interface OtaPackageDao extends Dao<OtaPackage>, TenantEntityWithDataDao,
Long sumDataSizeByTenantId(TenantId tenantId);
OtaPackage findOtaPackageByTenantIdAndTitle(TenantId tenantId, OtaPackageType type, String title);
OtaPackage findOtaPackageByTenantIdAndTitleAndVersion(TenantId tenantId, String title, String version);
}

View File

@ -24,7 +24,6 @@ import org.thingsboard.server.common.data.EntityType;
import org.thingsboard.server.common.data.OtaPackage;
import org.thingsboard.server.common.data.id.OtaPackageId;
import org.thingsboard.server.common.data.id.TenantId;
import org.thingsboard.server.common.data.ota.OtaPackageType;
import org.thingsboard.server.common.data.page.PageData;
import org.thingsboard.server.common.data.page.PageLink;
import org.thingsboard.server.dao.DaoUtil;
@ -51,8 +50,8 @@ public class JpaOtaPackageDao extends JpaAbstractDao<OtaPackageEntity, OtaPackag
@Transactional
@Override
public OtaPackage findOtaPackageByTenantIdAndTitle(TenantId tenantId, OtaPackageType type, String title) {
return DaoUtil.getData(otaPackageRepository.findByTenantIdAndTypeAndTitle(tenantId.getId(), type, title));
public OtaPackage findOtaPackageByTenantIdAndTitleAndVersion(TenantId tenantId, String title, String version) {
return DaoUtil.getData(otaPackageRepository.findByTenantIdAndTitleAndVersion(tenantId.getId(), title, version));
}
@Transactional

View File

@ -33,7 +33,7 @@ public interface OtaPackageRepository extends JpaRepository<OtaPackageEntity, UU
Page<OtaPackageEntity> findByTenantId(UUID tenantId, Pageable pageable);
OtaPackageEntity findByTenantIdAndTypeAndTitle(UUID tenantId, OtaPackageType type, String title);
OtaPackageEntity findByTenantIdAndTitleAndVersion(UUID tenantId, String title, String version);
@Query("SELECT externalId FROM OtaPackageEntity WHERE id = :id")
UUID getExternalIdById(@Param("id") UUID id);