Commit f982a4bf544987fe90e8243b2b151cbe6b971772

Authored by 云中非
1 parent 6b165bc8

fix: 告警列表排序

... ... @@ -3,6 +3,7 @@ package org.thingsboard.server.controller.yunteng;
3 3 import io.swagger.annotations.Api;
4 4 import io.swagger.annotations.ApiOperation;
5 5 import lombok.RequiredArgsConstructor;
  6 +import org.apache.commons.lang3.StringUtils;
6 7 import org.springframework.http.ResponseEntity;
7 8 import org.springframework.security.access.prepost.PreAuthorize;
8 9 import org.springframework.web.bind.annotation.GetMapping;
... ... @@ -62,14 +63,12 @@ public class YtAlarmInfoController extends BaseController {
62 63 @RequestParam(value = "endTime", required = false) Long endTime,
63 64 @RequestParam(value = ORDER_FILED, required = false) String orderBy,
64 65 @RequestParam(value = ORDER_TYPE, required = false) OrderTypeEnum orderType) throws ThingsboardException {
65   - TimePageLink pageLink = createTimePageLink(pageSize, page > 1 ? page - 1 : 0, textSearch, orderBy, orderType == null ? "" : orderType.name(), startTime, endTime);
66 66 Map<String, Object> pageFilter = new HashMap<>();
67 67 pageFilter.put(PAGE_SIZE, pageSize);
68 68 pageFilter.put(PAGE, page);
69 69 pageFilter.put(ORDER_FILED, orderBy);
70   - if (orderType != null) {
71   - pageFilter.put(ORDER_TYPE, orderType.name());
72   - }
  70 + pageFilter.put(ORDER_TYPE, orderType);
  71 +
73 72 UUID customerId = null;
74 73 if(getCurrentUser().isCustomerUser()){
75 74 customerId = getCurrentUser().getCustomerId().getId();
... ...
... ... @@ -38,6 +38,7 @@ public class ModelConstants {
38 38 */
39 39 public static final String ID_PROPERTY = "id";
40 40 public static final String CREATED_TIME_PROPERTY = "created_time";
  41 + public static final String STATUS_PROPERTY = "status";
41 42 public static final String USER_ID_PROPERTY = "user_id";
42 43 public static final String TENANT_ID_PROPERTY = "tenant_id";
43 44 public static final String CUSTOMER_ID_PROPERTY = "customer_id";
... ...
... ... @@ -44,7 +44,7 @@ public class YtAlarmInfoServiceImpl implements YtAlarmInfoService {
44 44
45 45 @Override
46 46 public YtPageData<YtAlarmEntity> alarmPage(Map<String, Object> pageMap, TenantId tenantId, UUID customerId, AlarmSeverity severity, String alarmType, Long startTime, Long endTime, List<AlarmStatus> status, String deviceId, DeviceTypeEnum deviceType, EntityType originatorType, String organizationId) {
47   - IPage<YtAlarmEntity> page = getPage(pageMap, ModelConstants.CREATED_TIME_PROPERTY, false);
  47 + IPage<YtAlarmEntity> page = getPage(pageMap, ModelConstants.STATUS_PROPERTY, OrderTypeEnum.ASC);
48 48 List<String> ids = new ArrayList<>();
49 49 if (StringUtils.isNotBlank(organizationId)) {
50 50 List<String> filter = new ArrayList<>();
... ... @@ -62,7 +62,7 @@ public class YtAlarmInfoServiceImpl implements YtAlarmInfoService {
62 62 }
63 63
64 64
65   - protected IPage<YtAlarmEntity> getPage(Map<String, Object> params, String defaultOrderField, boolean isAsc) {
  65 + protected IPage<YtAlarmEntity> getPage(Map<String, Object> params, String defaultOrderField, OrderTypeEnum defaultOrder) {
66 66 int curPage = 1;
67 67 int limit = 10;
68 68 if (params.get(PAGE) != null) {
... ... @@ -75,21 +75,20 @@ public class YtAlarmInfoServiceImpl implements YtAlarmInfoService {
75 75
76 76 Page<YtAlarmEntity> page = new Page<>(curPage, limit);
77 77 String orderField = (String) params.get(ORDER_FILED);
78   - String order = (String) params.get(ORDER_TYPE);
79   - if (StringUtils.isNotBlank(orderField) && StringUtils.isNotBlank(order)) {
80   - return OrderTypeEnum.ASC.name().equalsIgnoreCase(order)
81   - ? page.addOrder(OrderItem.asc(orderField))
82   - : page.addOrder(OrderItem.desc(orderField));
83   - } else if (StringUtils.isBlank(defaultOrderField)) {
84   - return page;
85   - } else {
86   - if (isAsc) {
87   - page.addOrder(OrderItem.asc(defaultOrderField));
88   - } else {
89   - page.addOrder(OrderItem.desc(defaultOrderField));
90   - }
91   - return page;
  78 + OrderTypeEnum order = (OrderTypeEnum) params.get(ORDER_TYPE);
  79 + if(StringUtils.isBlank(orderField)){
  80 + orderField = defaultOrderField;
  81 + }
  82 + if(order == null){
  83 + order = defaultOrder;
92 84 }
  85 + if(OrderTypeEnum.ASC.equals(order)){
  86 + page.addOrder(OrderItem.asc(orderField));
  87 + }else{
  88 + page.addOrder(OrderItem.desc(orderField));
  89 + }
  90 +
  91 + return page;
93 92 }
94 93
95 94 @Override
... ...