diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index d5bbde4..7a084fc 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -69,6 +69,19 @@ } /** + * 设备分页列表 + */ + suspend fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ): String { + return api.getDeviceList( + AuthenticationHelper.token!!, + deviceCode, deviceType, projectId, status, + page, LocaleConstant.PAGE_LIMIT + ) + } + + /** * 设置甲烷阈值 */ suspend fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String): String { diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index d5bbde4..7a084fc 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -69,6 +69,19 @@ } /** + * 设备分页列表 + */ + suspend fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ): String { + return api.getDeviceList( + AuthenticationHelper.token!!, + deviceCode, deviceType, projectId, status, + page, LocaleConstant.PAGE_LIMIT + ) + } + + /** * 设置甲烷阈值 */ suspend fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String): String { diff --git a/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt new file mode 100644 index 0000000..b0335d8 --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt @@ -0,0 +1,13 @@ +package com.casic.br.operationsite.utils + +sealed class DeviceType { + /** + * HK摄像头 + * */ + object CAMERA : DeviceType() + + /** + * 激光甲烷 + * */ + object GAS : DeviceType() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index d5bbde4..7a084fc 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -69,6 +69,19 @@ } /** + * 设备分页列表 + */ + suspend fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ): String { + return api.getDeviceList( + AuthenticationHelper.token!!, + deviceCode, deviceType, projectId, status, + page, LocaleConstant.PAGE_LIMIT + ) + } + + /** * 设置甲烷阈值 */ suspend fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String): String { diff --git a/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt new file mode 100644 index 0000000..b0335d8 --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt @@ -0,0 +1,13 @@ +package com.casic.br.operationsite.utils + +sealed class DeviceType { + /** + * HK摄像头 + * */ + object CAMERA : DeviceType() + + /** + * 激光甲烷 + * */ + object GAS : DeviceType() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt new file mode 100644 index 0000000..e1ac7fc --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt @@ -0,0 +1,7 @@ +package com.casic.br.operationsite.utils + +import com.casic.br.operationsite.model.DeviceConfigModel + +object RuntimeCache { + val deviceModels = ArrayList() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index d5bbde4..7a084fc 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -69,6 +69,19 @@ } /** + * 设备分页列表 + */ + suspend fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ): String { + return api.getDeviceList( + AuthenticationHelper.token!!, + deviceCode, deviceType, projectId, status, + page, LocaleConstant.PAGE_LIMIT + ) + } + + /** * 设置甲烷阈值 */ suspend fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String): String { diff --git a/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt new file mode 100644 index 0000000..b0335d8 --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt @@ -0,0 +1,13 @@ +package com.casic.br.operationsite.utils + +sealed class DeviceType { + /** + * HK摄像头 + * */ + object CAMERA : DeviceType() + + /** + * 激光甲烷 + * */ + object GAS : DeviceType() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt new file mode 100644 index 0000000..e1ac7fc --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt @@ -0,0 +1,7 @@ +package com.casic.br.operationsite.utils + +import com.casic.br.operationsite.model.DeviceConfigModel + +object RuntimeCache { + val deviceModels = ArrayList() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index 5aaa250..8659606 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -18,7 +18,9 @@ import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.extensions.reformatFloatArray import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LocaleConstant +import com.casic.br.operationsite.utils.RuntimeCache import com.casic.br.operationsite.utils.hk.MessageCodeHub import com.casic.br.operationsite.utils.hk.SDKGuider import com.casic.br.operationsite.vm.RegionViewModel @@ -72,8 +74,12 @@ } override fun initData() { - hostModel = getDeviceConfigModels()[0] - configSelectView.text = "${hostModel.host}:${hostModel.port}" + RuntimeCache.deviceModels.forEach { + if (it.deviceType == DeviceType.CAMERA) { + hostModel = it + configSelectView.text = "${hostModel.host}:${hostModel.port}" + } + } //获取wifi列表 wifiModels.clear() @@ -97,12 +103,6 @@ } - private fun getDeviceConfigModels(): ArrayList { - val modes = ArrayList() - modes.add(DeviceConfigModel("192.168.10.101", 8000)) - return modes - } - override fun initEvent() { leftBackView.setOnClickListener { finish() } @@ -144,10 +144,12 @@ } configSelectView.setOnClickListener { - val configModels = getDeviceConfigModels() + val configModels = RuntimeCache.deviceModels val items = ArrayList() configModels.forEach { - items.add("${it.host}:${it.port}") + if (it.deviceType == DeviceType.CAMERA) { + items.add("${it.host}:${it.port}") + } } BottomActionSheet.Builder() diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index d5bbde4..7a084fc 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -69,6 +69,19 @@ } /** + * 设备分页列表 + */ + suspend fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ): String { + return api.getDeviceList( + AuthenticationHelper.token!!, + deviceCode, deviceType, projectId, status, + page, LocaleConstant.PAGE_LIMIT + ) + } + + /** * 设置甲烷阈值 */ suspend fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String): String { diff --git a/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt new file mode 100644 index 0000000..b0335d8 --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt @@ -0,0 +1,13 @@ +package com.casic.br.operationsite.utils + +sealed class DeviceType { + /** + * HK摄像头 + * */ + object CAMERA : DeviceType() + + /** + * 激光甲烷 + * */ + object GAS : DeviceType() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt new file mode 100644 index 0000000..e1ac7fc --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt @@ -0,0 +1,7 @@ +package com.casic.br.operationsite.utils + +import com.casic.br.operationsite.model.DeviceConfigModel + +object RuntimeCache { + val deviceModels = ArrayList() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index 5aaa250..8659606 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -18,7 +18,9 @@ import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.extensions.reformatFloatArray import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LocaleConstant +import com.casic.br.operationsite.utils.RuntimeCache import com.casic.br.operationsite.utils.hk.MessageCodeHub import com.casic.br.operationsite.utils.hk.SDKGuider import com.casic.br.operationsite.vm.RegionViewModel @@ -72,8 +74,12 @@ } override fun initData() { - hostModel = getDeviceConfigModels()[0] - configSelectView.text = "${hostModel.host}:${hostModel.port}" + RuntimeCache.deviceModels.forEach { + if (it.deviceType == DeviceType.CAMERA) { + hostModel = it + configSelectView.text = "${hostModel.host}:${hostModel.port}" + } + } //获取wifi列表 wifiModels.clear() @@ -97,12 +103,6 @@ } - private fun getDeviceConfigModels(): ArrayList { - val modes = ArrayList() - modes.add(DeviceConfigModel("192.168.10.101", 8000)) - return modes - } - override fun initEvent() { leftBackView.setOnClickListener { finish() } @@ -144,10 +144,12 @@ } configSelectView.setOnClickListener { - val configModels = getDeviceConfigModels() + val configModels = RuntimeCache.deviceModels val items = ArrayList() configModels.forEach { - items.add("${it.host}:${it.port}") + if (it.deviceType == DeviceType.CAMERA) { + items.add("${it.host}:${it.port}") + } } BottomActionSheet.Builder() diff --git a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt index 6b501a3..7eefe20 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt @@ -15,7 +15,9 @@ import com.casic.br.operationsite.extensions.createStopCommand import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LocaleConstant +import com.casic.br.operationsite.utils.RuntimeCache import com.casic.br.operationsite.utils.netty.SocketManager import com.casic.br.operationsite.vm.DeviceViewModel import com.gyf.immersionbar.ImmersionBar @@ -52,6 +54,13 @@ private var isActionUp = true override fun initData() { + RuntimeCache.deviceModels.forEach { + if (it.deviceType == DeviceType.GAS) { + hostModel = it + configSelectView.text = "${hostModel.host}:${hostModel.port}" + } + } + weakReferenceHandler = WeakReferenceHandler { when (it.what) { LocaleConstant.CONNECT_SUCCESS -> { @@ -67,8 +76,6 @@ true } - hostModel = getDeviceConfigModels()[0] - configSelectView.text = "${hostModel.host}:${hostModel.port}" SocketManager.get.connectNetty(hostModel.host, hostModel.port) //获取wifi列表 @@ -94,12 +101,6 @@ } } - private fun getDeviceConfigModels(): ArrayList { - val modes = ArrayList() - modes.add(DeviceConfigModel("192.168.10.21", 8000)) - return modes - } - override fun initEvent() { leftBackView.setOnClickListener { finish() } @@ -143,10 +144,12 @@ } configSelectView.setOnClickListener { - val configModels = getDeviceConfigModels() + val configModels = RuntimeCache.deviceModels val items = ArrayList() configModels.forEach { - items.add("${it.host}:${it.port}") + if (it.deviceType == DeviceType.GAS) { + items.add("${it.host}:${it.port}") + } } BottomActionSheet.Builder() diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index d5bbde4..7a084fc 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -69,6 +69,19 @@ } /** + * 设备分页列表 + */ + suspend fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ): String { + return api.getDeviceList( + AuthenticationHelper.token!!, + deviceCode, deviceType, projectId, status, + page, LocaleConstant.PAGE_LIMIT + ) + } + + /** * 设置甲烷阈值 */ suspend fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String): String { diff --git a/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt new file mode 100644 index 0000000..b0335d8 --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt @@ -0,0 +1,13 @@ +package com.casic.br.operationsite.utils + +sealed class DeviceType { + /** + * HK摄像头 + * */ + object CAMERA : DeviceType() + + /** + * 激光甲烷 + * */ + object GAS : DeviceType() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt new file mode 100644 index 0000000..e1ac7fc --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt @@ -0,0 +1,7 @@ +package com.casic.br.operationsite.utils + +import com.casic.br.operationsite.model.DeviceConfigModel + +object RuntimeCache { + val deviceModels = ArrayList() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index 5aaa250..8659606 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -18,7 +18,9 @@ import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.extensions.reformatFloatArray import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LocaleConstant +import com.casic.br.operationsite.utils.RuntimeCache import com.casic.br.operationsite.utils.hk.MessageCodeHub import com.casic.br.operationsite.utils.hk.SDKGuider import com.casic.br.operationsite.vm.RegionViewModel @@ -72,8 +74,12 @@ } override fun initData() { - hostModel = getDeviceConfigModels()[0] - configSelectView.text = "${hostModel.host}:${hostModel.port}" + RuntimeCache.deviceModels.forEach { + if (it.deviceType == DeviceType.CAMERA) { + hostModel = it + configSelectView.text = "${hostModel.host}:${hostModel.port}" + } + } //获取wifi列表 wifiModels.clear() @@ -97,12 +103,6 @@ } - private fun getDeviceConfigModels(): ArrayList { - val modes = ArrayList() - modes.add(DeviceConfigModel("192.168.10.101", 8000)) - return modes - } - override fun initEvent() { leftBackView.setOnClickListener { finish() } @@ -144,10 +144,12 @@ } configSelectView.setOnClickListener { - val configModels = getDeviceConfigModels() + val configModels = RuntimeCache.deviceModels val items = ArrayList() configModels.forEach { - items.add("${it.host}:${it.port}") + if (it.deviceType == DeviceType.CAMERA) { + items.add("${it.host}:${it.port}") + } } BottomActionSheet.Builder() diff --git a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt index 6b501a3..7eefe20 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt @@ -15,7 +15,9 @@ import com.casic.br.operationsite.extensions.createStopCommand import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LocaleConstant +import com.casic.br.operationsite.utils.RuntimeCache import com.casic.br.operationsite.utils.netty.SocketManager import com.casic.br.operationsite.vm.DeviceViewModel import com.gyf.immersionbar.ImmersionBar @@ -52,6 +54,13 @@ private var isActionUp = true override fun initData() { + RuntimeCache.deviceModels.forEach { + if (it.deviceType == DeviceType.GAS) { + hostModel = it + configSelectView.text = "${hostModel.host}:${hostModel.port}" + } + } + weakReferenceHandler = WeakReferenceHandler { when (it.what) { LocaleConstant.CONNECT_SUCCESS -> { @@ -67,8 +76,6 @@ true } - hostModel = getDeviceConfigModels()[0] - configSelectView.text = "${hostModel.host}:${hostModel.port}" SocketManager.get.connectNetty(hostModel.host, hostModel.port) //获取wifi列表 @@ -94,12 +101,6 @@ } } - private fun getDeviceConfigModels(): ArrayList { - val modes = ArrayList() - modes.add(DeviceConfigModel("192.168.10.21", 8000)) - return modes - } - override fun initEvent() { leftBackView.setOnClickListener { finish() } @@ -143,10 +144,12 @@ } configSelectView.setOnClickListener { - val configModels = getDeviceConfigModels() + val configModels = RuntimeCache.deviceModels val items = ArrayList() configModels.forEach { - items.add("${it.host}:${it.port}") + if (it.deviceType == DeviceType.GAS) { + items.add("${it.host}:${it.port}") + } } BottomActionSheet.Builder() diff --git a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt index a3e9478..4c4e4af 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt @@ -10,7 +10,11 @@ import com.casic.br.operationsite.R import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.extensions.showRouteOnMap +import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LoadingDialogHub +import com.casic.br.operationsite.utils.RuntimeCache +import com.casic.br.operationsite.vm.DeviceViewModel import com.casic.br.operationsite.vm.WorkSiteViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity @@ -28,6 +32,7 @@ private lateinit var aMap: AMap private lateinit var workSiteViewModel: WorkSiteViewModel + private lateinit var deviceViewModel: DeviceViewModel private lateinit var projectId: String private val geocoderSearch by lazy { GeocodeSearch(this) } private var latLng: LatLng? = null @@ -109,6 +114,33 @@ // }) } } + + deviceViewModel = ViewModelProvider(this)[DeviceViewModel::class.java] + deviceViewModel.getDeviceList("", "", projectId, "", 1) + deviceViewModel.deviceModels.observe(this) { + if (it.code == 200) { + it.data.rows.forEach { rowModel -> + if (rowModel.deviceType == "1") { + RuntimeCache.deviceModels.add( + DeviceConfigModel( + rowModel.cameraCode, + DeviceType.CAMERA, + rowModel.cameraIp, + rowModel.cameraPort.toInt() + ) + ) + RuntimeCache.deviceModels.add( + DeviceConfigModel( + rowModel.gasCode, + DeviceType.GAS, + rowModel.gasIp, + rowModel.gasPort.toInt() + ) + ) + } + } + } + } } override fun observeRequestState() { diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt index 752ca53..384f1b5 100644 --- a/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceConfigModel.kt @@ -1,3 +1,7 @@ package com.casic.br.operationsite.model; -data class DeviceConfigModel(val host: String, val port: Int) \ No newline at end of file +import com.casic.br.operationsite.utils.DeviceType + +data class DeviceConfigModel( + val deviceCode: String, val deviceType: DeviceType, val host: String, val port: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java new file mode 100644 index 0000000..31a6c8c --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/model/DeviceListModel.java @@ -0,0 +1,229 @@ +package com.casic.br.operationsite.model; + +import java.util.List; + +public class DeviceListModel { + + 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 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 RowsModel { + private String cameraCode; + private String cameraIp; + private String cameraPort; + private String createTime; + private String deviceBatch; + private String deviceCode; + private String deviceType; + private String deviceTypeName; + private String gasCode; + private String gasIp; + private String gasPort; + private String id; + private String isPowerSupply; + private String isPowerSupplyName; + private String manufacturer; + private String registerTime; + private String status; + private String statusName; + + public String getCameraCode() { + return cameraCode; + } + + public void setCameraCode(String cameraCode) { + this.cameraCode = cameraCode; + } + + public String getCameraIp() { + return cameraIp; + } + + public void setCameraIp(String cameraIp) { + this.cameraIp = cameraIp; + } + + public String getCameraPort() { + return cameraPort; + } + + public void setCameraPort(String cameraPort) { + this.cameraPort = cameraPort; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getDeviceBatch() { + return deviceBatch; + } + + public void setDeviceBatch(String deviceBatch) { + this.deviceBatch = deviceBatch; + } + + public String getDeviceCode() { + return deviceCode; + } + + public void setDeviceCode(String deviceCode) { + this.deviceCode = deviceCode; + } + + public String getDeviceType() { + return deviceType; + } + + public void setDeviceType(String deviceType) { + this.deviceType = deviceType; + } + + public String getDeviceTypeName() { + return deviceTypeName; + } + + public void setDeviceTypeName(String deviceTypeName) { + this.deviceTypeName = deviceTypeName; + } + + public String getGasCode() { + return gasCode; + } + + public void setGasCode(String gasCode) { + this.gasCode = gasCode; + } + + public String getGasIp() { + return gasIp; + } + + public void setGasIp(String gasIp) { + this.gasIp = gasIp; + } + + public String getGasPort() { + return gasPort; + } + + public void setGasPort(String gasPort) { + this.gasPort = gasPort; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsPowerSupply() { + return isPowerSupply; + } + + public void setIsPowerSupply(String isPowerSupply) { + this.isPowerSupply = isPowerSupply; + } + + public String getIsPowerSupplyName() { + return isPowerSupplyName; + } + + public void setIsPowerSupplyName(String isPowerSupplyName) { + this.isPowerSupplyName = isPowerSupplyName; + } + + public String getManufacturer() { + return manufacturer; + } + + public void setManufacturer(String manufacturer) { + this.manufacturer = manufacturer; + } + + public String getRegisterTime() { + return registerTime; + } + + public void setRegisterTime(String registerTime) { + this.registerTime = registerTime; + } + + 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; + } + } + } +} diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt index 9453060..f764ca3 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitService.kt @@ -54,6 +54,20 @@ ): String /** + * 设备分页列表 + */ + @GET("/device/listPage") + suspend fun getDeviceList( + @Header("token") token: String, + @Query("deviceCode") deviceCode: String, + @Query("deviceType") deviceType: String, + @Query("projectId") projectId: String, + @Query("status") status: String, + @Query("offset") offset: Int, + @Query("limit") limit: Int + ): String + + /** * 设置甲烷阈值 */ @FormUrlEncoded diff --git a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt index d5bbde4..7a084fc 100644 --- a/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/operationsite/retrofit/RetrofitServiceManager.kt @@ -69,6 +69,19 @@ } /** + * 设备分页列表 + */ + suspend fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ): String { + return api.getDeviceList( + AuthenticationHelper.token!!, + deviceCode, deviceType, projectId, status, + page, LocaleConstant.PAGE_LIMIT + ) + } + + /** * 设置甲烷阈值 */ suspend fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String): String { diff --git a/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt new file mode 100644 index 0000000..b0335d8 --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/DeviceType.kt @@ -0,0 +1,13 @@ +package com.casic.br.operationsite.utils + +sealed class DeviceType { + /** + * HK摄像头 + * */ + object CAMERA : DeviceType() + + /** + * 激光甲烷 + * */ + object GAS : DeviceType() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt new file mode 100644 index 0000000..e1ac7fc --- /dev/null +++ b/app/src/main/java/com/casic/br/operationsite/utils/RuntimeCache.kt @@ -0,0 +1,7 @@ +package com.casic.br.operationsite.utils + +import com.casic.br.operationsite.model.DeviceConfigModel + +object RuntimeCache { + val deviceModels = ArrayList() +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt index 5aaa250..8659606 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/HikVisionActivity.kt @@ -18,7 +18,9 @@ import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.extensions.reformatFloatArray import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LocaleConstant +import com.casic.br.operationsite.utils.RuntimeCache import com.casic.br.operationsite.utils.hk.MessageCodeHub import com.casic.br.operationsite.utils.hk.SDKGuider import com.casic.br.operationsite.vm.RegionViewModel @@ -72,8 +74,12 @@ } override fun initData() { - hostModel = getDeviceConfigModels()[0] - configSelectView.text = "${hostModel.host}:${hostModel.port}" + RuntimeCache.deviceModels.forEach { + if (it.deviceType == DeviceType.CAMERA) { + hostModel = it + configSelectView.text = "${hostModel.host}:${hostModel.port}" + } + } //获取wifi列表 wifiModels.clear() @@ -97,12 +103,6 @@ } - private fun getDeviceConfigModels(): ArrayList { - val modes = ArrayList() - modes.add(DeviceConfigModel("192.168.10.101", 8000)) - return modes - } - override fun initEvent() { leftBackView.setOnClickListener { finish() } @@ -144,10 +144,12 @@ } configSelectView.setOnClickListener { - val configModels = getDeviceConfigModels() + val configModels = RuntimeCache.deviceModels val items = ArrayList() configModels.forEach { - items.add("${it.host}:${it.port}") + if (it.deviceType == DeviceType.CAMERA) { + items.add("${it.host}:${it.port}") + } } BottomActionSheet.Builder() diff --git a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt index 6b501a3..7eefe20 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/MethaneActivity.kt @@ -15,7 +15,9 @@ import com.casic.br.operationsite.extensions.createStopCommand import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LocaleConstant +import com.casic.br.operationsite.utils.RuntimeCache import com.casic.br.operationsite.utils.netty.SocketManager import com.casic.br.operationsite.vm.DeviceViewModel import com.gyf.immersionbar.ImmersionBar @@ -52,6 +54,13 @@ private var isActionUp = true override fun initData() { + RuntimeCache.deviceModels.forEach { + if (it.deviceType == DeviceType.GAS) { + hostModel = it + configSelectView.text = "${hostModel.host}:${hostModel.port}" + } + } + weakReferenceHandler = WeakReferenceHandler { when (it.what) { LocaleConstant.CONNECT_SUCCESS -> { @@ -67,8 +76,6 @@ true } - hostModel = getDeviceConfigModels()[0] - configSelectView.text = "${hostModel.host}:${hostModel.port}" SocketManager.get.connectNetty(hostModel.host, hostModel.port) //获取wifi列表 @@ -94,12 +101,6 @@ } } - private fun getDeviceConfigModels(): ArrayList { - val modes = ArrayList() - modes.add(DeviceConfigModel("192.168.10.21", 8000)) - return modes - } - override fun initEvent() { leftBackView.setOnClickListener { finish() } @@ -143,10 +144,12 @@ } configSelectView.setOnClickListener { - val configModels = getDeviceConfigModels() + val configModels = RuntimeCache.deviceModels val items = ArrayList() configModels.forEach { - items.add("${it.host}:${it.port}") + if (it.deviceType == DeviceType.GAS) { + items.add("${it.host}:${it.port}") + } } BottomActionSheet.Builder() diff --git a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt index a3e9478..4c4e4af 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt @@ -10,7 +10,11 @@ import com.casic.br.operationsite.R import com.casic.br.operationsite.extensions.initLayoutImmersionBar import com.casic.br.operationsite.extensions.showRouteOnMap +import com.casic.br.operationsite.model.DeviceConfigModel +import com.casic.br.operationsite.utils.DeviceType import com.casic.br.operationsite.utils.LoadingDialogHub +import com.casic.br.operationsite.utils.RuntimeCache +import com.casic.br.operationsite.vm.DeviceViewModel import com.casic.br.operationsite.vm.WorkSiteViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity @@ -28,6 +32,7 @@ private lateinit var aMap: AMap private lateinit var workSiteViewModel: WorkSiteViewModel + private lateinit var deviceViewModel: DeviceViewModel private lateinit var projectId: String private val geocoderSearch by lazy { GeocodeSearch(this) } private var latLng: LatLng? = null @@ -109,6 +114,33 @@ // }) } } + + deviceViewModel = ViewModelProvider(this)[DeviceViewModel::class.java] + deviceViewModel.getDeviceList("", "", projectId, "", 1) + deviceViewModel.deviceModels.observe(this) { + if (it.code == 200) { + it.data.rows.forEach { rowModel -> + if (rowModel.deviceType == "1") { + RuntimeCache.deviceModels.add( + DeviceConfigModel( + rowModel.cameraCode, + DeviceType.CAMERA, + rowModel.cameraIp, + rowModel.cameraPort.toInt() + ) + ) + RuntimeCache.deviceModels.add( + DeviceConfigModel( + rowModel.gasCode, + DeviceType.GAS, + rowModel.gasIp, + rowModel.gasPort.toInt() + ) + ) + } + } + } + } } override fun observeRequestState() { diff --git a/app/src/main/java/com/casic/br/operationsite/vm/DeviceViewModel.kt b/app/src/main/java/com/casic/br/operationsite/vm/DeviceViewModel.kt index c84b9e5..cc73dd7 100644 --- a/app/src/main/java/com/casic/br/operationsite/vm/DeviceViewModel.kt +++ b/app/src/main/java/com/casic/br/operationsite/vm/DeviceViewModel.kt @@ -5,6 +5,7 @@ import com.casic.br.operationsite.extensions.separateResponseCode import com.casic.br.operationsite.extensions.toErrorMessage import com.casic.br.operationsite.model.CommonResultModel +import com.casic.br.operationsite.model.DeviceListModel import com.casic.br.operationsite.model.MethaneThresholdModel import com.casic.br.operationsite.retrofit.RetrofitServiceManager import com.google.gson.Gson @@ -17,9 +18,33 @@ class DeviceViewModel : BaseViewModel() { private val gson = Gson() + val deviceModels = MutableLiveData() val setThresholdResult = MutableLiveData() val thresholdResult = MutableLiveData() + fun getDeviceList( + deviceCode: String, deviceType: String, projectId: String, status: String, page: Int + ) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getDeviceList( + deviceCode, deviceType, projectId, status, page + ) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + deviceModels.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + loadState.value = LoadState.Success + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + it.printStackTrace() + }) + fun setMethaneThreshold(gasIp: String, gasPort: String, threshold: String) = launch({ loadState.value = LoadState.Loading val response = RetrofitServiceManager.setMethaneThreshold(gasIp, gasPort, threshold)