Fix sort property for events

This commit is contained in:
Andrii Shvaika 2022-07-29 18:17:03 +03:00
parent e602c98bc1
commit 13c47ed3d0
3 changed files with 15 additions and 10 deletions

View File

@ -225,10 +225,6 @@ public class EventController extends BaseController {
EntityId entityId = EntityIdFactory.getByTypeAndId(strEntityType, strEntityId);
checkEntityId(entityId, Operation.READ);
if (sortProperty != null && sortProperty.equals("createdTime")) {
sortProperty = ModelConstants.TS_COLUMN;
}
TimePageLink pageLink = createTimePageLink(pageSize, page, textSearch, sortProperty, sortOrder, startTime, endTime);
return checkNotNull(eventService.findEventsByFilter(tenantId, entityId, eventFilter, pageLink));
}

View File

@ -24,6 +24,8 @@ import org.thingsboard.server.dao.model.ModelConstants;
import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import static org.thingsboard.server.dao.model.ModelConstants.EVENT_ENTITY_ID_PROPERTY;
@ -36,6 +38,12 @@ import static org.thingsboard.server.dao.model.ModelConstants.TS_COLUMN;
@MappedSuperclass
public abstract class EventEntity<T extends Event> implements BaseEntity<T> {
public static final Map<String, String> eventColumnMap = new HashMap<>();
static {
eventColumnMap.put("createdTime", "ts");
}
@Id
@Column(name = ModelConstants.ID_PROPERTY, columnDefinition = "uuid")
protected UUID id;

View File

@ -38,6 +38,7 @@ import org.thingsboard.server.common.data.page.TimePageLink;
import org.thingsboard.server.common.stats.StatsFactory;
import org.thingsboard.server.dao.DaoUtil;
import org.thingsboard.server.dao.event.EventDao;
import org.thingsboard.server.dao.model.sql.AssetInfoEntity;
import org.thingsboard.server.dao.model.sql.EventEntity;
import org.thingsboard.server.dao.sql.ScheduledLogExecutorComponent;
import org.thingsboard.server.dao.sql.TbSqlBlockingQueueParams;
@ -201,7 +202,7 @@ public class JpaBaseEventDao implements EventDao {
@Override
public PageData<? extends Event> findEvents(UUID tenantId, UUID entityId, EventType eventType, TimePageLink pageLink) {
return DaoUtil.toPageData(getEventRepository(eventType).findEvents(tenantId, entityId, pageLink.getStartTime(), pageLink.getEndTime(), DaoUtil.toPageable(pageLink)));
return DaoUtil.toPageData(getEventRepository(eventType).findEvents(tenantId, entityId, pageLink.getStartTime(), pageLink.getEndTime(), DaoUtil.toPageable(pageLink, EventEntity.eventColumnMap)));
}
@Override
@ -277,7 +278,7 @@ public class JpaBaseEventDao implements EventDao {
eventFilter.getMessage(),
eventFilter.isError(),
eventFilter.getErrorStr(),
DaoUtil.toPageable(pageLink)));
DaoUtil.toPageable(pageLink, EventEntity.eventColumnMap)));
}
private PageData<? extends Event> findEventByFilter(UUID tenantId, UUID entityId, RuleNodeDebugEventFilter eventFilter, TimePageLink pageLink) {
@ -300,7 +301,7 @@ public class JpaBaseEventDao implements EventDao {
eventFilter.getMetadataSearch(),
eventFilter.isError(),
eventFilter.getErrorStr(),
DaoUtil.toPageable(pageLink)));
DaoUtil.toPageable(pageLink, EventEntity.eventColumnMap)));
}
private PageData<? extends Event> findEventByFilter(UUID tenantId, UUID entityId, ErrorEventFilter eventFilter, TimePageLink pageLink) {
@ -313,7 +314,7 @@ public class JpaBaseEventDao implements EventDao {
eventFilter.getServer(),
eventFilter.getMethod(),
eventFilter.getErrorStr(),
DaoUtil.toPageable(pageLink))
DaoUtil.toPageable(pageLink, EventEntity.eventColumnMap))
);
}
@ -331,7 +332,7 @@ public class JpaBaseEventDao implements EventDao {
statusFilterEnabled,
statusFilter,
eventFilter.getErrorStr(),
DaoUtil.toPageable(pageLink))
DaoUtil.toPageable(pageLink, EventEntity.eventColumnMap))
);
}
@ -347,7 +348,7 @@ public class JpaBaseEventDao implements EventDao {
eventFilter.getMaxMessagesProcessed(),
eventFilter.getMinErrorsOccurred(),
eventFilter.getMaxErrorsOccurred(),
DaoUtil.toPageable(pageLink))
DaoUtil.toPageable(pageLink, EventEntity.eventColumnMap))
);
}