diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index e6b4490..c700f76 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -442,7 +442,7 @@ android:name=".ui.activity.SbinfoActivity" android:screenOrientation="portrait" /> ) : BaseViewBindingAdapter(context){ + override fun getCount(): Int { + return data.count() + } + + override fun getItem(position: Int): Any { + return data[position] + } + + override fun getItemId(position: Int): Long { + return position.toLong() + } + + override fun getBinding(inflater: LayoutInflater,parent: ViewGroup?) = AdapterDeviceAlarmInfoBinding.inflate(inflater, parent, false) + + override fun handleData(position: Int, binding: AdapterDeviceAlarmInfoBinding) { + val item: DeviceAlarmListResultBean.DeviceWarning = data[position] + binding.tvSbwz.text = item.deviceName + binding.tvSbid.text = item.deviceCode + binding.tvZj.text = item.specialtyStr + binding.tvBjqx.text = item.description + binding.tvSj.text = item.warningTime + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/rehome/zhdcoa/bean/DeviceAlarmBaseBean.java b/app/src/main/java/com/rehome/zhdcoa/bean/DeviceAlarmBaseBean.java new file mode 100644 index 0000000..184b16b --- /dev/null +++ b/app/src/main/java/com/rehome/zhdcoa/bean/DeviceAlarmBaseBean.java @@ -0,0 +1,33 @@ +package com.rehome.zhdcoa.bean; + +public class DeviceAlarmBaseBean { + private boolean success; + //信息提示 + private int code; + + private String message; + + public boolean isSuccess() { + return success; + } + + public void setSuccess(boolean success) { + this.success = success; + } + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/app/src/main/java/com/rehome/zhdcoa/bean/DeviceAlarmListResultBean.java b/app/src/main/java/com/rehome/zhdcoa/bean/DeviceAlarmListResultBean.java index 138cca7..c46d531 100644 --- a/app/src/main/java/com/rehome/zhdcoa/bean/DeviceAlarmListResultBean.java +++ b/app/src/main/java/com/rehome/zhdcoa/bean/DeviceAlarmListResultBean.java @@ -2,18 +2,85 @@ package com.rehome.zhdcoa.bean; import java.util.List; -public class DeviceAlarmListResultBean extends AIBaseBean{ - private RowsBean data; +public class DeviceAlarmListResultBean extends DeviceAlarmBaseBean{ + private Page data; - public RowsBean getData() { + public Page getData() { return data; } - public void setData(RowsBean data) { + public void setData(Page data) { this.data = data; } - public static class Params { + public static class Page{ + /** + * 当前页码数 + */ + private Long pageNo; + + /** + * 每页显示的行数 + */ + private Long pageSize; + + /** + * 总行数 + */ + private Long totalRow; + + /** + * 总页数 + */ + private Long totalPage; + + /** + * 数据 + */ + private List dataList; + + public Long getPageNo() { + return pageNo; + } + + public void setPageNo(Long pageNo) { + this.pageNo = pageNo; + } + + public Long getPageSize() { + return pageSize; + } + + public void setPageSize(Long pageSize) { + this.pageSize = pageSize; + } + + public Long getTotalRow() { + return totalRow; + } + + public void setTotalRow(Long totalRow) { + this.totalRow = totalRow; + } + + public Long getTotalPage() { + return totalPage; + } + + public void setTotalPage(Long totalPage) { + this.totalPage = totalPage; + } + + public List getDataList() { + return dataList; + } + + public void setDataList(List dataList) { + this.dataList = dataList; + } + } + + public static class DeviceParams { private Double tptAlarmMaxValue;// private Double spdAlarmMaxValue;// private Double dpmAlarmMinValue;// @@ -70,53 +137,6 @@ public class DeviceAlarmListResultBean extends AIBaseBean{ } } - public static class RowsBean { - private int pageNo;//当前页 - private int pageSize;//每页条数 - private int totalRow;//总条数 - private int totalPage;//总页数 - private List dataList;//报警数据列表 - - public int getPageNo() { - return pageNo; - } - - public void setPageNo(int pageNo) { - this.pageNo = pageNo; - } - - public int getPageSize() { - return pageSize; - } - - public void setPageSize(int pageSize) { - this.pageSize = pageSize; - } - - public int getTotalRow() { - return totalRow; - } - - public void setTotalRow(int totalRow) { - this.totalRow = totalRow; - } - - public int getTotalPage() { - return totalPage; - } - - public void setTotalPage(int totalPage) { - this.totalPage = totalPage; - } - - public List getDataList() { - return dataList; - } - - public void setDataList(List dataList) { - this.dataList = dataList; - } - } public static class DeviceData{ private Long id;//id private String mqttIp;//设备ip @@ -353,15 +373,15 @@ public class DeviceAlarmListResultBean extends AIBaseBean{ this.zFreq = zFreq; } } - public static class DataListBean { + public static class DeviceWarning { private Long id;//id private String warningTime;//预警时间 private String createTime;//创䢖时间 private String description;//报警类型 private String deviceCode;//设备编号 private String deviceName;//设备名称 - private Params params;//参数 - private DeviceData data;//设备信息 + private String params;//参数 + private String data;//设备信息 private String statusStr;//设备状态描述 private String specialtyStr;//专业 private String typeStr;//类型描述 @@ -414,22 +434,6 @@ public class DeviceAlarmListResultBean extends AIBaseBean{ this.deviceName = deviceName; } - public Params getParams() { - return params; - } - - public void setParams(Params params) { - this.params = params; - } - - public DeviceData getData() { - return data; - } - - public void setData(DeviceData data) { - this.data = data; - } - public String getStatusStr() { return statusStr; } @@ -453,5 +457,21 @@ public class DeviceAlarmListResultBean extends AIBaseBean{ public void setTypeStr(String typeStr) { this.typeStr = typeStr; } + + public String getParams() { + return params; + } + + public void setParams(String params) { + this.params = params; + } + + public String getData() { + return data; + } + + public void setData(String data) { + this.data = data; + } } } diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfofoActivity.kt b/app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfoActivity.kt similarity index 62% rename from app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfofoActivity.kt rename to app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfoActivity.kt index ac5d913..70c634a 100644 --- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfofoActivity.kt +++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfoActivity.kt @@ -5,15 +5,15 @@ package com.rehome.zhdcoa.ui.activity import android.content.Intent import android.text.TextUtils import android.view.View +import android.widget.AdapterView +import android.widget.ArrayAdapter import androidx.activity.result.ActivityResultLauncher import androidx.activity.result.contract.ActivityResultContracts import com.rehome.zhdcoa.Contans import com.rehome.zhdcoa.R -import com.rehome.zhdcoa.adapter.WorkRiskLevelListAdapter +import com.rehome.zhdcoa.adapter.DeviceAlarmInfoAdapter import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding import com.rehome.zhdcoa.bean.DeviceAlarmListResultBean -import com.rehome.zhdcoa.bean.DeviceAlarmListResultBean.DataListBean -import com.rehome.zhdcoa.bean.WorkRiskLevelListBean import com.rehome.zhdcoa.databinding.ActivityDeviceAlarmInfofoBinding import com.rehome.zhdcoa.utils.AuthenticationLoginAIUtils import com.rehome.zhdcoa.utils.GsonUtils @@ -23,40 +23,31 @@ import com.rehome.zhdcoa.utils.RSAAndroid import com.yolanda.nohttp.NoHttp import com.yolanda.nohttp.RequestMethod import com.yolanda.nohttp.rest.Response -import java.text.SimpleDateFormat -import java.util.Calendar /** * Create By HuangWenFei * 创建日期:2024-04-02 14:34 * 描述:每日作业风险清单 */ -class DeviceAlarmInfofoActivity : BaseActivityOaToolbarViewBinding() { +class DeviceAlarmInfoActivity : BaseActivityOaToolbarViewBinding() { private lateinit var headView: View - private var datas: MutableList = mutableListOf()//报警数据列表 + private var datas: MutableList = mutableListOf()//报警数据列表 + val specialtyList = mutableListOf("all", "STEAM_TURBINE", "CYCLIZATION", "BOILER", "ELECTRICAL") - private lateinit var mAdapter: WorkRiskLevelListAdapter + private lateinit var deviceAlarmInfoAdapter: DeviceAlarmInfoAdapter - private var selectList: MutableList = mutableListOf() - private var jobNoList: MutableList = mutableListOf() + private lateinit var spinnerAdapter:ArrayAdapter - private var selectListAssistant: MutableList = mutableListOf() - private var jobNoListAssistant: MutableList = mutableListOf() + private lateinit var launcherResultQRCode: ActivityResultLauncher + + private var pageNo = 1 + private var pageSize = 20 - private var selectListCustom: MutableList = mutableListOf() - private var jobNoListCustom: MutableList = mutableListOf() - private var dataA: MutableList = mutableListOf() - private var dataB: MutableList = mutableListOf() - private var dataC1: MutableList = mutableListOf() - private var dataC2: MutableList = mutableListOf() - private var dataC3: MutableList = mutableListOf() - private var dataLowRisk: MutableList = mutableListOf() - private lateinit var launcherResultQRCode: ActivityResultLauncher override fun getViewBinding() = ActivityDeviceAlarmInfofoBinding.inflate(layoutInflater) @@ -68,54 +59,58 @@ class DeviceAlarmInfofoActivity : BaseActivityOaToolbarViewBinding?, view: View?, position: Int, id: Long) { + val selectedItem = parent?.getItemAtPosition(position).toString() + showLog(selectedItem) + pageNo=1 + } + + override fun onNothingSelected(parent: AdapterView<*>?) { + // 处理未选择的情况 + } + } + launcherResultQRCode = createQRCodeActivityResultLauncher() binding.lv.emptyView = binding.tvNodata headView = View.inflate(this, R.layout.item_work_risk_list, null) - mAdapter = WorkRiskLevelListAdapter(this,datas, - { position -> - val item = datas[position] - if(item.hazardList!=null&&item.hazardList.size>0){ - //进入风险提示页面 - val intent = Intent(context, WorkRiskListTipActivity::class.java) - intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP) - intent.putExtra("hazardList", GsonUtils.GsonString(item.hazardList)) - startActivity(intent) - } - }, - { position -> - val item = datas[position] - if(item.hazardList!=null&&item.hazardList.size>0){ - //进入修改风险等级 - val intent = Intent(context, CustomDialogChangeLevelActivity::class.java) - intent.putExtra("id",item.id) - intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP) - intent.putExtra("level", item.level) - intent.putExtra("type", item.type) - launcherResultQRCode.launch(intent) - } - }, - { position -> - val item = datas[position] - showLog("---------") - showLog(GsonUtils.GsonString(item)) - //工作情况汇报 - val intent = Intent(context, WorkRiskListHuiBaoActivity::class.java) - intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP) - intent.putExtra("level",item.level) - intent.putExtra("type",item.type) - intent.putExtra("id",item.id) - startActivity(intent) - } - ) - //binding.lv.addHeaderView(headView, null, false) - binding.lv.adapter = mAdapter - //格式化日期的对象(转化成习惯的时间格式) - val sdFormat = SimpleDateFormat("yyyy.MM.dd") - //静态方法getInstance()使用默认时区和语言环境获得一个日历。 - val calendar = Calendar.getInstance() + deviceAlarmInfoAdapter = DeviceAlarmInfoAdapter(context, datas) + binding.lv.adapter = deviceAlarmInfoAdapter + + binding.tvNodata.visibility= View.VISIBLE + binding.lv.visibility=View.GONE + + binding.lv.onItemClickListener = AdapterView.OnItemClickListener { _, _, position, _ -> + val item:DeviceAlarmListResultBean.DeviceWarning = datas[position] + showLog(GsonUtils.GsonString(item)) + } + + binding.btnQuery.setOnClickListener { + authenticationLoginDeviceAlermInfo() + } + +// binding.lv.setOnItemClickListener { _, _, position, _ -> +// val item: WarehouseHuoJiaBean.RowsBean = warehouseHuoJiaList[position] +// val intent = Intent() +// intent.setClass(this, WztpblScDetailActivity::class.java) +// intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP) +// intent.putExtra("item",Gson().toJson(item)) +// startActivity(intent) +// } + } override fun initData() { @@ -204,8 +199,27 @@ class DeviceAlarmInfofoActivity : BaseActivityOaToolbarViewBinding { @@ -217,13 +231,17 @@ class DeviceAlarmInfofoActivity : BaseActivityOaToolbarViewBinding0) { datas.clear() datas.addAll(bean.data.dataList) - mAdapter.notifyDataSetChanged() + deviceAlarmInfoAdapter.notifyDataSetChanged() binding.tvNodata.visibility = View.GONE headView.visibility = View.VISIBLE }else{ + datas.clear() + deviceAlarmInfoAdapter.notifyDataSetChanged() binding.tvNodata.visibility = View.VISIBLE headView.visibility = View.VISIBLE } diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/fragment/YunXingFragment.kt b/app/src/main/java/com/rehome/zhdcoa/ui/fragment/YunXingFragment.kt index bbbcb7b..4a97805 100644 --- a/app/src/main/java/com/rehome/zhdcoa/ui/fragment/YunXingFragment.kt +++ b/app/src/main/java/com/rehome/zhdcoa/ui/fragment/YunXingFragment.kt @@ -49,7 +49,7 @@ import com.rehome.zhdcoa.databinding.FragmentYunxingBinding import com.rehome.zhdcoa.service.PushService import com.rehome.zhdcoa.service.UploadDataService import com.rehome.zhdcoa.ui.activity.AjhxcglActivity -import com.rehome.zhdcoa.ui.activity.DeviceAlarmInfofoActivity +import com.rehome.zhdcoa.ui.activity.DeviceAlarmInfoActivity import com.rehome.zhdcoa.ui.activity.GdActivity import com.rehome.zhdcoa.ui.activity.SbinfoActivity import com.rehome.zhdcoa.ui.activity.SbxdjglActivity @@ -234,7 +234,7 @@ class YunXingFragment : BaseViewBindingKotlinFragment() } 9 -> { - intent = Intent(activity, DeviceAlarmInfofoActivity::class.java) + intent = Intent(activity, DeviceAlarmInfoActivity::class.java) startActivity(intent) } diff --git a/app/src/main/res/layout/activity_device_alarm_infofo.xml b/app/src/main/res/layout/activity_device_alarm_infofo.xml index c4ea359..91cb815 100644 --- a/app/src/main/res/layout/activity_device_alarm_infofo.xml +++ b/app/src/main/res/layout/activity_device_alarm_infofo.xml @@ -10,20 +10,77 @@ - + + + + + + + + + + + + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:layout_marginStart="5dp" + android:layout_marginEnd="5dp" + android:layout_marginBottom="10dp"> + +