Allow to filter actions by createdAt and lastModifiedAt timestamp (#2546)
* Allow to filter actions by createdAt and lastModifiedAt timestamp Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * add filtering options for created at/by & lastmodified at/by for all entities Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * Unify ActionStatusFields like other field filters Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * fix tests accordingly Signed-off-by: strailov <Stanislav.Trailov@bosch.io> * only deprecate reportedAt filter option Signed-off-by: strailov <Stanislav.Trailov@bosch.io> --------- Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
This commit is contained in:
committed by
GitHub
parent
124fef189e
commit
5b299e0a62
@@ -23,6 +23,10 @@ public enum ActionFields implements RsqlQueryField, FieldValueConverter<ActionFi
|
|||||||
STATUS("active"),
|
STATUS("active"),
|
||||||
DETAILSTATUS("status"),
|
DETAILSTATUS("status"),
|
||||||
LASTSTATUSCODE("lastActionStatusCode"),
|
LASTSTATUSCODE("lastActionStatusCode"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy"),
|
||||||
WEIGHT("weight"),
|
WEIGHT("weight"),
|
||||||
TARGET("target",
|
TARGET("target",
|
||||||
TargetFields.ID.getJpaEntityFieldName(), TargetFields.NAME.getJpaEntityFieldName(),
|
TargetFields.ID.getJpaEntityFieldName(), TargetFields.NAME.getJpaEntityFieldName(),
|
||||||
|
|||||||
@@ -18,7 +18,10 @@ import lombok.Getter;
|
|||||||
public enum ActionStatusFields implements RsqlQueryField {
|
public enum ActionStatusFields implements RsqlQueryField {
|
||||||
|
|
||||||
ID("id"),
|
ID("id"),
|
||||||
REPORTEDAT("createdAt");
|
@Deprecated
|
||||||
|
REPORTEDAT("createdAt"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,9 @@ public enum DistributionSetFields implements RsqlQueryField {
|
|||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description"),
|
DESCRIPTION("description"),
|
||||||
CREATEDAT("createdAt"),
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
LASTMODIFIEDAT("lastModifiedAt"),
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy"),
|
||||||
VERSION("version"),
|
VERSION("version"),
|
||||||
COMPLETE("complete"),
|
COMPLETE("complete"),
|
||||||
MODULE("modules", SoftwareModuleFields.ID.getJpaEntityFieldName(), SoftwareModuleFields.NAME.getJpaEntityFieldName()),
|
MODULE("modules", SoftwareModuleFields.ID.getJpaEntityFieldName(), SoftwareModuleFields.NAME.getJpaEntityFieldName()),
|
||||||
|
|||||||
@@ -26,6 +26,10 @@ public enum DistributionSetTagFields implements RsqlQueryField {
|
|||||||
NAME(TagFields.NAME.getJpaEntityFieldName()),
|
NAME(TagFields.NAME.getJpaEntityFieldName()),
|
||||||
DESCRIPTION(TagFields.DESCRIPTION.getJpaEntityFieldName()),
|
DESCRIPTION(TagFields.DESCRIPTION.getJpaEntityFieldName()),
|
||||||
COLOUR(TagFields.COLOUR.getJpaEntityFieldName()),
|
COLOUR(TagFields.COLOUR.getJpaEntityFieldName()),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy"),
|
||||||
DISTRIBUTIONSET(
|
DISTRIBUTIONSET(
|
||||||
"assignedToDistributionSet",
|
"assignedToDistributionSet",
|
||||||
DistributionSetFields.ID.getJpaEntityFieldName(), DistributionSetFields.NAME.getJpaEntityFieldName());
|
DistributionSetFields.ID.getJpaEntityFieldName(), DistributionSetFields.NAME.getJpaEntityFieldName());
|
||||||
|
|||||||
@@ -21,7 +21,11 @@ public enum DistributionSetTypeFields implements RsqlQueryField {
|
|||||||
ID("id"),
|
ID("id"),
|
||||||
KEY("key"),
|
KEY("key"),
|
||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description");
|
DESCRIPTION("description"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,10 @@ public enum RolloutFields implements RsqlQueryField {
|
|||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description"),
|
DESCRIPTION("description"),
|
||||||
STATUS("status"),
|
STATUS("status"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy"),
|
||||||
DISTRIBUTIONSET(
|
DISTRIBUTIONSET(
|
||||||
"distributionSet",
|
"distributionSet",
|
||||||
DistributionSetFields.ID.getJpaEntityFieldName(),
|
DistributionSetFields.ID.getJpaEntityFieldName(),
|
||||||
|
|||||||
@@ -19,7 +19,11 @@ public enum RolloutGroupFields implements RsqlQueryField {
|
|||||||
|
|
||||||
ID("id"),
|
ID("id"),
|
||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description");
|
DESCRIPTION("description"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,11 @@ public enum SoftwareModuleFields implements RsqlQueryField {
|
|||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description"),
|
DESCRIPTION("description"),
|
||||||
VERSION("version"),
|
VERSION("version"),
|
||||||
METADATA("metadata");
|
METADATA("metadata"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
private final List<String> subEntityAttributes;
|
private final List<String> subEntityAttributes;
|
||||||
|
|||||||
@@ -21,7 +21,11 @@ public enum SoftwareModuleTypeFields implements RsqlQueryField {
|
|||||||
KEY("key"),
|
KEY("key"),
|
||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description"),
|
DESCRIPTION("description"),
|
||||||
MAXASSIGNMENTS("maxAssignments");
|
MAXASSIGNMENTS("maxAssignments"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,11 @@ public enum TagFields implements RsqlQueryField {
|
|||||||
ID("id"),
|
ID("id"),
|
||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description"),
|
DESCRIPTION("description"),
|
||||||
COLOUR("colour");
|
COLOUR("colour"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,9 @@ public enum TargetFields implements RsqlQueryField {
|
|||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description"),
|
DESCRIPTION("description"),
|
||||||
CREATEDAT("createdAt"),
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
LASTMODIFIEDAT("lastModifiedAt"),
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy"),
|
||||||
CONTROLLERID("controllerId"),
|
CONTROLLERID("controllerId"),
|
||||||
UPDATESTATUS("updateStatus"),
|
UPDATESTATUS("updateStatus"),
|
||||||
IPADDRESS("address"),
|
IPADDRESS("address"),
|
||||||
|
|||||||
@@ -22,6 +22,10 @@ public enum TargetFilterQueryFields implements RsqlQueryField {
|
|||||||
|
|
||||||
ID("id"),
|
ID("id"),
|
||||||
NAME("name"),
|
NAME("name"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy"),
|
||||||
AUTOASSIGNDISTRIBUTIONSET("autoAssignDistributionSet", "name", "version");
|
AUTOASSIGNDISTRIBUTIONSET("autoAssignDistributionSet", "name", "version");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|||||||
@@ -21,7 +21,11 @@ public enum TargetTagFields implements RsqlQueryField {
|
|||||||
ID(TagFields.ID.getJpaEntityFieldName()),
|
ID(TagFields.ID.getJpaEntityFieldName()),
|
||||||
NAME(TagFields.NAME.getJpaEntityFieldName()),
|
NAME(TagFields.NAME.getJpaEntityFieldName()),
|
||||||
DESCRIPTION(TagFields.DESCRIPTION.getJpaEntityFieldName()),
|
DESCRIPTION(TagFields.DESCRIPTION.getJpaEntityFieldName()),
|
||||||
COLOUR(TagFields.COLOUR.getJpaEntityFieldName());
|
COLOUR(TagFields.COLOUR.getJpaEntityFieldName()),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,11 @@ public enum TargetTypeFields implements RsqlQueryField {
|
|||||||
ID("id"),
|
ID("id"),
|
||||||
KEY("key"),
|
KEY("key"),
|
||||||
NAME("name"),
|
NAME("name"),
|
||||||
DESCRIPTION("description");
|
DESCRIPTION("description"),
|
||||||
|
CREATEDAT("createdAt"),
|
||||||
|
CREATEDBY("createdBy"),
|
||||||
|
LASTMODIFIEDAT("lastModifiedAt"),
|
||||||
|
LASTMODIFIEDBY("lastModifiedBy");
|
||||||
|
|
||||||
private final String jpaEntityFieldName;
|
private final String jpaEntityFieldName;
|
||||||
|
|
||||||
|
|||||||
@@ -1467,7 +1467,7 @@ class MgmtTargetResourceTest extends AbstractManagementApiIntegrationTest {
|
|||||||
mvc.perform(get(MgmtRestConstants.TARGET_V1_REQUEST_MAPPING + "/" + knownTargetId + "/"
|
mvc.perform(get(MgmtRestConstants.TARGET_V1_REQUEST_MAPPING + "/" + knownTargetId + "/"
|
||||||
+ MgmtRestConstants.TARGET_V1_ACTIONS + "/" + action.getId() + "/"
|
+ MgmtRestConstants.TARGET_V1_ACTIONS + "/" + action.getId() + "/"
|
||||||
+ MgmtRestConstants.TARGET_V1_ACTION_STATUS).param(MgmtRestConstants.REQUEST_PARAMETER_SORTING,
|
+ MgmtRestConstants.TARGET_V1_ACTION_STATUS).param(MgmtRestConstants.REQUEST_PARAMETER_SORTING,
|
||||||
"REPORTEDAT:DESC"))
|
"CREATEDAT:DESC"))
|
||||||
.andDo(MockMvcResultPrinter.print())
|
.andDo(MockMvcResultPrinter.print())
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("content.[0].id", equalTo(actionStatus.get(1).getId().intValue())))
|
.andExpect(jsonPath("content.[0].id", equalTo(actionStatus.get(1).getId().intValue())))
|
||||||
@@ -1486,7 +1486,7 @@ class MgmtTargetResourceTest extends AbstractManagementApiIntegrationTest {
|
|||||||
mvc.perform(get(MgmtRestConstants.TARGET_V1_REQUEST_MAPPING + "/" + knownTargetId + "/"
|
mvc.perform(get(MgmtRestConstants.TARGET_V1_REQUEST_MAPPING + "/" + knownTargetId + "/"
|
||||||
+ MgmtRestConstants.TARGET_V1_ACTIONS + "/" + action.getId() + "/"
|
+ MgmtRestConstants.TARGET_V1_ACTIONS + "/" + action.getId() + "/"
|
||||||
+ MgmtRestConstants.TARGET_V1_ACTION_STATUS).param(MgmtRestConstants.REQUEST_PARAMETER_SORTING,
|
+ MgmtRestConstants.TARGET_V1_ACTION_STATUS).param(MgmtRestConstants.REQUEST_PARAMETER_SORTING,
|
||||||
"REPORTEDAT:ASC"))
|
"CREATEDAT:ASC"))
|
||||||
.andDo(MockMvcResultPrinter.print())
|
.andDo(MockMvcResultPrinter.print())
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("content.[1].id", equalTo(actionStatus.get(1).getId().intValue())))
|
.andExpect(jsonPath("content.[1].id", equalTo(actionStatus.get(1).getId().intValue())))
|
||||||
|
|||||||
Reference in New Issue
Block a user