设备在线情况列表区域接口调用完成

master
wenfei 2 weeks ago
parent 7780f41e2c
commit 0717179f3c

@ -99,6 +99,8 @@ public class Contans {
public static final String USER_NAME_VPN = "usernameVpn";//vpn用户名 public static final String USER_NAME_VPN = "usernameVpn";//vpn用户名
public static final String PASS_WORD_VPN = "pwdVpn";//vpn密码 public static final String PASS_WORD_VPN = "pwdVpn";//vpn密码
public static final String DeviceOnlineStatusAreaBean ="DeviceOnlineStatusAreaBean";//设备状态区域
public class KEY { public class KEY {
public static final String SELECT_PERSON = "select_person";//选择的人数 public static final String SELECT_PERSON = "select_person";//选择的人数
public static final String SELECT_ADDR = "select_addr";//选择的乘车地址 public static final String SELECT_ADDR = "select_addr";//选择的乘车地址
@ -547,6 +549,9 @@ public class Contans {
//设备在线列表 //设备在线列表
public final static String DeviceOnlineStatusListUrl = "dserver/device/list"; public final static String DeviceOnlineStatusListUrl = "dserver/device/list";
//获取设备区域
public final static String DeviceOnlineStatusAreaBeanUrl = "dserver/map/area/list";
//人员组织结构模块 用户验证接口token //人员组织结构模块 用户验证接口token
public final static String AUTHENTICATIONLOGINTOKEN = "AUTHENTICATIONLOGINTOKEN"; public final static String AUTHENTICATIONLOGINTOKEN = "AUTHENTICATIONLOGINTOKEN";
//人员组织结构模块 下次登录时间 //人员组织结构模块 下次登录时间

@ -3,17 +3,27 @@ package com.rehome.zhdcoa.adapter
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Context import android.content.Context
import android.text.TextUtils
import android.util.Log import android.util.Log
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import com.rehome.zhdcoa.Contans
import com.rehome.zhdcoa.Listener.OnItemClickListener import com.rehome.zhdcoa.Listener.OnItemClickListener
import com.rehome.zhdcoa.base.BaseViewBindingAdapter import com.rehome.zhdcoa.base.BaseViewBindingAdapter
import com.rehome.zhdcoa.bean.DeviceOnlineStatusAreaBean
import com.rehome.zhdcoa.bean.DeviceOnlineStatusListResultBean import com.rehome.zhdcoa.bean.DeviceOnlineStatusListResultBean
import com.rehome.zhdcoa.databinding.AdapterDeviceOnlineStatusListBinding import com.rehome.zhdcoa.databinding.AdapterDeviceOnlineStatusListBinding
import com.rehome.zhdcoa.utils.GsonUtils import com.rehome.zhdcoa.utils.GsonUtils
import com.rehome.zhdcoa.utils.SPUtils
import org.w3c.dom.Text
class DeviceOnlineStatusListAdapter(var context: Context,var data: MutableList<Any>,var type: String,var onItemClickListener: OnItemClickListener) : BaseViewBindingAdapter<AdapterDeviceOnlineStatusListBinding>(context){ class DeviceOnlineStatusListAdapter(
var context: Context,
var data: MutableList<Any>,
var type: String,
var onItemClickListener: OnItemClickListener
) : BaseViewBindingAdapter<AdapterDeviceOnlineStatusListBinding>(context) {
override fun getCount(): Int { override fun getCount(): Int {
return data.count() return data.count()
} }
@ -27,94 +37,227 @@ class DeviceOnlineStatusListAdapter(var context: Context,var data: MutableList<A
} }
fun setTypeTemp(typeTemp: String) { fun setTypeTemp(typeTemp: String) {
this.type=typeTemp this.type = typeTemp
} }
override fun getBinding(inflater: LayoutInflater,parent: ViewGroup?) = AdapterDeviceOnlineStatusListBinding.inflate(inflater, parent, false) override fun getBinding(inflater: LayoutInflater, parent: ViewGroup?) =
AdapterDeviceOnlineStatusListBinding.inflate(inflater, parent, false)
@SuppressLint("SetTextI18n", "DefaultLocale") @SuppressLint("SetTextI18n", "DefaultLocale")
override fun handleData(position: Int, binding: AdapterDeviceOnlineStatusListBinding) { override fun handleData(position: Int, binding: AdapterDeviceOnlineStatusListBinding) {
Log.i("app",type) Log.i("app", type)
val item: Any = data[position] val item: Any = data[position]
if(type=="测振测温设备"){ if (type == "测振测温设备") {
val itemBean:DeviceOnlineStatusListResultBean.DeviceItemCwcz? = GsonUtils.GsonToBean(GsonUtils.GsonString(item), val itemBean: DeviceOnlineStatusListResultBean.DeviceItemCwcz? = GsonUtils.GsonToBean(
DeviceOnlineStatusListResultBean.DeviceItemCwcz::class.java) GsonUtils.GsonString(item),
binding.llCwcz.visibility= View.VISIBLE DeviceOnlineStatusListResultBean.DeviceItemCwcz::class.java
binding.llYzjc.visibility= View.GONE )
binding.llLljc.visibility= View.GONE
binding.llRcx.visibility= View.GONE binding.llCwcz.visibility = View.VISIBLE
binding.llZigbee.visibility= View.GONE binding.llYzjc.visibility = View.GONE
binding.llLljc.visibility = View.GONE
binding.llRcx.visibility = View.GONE
binding.llZigbee.visibility = View.GONE
if (itemBean != null) {
if(!TextUtils.isEmpty(itemBean.position)){
val deviceOnlineStatusAreaBeanStr: String? =
SPUtils.get(context, Contans.DeviceOnlineStatusAreaBean, "") as String?
if (deviceOnlineStatusAreaBeanStr != null) {
val bean = GsonUtils.GsonToBean(
deviceOnlineStatusAreaBeanStr,
DeviceOnlineStatusAreaBean::class.java
)
if (bean != null && bean.code == 20000 && bean.isSuccess && bean.data != null && bean.data.size > 0) {
val areaList: MutableList<DeviceOnlineStatusAreaBean.DeviceArea> =
mutableListOf()//在线设备区域列表
areaList.addAll(bean.data)
//更新区域
for (itemArea in areaList) {
if(itemArea.nodeList!=null&&itemArea.nodeList.size>0){
for (itemNodeList in itemArea.nodeList) {
if(!TextUtils.isEmpty(itemNodeList.nodeKey)){
if(itemNodeList.nodeKey==itemBean.position){
if(!TextUtils.isEmpty(itemNodeList.cname)){
itemBean.nodeListCname=itemNodeList.cname
}
}
}
}
}
}
}
}
}
if(itemBean!=null){
binding.tvSbbh.text = itemBean.id binding.tvSbbh.text = itemBean.id
binding.tvIp.text = itemBean.ip binding.tvIp.text = itemBean.ip
binding.tvPort.text = itemBean.port binding.tvPort.text = itemBean.port
binding.tvDl.text = String.format("%.0f", itemBean.voltage) + "%" binding.tvDl.text = String.format("%.0f", itemBean.voltage) + "%"
binding.tvSbmc.text = itemBean.name binding.tvSbmc.text = itemBean.name
binding.tvSj.text = itemBean.lastOnlineTime binding.tvSj.text = itemBean.lastOnlineTime
binding.tvQuYu.text = itemBean.nodeListCname
binding.tvPhotoManage.setOnClickListener { binding.tvPhotoManage.setOnClickListener {
onItemClickListener.onItemClick(position,binding.tvPhotoManage) onItemClickListener.onItemClick(position, binding.tvPhotoManage)
} }
} }
} }
if(type=="油质监测设备"){ if (type == "油质监测设备") {
val itemBean:DeviceOnlineStatusListResultBean.DeviceItemYzjc? = GsonUtils.GsonToBean(GsonUtils.GsonString(item), val itemBean: DeviceOnlineStatusListResultBean.DeviceItemYzjc? = GsonUtils.GsonToBean(
DeviceOnlineStatusListResultBean.DeviceItemYzjc::class.java) GsonUtils.GsonString(item),
binding.llCwcz.visibility= View.GONE DeviceOnlineStatusListResultBean.DeviceItemYzjc::class.java
binding.llYzjc.visibility= View.VISIBLE )
binding.llLljc.visibility= View.GONE binding.llCwcz.visibility = View.GONE
binding.llRcx.visibility= View.GONE binding.llYzjc.visibility = View.VISIBLE
binding.llZigbee.visibility= View.GONE binding.llLljc.visibility = View.GONE
binding.llRcx.visibility = View.GONE
if(itemBean!=null){ binding.llZigbee.visibility = View.GONE
if (itemBean != null) {
if(!TextUtils.isEmpty(itemBean.position)){
val deviceOnlineStatusAreaBeanStr: String? =
SPUtils.get(context, Contans.DeviceOnlineStatusAreaBean, "") as String?
if (deviceOnlineStatusAreaBeanStr != null) {
val bean = GsonUtils.GsonToBean(
deviceOnlineStatusAreaBeanStr,
DeviceOnlineStatusAreaBean::class.java
)
if (bean != null && bean.code == 20000 && bean.isSuccess && bean.data != null && bean.data.size > 0) {
val areaList: MutableList<DeviceOnlineStatusAreaBean.DeviceArea> =
mutableListOf()//在线设备区域列表
areaList.addAll(bean.data)
//更新区域
for (itemArea in areaList) {
if(itemArea.nodeList!=null&&itemArea.nodeList.size>0){
for (itemNodeList in itemArea.nodeList) {
if(!TextUtils.isEmpty(itemNodeList.nodeKey)){
if(itemNodeList.nodeKey==itemBean.position){
if(!TextUtils.isEmpty(itemNodeList.cname)){
itemBean.nodeListCname=itemNodeList.cname
}
}
}
}
}
}
}
}
}
binding.tvSbbhYzjc.text = itemBean.id binding.tvSbbhYzjc.text = itemBean.id
binding.tvSbmcYzjc.text = itemBean.name binding.tvSbmcYzjc.text = itemBean.name
binding.tvSjYzjc.text = itemBean.lastOnlineTime binding.tvSjYzjc.text = itemBean.lastOnlineTime
binding.tvQuYuYzjc.text = itemBean.nodeListCname
} }
} }
if(type=="燃料测温设备"){ if (type == "燃料测温设备") {
val itemBean:DeviceOnlineStatusListResultBean.DeviceItemRlcw? = GsonUtils.GsonToBean(GsonUtils.GsonString(item), val itemBean: DeviceOnlineStatusListResultBean.DeviceItemRlcw? = GsonUtils.GsonToBean(
DeviceOnlineStatusListResultBean.DeviceItemRlcw::class.java) GsonUtils.GsonString(item),
binding.llCwcz.visibility= View.GONE DeviceOnlineStatusListResultBean.DeviceItemRlcw::class.java
binding.llYzjc.visibility= View.GONE )
binding.llLljc.visibility= View.VISIBLE binding.llCwcz.visibility = View.GONE
binding.llRcx.visibility= View.GONE binding.llYzjc.visibility = View.GONE
binding.llZigbee.visibility= View.GONE binding.llLljc.visibility = View.VISIBLE
binding.llRcx.visibility = View.GONE
if(itemBean!=null){ binding.llZigbee.visibility = View.GONE
if (itemBean != null) {
if(!TextUtils.isEmpty(itemBean.position)){
val deviceOnlineStatusAreaBeanStr: String? =
SPUtils.get(context, Contans.DeviceOnlineStatusAreaBean, "") as String?
if (deviceOnlineStatusAreaBeanStr != null) {
val bean = GsonUtils.GsonToBean(
deviceOnlineStatusAreaBeanStr,
DeviceOnlineStatusAreaBean::class.java
)
if (bean != null && bean.code == 20000 && bean.isSuccess && bean.data != null && bean.data.size > 0) {
val areaList: MutableList<DeviceOnlineStatusAreaBean.DeviceArea> =
mutableListOf()//在线设备区域列表
areaList.addAll(bean.data)
//更新区域
for (itemArea in areaList) {
if(itemArea.nodeList!=null&&itemArea.nodeList.size>0){
for (itemNodeList in itemArea.nodeList) {
if(!TextUtils.isEmpty(itemNodeList.nodeKey)){
if(itemNodeList.nodeKey==itemBean.position){
if(!TextUtils.isEmpty(itemNodeList.cname)){
itemBean.nodeListCname=itemNodeList.cname
}
}
}
}
}
}
}
}
}
binding.tvSbbhLljc.text = itemBean.id binding.tvSbbhLljc.text = itemBean.id
binding.tvIpLljc.text = itemBean.ip binding.tvIpLljc.text = itemBean.ip
binding.tvPortLljc.text = itemBean.port binding.tvPortLljc.text = itemBean.port
binding.tvSbmcLljc.text = itemBean.name binding.tvSbmcLljc.text = itemBean.name
binding.tvSjLljc.text = itemBean.lastOnlineTime binding.tvSjLljc.text = itemBean.lastOnlineTime
binding.tvQuYuLljc.text = itemBean.nodeListCname
} }
} }
if(type=="热成像测温设备"){ if (type == "热成像测温设备") {
val itemBean:DeviceOnlineStatusListResultBean.DeviceItemRcqcw? = GsonUtils.GsonToBean(GsonUtils.GsonString(item), val itemBean: DeviceOnlineStatusListResultBean.DeviceItemRcqcw? = GsonUtils.GsonToBean(
DeviceOnlineStatusListResultBean.DeviceItemRcqcw::class.java) GsonUtils.GsonString(item),
binding.llCwcz.visibility= View.GONE DeviceOnlineStatusListResultBean.DeviceItemRcqcw::class.java
binding.llYzjc.visibility= View.GONE )
binding.llLljc.visibility= View.GONE binding.llCwcz.visibility = View.GONE
binding.llRcx.visibility= View.VISIBLE binding.llYzjc.visibility = View.GONE
binding.llZigbee.visibility= View.GONE binding.llLljc.visibility = View.GONE
binding.llRcx.visibility = View.VISIBLE
if(itemBean!=null){ binding.llZigbee.visibility = View.GONE
if (itemBean != null) {
if(!TextUtils.isEmpty(itemBean.position)){
val deviceOnlineStatusAreaBeanStr: String? =
SPUtils.get(context, Contans.DeviceOnlineStatusAreaBean, "") as String?
if (deviceOnlineStatusAreaBeanStr != null) {
val bean = GsonUtils.GsonToBean(
deviceOnlineStatusAreaBeanStr,
DeviceOnlineStatusAreaBean::class.java
)
if (bean != null && bean.code == 20000 && bean.isSuccess && bean.data != null && bean.data.size > 0) {
val areaList: MutableList<DeviceOnlineStatusAreaBean.DeviceArea> =
mutableListOf()//在线设备区域列表
areaList.addAll(bean.data)
//更新区域
for (itemArea in areaList) {
if(itemArea.nodeList!=null&&itemArea.nodeList.size>0){
for (itemNodeList in itemArea.nodeList) {
if(!TextUtils.isEmpty(itemNodeList.nodeKey)){
if(itemNodeList.nodeKey==itemBean.position){
if(!TextUtils.isEmpty(itemNodeList.cname)){
itemBean.nodeListCname=itemNodeList.cname
}
}
}
}
}
}
}
}
}
binding.tvSbbhRcx.text = itemBean.id binding.tvSbbhRcx.text = itemBean.id
binding.tvSbmcRcx.text = itemBean.name binding.tvSbmcRcx.text = itemBean.name
binding.tvSjRcx.text = itemBean.lastOnlineTime binding.tvSjRcx.text = itemBean.lastOnlineTime
binding.tvQuYuRcx.text = itemBean.nodeListCname
} }
} }
if(type=="zigBee 传感器"){ if (type == "zigBee 传感器") {
val itemBean:DeviceOnlineStatusListResultBean.DeviceItemZigBee? = GsonUtils.GsonToBean(GsonUtils.GsonString(item), val itemBean: DeviceOnlineStatusListResultBean.DeviceItemZigBee? = GsonUtils.GsonToBean(
DeviceOnlineStatusListResultBean.DeviceItemZigBee::class.java) GsonUtils.GsonString(item),
binding.llCwcz.visibility= View.GONE DeviceOnlineStatusListResultBean.DeviceItemZigBee::class.java
binding.llYzjc.visibility= View.GONE )
binding.llLljc.visibility= View.GONE binding.llCwcz.visibility = View.GONE
binding.llRcx.visibility= View.GONE binding.llYzjc.visibility = View.GONE
binding.llZigbee.visibility= View.VISIBLE binding.llLljc.visibility = View.GONE
binding.llRcx.visibility = View.GONE
if(itemBean!=null){ binding.llZigbee.visibility = View.VISIBLE
if (itemBean != null) {
binding.tvSbbhZigbee.text = itemBean.deviceCode binding.tvSbbhZigbee.text = itemBean.deviceCode
binding.tvTypeZigbee.text = itemBean.category binding.tvTypeZigbee.text = itemBean.category
binding.tvLongZigbee.text = String.format("%.0f", itemBean.sampleLength) binding.tvLongZigbee.text = String.format("%.0f", itemBean.sampleLength)
@ -122,7 +265,7 @@ class DeviceOnlineStatusListAdapter(var context: Context,var data: MutableList<A
binding.tvSbmcZigbee.text = itemBean.name binding.tvSbmcZigbee.text = itemBean.name
binding.tvZcqhZigbee.text = itemBean.bearingNumber binding.tvZcqhZigbee.text = itemBean.bearingNumber
binding.tvPhotoManageZigbee.setOnClickListener { binding.tvPhotoManageZigbee.setOnClickListener {
onItemClickListener.onItemClick(position,binding.tvPhotoManage) onItemClickListener.onItemClick(position, binding.tvPhotoManage)
} }
} }
} }

@ -0,0 +1,195 @@
package com.rehome.zhdcoa.bean;
import java.util.List;
public class DeviceOnlineStatusAreaBean extends DeviceAlarmBaseBean{
private List<DeviceArea> data;
public List<DeviceArea> getData() {
return data;
}
public void setData(List<DeviceArea> data) {
this.data = data;
}
//一级区域
public static class DeviceArea {
private Long id;
private String areaKey;
private String cname;
private String remark;
private List<NodeList> nodeList;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getAreaKey() {
return areaKey;
}
public void setAreaKey(String areaKey) {
this.areaKey = areaKey;
}
public String getCname() {
return cname;
}
public void setCname(String cname) {
this.cname = cname;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public List<NodeList> getNodeList() {
return nodeList;
}
public void setNodeList(List<NodeList> nodeList) {
this.nodeList = nodeList;
}
}
//二级区域
public static class NodeList {
private Long id;//id
private Long areaId;//区域id
private String areaKey;
private String cname;//区域名称
private String nodeKey;//节点key对应设备在线列表position
private String remark;//备注
private String xyz;//
private Boolean indoorScene;
private String cameraObjInfo;//
private Boolean riskUpdate;//
private Long riskLevel;//
private Long showSort;//
private String xy;//
private Long cameraNum;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getAreaId() {
return areaId;
}
public void setAreaId(Long areaId) {
this.areaId = areaId;
}
public String getAreaKey() {
return areaKey;
}
public void setAreaKey(String areaKey) {
this.areaKey = areaKey;
}
public String getCname() {
return cname;
}
public void setCname(String cname) {
this.cname = cname;
}
public String getNodeKey() {
return nodeKey;
}
public void setNodeKey(String nodeKey) {
this.nodeKey = nodeKey;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getXyz() {
return xyz;
}
public void setXyz(String xyz) {
this.xyz = xyz;
}
public Boolean getIndoorScene() {
return indoorScene;
}
public void setIndoorScene(Boolean indoorScene) {
this.indoorScene = indoorScene;
}
public String getCameraObjInfo() {
return cameraObjInfo;
}
public void setCameraObjInfo(String cameraObjInfo) {
this.cameraObjInfo = cameraObjInfo;
}
public Boolean getRiskUpdate() {
return riskUpdate;
}
public void setRiskUpdate(Boolean riskUpdate) {
this.riskUpdate = riskUpdate;
}
public Long getRiskLevel() {
return riskLevel;
}
public void setRiskLevel(Long riskLevel) {
this.riskLevel = riskLevel;
}
public Long getShowSort() {
return showSort;
}
public void setShowSort(Long showSort) {
this.showSort = showSort;
}
public String getXy() {
return xy;
}
public void setXy(String xy) {
this.xy = xy;
}
public Long getCameraNum() {
return cameraNum;
}
public void setCameraNum(Long cameraNum) {
this.cameraNum = cameraNum;
}
}
}

@ -94,6 +94,7 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
private String port;//端口 private String port;//端口
private Double voltage;//电量 测振测温设备 private Double voltage;//电量 测振测温设备
private String positionName; private String positionName;
private String nodeListCname;
public String getId() { public String getId() {
@ -175,6 +176,14 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
public void setPositionName(String positionName) { public void setPositionName(String positionName) {
this.positionName = positionName; this.positionName = positionName;
} }
public String getNodeListCname() {
return nodeListCname;
}
public void setNodeListCname(String nodeListCname) {
this.nodeListCname = nodeListCname;
}
} }
//油质监测设备 //油质监测设备
public static class DeviceItemYzjc { public static class DeviceItemYzjc {
@ -183,6 +192,7 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
private String position;//所在区域,对应区域列表下nodeList下的的nodeKey 接口http://10.19.0.17:1700/dserver/map/area/list?v=1770171007208 private String position;//所在区域,对应区域列表下nodeList下的的nodeKey 接口http://10.19.0.17:1700/dserver/map/area/list?v=1770171007208
private String lastOnlineTime;//最后在线时间 private String lastOnlineTime;//最后在线时间
private String positionName; private String positionName;
private String nodeListCname;
public String getId() { public String getId() {
return id; return id;
@ -223,6 +233,14 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
public void setPositionName(String positionName) { public void setPositionName(String positionName) {
this.positionName = positionName; this.positionName = positionName;
} }
public String getNodeListCname() {
return nodeListCname;
}
public void setNodeListCname(String nodeListCname) {
this.nodeListCname = nodeListCname;
}
} }
//燃料测温设备 //燃料测温设备
public static class DeviceItemRlcw { public static class DeviceItemRlcw {
@ -243,6 +261,7 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
private String alarmLastTime;//燃料测温设备 private String alarmLastTime;//燃料测温设备
private Double temperature;//温度 燃料测温设备 private Double temperature;//温度 燃料测温设备
private String positionName; private String positionName;
private String nodeListCname;
public String getId() { public String getId() {
@ -380,6 +399,14 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
public void setPositionName(String positionName) { public void setPositionName(String positionName) {
this.positionName = positionName; this.positionName = positionName;
} }
public String getNodeListCname() {
return nodeListCname;
}
public void setNodeListCname(String nodeListCname) {
this.nodeListCname = nodeListCname;
}
} }
//热成像测温设备 //热成像测温设备
public static class DeviceItemRcqcw { public static class DeviceItemRcqcw {
@ -391,6 +418,7 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
private String ruleId;// 热成像测温设备 private String ruleId;// 热成像测温设备
private String areaId;// 区域,对应区域列表下nodeList下的的nodeKey private String areaId;// 区域,对应区域列表下nodeList下的的nodeKey
private String positionName; private String positionName;
private String nodeListCname;
public String getId() { public String getId() {
return id; return id;
@ -455,6 +483,14 @@ public class DeviceOnlineStatusListResultBean extends DeviceAlarmBaseBean{
public void setPositionName(String positionName) { public void setPositionName(String positionName) {
this.positionName = positionName; this.positionName = positionName;
} }
public String getNodeListCname() {
return nodeListCname;
}
public void setNodeListCname(String nodeListCname) {
this.nodeListCname = nodeListCname;
}
} }
//ZigBee传感器 //ZigBee传感器
public static class DeviceItemZigBee { public static class DeviceItemZigBee {

@ -164,7 +164,7 @@ public class DeviceOnlinePhotoManageActivity extends BaseActivity {
private GridImageAdapter mAdapter; private GridImageAdapter mAdapter;
private int maxSelectNum = 8; private int maxSelectNum = 1;
private List<LocalMedia> mData = new ArrayList<>(); private List<LocalMedia> mData = new ArrayList<>();
private int language = LanguageConfig.UNKNOWN_LANGUAGE; private int language = LanguageConfig.UNKNOWN_LANGUAGE;
@ -368,11 +368,11 @@ public class DeviceOnlinePhotoManageActivity extends BaseActivity {
deviceOnlinePhotoGridViewAdapter.getData().clear(); deviceOnlinePhotoGridViewAdapter.getData().clear();
deviceOnlinePhotoGridViewAdapter.getData().addAll(onlinePhotoListTemp); deviceOnlinePhotoGridViewAdapter.getData().addAll(onlinePhotoListTemp);
deviceOnlinePhotoGridViewAdapter.notifyDataSetChanged(); deviceOnlinePhotoGridViewAdapter.notifyDataSetChanged();
if(onlinePhotoList.size()>=8){ if(!onlinePhotoList.isEmpty()){
ll_recycle.setVisibility(View.GONE); ll_recycle.setVisibility(View.GONE);
}else{ }else{
ll_recycle.setVisibility(View.VISIBLE); ll_recycle.setVisibility(View.VISIBLE);
maxSelectNum=8-onlinePhotoList.size(); maxSelectNum=1-onlinePhotoList.size();
} }
}else{ }else{
onlinePhotoList.clear(); onlinePhotoList.clear();

@ -10,6 +10,7 @@ import com.rehome.zhdcoa.Contans
import com.rehome.zhdcoa.R import com.rehome.zhdcoa.R
import com.rehome.zhdcoa.adapter.DeviceOnlineStatusListAdapter import com.rehome.zhdcoa.adapter.DeviceOnlineStatusListAdapter
import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding
import com.rehome.zhdcoa.bean.DeviceOnlineStatusAreaBean
import com.rehome.zhdcoa.bean.DeviceOnlineStatusListResultBean import com.rehome.zhdcoa.bean.DeviceOnlineStatusListResultBean
import com.rehome.zhdcoa.databinding.ActivityDeviceOnlineStatusListBinding import com.rehome.zhdcoa.databinding.ActivityDeviceOnlineStatusListBinding
import com.rehome.zhdcoa.utils.AuthenticationLoginAIUtils import com.rehome.zhdcoa.utils.AuthenticationLoginAIUtils
@ -17,6 +18,7 @@ import com.rehome.zhdcoa.utils.GsonUtils
import com.rehome.zhdcoa.utils.HttpListener import com.rehome.zhdcoa.utils.HttpListener
import com.rehome.zhdcoa.utils.NohttpUtils import com.rehome.zhdcoa.utils.NohttpUtils
import com.rehome.zhdcoa.utils.RSAAndroid import com.rehome.zhdcoa.utils.RSAAndroid
import com.rehome.zhdcoa.utils.SPUtils
import com.rehome.zhdcoa.weiget.LoadListView import com.rehome.zhdcoa.weiget.LoadListView
import com.yolanda.nohttp.NoHttp import com.yolanda.nohttp.NoHttp
import com.yolanda.nohttp.RequestMethod import com.yolanda.nohttp.RequestMethod
@ -29,6 +31,9 @@ class DeviceOnlineStatusListActivity : BaseActivityOaToolbarViewBinding<Activity
private lateinit var spinnerAdapter: ArrayAdapter<CharSequence> private lateinit var spinnerAdapter: ArrayAdapter<CharSequence>
//options:[{ value:'online',label:'在线”}{value:'offline',label:'离线”}1 //options:[{ value:'online',label:'在线”}{value:'offline',label:'离线”}1
private var dataList: MutableList<Any> = mutableListOf()//数据列表 private var dataList: MutableList<Any> = mutableListOf()//数据列表
private var areaList: MutableList<DeviceOnlineStatusAreaBean.DeviceArea> = mutableListOf()//在线设备区域列表
private lateinit var deviceOnlineStatusListAdapter: DeviceOnlineStatusListAdapter private lateinit var deviceOnlineStatusListAdapter: DeviceOnlineStatusListAdapter
@ -124,7 +129,8 @@ class DeviceOnlineStatusListActivity : BaseActivityOaToolbarViewBinding<Activity
showToast("设备状态智能监测及分析平台登录失败") showToast("设备状态智能监测及分析平台登录失败")
} else { } else {
//登录成功 //登录成功
getAlarmListData() //获取区域
getDeviceAreaList()
} }
} }
} catch (e: Exception) { } catch (e: Exception) {
@ -259,14 +265,25 @@ class DeviceOnlineStatusListActivity : BaseActivityOaToolbarViewBinding<Activity
if (bean != null && bean.code == 20000 && bean.isSuccess && bean.data != null && bean.data.dataList != null && bean.data.dataList.size>0) { if (bean != null && bean.code == 20000 && bean.isSuccess && bean.data != null && bean.data.dataList != null && bean.data.dataList.size>0) {
dataList.clear() dataList.clear()
dataList.addAll(bean.data.dataList) dataList.addAll(bean.data.dataList)
for (item in dataList) {
showLog(GsonUtils.GsonString(item))
}
// //更新区域
// if(areaList.size>0){
// for (itemArea in areaList) {
// showLog(GsonUtils.GsonString(itemArea))
// }
// }
deviceOnlineStatusListAdapter.setTypeTemp(binding.spZy.selectedItem.toString()) deviceOnlineStatusListAdapter.setTypeTemp(binding.spZy.selectedItem.toString())
deviceOnlineStatusListAdapter.notifyDataSetChanged() deviceOnlineStatusListAdapter.notifyDataSetChanged()
binding.tvNodata.visibility = View.GONE binding.tvNodata.visibility = View.GONE
binding.lv.visibility=View.VISIBLE binding.lv.visibility=View.VISIBLE
pageNo++ pageNo++
for (item in dataList) {
showLog(GsonUtils.GsonString(item))
}
}else{ }else{
dataList.clear() dataList.clear()
deviceOnlineStatusListAdapter.setTypeTemp(binding.spZy.selectedItem.toString()) deviceOnlineStatusListAdapter.setTypeTemp(binding.spZy.selectedItem.toString())
@ -282,6 +299,42 @@ class DeviceOnlineStatusListActivity : BaseActivityOaToolbarViewBinding<Activity
}) })
} }
private fun getDeviceAreaList() {
//DeviceOnlineStatusAreaBean
val request = NoHttp.createStringRequest(
Contans.IP + Contans.DeviceOnlineStatusAreaBeanUrl,
RequestMethod.GET
)
NohttpUtils.getInstance().add(this, 0, request, object : HttpListener<String?> {
override fun onSucceed(what: Int, response: Response<String?>?) {
val result = response?.get()
showLog("----------------")
showLog(result)
val bean = GsonUtils.GsonToBean(
result,
DeviceOnlineStatusAreaBean::class.java
)
showLog(GsonUtils.GsonString(bean))
if (bean != null && bean.code == 20000 && bean.isSuccess && bean.data != null && bean.data.size>0) {
areaList.clear()
areaList.addAll(bean.data)
SPUtils.put(context,Contans.DeviceOnlineStatusAreaBean,result)
//获取在线设备列表
getAlarmListData()
}
}
override fun onFailed(what: Int, response: Response<String?>?) {
}
})
}
private fun getAlarmListLoadMoreData() { private fun getAlarmListLoadMoreData() {
val request = NoHttp.createStringRequest( val request = NoHttp.createStringRequest(

@ -89,7 +89,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textSize="30sp" android:textSize="30sp"
android:textColor="#C0FF3E" android:textColor="#C0FF3E"
android:text="115"/> android:text="0"/>
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
@ -109,7 +109,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textSize="30sp" android:textSize="30sp"
android:textColor="@color/red" android:textColor="@color/red"
android:text="151"/> android:text="0"/>
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
@ -129,7 +129,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textSize="30sp" android:textSize="30sp"
android:textColor="#000000" android:textColor="#000000"
android:text="266"/> android:text="0"/>
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"

Loading…
Cancel
Save