diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light_map.xml b/app/src/main/res/layout/activity_street_light_map.xml deleted file mode 100644 index 3a1aaad..0000000 --- a/app/src/main/res/layout/activity_street_light_map.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light_map.xml b/app/src/main/res/layout/activity_street_light_map.xml deleted file mode 100644 index 3a1aaad..0000000 --- a/app/src/main/res/layout/activity_street_light_map.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_lamp_box_detail.xml b/app/src/main/res/layout/dialog_lamp_box_detail.xml new file mode 100644 index 0000000..dae3783 --- /dev/null +++ b/app/src/main/res/layout/dialog_lamp_box_detail.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light_map.xml b/app/src/main/res/layout/activity_street_light_map.xml deleted file mode 100644 index 3a1aaad..0000000 --- a/app/src/main/res/layout/activity_street_light_map.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_lamp_box_detail.xml b/app/src/main/res/layout/dialog_lamp_box_detail.xml new file mode 100644 index 0000000..dae3783 --- /dev/null +++ b/app/src/main/res/layout/dialog_lamp_box_detail.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_light_detail.xml b/app/src/main/res/layout/dialog_light_detail.xml deleted file mode 100644 index 0b5a213..0000000 --- a/app/src/main/res/layout/dialog_light_detail.xml +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light_map.xml b/app/src/main/res/layout/activity_street_light_map.xml deleted file mode 100644 index 3a1aaad..0000000 --- a/app/src/main/res/layout/activity_street_light_map.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_lamp_box_detail.xml b/app/src/main/res/layout/dialog_lamp_box_detail.xml new file mode 100644 index 0000000..dae3783 --- /dev/null +++ b/app/src/main/res/layout/dialog_lamp_box_detail.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_light_detail.xml b/app/src/main/res/layout/dialog_light_detail.xml deleted file mode 100644 index 0b5a213..0000000 --- a/app/src/main/res/layout/dialog_light_detail.xml +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_lamp_box_rv_l.xml b/app/src/main/res/layout/item_lamp_box_rv_l.xml new file mode 100644 index 0000000..53b4d9d --- /dev/null +++ b/app/src/main/res/layout/item_lamp_box_rv_l.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light_map.xml b/app/src/main/res/layout/activity_street_light_map.xml deleted file mode 100644 index 3a1aaad..0000000 --- a/app/src/main/res/layout/activity_street_light_map.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_lamp_box_detail.xml b/app/src/main/res/layout/dialog_lamp_box_detail.xml new file mode 100644 index 0000000..dae3783 --- /dev/null +++ b/app/src/main/res/layout/dialog_lamp_box_detail.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_light_detail.xml b/app/src/main/res/layout/dialog_light_detail.xml deleted file mode 100644 index 0b5a213..0000000 --- a/app/src/main/res/layout/dialog_light_detail.xml +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_lamp_box_rv_l.xml b/app/src/main/res/layout/item_lamp_box_rv_l.xml new file mode 100644 index 0000000..53b4d9d --- /dev/null +++ b/app/src/main/res/layout/item_lamp_box_rv_l.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_light_recycleview.xml b/app/src/main/res/layout/item_light_recycleview.xml deleted file mode 100644 index 637861f..0000000 --- a/app/src/main/res/layout/item_light_recycleview.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light_map.xml b/app/src/main/res/layout/activity_street_light_map.xml deleted file mode 100644 index 3a1aaad..0000000 --- a/app/src/main/res/layout/activity_street_light_map.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_lamp_box_detail.xml b/app/src/main/res/layout/dialog_lamp_box_detail.xml new file mode 100644 index 0000000..dae3783 --- /dev/null +++ b/app/src/main/res/layout/dialog_lamp_box_detail.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_light_detail.xml b/app/src/main/res/layout/dialog_light_detail.xml deleted file mode 100644 index 0b5a213..0000000 --- a/app/src/main/res/layout/dialog_light_detail.xml +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_lamp_box_rv_l.xml b/app/src/main/res/layout/item_lamp_box_rv_l.xml new file mode 100644 index 0000000..53b4d9d --- /dev/null +++ b/app/src/main/res/layout/item_lamp_box_rv_l.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_light_recycleview.xml b/app/src/main/res/layout/item_light_recycleview.xml deleted file mode 100644 index 637861f..0000000 --- a/app/src/main/res/layout/item_light_recycleview.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/popu_lamp_box_on_map.xml b/app/src/main/res/layout/popu_lamp_box_on_map.xml new file mode 100644 index 0000000..a5567d9 --- /dev/null +++ b/app/src/main/res/layout/popu_lamp_box_on_map.xml @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d2cfe75..4e7a3f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -115,8 +115,6 @@ implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0' //视频压缩 implementation 'com.zolad:videoslimmer:1.0.0' - //问题跟踪 - implementation 'com.tencent.bugly:crashreport:4.1.9.3' //ZBar扫一扫(综合Java和C++扫码) implementation 'cn.bertsir.zbarLibary:zbarlibary:1.4.2' //定位功能 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d329792..d34c5fc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -123,8 +123,8 @@ - - + + diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index da3d68f..8be650b 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -13,7 +13,6 @@ import com.igexin.sdk.PushManager; import com.pengxh.androidx.lite.utils.SaveKeyValues; import com.qmuiteam.qmui.arch.QMUISwipeBackActivityManager; -import com.tencent.bugly.crashreport.CrashReport; public class BaseApplication extends Application { @@ -39,7 +38,6 @@ } }); initDataBase(); - CrashReport.initCrashReport(this, getString(R.string.bugly_app_id), true); } /** diff --git a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java b/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java deleted file mode 100644 index 68f360b..0000000 --- a/app/src/main/java/com/casic/dcms/bean/LightLocalBean.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.casic.dcms.bean; - -import org.greenrobot.greendao.annotation.Entity; -import org.greenrobot.greendao.annotation.Generated; -import org.greenrobot.greendao.annotation.Id; - -/** - * 路灯数据本地持久化实体类 - */ -@Entity -public class LightLocalBean { - @Id(autoincrement = true) - private Long id;//主键ID - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - @Generated(hash = 58218675) - public LightLocalBean(Long id, String controllerCode, String lampCode, - String lampId, double latitude, String deptId, String statusName, - String lampName, String latestTime, double longitude, String status) { - this.id = id; - this.controllerCode = controllerCode; - this.lampCode = lampCode; - this.lampId = lampId; - this.latitude = latitude; - this.deptId = deptId; - this.statusName = statusName; - this.lampName = lampName; - this.latestTime = latestTime; - this.longitude = longitude; - this.status = status; - } - - @Generated(hash = 1396711556) - public LightLocalBean() { - } - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getControllerCode() { - return this.controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return this.lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return this.lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return this.latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return this.deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return this.statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return this.lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return this.latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return this.longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return this.status; - } - - public void setStatus(String status) { - this.status = status; - } -} diff --git a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java index 97254a7..13487f4 100644 --- a/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/fragment/HomePageFragment.java @@ -29,7 +29,7 @@ import com.casic.dcms.view.map.CaseOnMapActivity; import com.casic.dcms.view.pipeline.PipelineManagerActivity; import com.casic.dcms.view.statistics.DataAnalysisActivity; -import com.casic.dcms.view.streetlight.StreetlightManagerActivity; +import com.casic.dcms.view.streetlight.LampBoxManagerActivity; import com.casic.dcms.view.toilet.PublicToiletActivity; import com.casic.dcms.view.upload.BriefCaseActivity; import com.casic.dcms.view.upload.BusinessCaseActivity; @@ -149,7 +149,7 @@ intent.setClass(requireContext(), BridgeMaintainActivity.class); break; case "路灯管理": - intent.setClass(requireContext(), StreetlightManagerActivity.class); + intent.setClass(requireContext(), LampBoxManagerActivity.class); break; case "管网管理": intent.setClass(requireContext(), PipelineManagerActivity.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java index cffd0b7..0bf806b 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoMaster.java @@ -6,9 +6,9 @@ import android.util.Log; import org.greenrobot.greendao.AbstractDaoMaster; -import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.database.Database; import org.greenrobot.greendao.database.DatabaseOpenHelper; +import org.greenrobot.greendao.database.StandardDatabase; import org.greenrobot.greendao.identityscope.IdentityScopeType; @@ -21,7 +21,6 @@ /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { - LightLocalBeanDao.createTable(db, ifNotExists); MapConfigBeanDao.createTable(db, ifNotExists); NoticeLocaleBeanDao.createTable(db, ifNotExists); ToiletListBeanDao.createTable(db, ifNotExists); @@ -29,7 +28,6 @@ /** Drops underlying database table using DAOs. */ public static void dropAllTables(Database db, boolean ifExists) { - LightLocalBeanDao.dropTable(db, ifExists); MapConfigBeanDao.dropTable(db, ifExists); NoticeLocaleBeanDao.dropTable(db, ifExists); ToiletListBeanDao.dropTable(db, ifExists); @@ -51,7 +49,6 @@ public DaoMaster(Database db) { super(db, SCHEMA_VERSION); - registerDaoClass(LightLocalBeanDao.class); registerDaoClass(MapConfigBeanDao.class); registerDaoClass(NoticeLocaleBeanDao.class); registerDaoClass(ToiletListBeanDao.class); diff --git a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java index 5136f8f..cc981d3 100644 --- a/app/src/main/java/com/casic/dcms/greendao/DaoSession.java +++ b/app/src/main/java/com/casic/dcms/greendao/DaoSession.java @@ -1,6 +1,8 @@ package com.casic.dcms.greendao; -import java.util.Map; +import com.casic.dcms.bean.MapConfigBean; +import com.casic.dcms.bean.NoticeLocaleBean; +import com.casic.dcms.bean.ToiletListBean; import org.greenrobot.greendao.AbstractDao; import org.greenrobot.greendao.AbstractDaoSession; @@ -8,15 +10,7 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType; import org.greenrobot.greendao.internal.DaoConfig; -import com.casic.dcms.bean.LightLocalBean; -import com.casic.dcms.bean.MapConfigBean; -import com.casic.dcms.bean.NoticeLocaleBean; -import com.casic.dcms.bean.ToiletListBean; - -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.greendao.MapConfigBeanDao; -import com.casic.dcms.greendao.NoticeLocaleBeanDao; -import com.casic.dcms.greendao.ToiletListBeanDao; +import java.util.Map; // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. @@ -27,12 +21,10 @@ */ public class DaoSession extends AbstractDaoSession { - private final DaoConfig lightLocalBeanDaoConfig; private final DaoConfig mapConfigBeanDaoConfig; private final DaoConfig noticeLocaleBeanDaoConfig; private final DaoConfig toiletListBeanDaoConfig; - private final LightLocalBeanDao lightLocalBeanDao; private final MapConfigBeanDao mapConfigBeanDao; private final NoticeLocaleBeanDao noticeLocaleBeanDao; private final ToiletListBeanDao toiletListBeanDao; @@ -41,9 +33,6 @@ daoConfigMap) { super(db); - lightLocalBeanDaoConfig = daoConfigMap.get(LightLocalBeanDao.class).clone(); - lightLocalBeanDaoConfig.initIdentityScope(type); - mapConfigBeanDaoConfig = daoConfigMap.get(MapConfigBeanDao.class).clone(); mapConfigBeanDaoConfig.initIdentityScope(type); @@ -53,28 +42,21 @@ toiletListBeanDaoConfig = daoConfigMap.get(ToiletListBeanDao.class).clone(); toiletListBeanDaoConfig.initIdentityScope(type); - lightLocalBeanDao = new LightLocalBeanDao(lightLocalBeanDaoConfig, this); mapConfigBeanDao = new MapConfigBeanDao(mapConfigBeanDaoConfig, this); noticeLocaleBeanDao = new NoticeLocaleBeanDao(noticeLocaleBeanDaoConfig, this); toiletListBeanDao = new ToiletListBeanDao(toiletListBeanDaoConfig, this); - registerDao(LightLocalBean.class, lightLocalBeanDao); registerDao(MapConfigBean.class, mapConfigBeanDao); registerDao(NoticeLocaleBean.class, noticeLocaleBeanDao); registerDao(ToiletListBean.class, toiletListBeanDao); } public void clear() { - lightLocalBeanDaoConfig.clearIdentityScope(); mapConfigBeanDaoConfig.clearIdentityScope(); noticeLocaleBeanDaoConfig.clearIdentityScope(); toiletListBeanDaoConfig.clearIdentityScope(); } - public LightLocalBeanDao getLightLocalBeanDao() { - return lightLocalBeanDao; - } - public MapConfigBeanDao getMapConfigBeanDao() { return mapConfigBeanDao; } diff --git a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java b/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java deleted file mode 100644 index 571ff40..0000000 --- a/app/src/main/java/com/casic/dcms/greendao/LightLocalBeanDao.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.casic.dcms.greendao; - -import android.database.Cursor; -import android.database.sqlite.SQLiteStatement; - -import org.greenrobot.greendao.AbstractDao; -import org.greenrobot.greendao.Property; -import org.greenrobot.greendao.internal.DaoConfig; -import org.greenrobot.greendao.database.Database; -import org.greenrobot.greendao.database.DatabaseStatement; - -import com.casic.dcms.bean.LightLocalBean; - -// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. -/** - * DAO for table "LIGHT_LOCAL_BEAN". -*/ -public class LightLocalBeanDao extends AbstractDao { - - public static final String TABLENAME = "LIGHT_LOCAL_BEAN"; - - /** - * Properties of entity LightLocalBean.
- * Can be used for QueryBuilder and for referencing column names. - */ - public static class Properties { - public final static Property Id = new Property(0, Long.class, "id", true, "_id"); - public final static Property ControllerCode = new Property(1, String.class, "controllerCode", false, "CONTROLLER_CODE"); - public final static Property LampCode = new Property(2, String.class, "lampCode", false, "LAMP_CODE"); - public final static Property LampId = new Property(3, String.class, "lampId", false, "LAMP_ID"); - public final static Property Latitude = new Property(4, double.class, "latitude", false, "LATITUDE"); - public final static Property DeptId = new Property(5, String.class, "deptId", false, "DEPT_ID"); - public final static Property StatusName = new Property(6, String.class, "statusName", false, "STATUS_NAME"); - public final static Property LampName = new Property(7, String.class, "lampName", false, "LAMP_NAME"); - public final static Property LatestTime = new Property(8, String.class, "latestTime", false, "LATEST_TIME"); - public final static Property Longitude = new Property(9, double.class, "longitude", false, "LONGITUDE"); - public final static Property Status = new Property(10, String.class, "status", false, "STATUS"); - } - - - public LightLocalBeanDao(DaoConfig config) { - super(config); - } - - public LightLocalBeanDao(DaoConfig config, DaoSession daoSession) { - super(config, daoSession); - } - - /** Creates the underlying database table. */ - public static void createTable(Database db, boolean ifNotExists) { - String constraint = ifNotExists? "IF NOT EXISTS ": ""; - db.execSQL("CREATE TABLE " + constraint + "\"LIGHT_LOCAL_BEAN\" (" + // - "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id - "\"CONTROLLER_CODE\" TEXT," + // 1: controllerCode - "\"LAMP_CODE\" TEXT," + // 2: lampCode - "\"LAMP_ID\" TEXT," + // 3: lampId - "\"LATITUDE\" REAL NOT NULL ," + // 4: latitude - "\"DEPT_ID\" TEXT," + // 5: deptId - "\"STATUS_NAME\" TEXT," + // 6: statusName - "\"LAMP_NAME\" TEXT," + // 7: lampName - "\"LATEST_TIME\" TEXT," + // 8: latestTime - "\"LONGITUDE\" REAL NOT NULL ," + // 9: longitude - "\"STATUS\" TEXT);"); // 10: status - } - - /** Drops the underlying database table. */ - public static void dropTable(Database db, boolean ifExists) { - String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"LIGHT_LOCAL_BEAN\""; - db.execSQL(sql); - } - - @Override - protected final void bindValues(DatabaseStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - protected final void bindValues(SQLiteStatement stmt, LightLocalBean entity) { - stmt.clearBindings(); - - Long id = entity.getId(); - if (id != null) { - stmt.bindLong(1, id); - } - - String controllerCode = entity.getControllerCode(); - if (controllerCode != null) { - stmt.bindString(2, controllerCode); - } - - String lampCode = entity.getLampCode(); - if (lampCode != null) { - stmt.bindString(3, lampCode); - } - - String lampId = entity.getLampId(); - if (lampId != null) { - stmt.bindString(4, lampId); - } - stmt.bindDouble(5, entity.getLatitude()); - - String deptId = entity.getDeptId(); - if (deptId != null) { - stmt.bindString(6, deptId); - } - - String statusName = entity.getStatusName(); - if (statusName != null) { - stmt.bindString(7, statusName); - } - - String lampName = entity.getLampName(); - if (lampName != null) { - stmt.bindString(8, lampName); - } - - String latestTime = entity.getLatestTime(); - if (latestTime != null) { - stmt.bindString(9, latestTime); - } - stmt.bindDouble(10, entity.getLongitude()); - - String status = entity.getStatus(); - if (status != null) { - stmt.bindString(11, status); - } - } - - @Override - public Long readKey(Cursor cursor, int offset) { - return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); - } - - @Override - public LightLocalBean readEntity(Cursor cursor, int offset) { - LightLocalBean entity = new LightLocalBean( // - cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id - cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // controllerCode - cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // lampCode - cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3), // lampId - cursor.getDouble(offset + 4), // latitude - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // deptId - cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // statusName - cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // lampName - cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // latestTime - cursor.getDouble(offset + 9), // longitude - cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10) // status - ); - return entity; - } - - @Override - public void readEntity(Cursor cursor, LightLocalBean entity, int offset) { - entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); - entity.setControllerCode(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); - entity.setLampCode(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2)); - entity.setLampId(cursor.isNull(offset + 3) ? null : cursor.getString(offset + 3)); - entity.setLatitude(cursor.getDouble(offset + 4)); - entity.setDeptId(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); - entity.setStatusName(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); - entity.setLampName(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); - entity.setLatestTime(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8)); - entity.setLongitude(cursor.getDouble(offset + 9)); - entity.setStatus(cursor.isNull(offset + 10) ? null : cursor.getString(offset + 10)); - } - - @Override - protected final Long updateKeyAfterInsert(LightLocalBean entity, long rowId) { - entity.setId(rowId); - return rowId; - } - - @Override - public Long getKey(LightLocalBean entity) { - if(entity != null) { - return entity.getId(); - } else { - return null; - } - } - - @Override - public boolean hasKey(LightLocalBean entity) { - return entity.getId() != null; - } - - @Override - protected final boolean isEntityUpdateable() { - return true; - } - -} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java new file mode 100644 index 0000000..43c0d8c --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxDetailBean.java @@ -0,0 +1,305 @@ +package com.casic.dcms.model; + +public class LampBoxDetailBean { + + private int code; + private DataModel data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataModel getData() { + return data; + } + + public void setData(DataModel 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 DataModel { + private String activePowerA; + private String activePowerB; + private String activePowerC; + private String address; + private String areaId; + private String areaName; + private String deptId; + private String deptName; + private String elecA; + private String elecB; + private String elecC; + private String elecN; + private String lampboxCode; + private String lampboxId; + private String lampboxName; + private double latitude; + private double longitude; + private String powerA; + private String powerB; + private String powerC; + private String reactivePowerA; + private String reactivePowerB; + private String reactivePowerC; + private String streetId; + private String streetName; + private String upTime; + private String volA; + private String volB; + private String volC; + + public String getActivePowerA() { + return activePowerA; + } + + public void setActivePowerA(String activePowerA) { + this.activePowerA = activePowerA; + } + + public String getActivePowerB() { + return activePowerB; + } + + public void setActivePowerB(String activePowerB) { + this.activePowerB = activePowerB; + } + + public String getActivePowerC() { + return activePowerC; + } + + public void setActivePowerC(String activePowerC) { + this.activePowerC = activePowerC; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + 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 getElecA() { + return elecA; + } + + public void setElecA(String elecA) { + this.elecA = elecA; + } + + public String getElecB() { + return elecB; + } + + public void setElecB(String elecB) { + this.elecB = elecB; + } + + public String getElecC() { + return elecC; + } + + public void setElecC(String elecC) { + this.elecC = elecC; + } + + public String getElecN() { + return elecN; + } + + public void setElecN(String elecN) { + this.elecN = elecN; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxId() { + return lampboxId; + } + + public void setLampboxId(String lampboxId) { + this.lampboxId = lampboxId; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getPowerA() { + return powerA; + } + + public void setPowerA(String powerA) { + this.powerA = powerA; + } + + public String getPowerB() { + return powerB; + } + + public void setPowerB(String powerB) { + this.powerB = powerB; + } + + public String getPowerC() { + return powerC; + } + + public void setPowerC(String powerC) { + this.powerC = powerC; + } + + public String getReactivePowerA() { + return reactivePowerA; + } + + public void setReactivePowerA(String reactivePowerA) { + this.reactivePowerA = reactivePowerA; + } + + public String getReactivePowerB() { + return reactivePowerB; + } + + public void setReactivePowerB(String reactivePowerB) { + this.reactivePowerB = reactivePowerB; + } + + public String getReactivePowerC() { + return reactivePowerC; + } + + public void setReactivePowerC(String reactivePowerC) { + this.reactivePowerC = reactivePowerC; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getUpTime() { + return upTime; + } + + public void setUpTime(String upTime) { + this.upTime = upTime; + } + + public String getVolA() { + return volA; + } + + public void setVolA(String volA) { + this.volA = volA; + } + + public String getVolB() { + return volB; + } + + public void setVolB(String volB) { + this.volB = volB; + } + + public String getVolC() { + return volC; + } + + public void setVolC(String volC) { + this.volC = volC; + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java new file mode 100644 index 0000000..a06a7d8 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/model/LampBoxListBean.java @@ -0,0 +1,229 @@ +package com.casic.dcms.model; + +import java.util.List; + +public class LampBoxListBean { + + private int code; + private DataBean data; + private String message; + private boolean success; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public DataBean getData() { + return data; + } + + public void setData(DataBean 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 DataBean { + private List rows; + private int total; + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public static class RowsBean { + private String address; + private String areaId; + private String areaName; + private String delflag; + private String deptId; + private String deptName; + private String id; + private String lampboxCode; + private String lampboxName; + private String lampboxType; + private String lampboxTypeName; + private double latitude; + private double longitude; + private String streetId; + private String streetName; + private String teleId; + private String ts; + private String version; + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getAreaId() { + return areaId; + } + + public void setAreaId(String areaId) { + this.areaId = areaId; + } + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getDelflag() { + return delflag; + } + + public void setDelflag(String delflag) { + this.delflag = delflag; + } + + 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 getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLampboxCode() { + return lampboxCode; + } + + public void setLampboxCode(String lampboxCode) { + this.lampboxCode = lampboxCode; + } + + public String getLampboxName() { + return lampboxName; + } + + public void setLampboxName(String lampboxName) { + this.lampboxName = lampboxName; + } + + public String getLampboxType() { + return lampboxType; + } + + public void setLampboxType(String lampboxType) { + this.lampboxType = lampboxType; + } + + public String getLampboxTypeName() { + return lampboxTypeName; + } + + public void setLampboxTypeName(String lampboxTypeName) { + this.lampboxTypeName = lampboxTypeName; + } + + public double getLatitude() { + return latitude; + } + + public void setLatitude(double latitude) { + this.latitude = latitude; + } + + public double getLongitude() { + return longitude; + } + + public void setLongitude(double longitude) { + this.longitude = longitude; + } + + public String getStreetId() { + return streetId; + } + + public void setStreetId(String streetId) { + this.streetId = streetId; + } + + public String getStreetName() { + return streetName; + } + + public void setStreetName(String streetName) { + this.streetName = streetName; + } + + public String getTeleId() { + return teleId; + } + + public void setTeleId(String teleId) { + this.teleId = teleId; + } + + public String getTs() { + return ts; + } + + public void setTs(String ts) { + this.ts = ts; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + } + } +} diff --git a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java b/app/src/main/java/com/casic/dcms/model/LightDetailBean.java deleted file mode 100644 index c000e0d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightDetailBean.java +++ /dev/null @@ -1,442 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightDetailBean { - - private int code; - private DataModel data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataModel getData() { - return data; - } - - public void setData(DataModel 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 DataModel { - private String address; - private String areaId; - private String areaName; - private String circuitCode; - private String circuitGroupId; - private String circuitGroupName; - private String circuitId; - private String circuitName; - private String controllerCode; - private List controllerGroupId; - private List controllerGroupName; - private String controllerId; - private String controllerLine; - private String controllerType; - private String controllerTypeName; - private String deptId; - private String deptName; - private String groupId; - private String groupName; - private String height; - private String lampCode; - private String lampId; - private String lampType; - private String lampTypeName; - private String lamppostCode; - private String lamppostId; - private String lamppostName; - private String lamppostType; - private String lamppostTypeName; - private double latestActivePower; - private double latestElec; - private double latestPower; - private double latestReactivePower; - private String latestTime; - private double latestVol; - private double latitude; - private double longitude; - private String postGroupId; - private String postGroupName; - private String power; - private String status; - private String statusName; - private String streetId; - private String streetName; - - public String getAddress() { - return address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getAreaId() { - return areaId; - } - - public void setAreaId(String areaId) { - this.areaId = areaId; - } - - public String getAreaName() { - return areaName; - } - - public void setAreaName(String areaName) { - this.areaName = areaName; - } - - public String getCircuitCode() { - return circuitCode; - } - - public void setCircuitCode(String circuitCode) { - this.circuitCode = circuitCode; - } - - public String getCircuitGroupId() { - return circuitGroupId; - } - - public void setCircuitGroupId(String circuitGroupId) { - this.circuitGroupId = circuitGroupId; - } - - public String getCircuitGroupName() { - return circuitGroupName; - } - - public void setCircuitGroupName(String circuitGroupName) { - this.circuitGroupName = circuitGroupName; - } - - public String getCircuitId() { - return circuitId; - } - - public void setCircuitId(String circuitId) { - this.circuitId = circuitId; - } - - public String getCircuitName() { - return circuitName; - } - - public void setCircuitName(String circuitName) { - this.circuitName = circuitName; - } - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public List getControllerGroupId() { - return controllerGroupId; - } - - public void setControllerGroupId(List controllerGroupId) { - this.controllerGroupId = controllerGroupId; - } - - public List getControllerGroupName() { - return controllerGroupName; - } - - public void setControllerGroupName(List controllerGroupName) { - this.controllerGroupName = controllerGroupName; - } - - public String getControllerId() { - return controllerId; - } - - public void setControllerId(String controllerId) { - this.controllerId = controllerId; - } - - public String getControllerLine() { - return controllerLine; - } - - public void setControllerLine(String controllerLine) { - this.controllerLine = controllerLine; - } - - public String getControllerType() { - return controllerType; - } - - public void setControllerType(String controllerType) { - this.controllerType = controllerType; - } - - public String getControllerTypeName() { - return controllerTypeName; - } - - public void setControllerTypeName(String controllerTypeName) { - this.controllerTypeName = controllerTypeName; - } - - 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 getGroupId() { - return groupId; - } - - public void setGroupId(String groupId) { - this.groupId = groupId; - } - - public String getGroupName() { - return groupName; - } - - public void setGroupName(String groupName) { - this.groupName = groupName; - } - - public String getHeight() { - return height; - } - - public void setHeight(String height) { - this.height = height; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public String getLampType() { - return lampType; - } - - public void setLampType(String lampType) { - this.lampType = lampType; - } - - public String getLampTypeName() { - return lampTypeName; - } - - public void setLampTypeName(String lampTypeName) { - this.lampTypeName = lampTypeName; - } - - public String getLamppostCode() { - return lamppostCode; - } - - public void setLamppostCode(String lamppostCode) { - this.lamppostCode = lamppostCode; - } - - public String getLamppostId() { - return lamppostId; - } - - public void setLamppostId(String lamppostId) { - this.lamppostId = lamppostId; - } - - public String getLamppostName() { - return lamppostName; - } - - public void setLamppostName(String lamppostName) { - this.lamppostName = lamppostName; - } - - public String getLamppostType() { - return lamppostType; - } - - public void setLamppostType(String lamppostType) { - this.lamppostType = lamppostType; - } - - public String getLamppostTypeName() { - return lamppostTypeName; - } - - public void setLamppostTypeName(String lamppostTypeName) { - this.lamppostTypeName = lamppostTypeName; - } - - public double getLatestActivePower() { - return latestActivePower; - } - - public void setLatestActivePower(double latestActivePower) { - this.latestActivePower = latestActivePower; - } - - public double getLatestElec() { - return latestElec; - } - - public void setLatestElec(double latestElec) { - this.latestElec = latestElec; - } - - public double getLatestPower() { - return latestPower; - } - - public void setLatestPower(double latestPower) { - this.latestPower = latestPower; - } - - public double getLatestReactivePower() { - return latestReactivePower; - } - - public void setLatestReactivePower(double latestReactivePower) { - this.latestReactivePower = latestReactivePower; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLatestVol() { - return latestVol; - } - - public void setLatestVol(double latestVol) { - this.latestVol = latestVol; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getPostGroupId() { - return postGroupId; - } - - public void setPostGroupId(String postGroupId) { - this.postGroupId = postGroupId; - } - - public String getPostGroupName() { - return postGroupName; - } - - public void setPostGroupName(String postGroupName) { - this.postGroupName = postGroupName; - } - - public String getPower() { - return power; - } - - public void setPower(String power) { - this.power = power; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getStreetId() { - return streetId; - } - - public void setStreetId(String streetId) { - this.streetId = streetId; - } - - public String getStreetName() { - return streetName; - } - - public void setStreetName(String streetName) { - this.streetName = streetName; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightListBean.java b/app/src/main/java/com/casic/dcms/model/LightListBean.java deleted file mode 100644 index af418cd..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightListBean.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightListBean { - - private int code; - private DataBean data; - private String message; - private boolean success; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public DataBean getData() { - return data; - } - - public void setData(DataBean 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 DataBean { - - private int total; - private List rows; - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getRows() { - return rows; - } - - public void setRows(List rows) { - this.rows = rows; - } - - public static class RowsBean { - - private String controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } - } -} diff --git a/app/src/main/java/com/casic/dcms/model/LightMapBean.java b/app/src/main/java/com/casic/dcms/model/LightMapBean.java deleted file mode 100644 index 9960e5d..0000000 --- a/app/src/main/java/com/casic/dcms/model/LightMapBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.casic.dcms.model; - -import java.util.List; - -public class LightMapBean { - - private int code; - private String message; - private boolean success; - private List data; - - public int getCode() { - return code; - } - - public void setCode(int 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 controllerCode; - private String lampCode; - private String lampId; - private double latitude; - private String deptId; - private String statusName; - private String lampName; - private String latestTime; - private double longitude; - private String status; - - public String getControllerCode() { - return controllerCode; - } - - public void setControllerCode(String controllerCode) { - this.controllerCode = controllerCode; - } - - public String getLampCode() { - return lampCode; - } - - public void setLampCode(String lampCode) { - this.lampCode = lampCode; - } - - public String getLampId() { - return lampId; - } - - public void setLampId(String lampId) { - this.lampId = lampId; - } - - public double getLatitude() { - return latitude; - } - - public void setLatitude(double latitude) { - this.latitude = latitude; - } - - public String getDeptId() { - return deptId; - } - - public void setDeptId(String deptId) { - this.deptId = deptId; - } - - public String getStatusName() { - return statusName; - } - - public void setStatusName(String statusName) { - this.statusName = statusName; - } - - public String getLampName() { - return lampName; - } - - public void setLampName(String lampName) { - this.lampName = lampName; - } - - public String getLatestTime() { - return latestTime; - } - - public void setLatestTime(String latestTime) { - this.latestTime = latestTime; - } - - public double getLongitude() { - return longitude; - } - - public void setLongitude(double longitude) { - this.longitude = longitude; - } - - public String getStatus() { - return status; - } - - public void setStatus(String status) { - this.status = status; - } - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java index d2c96a9..b90f8ea 100644 --- a/app/src/main/java/com/casic/dcms/utils/LocationHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/LocationHelper.java @@ -52,10 +52,9 @@ */ public void getCurrentLocation(Context context, ILocationListener listener, boolean isOnce) { mLocationClient = new AMapLocationClient(context); - //设置定位模式为高精度模式,AMapLocationMode.Battery_Saving为低功耗模式,AMapLocationMode.Device_Sensors是仅设备模式 mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy); mLocationOption.setOnceLocation(isOnce);//设置是否只定位一次,默认为false - mLocationOption.setInterval(15000);//设置定位间隔,单位毫秒,默认为2000ms + mLocationOption.setInterval(30 * 1000L);//设置定位间隔,单位毫秒,默认为2000ms //给定位客户端对象设置定位参数 mLocationClient.setLocationOption(mLocationOption); //设置定位回调监听 diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java index a90a244..fb3c15e 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitService.java @@ -1,8 +1,6 @@ package com.casic.dcms.utils.retrofit; -import java.util.List; - import okhttp3.MultipartBody; import okhttp3.RequestBody; import okhttp3.ResponseBody; @@ -386,7 +384,7 @@ /** * 处理待办分页查询 * - * @param isShop 是否三包,0-普通案卷,1-三包案卷 + * @param isShop 是否三包,0-普通案卷,1-三包案卷 */ @GET("/case/toHandleListPage") Observable getHandleResult( @@ -830,46 +828,46 @@ ); /** - * 路灯分页列表 + * 灯箱分页列表 *

- * http://111.198.10.15:11409/lightCr/overview/lampListPage?limit=15&offset=1 + * http://111.198.10.15:11409/lightCr/overview/lampBoxListPage?limit=15&offset=1 */ - @GET("/lightCr/overview/lampListPage") - Observable getLightList( + @GET("/lightCr/overview/lampBoxListPage") + Observable getLampBoxesByPage( @Header("token") String token, @Query("limit") int limit, @Query("offset") int offset ); /** - * 全部路灯 + * 全部灯箱 *

- * http://111.198.10.15:11409/lampCr/overview/lampList + * http://111.198.10.15:11409/lightCr/overview/lampBoxList */ - @GET("/lightCr/overview/lampList") - Observable getLightList(@Header("token") String token); + @GET("/lightCr/overview/lampBoxList") + Observable getLampBoxes(@Header("token") String token); /** - * 路灯详情 + * 灯箱详情 *

- * http://111.198.10.15:11409/lightCr/overview/lampDetail?lampId=1354712301527764999 + * http://111.198.10.15:11409/lightCr/overview/lampBoxDetail?lampBoxId=1391983622473011202 */ - @GET("/lightCr/overview/lampDetail") - Observable getLightDetail( + @GET("/lightCr/overview/lampBoxDetail") + Observable getLampBoxDetail( @Header("token") String token, - @Query("lampId") String lampId + @Query("lampBoxId") String lampId ); /** - * 路灯列表 + * 控制灯箱 *

* http://111.198.10.15:11409/lightCr/overview/lampControl */ @FormUrlEncoded @POST("/lightCr/overview/lampControl") - Observable controlStreetLight( + Observable controlLampBox( @Header("token") String token, - @Field("lampIds") List lampIds, + @Field("lampBoxId") String lampBoxId, @Field("controlType") String controlType ); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index ddddaf1..747b380 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -7,7 +7,6 @@ import com.pengxh.androidx.lite.utils.SaveKeyValues; import java.io.File; -import java.util.List; import okhttp3.MediaType; import okhttp3.MultipartBody; @@ -592,32 +591,31 @@ } /** - * 路灯分页列表 + * 灯箱分页列表 */ - public static Observable getLightListResult(int offset) { - return api.getLightList(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); + public static Observable getLampBoxesByPage(int offset) { + return api.getLampBoxesByPage(AuthenticationHelper.getToken(), LocaleConstant.PAGE_LIMIT, offset); } /** - * 全部路灯 + * 全部灯箱 */ - public static Observable getLightListResult() { - return api.getLightList(AuthenticationHelper.getToken()); + public static Observable getLampBoxes() { + return api.getLampBoxes(AuthenticationHelper.getToken()); } /** - * 路灯详情 - * 因为返回的数据会出现结构不一致的问题,不能用实体类接收改为ResponseBody接收,然后在手动解析 + * 灯箱详情 */ - public static Observable getLightDetailResult(String lampId) { - return api.getLightDetail(AuthenticationHelper.getToken(), lampId); + public static Observable getLampBoxDetail(String lampBoxId) { + return api.getLampBoxDetail(AuthenticationHelper.getToken(), lampBoxId); } /** * 控制路灯开关 */ - public static Observable getLightControlResult(List lampIds, String controlType) { - return api.controlStreetLight(AuthenticationHelper.getToken(), lampIds, controlType); + public static Observable controlLampBox(String lampBoxId, String controlType) { + return api.controlLampBox(AuthenticationHelper.getToken(), lampBoxId, controlType); } /** diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java new file mode 100644 index 0000000..ba256fc --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxManagerActivity.java @@ -0,0 +1,199 @@ +package com.casic.dcms.view.streetlight; + +import android.content.Context; +import android.graphics.Color; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.casic.dcms.R; +import com.casic.dcms.adapter.NormalRecyclerAdapter; +import com.casic.dcms.databinding.ActivityLampBoxManagerBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.vm.LampBoxViewModel; +import com.casic.dcms.widgets.LightDetailDialog; +import com.pengxh.androidx.lite.adapter.ViewHolder; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; +import com.pengxh.androidx.lite.kit.ContextKit; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.scwang.smartrefresh.layout.api.RefreshLayout; +import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; +import com.scwang.smartrefresh.layout.listener.OnRefreshListener; + +import java.util.ArrayList; +import java.util.List; + +public class LampBoxManagerActivity extends AndroidxBaseActivity implements Handler.Callback { + + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private NormalRecyclerAdapter adapter; + private List dataBeans = new ArrayList<>(); + private int pageIndex = 1; + private boolean isRefresh, isLoadMore = false; + private boolean isControlLampBox = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + ContextKit.navigatePageTo(context, LampBoxOnMapActivity.class); + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxManagerActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxesByPage(this, pageIndex); + } + + @Override + protected void initEvent() { + binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { + @Override + public void onRefresh(@NonNull final RefreshLayout refreshLayout) { + isRefresh = true; + //刷新之后页码重置 + pageIndex = 1; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { + @Override + public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { + isLoadMore = true; + pageIndex++; + lampBoxViewModel.getLampBoxesByPage(context, pageIndex); + } + }); + + lampBoxViewModel.lampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + List dataRows = resultBean.getData().getRows(); + if (isRefresh) { + adapter.refresh(dataRows); + binding.refreshLayout.finishRefresh(); + isRefresh = false; + } else if (isLoadMore) { + if (dataRows.size() == 0) { + StringKit.show(context, "到底了,别拉了"); + } + adapter.loadMore(dataRows); + binding.refreshLayout.finishLoadMore(); + isLoadMore = false; + } else { + dataBeans = dataRows; + weakReferenceHandler.sendEmptyMessage(20210623); + } + } + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + new LightDetailDialog.Builder().setContext(context).setLampBoxDetailBean(resultBean).build().show(); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + if (msg.what == 20210623) { + //首次加载数据 + if (dataBeans.size() == 0) { + binding.emptyView.show("没有路灯数据", null); + } else { + binding.emptyView.hide(); + adapter = new NormalRecyclerAdapter(R.layout.item_lamp_box_rv_l, dataBeans) { + @Override + public void convertView(ViewHolder viewHolder, int position, LampBoxListBean.DataBean.RowsBean item) { + viewHolder.setText(R.id.lampBoxNameView, item.getLampboxName()) + .setText(R.id.lampBoxCodeView, item.getLampboxCode()) + .setText(R.id.positionView, item.getStreetName()) + .setOnClickListener(R.id.turnOffLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "0"); + } + }) + .setOnClickListener(R.id.turnOnLampButton, new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, item.getId(), "1"); + } + }); + } + }; + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); + adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { + @Override + public void onItemClicked(int position, LampBoxListBean.DataBean.RowsBean rowsBean) { + lampBoxViewModel.getLampBoxDetail(context, rowsBean.getId()); + } + }); + } + } + return true; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java new file mode 100644 index 0000000..225a7e3 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/view/streetlight/LampBoxOnMapActivity.java @@ -0,0 +1,404 @@ +package com.casic.dcms.view.streetlight; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.drawable.BitmapDrawable; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.amap.api.location.AMapLocation; +import com.casic.dcms.R; +import com.casic.dcms.databinding.ActivityLampBoxMapBinding; +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.ArcGisMapCreator; +import com.casic.dcms.utils.LocaleConstant; +import com.casic.dcms.utils.LocationHelper; +import com.casic.dcms.utils.ViewGroupHub; +import com.casic.dcms.utils.callback.ILocationListener; +import com.casic.dcms.vm.LampBoxViewModel; +import com.esri.arcgisruntime.concurrent.ListenableFuture; +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; +import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; +import com.esri.arcgisruntime.mapping.view.Graphic; +import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; +import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; +import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; +import com.esri.arcgisruntime.util.ListenableList; +import com.pengxh.androidx.lite.base.AndroidxBaseActivity; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.LoadingDialog; +import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.qmuiteam.qmui.widget.popup.QMUIPopup; +import com.qmuiteam.qmui.widget.popup.QMUIPopups; +import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.ExecutionException; + +public class LampBoxOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { + + private static final String TAG = "LampBoxOnMapActivity"; + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); + private LampBoxViewModel lampBoxViewModel; + private List dataBeans = new ArrayList<>(); + private ListenableList graphicsOverlays; + private ListenableList graphics; + private double DELTA_L = LocaleConstant.DELTA_LNG_75; + private boolean isControlLampBox = false; + private boolean isGetLampBoxDetail = false; + + @Override + protected void setupTopBarLayout() { + ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { + + } + }); + } + + @Override + protected void observeRequestState() { + lampBoxViewModel.loadState.observe(this, new Observer() { + @Override + public void onChanged(LoadState loadState) { + if (isControlLampBox) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "处理中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else if (isGetLampBoxDetail) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "路灯详情获取中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } else { + if (loadState == LoadState.Loading) { + LoadingDialog.show(LampBoxOnMapActivity.this, "数据加载中,请稍后..."); + } else { + LoadingDialog.dismiss(); + } + } + } + }); + } + + @Override + protected void initOnCreate(@Nullable Bundle savedInstanceState) { + lampBoxViewModel = new ViewModelProvider(this).get(LampBoxViewModel.class); + lampBoxViewModel.getLampBoxes(this); + lampBoxViewModel.mapLampBoxResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxListBean resultBean) { + if (resultBean.getCode() == 200) { + dataBeans = resultBean.getData().getRows(); + } + } + }); + + lampBoxViewModel.lampBoxDetailResult.observe(this, new Observer() { + @Override + public void onChanged(LampBoxDetailBean resultBean) { + isGetLampBoxDetail = false; + + View popupView = LayoutInflater.from(context).inflate(R.layout.popu_lamp_box_on_map, null); + + TextView lampBoxCodeView = popupView.findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = popupView.findViewById(R.id.lampBoxNameView); + TextView deptView = popupView.findViewById(R.id.deptView); + TextView electricityView = popupView.findViewById(R.id.electricityView); + TextView voltageView = popupView.findViewById(R.id.voltageView); + TextView powerView = popupView.findViewById(R.id.powerView); + TextView updateTimeView = popupView.findViewById(R.id.updateTimeView); + TextView roadView = popupView.findViewById(R.id.roadView); + TextView addressView = popupView.findViewById(R.id.addressView); + QMUIRoundButton turnOffLampButton = popupView.findViewById(R.id.turnOffLampButton); + QMUIRoundButton turnOnLampButton = popupView.findViewById(R.id.turnOnLampButton); + + LampBoxDetailBean.DataModel data = resultBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); + + QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) + .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) + .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) + .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) + .onDismiss(null).show(binding.mapView); + + turnOffLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "0"); + } + }); + + turnOnLampButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + isControlLampBox = true; + lampBoxViewModel.controlLampBox(context, data.getLampboxId(), "1"); + } + }); + } + }); + + lampBoxViewModel.controlResult.observe(this, new Observer() { + @Override + public void onChanged(ActionResultBean resultBean) { + if (resultBean.getCode() == 200) { + isControlLampBox = false; + StringKit.show(context, "指令发送成功"); + } + } + }); + + binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 + ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); + //创建底图、并设置底图图层 + Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); + arcGISMap.setBasemap(basemap); + Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 + binding.mapView.setMap(arcGISMap); + + //Marker相关Layer + graphicsOverlays = binding.mapView.getGraphicsOverlays(); + //显示定位点附近路灯 + LocationHelper.get().getCurrentLocation(this, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + binding.mapView.setViewpointCenterAsync(point, 2800); + + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + } + } + }, true); + } + + @SuppressLint("ClickableViewAccessibility") + @Override + protected void initEvent() { + binding.expandMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); + clearPictureMarker(); + //计算比例尺 + DELTA_L -= 0.0001; + if (DELTA_L < 0) { + DELTA_L = 0; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List minusList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(minusList); + } + } + }, true); + } + }); + + binding.minusMapView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); + clearPictureMarker(); + //计算比例尺 + DELTA_L += 0.0001; + if (DELTA_L > 0.01) { + DELTA_L = LocaleConstant.DELTA_LNG_75; + } + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List expandList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(expandList); + } + } + }, true); + } + }); + + binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + clearPictureMarker(); + LoadingDialog.show(LampBoxOnMapActivity.this, "定位中,请稍后"); + LocationHelper.get().getCurrentLocation(context, new ILocationListener() { + + @Override + public void onAMapLocationGet(AMapLocation aMapLocation) { + if (aMapLocation != null) { + double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); + Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); + List pointList = new ArrayList<>(); + for (LampBoxListBean.DataBean.RowsBean bean : dataBeans) { + 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, SpatialReferences.getWgs84())); + } + } + addPictureMarker(pointList); + binding.mapView.setViewpointCenterAsync(point, 3000); + LoadingDialog.dismiss(); + } + } + }, true); + } + }); + + binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); + final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); + overlaysAsync.addDoneListener(new Runnable() { + @Override + public void run() { + try { + List overlayResultList = overlaysAsync.get(); + if (!overlayResultList.isEmpty()) { + IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); + Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); + for (LampBoxListBean.DataBean.RowsBean dataBean : dataBeans) { + if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { + Message message = weakReferenceHandler.obtainMessage(); + message.what = 2021062401; + message.obj = dataBean.getId(); + weakReferenceHandler.sendMessage(message); + } + } + } else { + weakReferenceHandler.sendEmptyMessage(2021062402); + } + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + } + }); + return super.onSingleTapConfirmed(e); + } + }); + } + + @Override + public boolean handleMessage(@NonNull Message msg) { + switch (msg.what) { + case 2021062401: + String lampId = (String) msg.obj; + if (TextUtils.isEmpty(lampId)) { + StringKit.show(context, "错误,路灯编号为空"); + return true; + } + + isGetLampBoxDetail = true; + lampBoxViewModel.getLampBoxDetail(context, lampId); + break; + case 2021062402: + StringKit.show(context, "此附近无路灯,请重新选点"); + break; + default: + break; + } + return true; + } + + private void addPictureMarker(List points) { + for (Point point : points) { + Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); + BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); + PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); + pictureMarker.setWidth(24); + pictureMarker.setHeight(24); + pictureMarker.loadAsync(); + + GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); + graphics = graphicsOverlay.getGraphics(); + graphics.add(new Graphic(point, pictureMarker)); + graphicsOverlays.add(graphicsOverlay); + } + } + + private void clearPictureMarker() { + if (graphics != null && graphicsOverlays != null) { + graphics.clear(); + graphicsOverlays.clear(); + } + } +} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java deleted file mode 100644 index c2e5251..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/LightOnMapActivity.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.drawable.BitmapDrawable; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.MotionEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -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.ActivityStreetLightMapBinding; -import com.casic.dcms.greendao.LightLocalBeanDao; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.ArcGisMapCreator; -import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.LocationHelper; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.utils.callback.ILocationListener; -import com.casic.dcms.vm.LightViewModel; -import com.esri.arcgisruntime.concurrent.ListenableFuture; -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; -import com.esri.arcgisruntime.mapping.view.DefaultMapViewOnTouchListener; -import com.esri.arcgisruntime.mapping.view.Graphic; -import com.esri.arcgisruntime.mapping.view.GraphicsOverlay; -import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; -import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; -import com.esri.arcgisruntime.util.ListenableList; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.popup.QMUIPopup; -import com.qmuiteam.qmui.widget.popup.QMUIPopups; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutionException; - -public class LightOnMapActivity extends AndroidxBaseActivity implements Handler.Callback { - - private static final String TAG = "LightOnMapFragment"; - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private ListenableList graphicsOverlays; - private ListenableList graphics; - private double DELTA_L = LocaleConstant.DELTA_LNG_75; - private LightLocalBeanDao lightLocalBeanDao; - private boolean isControlLight = false; - private boolean isGetLightDetail = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else if (isGetLightDetail) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "路灯详情获取中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(LightOnMapActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightLocalBeanDao = BaseApplication.getDaoSession().getLightLocalBeanDao(); - - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightOnMap(this); - lightViewModel.lightMapModel.observe(this, new Observer() { - @Override - public void onChanged(LightMapBean resultBean) { - if (resultBean.getCode() == 200) { - for (LightMapBean.DataBean dataBean : resultBean.getData()) { - LightLocalBean bean = new LightLocalBean(); - bean.setControllerCode(dataBean.getControllerCode()); - bean.setLampCode(dataBean.getLampCode()); - String lampId = dataBean.getLampId(); - bean.setLampId(lampId); - bean.setLatitude(dataBean.getLatitude()); - bean.setDeptId(dataBean.getDeptId()); - bean.setStatusName(dataBean.getStatusName()); - bean.setLampName(dataBean.getLampName()); - bean.setLatestTime(dataBean.getLatestTime()); - bean.setLongitude(dataBean.getLongitude()); - bean.setStatus(dataBean.getStatus()); - - LightLocalBean uniqueBean = lightLocalBeanDao.queryBuilder().where(LightLocalBeanDao.Properties.LampId.eq(lampId)).unique(); - if (uniqueBean == null) { - lightLocalBeanDao.insert(bean); - } else { - lightLocalBeanDao.update(bean); - } - } - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - isGetLightDetail = false; - - View popupView = LayoutInflater.from(context).inflate(R.layout.popu_street_light, null); - - TextView lightStateView = popupView.findViewById(R.id.lightStateView); - TextView lightAddressView = popupView.findViewById(R.id.lightAddressView); - TextView lightStreetView = popupView.findViewById(R.id.lightStreetView); - TextView lightElecView = popupView.findViewById(R.id.lightElecView); - TextView lightVolView = popupView.findViewById(R.id.lightVolView); - TextView lightTimeView = popupView.findViewById(R.id.lightTimeView); - ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch); - - LightDetailBean.DataModel data = resultBean.getData(); - String statusName = data.getStatusName(); - lightStateView.setText(statusName); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sA", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); - - QMUIPopups.popup(context, QMUIDisplayHelper.dp2px(context, 280)) - .preferredDirection(QMUIPopup.DIRECTION_BOTTOM).view(popupView) - .edgeProtection(QMUIDisplayHelper.dp2px(context, 20)) - .dimAmount(0.6f).animStyle(QMUIPopup.ANIM_GROW_FROM_CENTER) - .onDismiss(null).show(binding.mapView); - - lightSwitch.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(data.getLampId())); - - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - binding.mapView.setAttributionTextVisible(false);//去掉左下角属性标识 - ArcGISMap arcGISMap = new ArcGISMap(BasemapStyle.ARCGIS_STREETS); - //创建底图、并设置底图图层 - Basemap basemap = new Basemap(ArcGisMapCreator.createBaseLayer()); - arcGISMap.setBasemap(basemap); - Point point = new Point(LocaleConstant.DEFAULT_LNG, LocaleConstant.DEFAULT_LAT, SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800);//标注到指定经纬度并放大地图显示 - binding.mapView.setMap(arcGISMap); - - //Marker相关Layer - graphicsOverlays = binding.mapView.getGraphicsOverlays(); - //显示定位点附近路灯 - LocationHelper.get().getCurrentLocation(this, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84()); - binding.mapView.setViewpointCenterAsync(point, 2800); - - List streetLightBeans = lightLocalBeanDao.loadAll(); - List pointList = new ArrayList<>(); - for (LightLocalBean bean : streetLightBeans) { - 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, 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, SpatialReferences.getWgs84())); -// } - } - addPictureMarker(pointList); - } - } - }, true); - } - - @SuppressLint("ClickableViewAccessibility") - @Override - protected void initEvent() { - binding.expandMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 0.5); - clearPictureMarker(); - //计算比例尺 - DELTA_L -= 0.0001; - if (DELTA_L < 0) { - DELTA_L = 0; - } -// List minusList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// minusList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(minusList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(minusList); - } - } - }, true); - } - }); - - binding.minusMapView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - binding.mapView.setViewpointScaleAsync(binding.mapView.getMapScale() * 2); - clearPictureMarker(); - //计算比例尺 - DELTA_L += 0.0001; - if (DELTA_L > 0.01) { - DELTA_L = LocaleConstant.DELTA_LNG_75; - } -// List expandList = new ArrayList<>(); -// for (StreetLightLocalBean bean : lightBeans) { -// double longitude = bean.getLongitude(); -// double latitude = bean.getLatitude(); -// if (Math.abs(longitude - Constant.DEFAULT_LNG) > DELTA_L || -// Math.abs(latitude - Constant.DEFAULT_LAT) > DELTA_L) { -// continue; -// } -// expandList.add(new Point(longitude, latitude, SpatialReferences.getWgs84())); -// } -// addPictureMarker(expandList); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(expandList); - } - } - }, true); - } - }); - - binding.removeToLocalView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clearPictureMarker(); - LoadingDialog.show(LightOnMapActivity.this, "定位中,请稍后"); - LocationHelper.get().getCurrentLocation(context, new ILocationListener() { - - @Override - public void onAMapLocationGet(AMapLocation aMapLocation) { - if (aMapLocation != null) { - double[] gcjToWgs = LocationHelper.get().gcjToWgs(aMapLocation.getLongitude(), aMapLocation.getLatitude()); - 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, SpatialReferences.getWgs84())); - } - } - addPictureMarker(pointList); - binding.mapView.setViewpointCenterAsync(point, 3000); - LoadingDialog.dismiss(); - } - } - }, true); - } - }); - - binding.mapView.setOnTouchListener(new DefaultMapViewOnTouchListener(context, binding.mapView) { - @Override - public boolean onSingleTapConfirmed(MotionEvent e) { - List lightBeans = lightLocalBeanDao.loadAll(); - android.graphics.Point screenPoint = new android.graphics.Point(Math.round(e.getX()), Math.round(e.getY())); - final ListenableFuture> overlaysAsync = mMapView.identifyGraphicsOverlaysAsync(screenPoint, 10.0, false, 1); - overlaysAsync.addDoneListener(new Runnable() { - @Override - public void run() { - try { - List overlayResultList = overlaysAsync.get(); - if (!overlayResultList.isEmpty()) { - IdentifyGraphicsOverlayResult identifyResult = overlayResultList.get(0); - Point point = identifyResult.getGraphicsOverlay().getExtent().getCenter(); - for (LightLocalBean dataBean : lightBeans) { - if (Math.abs(dataBean.getLongitude() - point.getX()) <= LocaleConstant.DELTA_LNG_10 && Math.abs(dataBean.getLatitude() - point.getY()) <= LocaleConstant.DELTA_LAT_10) { - Message message = weakReferenceHandler.obtainMessage(); - message.what = 2021062401; - message.obj = dataBean.getLampId(); - weakReferenceHandler.sendMessage(message); - } - } - } else { - weakReferenceHandler.sendEmptyMessage(2021062402); - } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } - } - }); - return super.onSingleTapConfirmed(e); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - switch (msg.what) { - case 2021062401: - String lampId = (String) msg.obj; - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return true; - } - - isGetLightDetail = true; - lightViewModel.getLightDetail(context, lampId); - break; - case 2021062402: - StringKit.show(context, "此附近无路灯,请重新选点"); - break; - default: - break; - } - return true; - } - - private void addPictureMarker(List points) { - for (Point point : points) { - Bitmap caseBitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.location_verify); - BitmapDrawable caseDrawable = new BitmapDrawable(getResources(), caseBitmap); - PictureMarkerSymbol pictureMarker = new PictureMarkerSymbol(caseDrawable); - pictureMarker.setWidth(24); - pictureMarker.setHeight(24); - pictureMarker.loadAsync(); - - GraphicsOverlay graphicsOverlay = new GraphicsOverlay(); - graphics = graphicsOverlay.getGraphics(); - graphics.add(new Graphic(point, pictureMarker)); - graphicsOverlays.add(graphicsOverlay); - } - } - - private void clearPictureMarker() { - if (graphics != null && graphicsOverlays != null) { - graphics.clear(); - graphicsOverlays.clear(); - } - } -} diff --git a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java b/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java deleted file mode 100644 index 15b3de9..0000000 --- a/app/src/main/java/com/casic/dcms/view/streetlight/StreetlightManagerActivity.java +++ /dev/null @@ -1,230 +0,0 @@ -package com.casic.dcms.view.streetlight; - -import android.content.Context; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.text.TextUtils; -import android.view.View; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.cardview.widget.CardView; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; - -import com.casic.dcms.R; -import com.casic.dcms.adapter.NormalRecyclerAdapter; -import com.casic.dcms.databinding.ActivityStreetLightBinding; -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.utils.ViewGroupHub; -import com.casic.dcms.vm.LightViewModel; -import com.casic.dcms.widgets.LightDetailDialog; -import com.pengxh.androidx.lite.adapter.ViewHolder; -import com.pengxh.androidx.lite.base.AndroidxBaseActivity; -import com.pengxh.androidx.lite.divider.RecyclerViewItemDivider; -import com.pengxh.androidx.lite.kit.ContextKit; -import com.pengxh.androidx.lite.kit.IntKit; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.LoadingDialog; -import com.pengxh.androidx.lite.utils.WeakReferenceHandler; -import com.pengxh.androidx.lite.widget.TitleBarView; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; -import com.scwang.smartrefresh.layout.listener.OnRefreshListener; - -import java.util.ArrayList; -import java.util.List; - -public class StreetlightManagerActivity extends AndroidxBaseActivity implements Handler.Callback { - - private final Context context = this; - private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); - private LightViewModel lightViewModel; - private NormalRecyclerAdapter adapter; - private List dataBeans = new ArrayList<>(); - private int pageIndex = 1; - private boolean isRefresh, isLoadMore = false; - private boolean isControlLight = false; - - @Override - protected void setupTopBarLayout() { - ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { - @Override - public void onLeftClick() { - finish(); - } - - @Override - public void onRightClick() { - ContextKit.navigatePageTo(context, LightOnMapActivity.class); - } - }); - } - - @Override - protected void observeRequestState() { - lightViewModel.loadState.observe(this, new Observer() { - @Override - public void onChanged(LoadState loadState) { - if (isControlLight) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "处理中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } else { - if (loadState == LoadState.Loading) { - LoadingDialog.show(StreetlightManagerActivity.this, "数据加载中,请稍后..."); - } else { - LoadingDialog.dismiss(); - } - } - } - }); - } - - @Override - protected void initOnCreate(@Nullable Bundle savedInstanceState) { - lightViewModel = new ViewModelProvider(this).get(LightViewModel.class); - lightViewModel.getLightList(this, pageIndex); - } - - @Override - protected void initEvent() { - binding.refreshLayout.setOnRefreshListener(new OnRefreshListener() { - @Override - public void onRefresh(@NonNull final RefreshLayout refreshLayout) { - isRefresh = true; - //刷新之后页码重置 - pageIndex = 1; - lightViewModel.getLightList(context, pageIndex); - } - }); - binding.refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(@NonNull final RefreshLayout refreshLayout) { - isLoadMore = true; - pageIndex++; - lightViewModel.getLightList(context, pageIndex); - } - }); - - lightViewModel.lightListModel.observe(this, new Observer() { - @Override - public void onChanged(LightListBean resultBean) { - if (resultBean.getCode() == 200) { - List dataRows = resultBean.getData().getRows(); - if (isRefresh) { - adapter.refresh(dataRows); - binding.refreshLayout.finishRefresh(); - isRefresh = false; - } else if (isLoadMore) { - if (dataRows.size() == 0) { - StringKit.show(context, "到底了,别拉了"); - } - adapter.loadMore(dataRows); - binding.refreshLayout.finishLoadMore(); - isLoadMore = false; - } else { - dataBeans = dataRows; - weakReferenceHandler.sendEmptyMessage(20210623); - } - } - } - }); - - lightViewModel.lightControlModel.observe(this, new Observer() { - @Override - public void onChanged(ActionResultBean resultBean) { - if (resultBean.getCode() == 200) { - isControlLight = false; - //开灯指令发下去之后,虽然返回成功,但仅仅表示app发送指令到后台成功,但是开没开灯无法确定,所以,只能延迟几秒再刷新列表 - StringKit.show(context, "指令发送成功"); - weakReferenceHandler.sendEmptyMessageDelayed(20210624, 3000); - } - } - }); - - lightViewModel.lightDetailModel.observe(this, new Observer() { - @Override - public void onChanged(LightDetailBean resultBean) { - new LightDetailDialog.Builder().setContext(context).setLightDetailBean(resultBean).build().show(); - } - }); - } - - @Override - public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 20210623) { - //首次加载数据 - if (dataBeans.size() == 0) { - binding.emptyView.show("没有路灯数据", null); - } else { - binding.emptyView.hide(); - adapter = new NormalRecyclerAdapter(R.layout.item_light_recycleview, dataBeans) { - @Override - public void convertView(ViewHolder viewHolder, int position, LightListBean.DataBean.RowsBean item) { - String statusName = item.getStatusName(); - viewHolder.setText(R.id.lightNameView, item.getLampName()) - .setText(R.id.lightStatusView, "已" + statusName); - - CardView statueTagView = viewHolder.getView(R.id.statueTagView); - if (statusName.equals("灭灯")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_off); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.darkGray)); - } else if (statusName.equals("报警")) { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_warning); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.warnColor)); - } else { - viewHolder.setImageResource(R.id.lightSwitch, R.drawable.ic_switch_on); - statueTagView.setCardBackgroundColor(IntKit.convertColor(context, R.color.onLineColor)); - } - - viewHolder.setOnClickListener(R.id.lightSwitch, new View.OnClickListener() { - @Override - public void onClick(View v) { - isControlLight = true; - List lampIds = new ArrayList<>(); - lampIds.add(Long.parseLong(item.getLampId())); - - String statusName = item.getStatusName(); - String controlType; - if (statusName.equals("灭灯")) { - controlType = "1"; - } else { - controlType = "0"; - } - lightViewModel.controlLight(context, lampIds, controlType); - } - }); - } - }; - binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recyclerView.setAdapter(adapter); - adapter.setOnItemClickedListener(new NormalRecyclerAdapter.OnItemClickedListener() { - @Override - public void onItemClicked(int position, LightListBean.DataBean.RowsBean rowsBean) { - String lampId = rowsBean.getLampId(); - if (TextUtils.isEmpty(lampId)) { - StringKit.show(context, "错误,路灯编号为空"); - return; - } - - lightViewModel.getLightDetail(context, lampId); - } - }); - } - } else if (msg.what == 20210624) { - isRefresh = true; - pageIndex = 1; - lightViewModel.getLightList(this, pageIndex); - } - return true; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java new file mode 100644 index 0000000..551bb08 --- /dev/null +++ b/app/src/main/java/com/casic/dcms/vm/LampBoxViewModel.java @@ -0,0 +1,168 @@ +package com.casic.dcms.vm; + +import android.content.Context; + +import androidx.lifecycle.MutableLiveData; + +import com.casic.dcms.model.ActionResultBean; +import com.casic.dcms.model.LampBoxDetailBean; +import com.casic.dcms.model.LampBoxListBean; +import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.retrofit.RetrofitServiceManager; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.pengxh.androidx.lite.base.BaseViewModel; +import com.pengxh.androidx.lite.kit.StringKit; +import com.pengxh.androidx.lite.utils.LoadState; +import com.pengxh.androidx.lite.utils.ObserverSubscriber; + +import java.io.IOException; + +import okhttp3.ResponseBody; +import rx.Observable; + +public class LampBoxViewModel extends BaseViewModel { + + private final Gson gson = new Gson(); + public MutableLiveData lampBoxResult = new MutableLiveData<>(); //分页 + public MutableLiveData controlResult = new MutableLiveData<>(); + public MutableLiveData mapLampBoxResult = new MutableLiveData<>(); //不分页 + public MutableLiveData lampBoxDetailResult = new MutableLiveData<>(); + + public void getLampBoxesByPage(Context context, int offset) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxesByPage(offset); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void controlLampBox(Context context, String lampBoxId, String controlType) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.controlLampBox(lampBoxId, controlType); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + controlResult.setValue(resultBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxes(Context context) { + loadState.setValue(LoadState.Loading); + Observable observable = RetrofitServiceManager.getLampBoxes(); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxListBean listBean = gson.fromJson(response, new TypeToken() { + }.getType()); + mapLampBoxResult.setValue(listBean); + loadState.setValue(LoadState.Success); + } else { + loadState.setValue(LoadState.Fail); + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + + public void getLampBoxDetail(Context context, String lampBoxId) { + Observable observable = RetrofitServiceManager.getLampBoxDetail(lampBoxId); + ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { + @Override + public void onCompleted() { + + } + + @Override + public void onError(Throwable e) { + + } + + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.getResponseCode(response); + if (responseCode == 200) { + LampBoxDetailBean detailBean = gson.fromJson(response, new TypeToken() { + }.getType()); + lampBoxDetailResult.setValue(detailBean); + } else { + StringKit.show(context, StringHelper.getResponseMessage(response)); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } +} diff --git a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java b/app/src/main/java/com/casic/dcms/vm/LightViewModel.java deleted file mode 100644 index 9219a59..0000000 --- a/app/src/main/java/com/casic/dcms/vm/LightViewModel.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.casic.dcms.vm; - -import android.content.Context; - -import androidx.lifecycle.MutableLiveData; - -import com.casic.dcms.model.ActionResultBean; -import com.casic.dcms.model.LightDetailBean; -import com.casic.dcms.model.LightListBean; -import com.casic.dcms.model.LightMapBean; -import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.retrofit.RetrofitServiceManager; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.pengxh.androidx.lite.base.BaseViewModel; -import com.pengxh.androidx.lite.kit.StringKit; -import com.pengxh.androidx.lite.utils.LoadState; -import com.pengxh.androidx.lite.utils.ObserverSubscriber; - -import java.io.IOException; -import java.util.List; - -import okhttp3.ResponseBody; -import rx.Observable; - -public class LightViewModel extends BaseViewModel { - - private final Gson gson = new Gson(); - public MutableLiveData lightListModel = new MutableLiveData<>(); - public MutableLiveData lightControlModel = new MutableLiveData<>(); - public MutableLiveData lightMapModel = new MutableLiveData<>(); - public MutableLiveData lightDetailModel = new MutableLiveData<>(); - - public void getLightList(Context context, int offset) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(offset); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightListBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightListModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void controlLight(Context context, List lampIds, String controlType) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightControlResult(lampIds, controlType); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightControlModel.setValue(resultBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightOnMap(Context context) { - loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getLightListResult(); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } - - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightMapBean listBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightMapModel.setValue(listBean); - loadState.setValue(LoadState.Success); - } else { - loadState.setValue(LoadState.Fail); - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } - - public void getLightDetail(Context context, String lampId) { - Observable observable = RetrofitServiceManager.getLightDetailResult(lampId); - ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { - @Override - public void onCompleted() { - - } - - @Override - public void onError(Throwable e) { - - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.getResponseCode(response); - if (responseCode == 200) { - LightDetailBean detailBean = gson.fromJson(response, new TypeToken() { - }.getType()); - lightDetailModel.setValue(detailBean); - } else { - StringKit.show(context, StringHelper.getResponseMessage(response)); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } -} diff --git a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java index a410abf..d734d2f 100644 --- a/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/LightDetailDialog.java @@ -7,20 +7,20 @@ import androidx.appcompat.app.AlertDialog; import com.casic.dcms.R; -import com.casic.dcms.model.LightDetailBean; +import com.casic.dcms.model.LampBoxDetailBean; public class LightDetailDialog extends AlertDialog { public static class Builder { private Context context; - private LightDetailBean detailBean; + private LampBoxDetailBean detailBean; public Builder setContext(Context context) { this.context = context; return this; } - public Builder setLightDetailBean(LightDetailBean detailBean) { + public Builder setLampBoxDetailBean(LampBoxDetailBean detailBean) { this.detailBean = detailBean; return this; } @@ -30,7 +30,7 @@ } } - private final LightDetailBean detailBean; + private final LampBoxDetailBean detailBean; private LightDetailDialog(Builder builder) { super(builder.context, R.style.DetailDialogStyle); @@ -40,23 +40,29 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.dialog_light_detail); + setContentView(R.layout.dialog_lamp_box_detail); setCanceledOnTouchOutside(true); setCancelable(true); - TextView lightStateView = findViewById(R.id.lightStateView); - TextView lightAddressView = findViewById(R.id.lightAddressView); - TextView lightStreetView = findViewById(R.id.lightStreetView); - TextView lightElecView = findViewById(R.id.lightElecView); - TextView lightVolView = findViewById(R.id.lightVolView); - TextView lightTimeView = findViewById(R.id.lightTimeView); + TextView lampBoxCodeView = findViewById(R.id.lampBoxCodeView); + TextView lampBoxNameView = findViewById(R.id.lampBoxNameView); + TextView deptView = findViewById(R.id.deptView); + TextView electricityView = findViewById(R.id.electricityView); + TextView voltageView = findViewById(R.id.voltageView); + TextView powerView = findViewById(R.id.powerView); + TextView updateTimeView = findViewById(R.id.updateTimeView); + TextView roadView = findViewById(R.id.roadView); + TextView addressView = findViewById(R.id.addressView); - LightDetailBean.DataModel data = detailBean.getData(); - lightStateView.setText(data.getStatusName()); - lightAddressView.setText(data.getAddress()); - lightStreetView.setText(data.getStreetName()); - lightElecView.setText(String.format("%sA", data.getLatestElec())); - lightVolView.setText(String.format("%sV", data.getLatestVol())); - lightTimeView.setText(data.getLatestTime()); + LampBoxDetailBean.DataModel data = detailBean.getData(); + lampBoxCodeView.setText(data.getLampboxCode()); + lampBoxNameView.setText(data.getLampboxName()); + deptView.setText(data.getDeptName()); + electricityView.setText(String.format("%s/%s/%s", data.getElecA(), data.getElecB(), data.getElecC())); + voltageView.setText(String.format("%s/%s/%s", data.getVolA(), data.getVolB(), data.getVolC())); + powerView.setText(String.format("%s/%s/%s", data.getPowerA(), data.getPowerB(), data.getPowerC())); + updateTimeView.setText(data.getUpTime()); + roadView.setText(data.getStreetName()); + addressView.setText(data.getAddress()); } } diff --git a/app/src/main/res/layout/activity_lamp_box_manager.xml b/app/src/main/res/layout/activity_lamp_box_manager.xml new file mode 100644 index 0000000..ff06cf2 --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_manager.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_lamp_box_map.xml b/app/src/main/res/layout/activity_lamp_box_map.xml new file mode 100644 index 0000000..3a1aaad --- /dev/null +++ b/app/src/main/res/layout/activity_lamp_box_map.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light.xml b/app/src/main/res/layout/activity_street_light.xml deleted file mode 100644 index ff06cf2..0000000 --- a/app/src/main/res/layout/activity_street_light.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_street_light_map.xml b/app/src/main/res/layout/activity_street_light_map.xml deleted file mode 100644 index 3a1aaad..0000000 --- a/app/src/main/res/layout/activity_street_light_map.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_lamp_box_detail.xml b/app/src/main/res/layout/dialog_lamp_box_detail.xml new file mode 100644 index 0000000..dae3783 --- /dev/null +++ b/app/src/main/res/layout/dialog_lamp_box_detail.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_light_detail.xml b/app/src/main/res/layout/dialog_light_detail.xml deleted file mode 100644 index 0b5a213..0000000 --- a/app/src/main/res/layout/dialog_light_detail.xml +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/item_lamp_box_rv_l.xml b/app/src/main/res/layout/item_lamp_box_rv_l.xml new file mode 100644 index 0000000..53b4d9d --- /dev/null +++ b/app/src/main/res/layout/item_lamp_box_rv_l.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_light_recycleview.xml b/app/src/main/res/layout/item_light_recycleview.xml deleted file mode 100644 index 637861f..0000000 --- a/app/src/main/res/layout/item_light_recycleview.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/popu_lamp_box_on_map.xml b/app/src/main/res/layout/popu_lamp_box_on_map.xml new file mode 100644 index 0000000..a5567d9 --- /dev/null +++ b/app/src/main/res/layout/popu_lamp_box_on_map.xml @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/popu_street_light.xml b/app/src/main/res/layout/popu_street_light.xml deleted file mode 100644 index 334b307..0000000 --- a/app/src/main/res/layout/popu_street_light.xml +++ /dev/null @@ -1,115 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file