Assignee query keys
This commit is contained in:
parent
f877fdef3f
commit
b9f5e45fa0
@ -52,6 +52,12 @@ public class DefaultAlarmQueryRepository implements AlarmQueryRepository {
|
|||||||
|
|
||||||
private static final Map<String, String> alarmFieldColumnMap = new HashMap<>();
|
private static final Map<String, String> alarmFieldColumnMap = new HashMap<>();
|
||||||
|
|
||||||
|
private static final String ASSIGNEE_EMAIL_KEY = "assigneeEmail";
|
||||||
|
private static final String ASSIGNEE_LAST_NAME_KEY = "assigneeLastName";
|
||||||
|
private static final String ASSIGNEE_FIRST_NAME_KEY = "assigneeFirstName";
|
||||||
|
private static final String ASSIGNEE_ID_KEY = "assigneeId";
|
||||||
|
private static final String ASSIGNEE_KEY = "assignee";
|
||||||
|
|
||||||
static {
|
static {
|
||||||
alarmFieldColumnMap.put("createdTime", ModelConstants.CREATED_TIME_PROPERTY);
|
alarmFieldColumnMap.put("createdTime", ModelConstants.CREATED_TIME_PROPERTY);
|
||||||
alarmFieldColumnMap.put("ackTs", ModelConstants.ALARM_ACK_TS_PROPERTY);
|
alarmFieldColumnMap.put("ackTs", ModelConstants.ALARM_ACK_TS_PROPERTY);
|
||||||
@ -69,12 +75,12 @@ public class DefaultAlarmQueryRepository implements AlarmQueryRepository {
|
|||||||
alarmFieldColumnMap.put("severity", ModelConstants.ALARM_SEVERITY_PROPERTY);
|
alarmFieldColumnMap.put("severity", ModelConstants.ALARM_SEVERITY_PROPERTY);
|
||||||
alarmFieldColumnMap.put("originatorId", ModelConstants.ALARM_ORIGINATOR_ID_PROPERTY);
|
alarmFieldColumnMap.put("originatorId", ModelConstants.ALARM_ORIGINATOR_ID_PROPERTY);
|
||||||
alarmFieldColumnMap.put("originatorType", ModelConstants.ALARM_ORIGINATOR_TYPE_PROPERTY);
|
alarmFieldColumnMap.put("originatorType", ModelConstants.ALARM_ORIGINATOR_TYPE_PROPERTY);
|
||||||
alarmFieldColumnMap.put("assigneeId", ModelConstants.ALARM_ASSIGNEE_ID_PROPERTY);
|
alarmFieldColumnMap.put(ASSIGNEE_ID_KEY, ModelConstants.ALARM_ASSIGNEE_ID_PROPERTY);
|
||||||
alarmFieldColumnMap.put("originator", ModelConstants.ALARM_ORIGINATOR_NAME_PROPERTY);
|
alarmFieldColumnMap.put("originator", ModelConstants.ALARM_ORIGINATOR_NAME_PROPERTY);
|
||||||
alarmFieldColumnMap.put("originatorLabel", ModelConstants.ALARM_ORIGINATOR_LABEL_PROPERTY);
|
alarmFieldColumnMap.put("originatorLabel", ModelConstants.ALARM_ORIGINATOR_LABEL_PROPERTY);
|
||||||
alarmFieldColumnMap.put("assigneeFirstName", ModelConstants.ALARM_ASSIGNEE_FIRST_NAME_PROPERTY);
|
alarmFieldColumnMap.put(ASSIGNEE_FIRST_NAME_KEY, ModelConstants.ALARM_ASSIGNEE_FIRST_NAME_PROPERTY);
|
||||||
alarmFieldColumnMap.put("assigneeLastName", ModelConstants.ALARM_ASSIGNEE_LAST_NAME_PROPERTY);
|
alarmFieldColumnMap.put(ASSIGNEE_LAST_NAME_KEY, ModelConstants.ALARM_ASSIGNEE_LAST_NAME_PROPERTY);
|
||||||
alarmFieldColumnMap.put("assigneeEmail", ModelConstants.ALARM_ASSIGNEE_EMAIL_PROPERTY);
|
alarmFieldColumnMap.put(ASSIGNEE_EMAIL_KEY, ModelConstants.ALARM_ASSIGNEE_EMAIL_PROPERTY);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final String SELECT_ORIGINATOR_NAME = " COALESCE(CASE" +
|
private static final String SELECT_ORIGINATOR_NAME = " COALESCE(CASE" +
|
||||||
@ -188,12 +194,19 @@ public class DefaultAlarmQueryRepository implements AlarmQueryRepository {
|
|||||||
fromPart.append(LEFT_JOIN_TB_USERS);
|
fromPart.append(LEFT_JOIN_TB_USERS);
|
||||||
EntityDataSortOrder sortOrder = pageLink.getSortOrder();
|
EntityDataSortOrder sortOrder = pageLink.getSortOrder();
|
||||||
|
|
||||||
List<EntityKey> queryFields = new ArrayList<>();
|
List<EntityKey> alarmFields = new ArrayList<>();
|
||||||
for(EntityKey key: query.getAlarmFields()){
|
for (EntityKey key : query.getAlarmFields()) {
|
||||||
if()
|
if (EntityKeyType.ALARM_FIELD.equals(key.getType()) && ASSIGNEE_KEY.equalsIgnoreCase(key.getKey())) {
|
||||||
|
alarmFields.add(new EntityKey(EntityKeyType.ALARM_FIELD, ASSIGNEE_ID_KEY));
|
||||||
|
alarmFields.add(new EntityKey(EntityKeyType.ALARM_FIELD, ASSIGNEE_FIRST_NAME_KEY));
|
||||||
|
alarmFields.add(new EntityKey(EntityKeyType.ALARM_FIELD, ASSIGNEE_LAST_NAME_KEY));
|
||||||
|
alarmFields.add(new EntityKey(EntityKeyType.ALARM_FIELD, ASSIGNEE_EMAIL_KEY));
|
||||||
|
} else {
|
||||||
|
alarmFields.add(key);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String textSearchQuery = buildTextSearchQuery(ctx, query.getAlarmFields(), pageLink.getTextSearch());
|
String textSearchQuery = buildTextSearchQuery(ctx, alarmFields, pageLink.getTextSearch());
|
||||||
if (sortOrder != null && sortOrder.getKey().getType().equals(EntityKeyType.ALARM_FIELD)) {
|
if (sortOrder != null && sortOrder.getKey().getType().equals(EntityKeyType.ALARM_FIELD)) {
|
||||||
String sortOrderKey = sortOrder.getKey().getKey();
|
String sortOrderKey = sortOrder.getKey().getKey();
|
||||||
sortPart.append(alarmFieldColumnMap.getOrDefault(sortOrderKey, sortOrderKey))
|
sortPart.append(alarmFieldColumnMap.getOrDefault(sortOrderKey, sortOrderKey))
|
||||||
@ -288,7 +301,7 @@ public class DefaultAlarmQueryRepository implements AlarmQueryRepository {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pageLink.getAssigneeId() != null){
|
if (pageLink.getAssigneeId() != null) {
|
||||||
ctx.addUuidParameter("assigneeId", pageLink.getAssigneeId().getId());
|
ctx.addUuidParameter("assigneeId", pageLink.getAssigneeId().getId());
|
||||||
wherePart.append(" a.assignee_id = :assigneeId");
|
wherePart.append(" a.assignee_id = :assigneeId");
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user