mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Merge branch 'Reporting' into 'master'
Fix date durations See merge request entgra/carbon-device-mgt!429
This commit is contained in:
commit
cee3ef55d1
@ -37,9 +37,11 @@ class DeviceStatusReport extends React.Component {
|
||||
this.state = {
|
||||
paramsObject: {
|
||||
from: moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment().format('YYYY-MM-DD'),
|
||||
},
|
||||
data: [],
|
||||
fields: [],
|
||||
@ -62,17 +64,21 @@ class DeviceStatusReport extends React.Component {
|
||||
case 'weekly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
case 'monthly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(30, 'days')
|
||||
.subtract(29, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -37,9 +37,11 @@ class EnrollmentTypeReport extends React.Component {
|
||||
this.state = {
|
||||
paramsObject: {
|
||||
from: moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment().format('YYYY-MM-DD'),
|
||||
},
|
||||
data: [],
|
||||
fields: [],
|
||||
@ -66,17 +68,21 @@ class EnrollmentTypeReport extends React.Component {
|
||||
case 'weekly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
case 'monthly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(30, 'days')
|
||||
.subtract(29, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -37,9 +37,11 @@ class EnrollmentsVsUnenrollmentsReport extends React.Component {
|
||||
this.state = {
|
||||
paramsObject: {
|
||||
from: moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment().format('YYYY-MM-DD'),
|
||||
},
|
||||
data: [],
|
||||
fields: [],
|
||||
@ -66,17 +68,21 @@ class EnrollmentsVsUnenrollmentsReport extends React.Component {
|
||||
case 'weekly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
case 'monthly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(30, 'days')
|
||||
.subtract(29, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -42,9 +42,11 @@ class PolicyReport extends React.Component {
|
||||
// This object contains parameters which pass into API endpoint
|
||||
policyReportData: {
|
||||
from: moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
to: moment().format('YYYY-MM-DD'),
|
||||
},
|
||||
visible: false,
|
||||
};
|
||||
@ -60,26 +62,30 @@ class PolicyReport extends React.Component {
|
||||
switch (durationMode) {
|
||||
case 'daily':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
case 'weekly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(7, 'days')
|
||||
.subtract(6, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
case 'monthly':
|
||||
this.updateDurationValue(
|
||||
moment()
|
||||
.subtract(30, 'days')
|
||||
.subtract(29, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment()
|
||||
.add(1, 'days')
|
||||
.format('YYYY-MM-DD'),
|
||||
moment().format('YYYY-MM-DD'),
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -60,7 +60,7 @@ class SelectPolicyDropDown extends React.Component {
|
||||
if (res.status === 200) {
|
||||
this.setState({
|
||||
loading: false,
|
||||
data: JSON.parse(res.data.data),
|
||||
data: res.data.data.policies,
|
||||
});
|
||||
}
|
||||
})
|
||||
|
||||
@ -170,12 +170,12 @@ public class PolicyManagementServiceImpl implements PolicyManagementService {
|
||||
PolicyAdministratorPoint policyAdministratorPoint = policyManagementService.getPAP();
|
||||
policies = policyAdministratorPoint.getPolicies();
|
||||
if(offset == 0 && limit == 0){
|
||||
return Response.status(Response.Status.OK).entity(policies).build();
|
||||
targetPolicies.setCount(policies.size());
|
||||
targetPolicies.setList(policies);
|
||||
}else{
|
||||
targetPolicies.setCount(policies.size());
|
||||
filteredPolicies = FilteringUtil.getFilteredList(policies, offset, limit);
|
||||
targetPolicies.setList(filteredPolicies);
|
||||
return Response.status(Response.Status.OK).entity(targetPolicies).build();
|
||||
}
|
||||
} catch (PolicyManagementException e) {
|
||||
String msg = "Error occurred while retrieving all available policies";
|
||||
@ -183,8 +183,7 @@ public class PolicyManagementServiceImpl implements PolicyManagementService {
|
||||
return Response.serverError().entity(
|
||||
new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build();
|
||||
}
|
||||
|
||||
|
||||
return Response.status(Response.Status.OK).entity(targetPolicies).build();
|
||||
}
|
||||
|
||||
@GET
|
||||
|
||||
@ -35,8 +35,12 @@
|
||||
|
||||
package org.wso2.carbon.device.mgt.core.dao;
|
||||
|
||||
import org.wso2.carbon.device.mgt.common.*;
|
||||
import org.wso2.carbon.device.mgt.common.Device;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.EnrolmentInfo;
|
||||
import org.wso2.carbon.device.mgt.common.EnrolmentInfo.Status;
|
||||
import org.wso2.carbon.device.mgt.common.PaginationRequest;
|
||||
import org.wso2.carbon.device.mgt.common.Count;
|
||||
import org.wso2.carbon.device.mgt.common.device.details.DeviceLocationHistory;
|
||||
import org.wso2.carbon.device.mgt.common.configuration.mgt.DevicePropertyInfo;
|
||||
import org.wso2.carbon.device.mgt.common.device.details.DeviceData;
|
||||
|
||||
@ -605,10 +605,11 @@ public class GenericDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
sql = sql + " AND e.OWNERSHIP = ?";
|
||||
}
|
||||
|
||||
sql = sql + " GROUP BY SUBSTRING(e.DATE_OF_ENROLMENT, 1, 10) LIMIT ?,?";
|
||||
sql = sql + " GROUP BY SUBSTRING(e.DATE_OF_ENROLMENT, 1, 10) LIMIT ? OFFSET ?";
|
||||
|
||||
try (Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
try {
|
||||
Connection conn = this.getConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
int paramIdx = 1;
|
||||
stmt.setInt(paramIdx++, tenantId);
|
||||
stmt.setString(paramIdx++, fromDate);
|
||||
@ -621,8 +622,8 @@ public class GenericDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
if (ownership != null) {
|
||||
stmt.setString(paramIdx++, ownership);
|
||||
}
|
||||
stmt.setInt(paramIdx++, request.getStartIndex());
|
||||
stmt.setInt(paramIdx, request.getRowCount());
|
||||
stmt.setInt(paramIdx++, request.getRowCount());
|
||||
stmt.setInt(paramIdx, request.getStartIndex());
|
||||
try (ResultSet rs = stmt.executeQuery()) {
|
||||
while (rs.next()) {
|
||||
Count count = new Count(
|
||||
@ -632,12 +633,14 @@ public class GenericDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
countList.add(count);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while retrieving information of all " +
|
||||
"registered devices under tenant id " + tenantId + " between " + fromDate + " to " + toDate;
|
||||
log.error(msg, e);
|
||||
throw new DeviceManagementDAOException(msg, e);
|
||||
}
|
||||
|
||||
return countList;
|
||||
}
|
||||
|
||||
|
||||
@ -557,8 +557,9 @@ public class OracleDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
|
||||
sql = sql + " GROUP BY SUBSTRING(e.DATE_OF_ENROLMENT, 1, 10) OFFSET ? ROWS FETCH NEXT ? ROWS ONLY";
|
||||
|
||||
try (Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
try {
|
||||
Connection conn = this.getConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
int paramIdx = 1;
|
||||
stmt.setInt(paramIdx++, tenantId);
|
||||
stmt.setString(paramIdx++, fromDate);
|
||||
@ -582,6 +583,7 @@ public class OracleDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
countList.add(count);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while retrieving information of all " +
|
||||
"registered devices under tenant id " + tenantId + " between " + fromDate + " to " + toDate;
|
||||
|
||||
@ -536,8 +536,9 @@ public class PostgreSQLDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
|
||||
sql = sql + " GROUP BY SUBSTRING(e.DATE_OF_ENROLMENT, 1, 10) LIMIT ? OFFSET ?";
|
||||
|
||||
try (Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
try {
|
||||
Connection conn = this.getConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
int paramIdx = 1;
|
||||
stmt.setInt(paramIdx++, tenantId);
|
||||
stmt.setString(paramIdx++, fromDate);
|
||||
@ -561,6 +562,7 @@ public class PostgreSQLDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
countList.add(count);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while retrieving information of all " +
|
||||
"registered devices under tenant id " + tenantId + " between " + fromDate + " to " + toDate;
|
||||
|
||||
@ -701,8 +701,9 @@ public class SQLServerDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
|
||||
sql = sql + " GROUP BY SUBSTRING(e.DATE_OF_ENROLMENT, 1, 10) OFFSET ? ROWS FETCH NEXT ? ROWS ONLY";
|
||||
|
||||
try (Connection conn = this.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
try {
|
||||
Connection conn = this.getConnection();
|
||||
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
|
||||
int paramIdx = 1;
|
||||
stmt.setInt(paramIdx++, tenantId);
|
||||
stmt.setString(paramIdx++, fromDate);
|
||||
@ -726,6 +727,7 @@ public class SQLServerDeviceDAOImpl extends AbstractDeviceDAOImpl {
|
||||
countList.add(count);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String msg = "Error occurred while retrieving information of all " +
|
||||
"registered devices under tenant id " + tenantId + " between " + fromDate + " to " + toDate;
|
||||
|
||||
@ -203,7 +203,7 @@ public class ReportManagementServiceImpl implements ReportManagementService {
|
||||
}
|
||||
} else {
|
||||
for (Count count : countList) {
|
||||
resultObject.addProperty(count.getDate(), count.getCount());
|
||||
resultObject.addProperty(count.getDate() + " - " + count.getDate(), count.getCount());
|
||||
}
|
||||
}
|
||||
return resultObject;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user