From 9f2cedd09ceffcb62a7418dc097365be46985fef Mon Sep 17 00:00:00 2001 From: Pahansith Gunathilake Date: Wed, 1 Dec 2021 17:10:45 +0530 Subject: [PATCH] Change time filtering DB column --- .../service/impl/util/RequestValidationUtil.java | 5 +++-- .../mgt/dao/impl/GenericOperationDAOImpl.java | 15 +++++++++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java index 4d16878f73..116c715eb2 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/util/RequestValidationUtil.java @@ -773,8 +773,9 @@ public class RequestValidationUtil { public static void validateTimeDuration(long startTimestamp, long endTimestamp) { if (startTimestamp > endTimestamp) { throw new InputValidationException( - new ErrorResponse.ErrorResponseBuilder().setCode(400l).setMessage("Request parameter startTimestamp" + - " should not be higher values than endTimestamp").build()); + new ErrorResponse.ErrorResponseBuilder().setCode(400l) + .setMessage("Request parameter startTimestamp should not be " + + "a higher value than endTimestamp").build()); } } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/operation/mgt/dao/impl/GenericOperationDAOImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/operation/mgt/dao/impl/GenericOperationDAOImpl.java index 3f254fdd08..de92618c46 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/operation/mgt/dao/impl/GenericOperationDAOImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/operation/mgt/dao/impl/GenericOperationDAOImpl.java @@ -1767,6 +1767,10 @@ public class GenericOperationDAOImpl implements OperationDAO { if (activityPaginationRequest.getSince() != 0) { sql += "AND UPDATED_TIMESTAMP > ? "; } + if (activityPaginationRequest.getStartTimestamp() > 0 && activityPaginationRequest.getEndTimestamp() > 0) { + isTimeDurationFilteringProvided = true; + sql += "AND CREATED_TIMESTAMP BETWEEN ? AND ? "; + } if (activityPaginationRequest.getType() != null) { sql += "AND TYPE = ? "; } @@ -1792,9 +1796,8 @@ public class GenericOperationDAOImpl implements OperationDAO { if (activityPaginationRequest.getSince() != 0) { sql += "AND eom.UPDATED_TIMESTAMP > ? "; } - if (activityPaginationRequest.getStartTimestamp() > 0 && activityPaginationRequest.getEndTimestamp() > 0) { - isTimeDurationFilteringProvided = true; - sql += "AND eom.UPDATED_TIMESTAMP BETWEEN ? AND ? "; + if (isTimeDurationFilteringProvided) { + sql += "AND eom.CREATED_TIMESTAMP BETWEEN ? AND ? "; } if (activityPaginationRequest.getType() != null) { sql += "AND eom.TYPE = ? "; @@ -1853,6 +1856,10 @@ public class GenericOperationDAOImpl implements OperationDAO { if (activityPaginationRequest.getSince() != 0) { stmt.setLong(index++, activityPaginationRequest.getSince()); } + if (isTimeDurationFilteringProvided) { + stmt.setLong(index++, activityPaginationRequest.getStartTimestamp()); + stmt.setLong(index++, activityPaginationRequest.getEndTimestamp()); + } if (activityPaginationRequest.getType() != null) { stmt.setString(index++, activityPaginationRequest.getType().name()); } @@ -1910,7 +1917,7 @@ public class GenericOperationDAOImpl implements OperationDAO { } if (activityPaginationRequest.getStartTimestamp() > 0 && activityPaginationRequest.getEndTimestamp() > 0) { isTimeDurationFilteringProvided = true; - sql += "AND UPDATED_TIMESTAMP BETWEEN ? AND ? "; + sql += "AND CREATED_TIMESTAMP BETWEEN ? AND ? "; } int index = 1;