diff --git a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/DeviceTypes/DeviceTypesTable.js b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/DeviceTypes/DeviceTypesTable.js
index 5e1a5494ca..42af8271b7 100644
--- a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/DeviceTypes/DeviceTypesTable.js
+++ b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/DeviceTypes/DeviceTypesTable.js
@@ -18,7 +18,7 @@
import React from "react";
import axios from "axios";
-import {Tag, message, notification, Table, Typography, Tooltip, Icon, Divider, Card, Col, Row, Select} from "antd";
+import {message, notification, Typography, Icon, Card, Col, Row} from "antd";
import TimeAgo from 'javascript-time-ago'
// Load locale-specific relative date/time formatting rules.
@@ -113,16 +113,27 @@ class DeviceTypesTable extends React.Component {
render() {
const {data, pagination, loading, selectedRows} = this.state;
-
+ const { Meta } = Card;
const itemCard = data.map((data) =>
-
-
- {data.name}
+
+ ,
+ ,]}
+ >
+ }
+ title={data.name}
+ />
+
);
return (
-
+
{itemCard}
diff --git a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Devices/DevicesTable.js b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Devices/DevicesTable.js
index 21fe449b48..38e5444aeb 100644
--- a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Devices/DevicesTable.js
+++ b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Devices/DevicesTable.js
@@ -18,7 +18,7 @@
import React from "react";
import axios from "axios";
-import {Tag, message, notification, Table, Typography, Tooltip, Icon, Divider, Button, Modal, Select} from "antd";
+import {Tag, message, notification, Table, Typography, Tooltip, Icon, Modal, Select} from "antd";
import TimeAgo from 'javascript-time-ago'
// Load locale-specific relative date/time formatting rules.
@@ -133,18 +133,11 @@ class DeviceTable extends React.Component {
selectedRows: [],
deviceGroups: [],
groupModalVisible: false,
- selectedGroupId: []
+ selectedGroupId: [],
+ selectedRowKeys:[]
};
}
- rowSelection = {
- onChange: (selectedRowKeys, selectedRows) => {
- this.setState({
- selectedRows: selectedRows
- });
- }
- };
-
componentDidMount() {
this.fetch();
}
@@ -249,6 +242,9 @@ class DeviceTable extends React.Component {
).then(res => {
if (res.status === 200) {
this.fetch();
+ this.setState({
+ selectedRowKeys:[]
+ })
notification["success"]({
message: "Done",
duration: 4,
@@ -409,11 +405,30 @@ class DeviceTable extends React.Component {
});
};
- render() {
- const {data, pagination, loading, selectedRows} = this.state;
+ onSelectChange = (selectedRowKeys, selectedRows) => {
+ this.setState({
+ selectedRowKeys,
+ selectedRows: selectedRows
+ });
+ };
+ render() {
+ const {data, pagination, loading, selectedRows, selectedRowKeys} = this.state;
const isSelectedSingle = this.state.selectedRows.length == 1;
+ let selectedText;
+ if(isSelectedSingle){
+ selectedText = "You have selected 1 device"
+ }else{
+ selectedText = "You have selected " + this.state.selectedRows.length + " devices"
+ }
+
+ const rowSelection = {
+ selectedRowKeys,
+ selectedRows,
+ onChange: this.onSelectChange,
+ };
+
let item = this.state.deviceGroups.map((data) =>
@@ -453,10 +467,11 @@ class DeviceTable extends React.Component {
onOk={this.handleOk}
onCancel={this.handleCancel}
>
+
{selectedText}
);
diff --git a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Groups/GroupsTable.js b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Groups/GroupsTable.js
index f411c0782a..1fdaedec49 100644
--- a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Groups/GroupsTable.js
+++ b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Groups/GroupsTable.js
@@ -18,7 +18,7 @@
import React from "react";
import axios from "axios";
-import {Tag, message, notification, Table, Typography, Tooltip, Icon, Divider} from "antd";
+import { message, notification, Table, Typography} from "antd";
import TimeAgo from 'javascript-time-ago'
// Load locale-specific relative date/time formatting rules.
@@ -164,7 +164,6 @@ class GroupsTable extends React.Component {
loading={loading}
onChange={this.handleTableChange}
rowSelection={this.rowSelection}
- scroll={{x: 1000}}
/>
);
diff --git a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Policies/PoliciesTable.js b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Policies/PoliciesTable.js
index 29394b9cde..5a1fbb3692 100644
--- a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Policies/PoliciesTable.js
+++ b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Policies/PoliciesTable.js
@@ -18,7 +18,7 @@
import React from "react";
import axios from "axios";
-import {Tag, message, notification, Table, Typography, Tooltip, Icon, Divider} from "antd";
+import {message, notification, Table, Typography} from "antd";
import TimeAgo from 'javascript-time-ago'
// Load locale-specific relative date/time formatting rules.
@@ -171,7 +171,6 @@ class PoliciesTable extends React.Component {
loading={loading}
onChange={this.handleTableChange}
rowSelection={this.rowSelection}
- scroll={{x: 1000}}
/>
);
diff --git a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Roles/RolesTable.js b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Roles/RolesTable.js
index 6808350646..1080cddddb 100644
--- a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Roles/RolesTable.js
+++ b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Roles/RolesTable.js
@@ -126,16 +126,26 @@ class RolesTable extends React.Component {
render() {
const {data, pagination, loading, selectedRows} = this.state;
-
+ const { Meta } = Card;
const itemCard = data.map((data) =>
-
-
- {data}
-
+
+ ,
+ ,]}
+ >
+ }
+ title={data}
+ />
+
);
return (
-
+
{itemCard}
diff --git a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersDevices.js b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersDevices.js
index 13ce62e98e..75529becc1 100644
--- a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersDevices.js
+++ b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersDevices.js
@@ -240,7 +240,6 @@ class UsersDevices extends React.Component {
loading={loading}
onChange={this.handleTableChange}
rowSelection={this.rowSelection}
- scroll={{x: 1000}}
/>
);
diff --git a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersTable.js b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersTable.js
index ac7fc9c66a..a1651111ff 100644
--- a/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersTable.js
+++ b/components/device-mgt/io.entgra.device.mgt.ui/react-app/src/components/Users/UsersTable.js
@@ -18,7 +18,7 @@
import React from "react";
import axios from "axios";
-import {message, notification, Table, Typography, Panel, Collapse, Button, List, Modal, Icon} from "antd";
+import {message, notification, Table, Typography, Panel, Collapse, Button, List, Modal, Icon, Tabs} from "antd";
import TimeAgo from 'javascript-time-ago'
// Load locale-specific relative date/time formatting rules.
@@ -174,9 +174,9 @@ class UsersTable extends React.Component {
};
render() {
-
const {data, pagination, loading, selectedRows} = this.state;
const { Panel } = Collapse;
+ const { TabPane } = Tabs;
const columns = [
{
title: 'User Name',
@@ -231,30 +231,44 @@ class UsersTable extends React.Component {
loading={loading}
onChange={this.handleTableChange}
rowSelection={this.rowSelection}
- scroll={{x: 1000}}
/>
-
-
+
+
+
+ Roles
+
+ }
+ key="1"
+ >
{item}}
/>
-
-
+
+
+
+ Enrolled Devices
+
+ }
+ key="2"
+ >
-
-
+
+
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/device/details/DeviceLocation.java b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/device/details/DeviceLocation.java
index 71270b1683..09ae42117c 100644
--- a/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/device/details/DeviceLocation.java
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.common/src/main/java/org/wso2/carbon/device/mgt/common/device/details/DeviceLocation.java
@@ -56,45 +56,29 @@ public class DeviceLocation implements Serializable {
@ApiModelProperty(name = "updatedTime", value = "Update time of the device.", required = true)
private Date updatedTime;
@ApiModelProperty(name = "altitude", value = "Device altitude.", required = true)
- private Double altitude;
+ private double altitude;
@ApiModelProperty(name = "speed", value = "Device speed.", required = true)
- private Float speed;
+ private float speed;
@ApiModelProperty(name = "bearing", value = "Device bearing.", required = true)
- private Float bearing;
+ private float bearing;
@ApiModelProperty(name = "distance", value = "Device distance.", required = true)
- private Double distance;
+ private double distance;
- public Double getDistance() {
- return distance;
- }
+ public double getAltitude() { return altitude; }
- public void setDistance(Double distance) {
- this.distance = distance;
- }
+ public void setAltitude(double altitude) { this.altitude = altitude; }
- public Double getAltitude() {
- return altitude;
- }
+ public float getSpeed() { return speed; }
- public Float getSpeed() {
- return speed;
- }
+ public void setSpeed(float speed) { this.speed = speed; }
- public void setSpeed(Float speed) {
- this.speed = speed;
- }
+ public float getBearing() { return bearing; }
- public Float getBearing() {
- return bearing;
- }
+ public void setBearing(float bearing) { this.bearing = bearing; }
- public void setBearing(Float bearing) {
- this.bearing = bearing;
- }
+ public double getDistance() { return distance; }
- public void setAltitude(Double altitude) {
- this.altitude = altitude;
- }
+ public void setDistance(double distance) { this.distance = distance; }
public int getDeviceId() {
return deviceId;