Minor fixes

This commit is contained in:
ViacheslavKlimov 2023-02-24 14:03:35 +02:00
parent 3a5d1b31b3
commit f5eb27efd4
9 changed files with 20 additions and 4 deletions

View File

@ -678,6 +678,7 @@ public class DefaultSystemDataLoaderService implements SystemDataLoaderService {
@Override
public void createDefaultNotificationConfigs() {
notificationSettingsService.createDefaultNotificationConfigs(TenantId.SYS_TENANT_ID);
PageDataIterable<TenantId> tenants = new PageDataIterable<>(tenantService::findTenantsIds, 500);
for (TenantId tenantId : tenants) {
try {

View File

@ -52,7 +52,7 @@ public enum Resource {
private final Set<EntityType> entityTypes;
Resource() {
this.entityTypes = null;
this.entityTypes = Collections.emptySet();
}
Resource(EntityType... entityTypes) {
@ -60,7 +60,7 @@ public enum Resource {
}
public Set<EntityType> getEntityTypes() {
return Optional.ofNullable(entityTypes).orElse(Collections.emptySet());
return entityTypes;
}
public static Resource of(EntityType entityType) {

View File

@ -29,6 +29,7 @@ import org.thingsboard.server.common.data.notification.targets.platform.Customer
import org.thingsboard.server.common.data.notification.targets.platform.PlatformUsersNotificationTargetConfig;
import org.thingsboard.server.common.data.notification.targets.platform.UserListFilter;
import org.thingsboard.server.common.data.page.PageData;
import org.thingsboard.server.common.data.page.PageLink;
import org.thingsboard.server.controller.AbstractControllerTest;
import org.thingsboard.server.dao.notification.NotificationTargetDao;
import org.thingsboard.server.dao.service.DaoSqlTest;
@ -141,10 +142,10 @@ public class NotificationTargetApiTest extends AbstractControllerTest {
targetConfig.setUsersFilter(new AllUsersFilter());
notificationTarget.setConfiguration(targetConfig);
save(notificationTarget, status().isOk());
assertThat(notificationTargetDao.find(TenantId.SYS_TENANT_ID)).isNotEmpty();
assertThat(notificationTargetDao.findByTenantIdAndPageLink(differentTenantId, new PageLink(10)).getData()).isNotEmpty();
deleteDifferentTenant();
assertThat(notificationTargetDao.find(TenantId.SYS_TENANT_ID)).isEmpty();
assertThat(notificationTargetDao.findByTenantIdAndPageLink(differentTenantId, new PageLink(10)).getData()).isEmpty();
}
private String saveAndGetError(NotificationTarget notificationTarget, ResultMatcher statusMatcher) throws Exception {

View File

@ -68,6 +68,11 @@ public class DefaultNotificationSettingsService implements NotificationSettingsS
@Override
public void createDefaultNotificationConfigs(TenantId tenantId) {
if (tenantId.equals(TenantId.SYS_TENANT_ID)) {
// TODO
return;
}
NotificationTarget allUsersTarget = new NotificationTarget();
allUsersTarget.setTenantId(tenantId);
allUsersTarget.setName("All users");

View File

@ -55,6 +55,7 @@ public interface NotificationRepository extends JpaRepository<NotificationEntity
int updateStatusesByRequestId(@Param("requestId") UUID requestId,
@Param("status") NotificationStatus status);
@Transactional
int deleteByIdAndRecipientId(UUID id, UUID recipientId);
@Modifying

View File

@ -69,8 +69,10 @@ public interface NotificationRequestRepository extends JpaRepository<Notificatio
boolean existsByStatusAndTemplateId(NotificationRequestStatus status, UUID templateId);
@Transactional
int deleteAllByCreatedTimeBefore(long ts);
@Transactional
void deleteByTenantId(UUID tenantId);
}

View File

@ -21,6 +21,7 @@ import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import org.thingsboard.server.common.data.notification.rule.NotificationRuleInfo;
import org.thingsboard.server.common.data.notification.rule.trigger.NotificationRuleTriggerType;
import org.thingsboard.server.dao.model.sql.NotificationRuleEntity;
@ -53,6 +54,7 @@ public interface NotificationRuleRepository extends JpaRepository<NotificationRu
@Param("searchText") String searchText,
Pageable pageable);
@Transactional
void deleteByTenantId(UUID tenantId);
}

View File

@ -21,6 +21,7 @@ import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import org.thingsboard.server.dao.model.sql.NotificationTargetEntity;
import java.util.List;
@ -33,6 +34,7 @@ public interface NotificationTargetRepository extends JpaRepository<Notification
List<NotificationTargetEntity> findByTenantIdAndIdIn(UUID tenantId, List<UUID> ids);
@Transactional
void deleteByTenantId(UUID tenantId);
}

View File

@ -21,6 +21,7 @@ import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import org.thingsboard.server.common.data.notification.NotificationType;
import org.thingsboard.server.dao.model.sql.NotificationTemplateEntity;
@ -39,6 +40,7 @@ public interface NotificationTemplateRepository extends JpaRepository<Notificati
@Param("searchText") String searchText,
Pageable pageable);
@Transactional
void deleteByTenantId(UUID tenantId);
}