diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
index de55bbf..2910126 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
@@ -22,7 +22,7 @@
import com.casic.dcms.mvvm.view.PackageCaseActivity;
import com.casic.dcms.mvvm.view.OvertimeCaseActivity;
import com.casic.dcms.mvvm.view.PackageCaseUploadActivity;
-import com.casic.dcms.mvvm.view.PersonOnlineActivity;
+import com.casic.dcms.mvvm.view.PersonActivity;
import com.casic.dcms.mvvm.view.PipelineManagerActivity;
import com.casic.dcms.mvvm.view.PublicToiletActivity;
import com.casic.dcms.mvvm.view.QuickCaseUploadActivity;
@@ -125,7 +125,7 @@
intent.setClass(requireContext(), DataAnalysisActivity.class);
break;
case "在岗人员":
- intent.setClass(requireContext(), PersonOnlineActivity.class);
+ intent.setClass(requireContext(), PersonActivity.class);
break;
case "案卷查询":
intent.setClass(requireContext(), SearchCaseActivity.class);
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
index de55bbf..2910126 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
@@ -22,7 +22,7 @@
import com.casic.dcms.mvvm.view.PackageCaseActivity;
import com.casic.dcms.mvvm.view.OvertimeCaseActivity;
import com.casic.dcms.mvvm.view.PackageCaseUploadActivity;
-import com.casic.dcms.mvvm.view.PersonOnlineActivity;
+import com.casic.dcms.mvvm.view.PersonActivity;
import com.casic.dcms.mvvm.view.PipelineManagerActivity;
import com.casic.dcms.mvvm.view.PublicToiletActivity;
import com.casic.dcms.mvvm.view.QuickCaseUploadActivity;
@@ -125,7 +125,7 @@
intent.setClass(requireContext(), DataAnalysisActivity.class);
break;
case "在岗人员":
- intent.setClass(requireContext(), PersonOnlineActivity.class);
+ intent.setClass(requireContext(), PersonActivity.class);
break;
case "案卷查询":
intent.setClass(requireContext(), SearchCaseActivity.class);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
index 197fef1..79d0c64 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
@@ -18,11 +18,11 @@
import com.amap.api.location.AMapLocation;
import com.casic.dcms.R;
import com.casic.dcms.base.BaseApplication;
+import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.databinding.FragmentLightMapBinding;
import com.casic.dcms.greendao.LightLocalBeanDao;
import com.casic.dcms.mvvm.model.ActionResultBean;
import com.casic.dcms.mvvm.model.LightMapBean;
-import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.mvvm.vm.LightViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.HttpRequestHelper;
@@ -34,6 +34,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -139,7 +140,7 @@
//创建底图、并设置底图图层
Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer());
arcGISMap.setBasemap(basemap);
- Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReference.create(4326));
+ Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示
viewBinding.mapView.setMap(arcGISMap);
@@ -152,7 +153,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
List streetLightBeans = lightLocalBeanDao.loadAll();
@@ -162,11 +163,11 @@
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
// if (Math.abs(longitude - Constant.DEFAULT_LNG) <= Constant.DELTA_LNG_75 &&
// Math.abs(latitude - Constant.DEFAULT_LAT) <= Constant.DELTA_LAT_75) {
-// pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
}
addPictureMarker(pointList);
@@ -196,7 +197,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(minusList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -205,14 +206,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List minusList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(minusList);
@@ -240,7 +241,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(expandList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -249,14 +250,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List expandList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(expandList);
@@ -277,14 +278,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List pointList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(pointList);
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
index de55bbf..2910126 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
@@ -22,7 +22,7 @@
import com.casic.dcms.mvvm.view.PackageCaseActivity;
import com.casic.dcms.mvvm.view.OvertimeCaseActivity;
import com.casic.dcms.mvvm.view.PackageCaseUploadActivity;
-import com.casic.dcms.mvvm.view.PersonOnlineActivity;
+import com.casic.dcms.mvvm.view.PersonActivity;
import com.casic.dcms.mvvm.view.PipelineManagerActivity;
import com.casic.dcms.mvvm.view.PublicToiletActivity;
import com.casic.dcms.mvvm.view.QuickCaseUploadActivity;
@@ -125,7 +125,7 @@
intent.setClass(requireContext(), DataAnalysisActivity.class);
break;
case "在岗人员":
- intent.setClass(requireContext(), PersonOnlineActivity.class);
+ intent.setClass(requireContext(), PersonActivity.class);
break;
case "案卷查询":
intent.setClass(requireContext(), SearchCaseActivity.class);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
index 197fef1..79d0c64 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
@@ -18,11 +18,11 @@
import com.amap.api.location.AMapLocation;
import com.casic.dcms.R;
import com.casic.dcms.base.BaseApplication;
+import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.databinding.FragmentLightMapBinding;
import com.casic.dcms.greendao.LightLocalBeanDao;
import com.casic.dcms.mvvm.model.ActionResultBean;
import com.casic.dcms.mvvm.model.LightMapBean;
-import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.mvvm.vm.LightViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.HttpRequestHelper;
@@ -34,6 +34,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -139,7 +140,7 @@
//创建底图、并设置底图图层
Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer());
arcGISMap.setBasemap(basemap);
- Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReference.create(4326));
+ Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示
viewBinding.mapView.setMap(arcGISMap);
@@ -152,7 +153,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
List streetLightBeans = lightLocalBeanDao.loadAll();
@@ -162,11 +163,11 @@
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
// if (Math.abs(longitude - Constant.DEFAULT_LNG) <= Constant.DELTA_LNG_75 &&
// Math.abs(latitude - Constant.DEFAULT_LAT) <= Constant.DELTA_LAT_75) {
-// pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
}
addPictureMarker(pointList);
@@ -196,7 +197,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(minusList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -205,14 +206,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List minusList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(minusList);
@@ -240,7 +241,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(expandList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -249,14 +250,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List expandList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(expandList);
@@ -277,14 +278,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List pointList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(pointList);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
new file mode 100644
index 0000000..907fbc9
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
@@ -0,0 +1,76 @@
+package com.casic.dcms.mvvm.view.fragment;
+
+import androidx.lifecycle.Observer;
+import androidx.lifecycle.ViewModelProvider;
+
+import com.casic.dcms.adapter.OnlinePersonAdapter;
+import com.casic.dcms.databinding.FragmentPersonListBinding;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
+import com.casic.dcms.mvvm.model.PersonBean;
+import com.casic.dcms.mvvm.vm.PersonViewModel;
+import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class PersonListFragment extends AndroidxBaseFragment {
+
+ private final Set deptSet = new HashSet<>();
+ private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
+ private PersonViewModel statusViewModel;
+ private OnlinePersonAdapter onlinePersonAdapter;
+ private List deptList = new ArrayList<>(); //部门名集合
+
+ @Override
+ protected void setupTopBarLayout() {
+
+ }
+
+ @Override
+ protected void initData() {
+ statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
+ statusViewModel.obtainPersonByStatus("", "", "");
+
+ onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
+ }
+
+ @Override
+ protected void initEvent() {
+ statusViewModel.personStatusModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(PersonStatusBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ List dataBeans = resultBean.getData();
+ deptList.clear();
+ for (PersonStatusBean.DataDTO bean : dataBeans) {
+ deptSet.add(bean.getDeptName());
+ }
+ //hashSet去重然后转List
+ deptList = new ArrayList<>(deptSet);
+ if (deptList.size() > 0) {
+ deptAndPersons.clear();
+ for (String title : deptList) {
+ List beanList = new ArrayList<>();
+ for (PersonStatusBean.DataDTO dataBean : dataBeans) {
+ if (title.equals(dataBean.getDeptName())) {
+ PersonBean personBean = new PersonBean();
+ personBean.setPersonDept(dataBean.getDeptName());
+ personBean.setPersonName(dataBean.getName());
+ personBean.setPersonPhone(dataBean.getPhone());
+ personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
+ personBean.setOnLine(dataBean.isOnLine());
+ beanList.add(personBean);
+ }
+ }
+ deptAndPersons.add(beanList);
+ }
+ onlinePersonAdapter.setData(deptList, deptAndPersons);
+ viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
+ }
+ }
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
index de55bbf..2910126 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
@@ -22,7 +22,7 @@
import com.casic.dcms.mvvm.view.PackageCaseActivity;
import com.casic.dcms.mvvm.view.OvertimeCaseActivity;
import com.casic.dcms.mvvm.view.PackageCaseUploadActivity;
-import com.casic.dcms.mvvm.view.PersonOnlineActivity;
+import com.casic.dcms.mvvm.view.PersonActivity;
import com.casic.dcms.mvvm.view.PipelineManagerActivity;
import com.casic.dcms.mvvm.view.PublicToiletActivity;
import com.casic.dcms.mvvm.view.QuickCaseUploadActivity;
@@ -125,7 +125,7 @@
intent.setClass(requireContext(), DataAnalysisActivity.class);
break;
case "在岗人员":
- intent.setClass(requireContext(), PersonOnlineActivity.class);
+ intent.setClass(requireContext(), PersonActivity.class);
break;
case "案卷查询":
intent.setClass(requireContext(), SearchCaseActivity.class);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
index 197fef1..79d0c64 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
@@ -18,11 +18,11 @@
import com.amap.api.location.AMapLocation;
import com.casic.dcms.R;
import com.casic.dcms.base.BaseApplication;
+import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.databinding.FragmentLightMapBinding;
import com.casic.dcms.greendao.LightLocalBeanDao;
import com.casic.dcms.mvvm.model.ActionResultBean;
import com.casic.dcms.mvvm.model.LightMapBean;
-import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.mvvm.vm.LightViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.HttpRequestHelper;
@@ -34,6 +34,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -139,7 +140,7 @@
//创建底图、并设置底图图层
Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer());
arcGISMap.setBasemap(basemap);
- Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReference.create(4326));
+ Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示
viewBinding.mapView.setMap(arcGISMap);
@@ -152,7 +153,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
List streetLightBeans = lightLocalBeanDao.loadAll();
@@ -162,11 +163,11 @@
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
// if (Math.abs(longitude - Constant.DEFAULT_LNG) <= Constant.DELTA_LNG_75 &&
// Math.abs(latitude - Constant.DEFAULT_LAT) <= Constant.DELTA_LAT_75) {
-// pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
}
addPictureMarker(pointList);
@@ -196,7 +197,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(minusList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -205,14 +206,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List minusList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(minusList);
@@ -240,7 +241,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(expandList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -249,14 +250,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List expandList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(expandList);
@@ -277,14 +278,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List pointList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(pointList);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
new file mode 100644
index 0000000..907fbc9
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
@@ -0,0 +1,76 @@
+package com.casic.dcms.mvvm.view.fragment;
+
+import androidx.lifecycle.Observer;
+import androidx.lifecycle.ViewModelProvider;
+
+import com.casic.dcms.adapter.OnlinePersonAdapter;
+import com.casic.dcms.databinding.FragmentPersonListBinding;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
+import com.casic.dcms.mvvm.model.PersonBean;
+import com.casic.dcms.mvvm.vm.PersonViewModel;
+import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class PersonListFragment extends AndroidxBaseFragment {
+
+ private final Set deptSet = new HashSet<>();
+ private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
+ private PersonViewModel statusViewModel;
+ private OnlinePersonAdapter onlinePersonAdapter;
+ private List deptList = new ArrayList<>(); //部门名集合
+
+ @Override
+ protected void setupTopBarLayout() {
+
+ }
+
+ @Override
+ protected void initData() {
+ statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
+ statusViewModel.obtainPersonByStatus("", "", "");
+
+ onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
+ }
+
+ @Override
+ protected void initEvent() {
+ statusViewModel.personStatusModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(PersonStatusBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ List dataBeans = resultBean.getData();
+ deptList.clear();
+ for (PersonStatusBean.DataDTO bean : dataBeans) {
+ deptSet.add(bean.getDeptName());
+ }
+ //hashSet去重然后转List
+ deptList = new ArrayList<>(deptSet);
+ if (deptList.size() > 0) {
+ deptAndPersons.clear();
+ for (String title : deptList) {
+ List beanList = new ArrayList<>();
+ for (PersonStatusBean.DataDTO dataBean : dataBeans) {
+ if (title.equals(dataBean.getDeptName())) {
+ PersonBean personBean = new PersonBean();
+ personBean.setPersonDept(dataBean.getDeptName());
+ personBean.setPersonName(dataBean.getName());
+ personBean.setPersonPhone(dataBean.getPhone());
+ personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
+ personBean.setOnLine(dataBean.isOnLine());
+ beanList.add(personBean);
+ }
+ }
+ deptAndPersons.add(beanList);
+ }
+ onlinePersonAdapter.setData(deptList, deptAndPersons);
+ viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
+ }
+ }
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
deleted file mode 100644
index a6eb82a..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package com.casic.dcms.mvvm.view.fragment;
-
-import androidx.lifecycle.Observer;
-import androidx.lifecycle.ViewModelProvider;
-
-import com.casic.dcms.adapter.OnlinePersonAdapter;
-import com.casic.dcms.databinding.FragmentPersonListBinding;
-import com.casic.dcms.mvvm.model.OnlinePersonBean;
-import com.casic.dcms.mvvm.model.PersonBean;
-import com.casic.dcms.mvvm.vm.PersonViewModel;
-import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-public class PersonOnLineFragment extends AndroidxBaseFragment {
-
- private final Set deptSet = new HashSet<>();
- private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
- private PersonViewModel statusViewModel;
- private OnlinePersonAdapter onlinePersonAdapter;
- private List deptList = new ArrayList<>(); //部门名集合
-
- @Override
- protected void setupTopBarLayout() {
-
- }
-
- @Override
- protected void initData() {
- statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
- statusViewModel.obtainPersonByStatus("", "", "");
-
- onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
- }
-
- @Override
- protected void initEvent() {
- statusViewModel.personStatusModel.observe(this, new Observer() {
- @Override
- public void onChanged(OnlinePersonBean resultBean) {
- if (resultBean.getCode() == 200) {
- List dataBeans = resultBean.getData();
- deptList.clear();
- for (OnlinePersonBean.DataBean bean : dataBeans) {
- deptSet.add(bean.getDeptName());
- }
- //hashSet去重然后转List
- deptList = new ArrayList<>(deptSet);
- if (deptList.size() > 0) {
- deptAndPersons.clear();
- for (String title : deptList) {
- List beanList = new ArrayList<>();
- for (OnlinePersonBean.DataBean dataBean : dataBeans) {
- if (title.equals(dataBean.getDeptName())) {
- PersonBean personBean = new PersonBean();
- personBean.setPersonDept(dataBean.getDeptName());
- personBean.setPersonName(dataBean.getName());
- personBean.setPersonPhone(dataBean.getPhone());
- personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
- personBean.setOnLine(dataBean.isOnLine());
- beanList.add(personBean);
- }
- }
- deptAndPersons.add(beanList);
- }
- onlinePersonAdapter.setData(deptList, deptAndPersons);
- viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
- }
- }
- }
- });
- }
-}
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
index de55bbf..2910126 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
@@ -22,7 +22,7 @@
import com.casic.dcms.mvvm.view.PackageCaseActivity;
import com.casic.dcms.mvvm.view.OvertimeCaseActivity;
import com.casic.dcms.mvvm.view.PackageCaseUploadActivity;
-import com.casic.dcms.mvvm.view.PersonOnlineActivity;
+import com.casic.dcms.mvvm.view.PersonActivity;
import com.casic.dcms.mvvm.view.PipelineManagerActivity;
import com.casic.dcms.mvvm.view.PublicToiletActivity;
import com.casic.dcms.mvvm.view.QuickCaseUploadActivity;
@@ -125,7 +125,7 @@
intent.setClass(requireContext(), DataAnalysisActivity.class);
break;
case "在岗人员":
- intent.setClass(requireContext(), PersonOnlineActivity.class);
+ intent.setClass(requireContext(), PersonActivity.class);
break;
case "案卷查询":
intent.setClass(requireContext(), SearchCaseActivity.class);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
index 197fef1..79d0c64 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
@@ -18,11 +18,11 @@
import com.amap.api.location.AMapLocation;
import com.casic.dcms.R;
import com.casic.dcms.base.BaseApplication;
+import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.databinding.FragmentLightMapBinding;
import com.casic.dcms.greendao.LightLocalBeanDao;
import com.casic.dcms.mvvm.model.ActionResultBean;
import com.casic.dcms.mvvm.model.LightMapBean;
-import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.mvvm.vm.LightViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.HttpRequestHelper;
@@ -34,6 +34,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -139,7 +140,7 @@
//创建底图、并设置底图图层
Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer());
arcGISMap.setBasemap(basemap);
- Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReference.create(4326));
+ Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示
viewBinding.mapView.setMap(arcGISMap);
@@ -152,7 +153,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
List streetLightBeans = lightLocalBeanDao.loadAll();
@@ -162,11 +163,11 @@
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
// if (Math.abs(longitude - Constant.DEFAULT_LNG) <= Constant.DELTA_LNG_75 &&
// Math.abs(latitude - Constant.DEFAULT_LAT) <= Constant.DELTA_LAT_75) {
-// pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
}
addPictureMarker(pointList);
@@ -196,7 +197,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(minusList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -205,14 +206,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List minusList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(minusList);
@@ -240,7 +241,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(expandList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -249,14 +250,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List expandList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(expandList);
@@ -277,14 +278,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List pointList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(pointList);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
new file mode 100644
index 0000000..907fbc9
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
@@ -0,0 +1,76 @@
+package com.casic.dcms.mvvm.view.fragment;
+
+import androidx.lifecycle.Observer;
+import androidx.lifecycle.ViewModelProvider;
+
+import com.casic.dcms.adapter.OnlinePersonAdapter;
+import com.casic.dcms.databinding.FragmentPersonListBinding;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
+import com.casic.dcms.mvvm.model.PersonBean;
+import com.casic.dcms.mvvm.vm.PersonViewModel;
+import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class PersonListFragment extends AndroidxBaseFragment {
+
+ private final Set deptSet = new HashSet<>();
+ private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
+ private PersonViewModel statusViewModel;
+ private OnlinePersonAdapter onlinePersonAdapter;
+ private List deptList = new ArrayList<>(); //部门名集合
+
+ @Override
+ protected void setupTopBarLayout() {
+
+ }
+
+ @Override
+ protected void initData() {
+ statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
+ statusViewModel.obtainPersonByStatus("", "", "");
+
+ onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
+ }
+
+ @Override
+ protected void initEvent() {
+ statusViewModel.personStatusModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(PersonStatusBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ List dataBeans = resultBean.getData();
+ deptList.clear();
+ for (PersonStatusBean.DataDTO bean : dataBeans) {
+ deptSet.add(bean.getDeptName());
+ }
+ //hashSet去重然后转List
+ deptList = new ArrayList<>(deptSet);
+ if (deptList.size() > 0) {
+ deptAndPersons.clear();
+ for (String title : deptList) {
+ List beanList = new ArrayList<>();
+ for (PersonStatusBean.DataDTO dataBean : dataBeans) {
+ if (title.equals(dataBean.getDeptName())) {
+ PersonBean personBean = new PersonBean();
+ personBean.setPersonDept(dataBean.getDeptName());
+ personBean.setPersonName(dataBean.getName());
+ personBean.setPersonPhone(dataBean.getPhone());
+ personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
+ personBean.setOnLine(dataBean.isOnLine());
+ beanList.add(personBean);
+ }
+ }
+ deptAndPersons.add(beanList);
+ }
+ onlinePersonAdapter.setData(deptList, deptAndPersons);
+ viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
+ }
+ }
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
deleted file mode 100644
index a6eb82a..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package com.casic.dcms.mvvm.view.fragment;
-
-import androidx.lifecycle.Observer;
-import androidx.lifecycle.ViewModelProvider;
-
-import com.casic.dcms.adapter.OnlinePersonAdapter;
-import com.casic.dcms.databinding.FragmentPersonListBinding;
-import com.casic.dcms.mvvm.model.OnlinePersonBean;
-import com.casic.dcms.mvvm.model.PersonBean;
-import com.casic.dcms.mvvm.vm.PersonViewModel;
-import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-public class PersonOnLineFragment extends AndroidxBaseFragment {
-
- private final Set deptSet = new HashSet<>();
- private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
- private PersonViewModel statusViewModel;
- private OnlinePersonAdapter onlinePersonAdapter;
- private List deptList = new ArrayList<>(); //部门名集合
-
- @Override
- protected void setupTopBarLayout() {
-
- }
-
- @Override
- protected void initData() {
- statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
- statusViewModel.obtainPersonByStatus("", "", "");
-
- onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
- }
-
- @Override
- protected void initEvent() {
- statusViewModel.personStatusModel.observe(this, new Observer() {
- @Override
- public void onChanged(OnlinePersonBean resultBean) {
- if (resultBean.getCode() == 200) {
- List dataBeans = resultBean.getData();
- deptList.clear();
- for (OnlinePersonBean.DataBean bean : dataBeans) {
- deptSet.add(bean.getDeptName());
- }
- //hashSet去重然后转List
- deptList = new ArrayList<>(deptSet);
- if (deptList.size() > 0) {
- deptAndPersons.clear();
- for (String title : deptList) {
- List beanList = new ArrayList<>();
- for (OnlinePersonBean.DataBean dataBean : dataBeans) {
- if (title.equals(dataBean.getDeptName())) {
- PersonBean personBean = new PersonBean();
- personBean.setPersonDept(dataBean.getDeptName());
- personBean.setPersonName(dataBean.getName());
- personBean.setPersonPhone(dataBean.getPhone());
- personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
- personBean.setOnLine(dataBean.isOnLine());
- beanList.add(personBean);
- }
- }
- deptAndPersons.add(beanList);
- }
- onlinePersonAdapter.setData(deptList, deptAndPersons);
- viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
- }
- }
- }
- });
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java
index d1d50e0..132e91f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java
@@ -1,30 +1,29 @@
package com.casic.dcms.mvvm.view.fragment;
import android.annotation.SuppressLint;
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.widget.TextView;
+import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
import com.casic.dcms.R;
import com.casic.dcms.databinding.FragmentPersonMapBinding;
-import com.casic.dcms.mvvm.model.OnlinePersonBean;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
import com.casic.dcms.mvvm.model.PointPersonBean;
import com.casic.dcms.mvvm.vm.PersonViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.LocaleConstant;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.Point;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -51,7 +50,6 @@
private WeakReferenceHandler weakReferenceHandler;
private PersonViewModel statusViewModel;
private ListenableList graphicsOverlays;
- private List personBeans;
@Override
protected void setupTopBarLayout() {
@@ -60,6 +58,7 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
statusViewModel.obtainPersonByStatus("", "", "");
@@ -71,42 +70,35 @@
arcGISMap.setBasemap(baseMap);
viewBinding.mapView.setMap(arcGISMap);
graphicsOverlays = viewBinding.mapView.getGraphicsOverlays();
- weakReferenceHandler = new WeakReferenceHandler(callback);
}
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- statusViewModel.personStatusModel.observe(this, new Observer() {
+ List personBeans = new ArrayList<>();
+ statusViewModel.personStatusModel.observe(this, new Observer() {
@Override
- public void onChanged(OnlinePersonBean resultBean) {
+ public void onChanged(PersonStatusBean resultBean) {
if (resultBean.getCode() == 200) {
- List dataBeans = resultBean.getData();
- if (dataBeans.size() >= 1) {
- personBeans = new ArrayList<>();
- for (OnlinePersonBean.DataBean bean : dataBeans) {
- String lng = bean.getPositionLng();
- String lat = bean.getPositionLat();
- if (TextUtils.isEmpty(lng) || TextUtils.isEmpty(lat)) {
- Log.d(TAG, "经纬度异常");
- } else {
- PointPersonBean personBean = new PointPersonBean();
- personBean.setPersonName(bean.getName());
- personBean.setPersonPhone(bean.getPhone());
- personBean.setPersonDept(bean.getDeptName());
- personBean.setPointTime(bean.getLastTimeFmt());
- personBean.setOnLine(bean.isOnLine());
- personBean.setPoint(new com.esri.arcgisruntime.geometry.Point(
- Double.parseDouble(lng),
- Double.parseDouble(lat),
- SpatialReference.create(4326)
- ));
- personBeans.add(personBean);
+ List dataBeans = resultBean.getData();
+ if (!dataBeans.isEmpty()) {
+ for (PersonStatusBean.DataDTO bean : dataBeans) {
+ if (bean.isOnLine()) {
+ String lng = bean.getPositionLng();
+ String lat = bean.getPositionLat();
+ if (!TextUtils.isEmpty(lng) || !TextUtils.isEmpty(lat)) {
+ PointPersonBean personBean = new PointPersonBean();
+ personBean.setPersonName(bean.getName());
+ personBean.setPhoneNumber(bean.getPhone());
+ personBean.setPersonDept(bean.getDeptName());
+ personBean.setLastOnlineTime(bean.getLastTimeFmt());
+ personBean.setLastLng(Double.parseDouble(lng));
+ personBean.setLastLat(Double.parseDouble(lat));
+ personBeans.add(personBean);
+ }
}
}
addPictureMarker(personBeans);
- } else {
- EasyToast.show(requireContext(), "当前没有人员在线");
}
}
}
@@ -124,11 +116,10 @@
List overlayResultList = overlaysAsync.get();
if (!overlayResultList.isEmpty()) {
IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0);
- com.esri.arcgisruntime.geometry.Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter();
+ Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter();
for (PointPersonBean dataBean : personBeans) {
- com.esri.arcgisruntime.geometry.Point beanPoint = dataBean.getPoint();
- if (Math.abs(beanPoint.getX() - point.getX()) <= LocaleConstant.DELTA_LNG_10 &&
- Math.abs(beanPoint.getY() - point.getY()) <= LocaleConstant.DELTA_LAT_10
+ if (Math.abs(dataBean.getLastLng() - point.getX()) <= LocaleConstant.DELTA_LNG_10 &&
+ Math.abs(dataBean.getLastLat() - point.getY()) <= LocaleConstant.DELTA_LAT_10
) {
Message message = weakReferenceHandler.obtainMessage();
message.what = 2021051901;
@@ -149,6 +140,25 @@
});
}
+ private void addPictureMarker(List beans) {
+ for (PointPersonBean bean : beans) {
+ BitmapDrawable caseDrawable = (BitmapDrawable) ContextCompat.getDrawable(requireContext(), R.mipmap.on_line);
+ if (caseDrawable != null) {
+ PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable);
+ pictureMarker.setWidth(64);
+ pictureMarker.setHeight(42);
+ pictureMarker.loadAsync(); //异步加载Marker,防止阻塞
+ GraphicsOverlay graphicsOverlay = new GraphicsOverlay();
+ ListenableList overlayGraphics = graphicsOverlay.getGraphics();
+ overlayGraphics.add(new Graphic(
+ new Point(bean.getLastLng(), bean.getLastLat(), SpatialReferences.getWgs84()),
+ pictureMarker)
+ );
+ graphicsOverlays.add(graphicsOverlay);
+ }
+ }
+ }
+
private final Handler.Callback callback = msg -> {
switch (msg.what) {
case 2021051901:
@@ -160,14 +170,14 @@
TextView lastTimeView = popupView.findViewById(R.id.lastTimeView);
userNameView.setText(dataBean.getPersonName());
deptNameView.setText(dataBean.getPersonDept());
- phoneNumberView.setText(dataBean.getPersonPhone());
- lastTimeView.setText(dataBean.getPointTime());
- QMUIPopups.popup(requireContext(), DeviceSizeUtil.dp2px(requireContext(), 250))
+ phoneNumberView.setText(dataBean.getPhoneNumber());
+ lastTimeView.setText(dataBean.getLastOnlineTime());
+ QMUIPopups.popup(requireContext(), (int) (DeviceSizeUtil.obtainScreenWidth(requireContext()) * 0.8))
.preferredDirection(QMUIPopup.DIRECTION_BOTTOM)
.view(popupView)
.edgeProtection(DeviceSizeUtil.dp2px(requireContext(), 20))
.dimAmount(0.6f)
- .animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER)
+ .animStyle(QMUIPopup.ANIM_AUTO)
.onDismiss(null)
.show(viewBinding.mapView);
break;
@@ -177,24 +187,4 @@
}
return true;
};
-
- private void addPictureMarker(List personBeans) {
- Bitmap caseBitmap;
- for (PointPersonBean bean : personBeans) {
- if (bean.isOnLine()) {
- caseBitmap = BitmapFactory.decodeResource(requireContext().getResources(), R.mipmap.on_line);
- } else {
- caseBitmap = BitmapFactory.decodeResource(requireContext().getResources(), R.mipmap.off_line);
- }
- BitmapDrawable caseDrawable = new BitmapDrawable(requireContext().getResources(), caseBitmap);
- PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable);
- pictureMarker.setWidth(64);
- pictureMarker.setHeight(42);
- pictureMarker.loadAsync(); //异步加载Marker,防止阻塞
- GraphicsOverlay graphicsOverlay = new GraphicsOverlay();
- ListenableList overlayGraphics = graphicsOverlay.getGraphics();
- overlayGraphics.add(new Graphic(bean.getPoint(), pictureMarker));
- graphicsOverlays.add(graphicsOverlay);
- }
- }
}
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
index de55bbf..2910126 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
@@ -22,7 +22,7 @@
import com.casic.dcms.mvvm.view.PackageCaseActivity;
import com.casic.dcms.mvvm.view.OvertimeCaseActivity;
import com.casic.dcms.mvvm.view.PackageCaseUploadActivity;
-import com.casic.dcms.mvvm.view.PersonOnlineActivity;
+import com.casic.dcms.mvvm.view.PersonActivity;
import com.casic.dcms.mvvm.view.PipelineManagerActivity;
import com.casic.dcms.mvvm.view.PublicToiletActivity;
import com.casic.dcms.mvvm.view.QuickCaseUploadActivity;
@@ -125,7 +125,7 @@
intent.setClass(requireContext(), DataAnalysisActivity.class);
break;
case "在岗人员":
- intent.setClass(requireContext(), PersonOnlineActivity.class);
+ intent.setClass(requireContext(), PersonActivity.class);
break;
case "案卷查询":
intent.setClass(requireContext(), SearchCaseActivity.class);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
index 197fef1..79d0c64 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
@@ -18,11 +18,11 @@
import com.amap.api.location.AMapLocation;
import com.casic.dcms.R;
import com.casic.dcms.base.BaseApplication;
+import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.databinding.FragmentLightMapBinding;
import com.casic.dcms.greendao.LightLocalBeanDao;
import com.casic.dcms.mvvm.model.ActionResultBean;
import com.casic.dcms.mvvm.model.LightMapBean;
-import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.mvvm.vm.LightViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.HttpRequestHelper;
@@ -34,6 +34,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -139,7 +140,7 @@
//创建底图、并设置底图图层
Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer());
arcGISMap.setBasemap(basemap);
- Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReference.create(4326));
+ Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示
viewBinding.mapView.setMap(arcGISMap);
@@ -152,7 +153,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
List streetLightBeans = lightLocalBeanDao.loadAll();
@@ -162,11 +163,11 @@
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
// if (Math.abs(longitude - Constant.DEFAULT_LNG) <= Constant.DELTA_LNG_75 &&
// Math.abs(latitude - Constant.DEFAULT_LAT) <= Constant.DELTA_LAT_75) {
-// pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
}
addPictureMarker(pointList);
@@ -196,7 +197,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(minusList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -205,14 +206,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List minusList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(minusList);
@@ -240,7 +241,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(expandList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -249,14 +250,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List expandList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(expandList);
@@ -277,14 +278,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List pointList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(pointList);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
new file mode 100644
index 0000000..907fbc9
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
@@ -0,0 +1,76 @@
+package com.casic.dcms.mvvm.view.fragment;
+
+import androidx.lifecycle.Observer;
+import androidx.lifecycle.ViewModelProvider;
+
+import com.casic.dcms.adapter.OnlinePersonAdapter;
+import com.casic.dcms.databinding.FragmentPersonListBinding;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
+import com.casic.dcms.mvvm.model.PersonBean;
+import com.casic.dcms.mvvm.vm.PersonViewModel;
+import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class PersonListFragment extends AndroidxBaseFragment {
+
+ private final Set deptSet = new HashSet<>();
+ private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
+ private PersonViewModel statusViewModel;
+ private OnlinePersonAdapter onlinePersonAdapter;
+ private List deptList = new ArrayList<>(); //部门名集合
+
+ @Override
+ protected void setupTopBarLayout() {
+
+ }
+
+ @Override
+ protected void initData() {
+ statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
+ statusViewModel.obtainPersonByStatus("", "", "");
+
+ onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
+ }
+
+ @Override
+ protected void initEvent() {
+ statusViewModel.personStatusModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(PersonStatusBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ List dataBeans = resultBean.getData();
+ deptList.clear();
+ for (PersonStatusBean.DataDTO bean : dataBeans) {
+ deptSet.add(bean.getDeptName());
+ }
+ //hashSet去重然后转List
+ deptList = new ArrayList<>(deptSet);
+ if (deptList.size() > 0) {
+ deptAndPersons.clear();
+ for (String title : deptList) {
+ List beanList = new ArrayList<>();
+ for (PersonStatusBean.DataDTO dataBean : dataBeans) {
+ if (title.equals(dataBean.getDeptName())) {
+ PersonBean personBean = new PersonBean();
+ personBean.setPersonDept(dataBean.getDeptName());
+ personBean.setPersonName(dataBean.getName());
+ personBean.setPersonPhone(dataBean.getPhone());
+ personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
+ personBean.setOnLine(dataBean.isOnLine());
+ beanList.add(personBean);
+ }
+ }
+ deptAndPersons.add(beanList);
+ }
+ onlinePersonAdapter.setData(deptList, deptAndPersons);
+ viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
+ }
+ }
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
deleted file mode 100644
index a6eb82a..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package com.casic.dcms.mvvm.view.fragment;
-
-import androidx.lifecycle.Observer;
-import androidx.lifecycle.ViewModelProvider;
-
-import com.casic.dcms.adapter.OnlinePersonAdapter;
-import com.casic.dcms.databinding.FragmentPersonListBinding;
-import com.casic.dcms.mvvm.model.OnlinePersonBean;
-import com.casic.dcms.mvvm.model.PersonBean;
-import com.casic.dcms.mvvm.vm.PersonViewModel;
-import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-public class PersonOnLineFragment extends AndroidxBaseFragment {
-
- private final Set deptSet = new HashSet<>();
- private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
- private PersonViewModel statusViewModel;
- private OnlinePersonAdapter onlinePersonAdapter;
- private List deptList = new ArrayList<>(); //部门名集合
-
- @Override
- protected void setupTopBarLayout() {
-
- }
-
- @Override
- protected void initData() {
- statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
- statusViewModel.obtainPersonByStatus("", "", "");
-
- onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
- }
-
- @Override
- protected void initEvent() {
- statusViewModel.personStatusModel.observe(this, new Observer() {
- @Override
- public void onChanged(OnlinePersonBean resultBean) {
- if (resultBean.getCode() == 200) {
- List dataBeans = resultBean.getData();
- deptList.clear();
- for (OnlinePersonBean.DataBean bean : dataBeans) {
- deptSet.add(bean.getDeptName());
- }
- //hashSet去重然后转List
- deptList = new ArrayList<>(deptSet);
- if (deptList.size() > 0) {
- deptAndPersons.clear();
- for (String title : deptList) {
- List beanList = new ArrayList<>();
- for (OnlinePersonBean.DataBean dataBean : dataBeans) {
- if (title.equals(dataBean.getDeptName())) {
- PersonBean personBean = new PersonBean();
- personBean.setPersonDept(dataBean.getDeptName());
- personBean.setPersonName(dataBean.getName());
- personBean.setPersonPhone(dataBean.getPhone());
- personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
- personBean.setOnLine(dataBean.isOnLine());
- beanList.add(personBean);
- }
- }
- deptAndPersons.add(beanList);
- }
- onlinePersonAdapter.setData(deptList, deptAndPersons);
- viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
- }
- }
- }
- });
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java
index d1d50e0..132e91f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnMapFragment.java
@@ -1,30 +1,29 @@
package com.casic.dcms.mvvm.view.fragment;
import android.annotation.SuppressLint;
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.widget.TextView;
+import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
import com.casic.dcms.R;
import com.casic.dcms.databinding.FragmentPersonMapBinding;
-import com.casic.dcms.mvvm.model.OnlinePersonBean;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
import com.casic.dcms.mvvm.model.PointPersonBean;
import com.casic.dcms.mvvm.vm.PersonViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.LocaleConstant;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.Point;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -51,7 +50,6 @@
private WeakReferenceHandler weakReferenceHandler;
private PersonViewModel statusViewModel;
private ListenableList graphicsOverlays;
- private List personBeans;
@Override
protected void setupTopBarLayout() {
@@ -60,6 +58,7 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
statusViewModel.obtainPersonByStatus("", "", "");
@@ -71,42 +70,35 @@
arcGISMap.setBasemap(baseMap);
viewBinding.mapView.setMap(arcGISMap);
graphicsOverlays = viewBinding.mapView.getGraphicsOverlays();
- weakReferenceHandler = new WeakReferenceHandler(callback);
}
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- statusViewModel.personStatusModel.observe(this, new Observer() {
+ List personBeans = new ArrayList<>();
+ statusViewModel.personStatusModel.observe(this, new Observer() {
@Override
- public void onChanged(OnlinePersonBean resultBean) {
+ public void onChanged(PersonStatusBean resultBean) {
if (resultBean.getCode() == 200) {
- List dataBeans = resultBean.getData();
- if (dataBeans.size() >= 1) {
- personBeans = new ArrayList<>();
- for (OnlinePersonBean.DataBean bean : dataBeans) {
- String lng = bean.getPositionLng();
- String lat = bean.getPositionLat();
- if (TextUtils.isEmpty(lng) || TextUtils.isEmpty(lat)) {
- Log.d(TAG, "经纬度异常");
- } else {
- PointPersonBean personBean = new PointPersonBean();
- personBean.setPersonName(bean.getName());
- personBean.setPersonPhone(bean.getPhone());
- personBean.setPersonDept(bean.getDeptName());
- personBean.setPointTime(bean.getLastTimeFmt());
- personBean.setOnLine(bean.isOnLine());
- personBean.setPoint(new com.esri.arcgisruntime.geometry.Point(
- Double.parseDouble(lng),
- Double.parseDouble(lat),
- SpatialReference.create(4326)
- ));
- personBeans.add(personBean);
+ List dataBeans = resultBean.getData();
+ if (!dataBeans.isEmpty()) {
+ for (PersonStatusBean.DataDTO bean : dataBeans) {
+ if (bean.isOnLine()) {
+ String lng = bean.getPositionLng();
+ String lat = bean.getPositionLat();
+ if (!TextUtils.isEmpty(lng) || !TextUtils.isEmpty(lat)) {
+ PointPersonBean personBean = new PointPersonBean();
+ personBean.setPersonName(bean.getName());
+ personBean.setPhoneNumber(bean.getPhone());
+ personBean.setPersonDept(bean.getDeptName());
+ personBean.setLastOnlineTime(bean.getLastTimeFmt());
+ personBean.setLastLng(Double.parseDouble(lng));
+ personBean.setLastLat(Double.parseDouble(lat));
+ personBeans.add(personBean);
+ }
}
}
addPictureMarker(personBeans);
- } else {
- EasyToast.show(requireContext(), "当前没有人员在线");
}
}
}
@@ -124,11 +116,10 @@
List overlayResultList = overlaysAsync.get();
if (!overlayResultList.isEmpty()) {
IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0);
- com.esri.arcgisruntime.geometry.Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter();
+ Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter();
for (PointPersonBean dataBean : personBeans) {
- com.esri.arcgisruntime.geometry.Point beanPoint = dataBean.getPoint();
- if (Math.abs(beanPoint.getX() - point.getX()) <= LocaleConstant.DELTA_LNG_10 &&
- Math.abs(beanPoint.getY() - point.getY()) <= LocaleConstant.DELTA_LAT_10
+ if (Math.abs(dataBean.getLastLng() - point.getX()) <= LocaleConstant.DELTA_LNG_10 &&
+ Math.abs(dataBean.getLastLat() - point.getY()) <= LocaleConstant.DELTA_LAT_10
) {
Message message = weakReferenceHandler.obtainMessage();
message.what = 2021051901;
@@ -149,6 +140,25 @@
});
}
+ private void addPictureMarker(List beans) {
+ for (PointPersonBean bean : beans) {
+ BitmapDrawable caseDrawable = (BitmapDrawable) ContextCompat.getDrawable(requireContext(), R.mipmap.on_line);
+ if (caseDrawable != null) {
+ PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable);
+ pictureMarker.setWidth(64);
+ pictureMarker.setHeight(42);
+ pictureMarker.loadAsync(); //异步加载Marker,防止阻塞
+ GraphicsOverlay graphicsOverlay = new GraphicsOverlay();
+ ListenableList overlayGraphics = graphicsOverlay.getGraphics();
+ overlayGraphics.add(new Graphic(
+ new Point(bean.getLastLng(), bean.getLastLat(), SpatialReferences.getWgs84()),
+ pictureMarker)
+ );
+ graphicsOverlays.add(graphicsOverlay);
+ }
+ }
+ }
+
private final Handler.Callback callback = msg -> {
switch (msg.what) {
case 2021051901:
@@ -160,14 +170,14 @@
TextView lastTimeView = popupView.findViewById(R.id.lastTimeView);
userNameView.setText(dataBean.getPersonName());
deptNameView.setText(dataBean.getPersonDept());
- phoneNumberView.setText(dataBean.getPersonPhone());
- lastTimeView.setText(dataBean.getPointTime());
- QMUIPopups.popup(requireContext(), DeviceSizeUtil.dp2px(requireContext(), 250))
+ phoneNumberView.setText(dataBean.getPhoneNumber());
+ lastTimeView.setText(dataBean.getLastOnlineTime());
+ QMUIPopups.popup(requireContext(), (int) (DeviceSizeUtil.obtainScreenWidth(requireContext()) * 0.8))
.preferredDirection(QMUIPopup.DIRECTION_BOTTOM)
.view(popupView)
.edgeProtection(DeviceSizeUtil.dp2px(requireContext(), 20))
.dimAmount(0.6f)
- .animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER)
+ .animStyle(QMUIPopup.ANIM_AUTO)
.onDismiss(null)
.show(viewBinding.mapView);
break;
@@ -177,24 +187,4 @@
}
return true;
};
-
- private void addPictureMarker(List personBeans) {
- Bitmap caseBitmap;
- for (PointPersonBean bean : personBeans) {
- if (bean.isOnLine()) {
- caseBitmap = BitmapFactory.decodeResource(requireContext().getResources(), R.mipmap.on_line);
- } else {
- caseBitmap = BitmapFactory.decodeResource(requireContext().getResources(), R.mipmap.off_line);
- }
- BitmapDrawable caseDrawable = new BitmapDrawable(requireContext().getResources(), caseBitmap);
- PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable);
- pictureMarker.setWidth(64);
- pictureMarker.setHeight(42);
- pictureMarker.loadAsync(); //异步加载Marker,防止阻塞
- GraphicsOverlay graphicsOverlay = new GraphicsOverlay();
- ListenableList overlayGraphics = graphicsOverlay.getGraphics();
- overlayGraphics.add(new Graphic(bean.getPoint(), pictureMarker));
- graphicsOverlays.add(graphicsOverlay);
- }
- }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/vm/PersonViewModel.java b/app/src/main/java/com/casic/dcms/mvvm/vm/PersonViewModel.java
index d50cd19..0493ba4 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/vm/PersonViewModel.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/vm/PersonViewModel.java
@@ -2,7 +2,7 @@
import androidx.lifecycle.MutableLiveData;
-import com.casic.dcms.mvvm.model.OnlinePersonBean;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
import com.casic.dcms.mvvm.model.ProcessPersonBean;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.retrofit.RetrofitServiceManager;
@@ -19,7 +19,7 @@
public class PersonViewModel extends BaseViewModel {
private final Gson gson = new Gson();
- public MutableLiveData personStatusModel = new MutableLiveData<>();
+ public MutableLiveData personStatusModel = new MutableLiveData<>();
public MutableLiveData processPersonModel = new MutableLiveData<>();
public void obtainPersonByStatus(String deptid, String roleTips, String isOnLine) {
@@ -41,7 +41,7 @@
String response = responseBody.string();
int responseCode = StringHelper.separateResponseCode(response);
if (responseCode == 200) {
- OnlinePersonBean resultBean = gson.fromJson(response, new TypeToken() {
+ PersonStatusBean resultBean = gson.fromJson(response, new TypeToken() {
}.getType());
personStatusModel.setValue(resultBean);
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 53acf2f..687c4c4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -35,6 +35,7 @@
+
@@ -45,14 +46,18 @@
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index e260b7d..0aef2eb 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -33,6 +33,10 @@
targetCompatibility JavaVersion.VERSION_1_8
}
+ packagingOptions {
+ exclude 'META-INF/DEPENDENCIES'
+ }
+
greendao {
schemaVersion 1//数据库版本号
targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录
@@ -90,7 +94,7 @@
//视频播放器
implementation 'cn.jzvd:jiaozivideoplayer:7.6.0'
//ArcGIS
- implementation 'com.esri.arcgisruntime:arcgis-android:100.10.0'
+ implementation 'com.esri.arcgisruntime:arcgis-android:100.14.0'
//上拉加载下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
//视频压缩
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d087ae2..ed1a0d3 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -79,7 +79,7 @@
-
+
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
deleted file mode 100644
index d450256..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/model/OnlinePersonBean.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package com.casic.dcms.mvvm.model;
-
-import java.util.List;
-
-public class OnlinePersonBean {
-
- private double code;
- private String message;
- private boolean success;
- private List data;
-
- public double getCode() {
- return code;
- }
-
- public void setCode(double code) {
- this.code = code;
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public boolean isSuccess() {
- return success;
- }
-
- public void setSuccess(boolean success) {
- this.success = success;
- }
-
- public List getData() {
- return data;
- }
-
- public void setData(List data) {
- this.data = data;
- }
-
- public static class DataBean {
-
- private String account;
- private String deptId;
- private String deptName;
- private String deviceName;
- private String id;
- private String imei;
- private String lastTime;
- private String lastTimeFmt;
- private String name;
- private String networkNumber;
- private boolean onLine;
- private String phone;
- private String positionLat;
- private String positionLng;
- private String targetId;
- private String userId;
-
- public String getAccount() {
- return account;
- }
-
- public void setAccount(String account) {
- this.account = account;
- }
-
- public String getDeptId() {
- return deptId;
- }
-
- public void setDeptId(String deptId) {
- this.deptId = deptId;
- }
-
- public String getDeptName() {
- return deptName;
- }
-
- public void setDeptName(String deptName) {
- this.deptName = deptName;
- }
-
- public String getDeviceName() {
- return deviceName;
- }
-
- public void setDeviceName(String deviceName) {
- this.deviceName = deviceName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getImei() {
- return imei;
- }
-
- public void setImei(String imei) {
- this.imei = imei;
- }
-
- public String getLastTime() {
- return lastTime;
- }
-
- public void setLastTime(String lastTime) {
- this.lastTime = lastTime;
- }
-
- public String getLastTimeFmt() {
- return lastTimeFmt;
- }
-
- public void setLastTimeFmt(String lastTimeFmt) {
- this.lastTimeFmt = lastTimeFmt;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getNetworkNumber() {
- return networkNumber;
- }
-
- public void setNetworkNumber(String networkNumber) {
- this.networkNumber = networkNumber;
- }
-
- public boolean isOnLine() {
- return onLine;
- }
-
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public String getPositionLat() {
- return positionLat;
- }
-
- public void setPositionLat(String positionLat) {
- this.positionLat = positionLat;
- }
-
- public String getPositionLng() {
- return positionLng;
- }
-
- public void setPositionLng(String positionLng) {
- this.positionLng = positionLng;
- }
-
- public String getTargetId() {
- return targetId;
- }
-
- public void setTargetId(String targetId) {
- this.targetId = targetId;
- }
-
- public String getUserId() {
- return userId;
- }
-
- public void setUserId(String userId) {
- this.userId = userId;
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
new file mode 100644
index 0000000..33dc06d
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PersonStatusBean.java
@@ -0,0 +1,199 @@
+package com.casic.dcms.mvvm.model;
+
+import java.util.List;
+
+public class PersonStatusBean {
+
+ private int code;
+ private List data;
+ private String message;
+ private boolean success;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public static class DataDTO {
+ private String account;
+ private String deptId;
+ private String deptName;
+ private String deviceName;
+ private String id;
+ private String imei;
+ private String lastTime;
+ private String lastTimeFmt;
+ private String name;
+ private String networkNumber;
+ private boolean onLine;
+ private String phone;
+ private String posLastTime;
+ private String positionLat;
+ private String positionLng;
+ private String targetId;
+ private String userId;
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getDeptId() {
+ return deptId;
+ }
+
+ public void setDeptId(String deptId) {
+ this.deptId = deptId;
+ }
+
+ public String getDeptName() {
+ return deptName;
+ }
+
+ public void setDeptName(String deptName) {
+ this.deptName = deptName;
+ }
+
+ public String getDeviceName() {
+ return deviceName;
+ }
+
+ public void setDeviceName(String deviceName) {
+ this.deviceName = deviceName;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getImei() {
+ return imei;
+ }
+
+ public void setImei(String imei) {
+ this.imei = imei;
+ }
+
+ public String getLastTime() {
+ return lastTime;
+ }
+
+ public void setLastTime(String lastTime) {
+ this.lastTime = lastTime;
+ }
+
+ public String getLastTimeFmt() {
+ return lastTimeFmt;
+ }
+
+ public void setLastTimeFmt(String lastTimeFmt) {
+ this.lastTimeFmt = lastTimeFmt;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getNetworkNumber() {
+ return networkNumber;
+ }
+
+ public void setNetworkNumber(String networkNumber) {
+ this.networkNumber = networkNumber;
+ }
+
+ public boolean isOnLine() {
+ return onLine;
+ }
+
+ public void setOnLine(boolean onLine) {
+ this.onLine = onLine;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getPosLastTime() {
+ return posLastTime;
+ }
+
+ public void setPosLastTime(String posLastTime) {
+ this.posLastTime = posLastTime;
+ }
+
+ public String getPositionLat() {
+ return positionLat;
+ }
+
+ public void setPositionLat(String positionLat) {
+ this.positionLat = positionLat;
+ }
+
+ public String getPositionLng() {
+ return positionLng;
+ }
+
+ public void setPositionLng(String positionLng) {
+ this.positionLng = positionLng;
+ }
+
+ public String getTargetId() {
+ return targetId;
+ }
+
+ public void setTargetId(String targetId) {
+ this.targetId = targetId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
index 7979a32..a4e5f5f 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/model/PointPersonBean.java
@@ -1,15 +1,12 @@
package com.casic.dcms.mvvm.model;
-import com.esri.arcgisruntime.geometry.Point;
-
public class PointPersonBean {
private String personName;
- private String personPhone;
+ private String phoneNumber;
private String personDept;
- private String pointTime;
- private Point point;
- private boolean onLine;
-
+ private String lastOnlineTime;
+ private double lastLat;
+ private double lastLng;
public String getPersonName() {
return personName;
@@ -19,12 +16,12 @@
this.personName = personName;
}
- public String getPersonPhone() {
- return personPhone;
+ public String getPhoneNumber() {
+ return phoneNumber;
}
- public void setPersonPhone(String personPhone) {
- this.personPhone = personPhone;
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
}
public String getPersonDept() {
@@ -35,27 +32,27 @@
this.personDept = personDept;
}
- public String getPointTime() {
- return pointTime;
+ public String getLastOnlineTime() {
+ return lastOnlineTime;
}
- public void setPointTime(String pointTime) {
- this.pointTime = pointTime;
+ public void setLastOnlineTime(String lastOnlineTime) {
+ this.lastOnlineTime = lastOnlineTime;
}
- public Point getPoint() {
- return point;
+ public double getLastLat() {
+ return lastLat;
}
- public void setPoint(Point point) {
- this.point = point;
+ public void setLastLat(double lastLat) {
+ this.lastLat = lastLat;
}
- public boolean isOnLine() {
- return onLine;
+ public double getLastLng() {
+ return lastLng;
}
- public void setOnLine(boolean onLine) {
- this.onLine = onLine;
+ public void setLastLng(double lastLng) {
+ this.lastLng = lastLng;
}
}
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
index fd70872..a9430ac 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/ArcGISMapActivity.java
@@ -32,6 +32,7 @@
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -127,7 +128,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
- Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReference.create(4326));
+ Point point = new Point(aMapLocation.getLongitude(), aMapLocation.getLatitude(), SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
}
@@ -467,7 +468,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
index 005b947..6e423ee 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/CaseOnMapActivity.java
@@ -28,7 +28,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -123,7 +123,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_CHECK);
@@ -152,7 +152,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_HANDLE);
@@ -181,7 +181,7 @@
}
relatePointToCase(list, bean.getId(), lng, lat);
- Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReference.create(4326));
+ Point point = new Point(Double.parseDouble(lng), Double.parseDouble(lat), SpatialReferences.getWgs84());
pointList.add(point);
}
addPictureMarker(pointList, LocaleConstant.CASE_VERIFY);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
index 04c9098..dc960ed 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/DisplayMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -77,7 +77,7 @@
/**
* [116.598359, 28.247870, 0.000000, NaN] SR: 4326
*/
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0); //标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -96,7 +96,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
new file mode 100644
index 0000000..42d2dc0
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PersonActivity.java
@@ -0,0 +1,53 @@
+package com.casic.dcms.mvvm.view;
+
+import android.widget.LinearLayout;
+
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
+import com.casic.dcms.R;
+import com.casic.dcms.adapter.SubViewPagerAdapter;
+import com.casic.dcms.databinding.ActivityPersonBinding;
+import com.casic.dcms.mvvm.view.fragment.PersonListFragment;
+import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
+import com.gyf.immersionbar.ImmersionBar;
+import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
+import com.pengxh.androidx.lite.utils.DeviceSizeUtil;
+import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PersonActivity extends AndroidxBaseActivity {
+
+ private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
+
+ @Override
+ protected void setupTopBarLayout() {
+ ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
+ ImmersionBar.with(this).statusBarDarkFont(false).init();
+
+ viewBinding.titleBarLayout.titleView.setText("在岗人员");
+ viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
+ }
+
+ @Override
+ protected void initData() {
+ List fragmentList = new ArrayList<>();
+ fragmentList.add(new PersonOnMapFragment());
+ fragmentList.add(new PersonListFragment());
+ SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
+ viewBinding.personViewPager.setAdapter(adapter);
+ //绑定TabLayout
+ viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
+ LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
+ linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
+ linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
+ linearLayout.setDividerPadding(DeviceSizeUtil.dp2px(this, 12.5f));
+ }
+
+ @Override
+ protected void initEvent() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
deleted file mode 100644
index 0b8d0da..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PersonOnlineActivity.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.casic.dcms.mvvm.view;
-
-import android.widget.LinearLayout;
-
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
-import com.casic.dcms.R;
-import com.casic.dcms.adapter.SubViewPagerAdapter;
-import com.casic.dcms.databinding.ActivityOnlineBinding;
-import com.casic.dcms.mvvm.view.fragment.PersonOnLineFragment;
-import com.casic.dcms.mvvm.view.fragment.PersonOnMapFragment;
-import com.gyf.immersionbar.ImmersionBar;
-import com.pengxh.androidx.lite.base.AndroidxBaseActivity;
-import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class PersonOnlineActivity extends AndroidxBaseActivity {
-
- private final String[] pageTitles = new String[]{"人员分布", "人员列表"};
-
- @Override
- protected void setupTopBarLayout() {
- ImmerseStatusBarUtil.setColor(this, ContextCompat.getColor(this, R.color.mainThemeColor));
- ImmersionBar.with(this).statusBarDarkFont(false).init();
-
- viewBinding.titleBarLayout.titleView.setText("在岗人员");
- viewBinding.titleBarLayout.leftBackView.setOnClickListener(v -> finish());
- }
-
- @Override
- protected void initData() {
- List fragmentList = new ArrayList<>();
- fragmentList.add(new PersonOnMapFragment());
- fragmentList.add(new PersonOnLineFragment());
- SubViewPagerAdapter adapter = new SubViewPagerAdapter(getSupportFragmentManager(), pageTitles, fragmentList);
- viewBinding.personViewPager.setAdapter(adapter);
- //绑定TabLayout
- viewBinding.personTabLayout.setupWithViewPager(viewBinding.personViewPager);
- LinearLayout linearLayout = (LinearLayout) viewBinding.personTabLayout.getChildAt(0);
- linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
- linearLayout.setDividerDrawable(ContextCompat.getDrawable(this, R.drawable.layout_divider_vertical));
- }
-
- @Override
- protected void initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
index f016ef4..ba4be05 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java
@@ -35,7 +35,7 @@
import com.casic.dcms.widgets.SignInDialog;
import com.esri.arcgisruntime.data.ServiceFeatureTable;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.layers.FeatureLayer;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
@@ -97,7 +97,7 @@
viewBinding.locationStreetView.setTextColor(Color.RED);
} else {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
@@ -279,7 +279,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 1200);//标注到指定经纬度并放大地图显示
//添加图片Marker
addPictureMarker(point);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
index 4b18620..a17dce9 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/WorkerOnMapActivity.java
@@ -23,7 +23,7 @@
import com.casic.dcms.utils.callback.ILocationListener;
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
-import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -83,7 +83,7 @@
@SuppressLint("ClickableViewAccessibility")
@Override
protected void initEvent() {
- Point point = new Point(lng, lat, SpatialReference.create(4326));
+ Point point = new Point(lng, lat, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 64000.0); //标注到指定经纬度并放大地图显示
addPictureMarker(point);
viewBinding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(this, viewBinding.mapView) {
@@ -137,7 +137,7 @@
@Override
public void onAMapLocationGet(AMapLocation aMapLocation) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
OtherUtils.dismissLoadingDialog();
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
index de55bbf..2910126 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java
@@ -22,7 +22,7 @@
import com.casic.dcms.mvvm.view.PackageCaseActivity;
import com.casic.dcms.mvvm.view.OvertimeCaseActivity;
import com.casic.dcms.mvvm.view.PackageCaseUploadActivity;
-import com.casic.dcms.mvvm.view.PersonOnlineActivity;
+import com.casic.dcms.mvvm.view.PersonActivity;
import com.casic.dcms.mvvm.view.PipelineManagerActivity;
import com.casic.dcms.mvvm.view.PublicToiletActivity;
import com.casic.dcms.mvvm.view.QuickCaseUploadActivity;
@@ -125,7 +125,7 @@
intent.setClass(requireContext(), DataAnalysisActivity.class);
break;
case "在岗人员":
- intent.setClass(requireContext(), PersonOnlineActivity.class);
+ intent.setClass(requireContext(), PersonActivity.class);
break;
case "案卷查询":
intent.setClass(requireContext(), SearchCaseActivity.class);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
index 197fef1..79d0c64 100644
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/LightOnMapFragment.java
@@ -18,11 +18,11 @@
import com.amap.api.location.AMapLocation;
import com.casic.dcms.R;
import com.casic.dcms.base.BaseApplication;
+import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.databinding.FragmentLightMapBinding;
import com.casic.dcms.greendao.LightLocalBeanDao;
import com.casic.dcms.mvvm.model.ActionResultBean;
import com.casic.dcms.mvvm.model.LightMapBean;
-import com.casic.dcms.bean.LightLocalBean;
import com.casic.dcms.mvvm.vm.LightViewModel;
import com.casic.dcms.utils.ArcGisMapCreator;
import com.casic.dcms.utils.HttpRequestHelper;
@@ -34,6 +34,7 @@
import com.esri.arcgisruntime.concurrent.ListenableFuture;
import com.esri.arcgisruntime.geometry.Point;
import com.esri.arcgisruntime.geometry.SpatialReference;
+import com.esri.arcgisruntime.geometry.SpatialReferences;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.BasemapStyle;
@@ -139,7 +140,7 @@
//创建底图、并设置底图图层
Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer());
arcGISMap.setBasemap(basemap);
- Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReference.create(4326));
+ Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示
viewBinding.mapView.setMap(arcGISMap);
@@ -152,7 +153,7 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
List streetLightBeans = lightLocalBeanDao.loadAll();
@@ -162,11 +163,11 @@
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
// if (Math.abs(longitude - Constant.DEFAULT_LNG) <= Constant.DELTA_LNG_75 &&
// Math.abs(latitude - Constant.DEFAULT_LAT) <= Constant.DELTA_LAT_75) {
-// pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
}
addPictureMarker(pointList);
@@ -196,7 +197,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(minusList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -205,14 +206,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List minusList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- minusList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(minusList);
@@ -240,7 +241,7 @@
// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) {
// continue;
// }
-// expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
// }
// addPictureMarker(expandList);
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@@ -249,14 +250,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List expandList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= DELTA_L &&
Math.abs(latitude - gcjToWgs[1]) <= DELTA_L) {
- expandList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(expandList);
@@ -277,14 +278,14 @@
public void onAMapLocationGet(AMapLocation aMapLocation) {
if (aMapLocation != null) {
double[] gcjToWgs = LocationHelper.gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude());
- Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReference.create(4326));
+ Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
List pointList = new ArrayList<>();
for (LightLocalBean bean : lightLocalBeanDao.loadAll()) {
double longitude = bean.getLongitude();
double latitude = bean.getLatitude();
if (Math.abs(longitude - gcjToWgs[0]) <= LocaleConstant.DELTA_LNG_75 &&
Math.abs(latitude - gcjToWgs[1]) <= LocaleConstant.DELTA_LAT_75) {
- pointList.add(new Point(longitude, latitude, SpatialReference.create(4326)));
+ pointList.add(new Point(longitude, latitude, SpatialReferences.getWgs84()));
}
}
addPictureMarker(pointList);
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
new file mode 100644
index 0000000..907fbc9
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonListFragment.java
@@ -0,0 +1,76 @@
+package com.casic.dcms.mvvm.view.fragment;
+
+import androidx.lifecycle.Observer;
+import androidx.lifecycle.ViewModelProvider;
+
+import com.casic.dcms.adapter.OnlinePersonAdapter;
+import com.casic.dcms.databinding.FragmentPersonListBinding;
+import com.casic.dcms.mvvm.model.PersonStatusBean;
+import com.casic.dcms.mvvm.model.PersonBean;
+import com.casic.dcms.mvvm.vm.PersonViewModel;
+import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+public class PersonListFragment extends AndroidxBaseFragment {
+
+ private final Set deptSet = new HashSet<>();
+ private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
+ private PersonViewModel statusViewModel;
+ private OnlinePersonAdapter onlinePersonAdapter;
+ private List deptList = new ArrayList<>(); //部门名集合
+
+ @Override
+ protected void setupTopBarLayout() {
+
+ }
+
+ @Override
+ protected void initData() {
+ statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
+ statusViewModel.obtainPersonByStatus("", "", "");
+
+ onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
+ }
+
+ @Override
+ protected void initEvent() {
+ statusViewModel.personStatusModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(PersonStatusBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ List dataBeans = resultBean.getData();
+ deptList.clear();
+ for (PersonStatusBean.DataDTO bean : dataBeans) {
+ deptSet.add(bean.getDeptName());
+ }
+ //hashSet去重然后转List
+ deptList = new ArrayList<>(deptSet);
+ if (deptList.size() > 0) {
+ deptAndPersons.clear();
+ for (String title : deptList) {
+ List beanList = new ArrayList<>();
+ for (PersonStatusBean.DataDTO dataBean : dataBeans) {
+ if (title.equals(dataBean.getDeptName())) {
+ PersonBean personBean = new PersonBean();
+ personBean.setPersonDept(dataBean.getDeptName());
+ personBean.setPersonName(dataBean.getName());
+ personBean.setPersonPhone(dataBean.getPhone());
+ personBean.setLastTimeFmt(dataBean.getLastTimeFmt());
+ personBean.setOnLine(dataBean.isOnLine());
+ beanList.add(personBean);
+ }
+ }
+ deptAndPersons.add(beanList);
+ }
+ onlinePersonAdapter.setData(deptList, deptAndPersons);
+ viewBinding.deptTreeView.setAdapter(onlinePersonAdapter);
+ }
+ }
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
deleted file mode 100644
index a6eb82a..0000000
--- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/PersonOnLineFragment.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package com.casic.dcms.mvvm.view.fragment;
-
-import androidx.lifecycle.Observer;
-import androidx.lifecycle.ViewModelProvider;
-
-import com.casic.dcms.adapter.OnlinePersonAdapter;
-import com.casic.dcms.databinding.FragmentPersonListBinding;
-import com.casic.dcms.mvvm.model.OnlinePersonBean;
-import com.casic.dcms.mvvm.model.PersonBean;
-import com.casic.dcms.mvvm.vm.PersonViewModel;
-import com.pengxh.androidx.lite.base.AndroidxBaseFragment;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-public class PersonOnLineFragment extends AndroidxBaseFragment {
-
- private final Set deptSet = new HashSet<>();
- private final List> deptAndPersons = new ArrayList<>(); //个人信息集合的集合
- private PersonViewModel statusViewModel;
- private OnlinePersonAdapter onlinePersonAdapter;
- private List deptList = new ArrayList<>(); //部门名集合
-
- @Override
- protected void setupTopBarLayout() {
-
- }
-
- @Override
- protected void initData() {
- statusViewModel = new ViewModelProvider(this).get(PersonViewModel.class);
- statusViewModel.obtainPersonByStatus("", "", "");
-
- onlinePersonAdapter = new OnlinePersonAdapter(requireContext());
- }
-
- @Override
- protected void initEvent() {
- statusViewModel.personStatusModel.observe(this, new Observer