diff --git a/BHZHGD/app/src/main/AndroidManifest.xml b/BHZHGD/app/src/main/AndroidManifest.xml index 88df845..79e3359 100755 --- a/BHZHGD/app/src/main/AndroidManifest.xml +++ b/BHZHGD/app/src/main/AndroidManifest.xml @@ -361,6 +361,12 @@ android:launchMode="singleInstance" android:screenOrientation="portrait" android:windowSoftInputMode="stateHidden|adjustPan" /> + () { - private lateinit var headView: View - private lateinit var tv_djrw: TextView + //private lateinit var headView: View + //private lateinit var tv_djrw: TextView private val CAMERA_REQUEST_CODE = 3 //请求码 var nfcValue: String? = null private lateinit var type: String private lateinit var username: String private lateinit var launcherResult: ActivityResultLauncher - private val xsjjhxzDataBeanList: MutableList = mutableListOf() - private val checkedList: MutableList = mutableListOf() - private val noCheckeList: MutableList = mutableListOf() - private val checkedListBA: MutableList = mutableListOf() - private val noCheckeListBA: MutableList = mutableListOf() - private val qybh: MutableList = mutableListOf() - private val xsjjhDataBeanArrayList: ArrayList = ArrayList()//点检记录列表 + private lateinit var adapter: DeviceTwoLevelAdapter + private var datas: MutableList = mutableListOf() // DeviceTwoLevelAdapter // DeviceThreeLevelAdapter + + //adapter_device_two_level //adapter_device_three_level - private lateinit var adapter: CommonAdapter override fun getViewBinding() = ActivityDeviceListBinding.inflate(layoutInflater) override fun getToolbar() = binding.toolbarView.toolbar override fun initView() { - initToolbar("巡检工作(请使用NFC)", "扫码", {finish() }, { + initToolbar("二级电箱", "扫码", {finish() }, { //动态权限申请 //动态权限申请 if (ContextCompat.checkSelfPermission( @@ -98,6 +95,8 @@ class DeviceListActivity : BaseActivityOaToolbarViewBinding(R.id.head).visibility = View.VISIBLE - tv_djrw = headView.findViewById(R.id.tv_djrw) - if (type == "BA") { - tv_djrw.text = "已检/未检" - } - //NFC初始化 - initNFC() + adapter = DeviceTwoLevelAdapter(context, datas) + binding.lv.adapter = adapter + + binding.tvNodata.visibility= View.VISIBLE + binding.lv.visibility=View.GONE + + binding.lv.onItemClickListener = + AdapterView.OnItemClickListener { _, _, position, _ -> + val item = datas[position] + val data = item.data + if(data!=null&&data.size>0){ + val intent = Intent(context, DeviceThreeLevelActivity::class.java) + //intent.putExtra("data", GsonUtils.GsonString(data)) + intent.putParcelableArrayListExtra("data", ArrayList(data)) + startActivity(intent) + } + } } override fun initData() { - getDataInSqlite() - setListData() - } - private fun reloadData() { - getDataInSqlite() - adapter.notifyDataSetChanged() } - override fun handleNfc(result: String) { - super.handleNfc(result) - //Log.i("app", "handleNfc") - handleNfcCheck(result) - //handleNfcCheck("048E3FF2257380") - //handleNfcCheck("04B934F2257380") - } override fun onRequestPermissionsResult( requestCode: Int, @@ -166,91 +159,6 @@ class DeviceListActivity : BaseActivityOaToolbarViewBinding = this.removeDuplicate(planTemp) - xsjjhxzDataBeanList.addAll(planTemp1) - var totalDian:Int = 0 - var checkedCountAll = 0 - Log.i("app", xsjjhxzDataBeanList.size.toString()) - for (i in xsjjhxzDataBeanList.indices) { - val item = xsjjhxzDataBeanList[i] - if (type == "BA") { - if (item.isBAChecked) { - checkedListBA.add(item) - } else { - noCheckeListBA.add(item) - } - }else if (type == "XF") { - var checkedCount = 0 - val xsjjhdatabean = DataSupport.where( - "qybh = ? and mk = ? and username = ?", - item.qybh, - type, - username - ).find( - XSJJHDataBean::class.java - ) - for (j in xsjjhdatabean.indices) { - totalDian++; - if (xsjjhdatabean[j].isChecked) { - checkedCount++ - checkedCountAll++ - checkedList.add(item) - } - } - } else { - var checkedCount = 0 - val xsjjhdatabean = DataSupport.where( - "qybh = ? and mk = ? and username = ?", - item.qybh, - type, - username - ).find( - XSJJHDataBean::class.java - ) - for (j in xsjjhdatabean.indices) { - if (xsjjhdatabean[j].isChecked) { - checkedCount++ - } - } - val a = checkedCount - val b = xsjjhdatabean.size - if (a == b) { - checkedList.add(item) - } else { - noCheckeList.add(item) - } - } - } - - binding.totalPoint.text = xsjjhxzDataBeanList.size.toString() - if (type == "BA") { - binding.totalNoCheck.text = noCheckeListBA.size.toString() - binding.totalChecked.text = checkedListBA.size.toString() - }else if (type == "XF") { - binding.totalPoint.text = totalDian.toString() - if(checkedList.size==totalDian){ - binding.totalNoCheck.text = "0" - }else{ - binding.totalNoCheck.text = (totalDian-checkedList.size).toString() - } - binding.totalChecked.text = checkedList.size.toString() - } else { - binding.totalNoCheck.text = noCheckeList.size.toString() - binding.totalChecked.text = checkedList.size.toString() - } - } - private fun removeDuplicate(list: MutableList): MutableList { for (i in 0 until list.size - 1) { for (j in list.size - 1 downTo i + 1) { @@ -262,79 +170,6 @@ class DeviceListActivity : BaseActivityOaToolbarViewBinding(context, R.layout.xsgz_item, xsjjhxzDataBeanList) { - protected override fun convert( - viewHolder: ViewHolder, - item: XSJJHXZDataBean, - position: Int - ) { - if (type == "BA") { - viewHolder.setText(R.id.tv_xh, (position + 1).toString()) - viewHolder.setText(R.id.tv_qymc, item.qymc) - if (item.isBAChecked) { - if (TextUtils.isEmpty(item.fxnr)) { - viewHolder.setText(R.id.tv_djrw, "已检") - } else { - viewHolder.setText(R.id.tv_djrw, "已检(现场记事)") - } - viewHolder.setTextColor( - R.id.tv_djrw, - Color.parseColor("#00CD00") - ) //已经检查完成绿色 - } else { - viewHolder.setText(R.id.tv_djrw, "未检") - viewHolder.setTextColor( - R.id.tv_djrw, - Color.parseColor("#FF0000") - ) //未检查完成红色 - } - } else { - var checkedCount = 0 - val xsjjhdatabean = DataSupport.where( - "qybh = ? and mk = ? and username = ?", - item.qybh, - type, - username - ).find( - XSJJHDataBean::class.java - ) - for (i in xsjjhdatabean.indices) { - if (xsjjhdatabean[i].isChecked) { - checkedCount++ - } - } - viewHolder.setText(R.id.tv_xh, (position + 1).toString()) - viewHolder.setText(R.id.tv_qymc, item.qymc) - viewHolder.setText( - R.id.tv_djrw, - checkedCount.toString() + "/" + xsjjhdatabean.size - ) - val a = checkedCount - val b = xsjjhdatabean.size - if (a == b) { - viewHolder.setTextColor( - R.id.tv_djrw, - Color.parseColor("#00CD00") - ) //已经检查完成绿色 - } else { - viewHolder.setTextColor( - R.id.tv_djrw, - Color.parseColor("#FF0000") - ) //未检查完成红色 - } - } - } - } - binding.lv.addHeaderView(headView, null, false) - binding.lv.adapter = adapter - binding.lv.onItemClickListener = - AdapterView.OnItemClickListener { adapterView: AdapterView<*>?, view: View?, postion: Int, l: Long -> - showToast("click") - } - } - //处理NFC的数据 private fun handleNfcCheck(result: String) { Log.i("app", "handleNfcCheck") @@ -365,9 +200,21 @@ class DeviceListActivity : BaseActivityOaToolbarViewBinding0) { + datas.clear() + datas.addAll(bean.data) + adapter.notifyDataSetChanged() + binding.tvNodata.visibility= View.GONE + binding.lv.visibility=View.VISIBLE + }else { + showToast("获取数据失败") + datas.clear() + adapter.notifyDataSetChanged() + binding.tvNodata.visibility= View.VISIBLE + binding.lv.visibility=View.GONE + } } } @@ -388,12 +235,9 @@ class DeviceListActivity : BaseActivityOaToolbarViewBinding() { + + private var datas: MutableList = mutableListOf() + private lateinit var adapter: DeviceThreeLevelAdapter + + override fun getViewBinding() = ActivityDeviceThreeLevelBinding.inflate(layoutInflater) + + override fun getToolbar() = binding.toolbarView.toolbar + + override fun initView() { + initToolbar("三级电箱", "", {finish() }, { + + }) + + + val dataList = intent.getParcelableArrayListExtra("data") + if (dataList != null && dataList.size > 0) { + showLog("data is not null") + datas.clear() + datas.addAll(dataList) + } else { + showLog("data is null") + } + + binding.lv.emptyView = binding.tvNodata + + adapter = DeviceThreeLevelAdapter(context, datas) + binding.lv.adapter = adapter + + if (datas != null && datas.size > 0) { + binding.tvNodata.visibility = View.GONE + binding.lv.visibility = View.VISIBLE + } else { + binding.tvNodata.visibility = View.VISIBLE + binding.lv.visibility = View.GONE + } + } + + override fun initData() { + + } + +} \ No newline at end of file diff --git a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceThreeLevelAdapter.kt b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceThreeLevelAdapter.kt index 102aa2c..1a0837b 100644 --- a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceThreeLevelAdapter.kt +++ b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceThreeLevelAdapter.kt @@ -5,10 +5,11 @@ import android.view.LayoutInflater import android.view.ViewGroup import com.bjzc.bhzhgd.base.BaseAdapterViewBinding import com.bjzc.bhzhgd.bean.DeviceZhgdBean +import com.bjzc.bhzhgd.databinding.AdapterDeviceThreeLevelBinding import com.bjzc.bhzhgd.databinding.AdapterDeviceTwoLevelBinding class DeviceThreeLevelAdapter(var context: Context, - var data: MutableList) : BaseAdapterViewBinding(context) { + var data: MutableList) : BaseAdapterViewBinding(context) { override fun getCount(): Int { return data.count() } @@ -24,16 +25,23 @@ class DeviceThreeLevelAdapter(var context: Context, override fun getBinding( inflater: LayoutInflater, parent: ViewGroup? - ) = AdapterDeviceTwoLevelBinding.inflate(inflater, parent, false) - - override fun handleData(position: Int, binding: AdapterDeviceTwoLevelBinding) { - val item: DeviceZhgdBean.DeviceBean = data[position] -// binding.tvJhmc.text = item.jhmc -// binding.tvWjds.text = item.wjds -// binding.tvYjds.text = item.yjds -// binding.tvRate.text = item.rate -// binding.tvZy.text = item.zymc -// binding.tvLog.text = item.rzqk + ) = AdapterDeviceThreeLevelBinding.inflate(inflater, parent, false) + + override fun handleData(position: Int, binding: AdapterDeviceThreeLevelBinding) { + val item: DeviceZhgdBean.DataBean = data[position] + binding.tvGsmc.text = item.gsmc + binding.tvMc.text = item.mc + binding.tvSl.text = item.sl + binding.tvRl.text = item.rl + binding.tvXs.text = item.xs + binding.tvGl.text = item.gl + binding.tvDy.text = item.dy + binding.tvKzl.text = item.kzl + binding.tvZrl.text = item.zrl + binding.tvBz.text = item.bz + binding.tvZrr.text = item.zrr + binding.tvYdsbdxbh.text = item.ydsbdxbh + binding.tvSjhm.text = item.sjhm } diff --git a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceTwoLevelAdapter.kt b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceTwoLevelAdapter.kt index 9a9bfa6..c21fa81 100644 --- a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceTwoLevelAdapter.kt +++ b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/adapter/DeviceTwoLevelAdapter.kt @@ -1,4 +1,44 @@ package com.bjzc.bhzhgd.adapter -class DeviceTwoLevelAdapter { +import android.content.Context +import android.view.LayoutInflater +import android.view.ViewGroup +import com.bjzc.bhzhgd.base.BaseAdapterViewBinding +import com.bjzc.bhzhgd.bean.DeviceZhgdBean +import com.bjzc.bhzhgd.databinding.AdapterDeviceTwoLevelBinding + + +class DeviceTwoLevelAdapter(var context: Context, + var data: MutableList) : BaseAdapterViewBinding(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? + ) = AdapterDeviceTwoLevelBinding.inflate(inflater, parent, false) + + override fun handleData(position: Int, binding: AdapterDeviceTwoLevelBinding) { + val item: DeviceZhgdBean.DeviceBean = data[position] + binding.tvJs.text = item.js + binding.tvDxbh.text = item.dxbh + binding.tvMc.text = item.mc + binding.tvGl.text = item.gl + binding.tvGlJ.text = item.gL_J + binding.tvBz.text = item.bz + binding.tvNfc.text = item.nfc + binding.tvWzms.text = item.wzms + binding.tvZrrXm.text = item.zrR_XM + binding.tvZrrSjhm.text = item.zrR_SJHM + } + } \ No newline at end of file diff --git a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/bean/DeviceZhgdBean.java b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/bean/DeviceZhgdBean.java index ba7b876..3021fe9 100644 --- a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/bean/DeviceZhgdBean.java +++ b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/bean/DeviceZhgdBean.java @@ -19,6 +19,7 @@ public class DeviceZhgdBean implements Parcelable { */ private String code; + private int state; private String msg; private List data; @@ -30,6 +31,14 @@ public class DeviceZhgdBean implements Parcelable { this.code = code; } + public int getState() { + return state; + } + + public void setState(int state) { + this.state = state; + } + public String getMsg() { return msg; } @@ -246,6 +255,7 @@ public class DeviceZhgdBean implements Parcelable { dest.writeString(this.TJR); dest.writeString(this.XGR); dest.writeString(this.DXBH); + dest.writeList(this.data); } public DeviceBean() { @@ -270,6 +280,8 @@ public class DeviceZhgdBean implements Parcelable { this.TJR = in.readString(); this.XGR = in.readString(); this.DXBH = in.readString(); + this.data = new ArrayList(); + in.readList(this.data, DataBean.class.getClassLoader()); } public static final Creator CREATOR = new Creator() { @@ -554,6 +566,7 @@ public class DeviceZhgdBean implements Parcelable { @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(this.code); + dest.writeInt(this.state); dest.writeString(this.msg); dest.writeList(this.data); } @@ -563,6 +576,7 @@ public class DeviceZhgdBean implements Parcelable { protected DeviceZhgdBean(Parcel in) { this.code = in.readString(); + this.state = in.readInt(); this.msg = in.readString(); this.data = new ArrayList(); in.readList(this.data, DeviceBean.class.getClassLoader()); diff --git a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/utils/OAToolbar.java b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/utils/OAToolbar.java index e47c09d..4afecdd 100755 --- a/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/utils/OAToolbar.java +++ b/BHZHGD/app/src/main/java/com/bjzc/bhzhgd/utils/OAToolbar.java @@ -31,6 +31,10 @@ public class OAToolbar extends Toolbar { private TextView tvRight; private ImageButton ivLeft; + public ImageButton getIvLeft(){ + return this.ivLeft; + } + public OAToolbar(Context context) { super(context, null); } diff --git a/BHZHGD/app/src/main/res/layout/activity_device_list.xml b/BHZHGD/app/src/main/res/layout/activity_device_list.xml index efd4b02..320f901 100644 --- a/BHZHGD/app/src/main/res/layout/activity_device_list.xml +++ b/BHZHGD/app/src/main/res/layout/activity_device_list.xml @@ -21,7 +21,7 @@ android:layout_height="match_parent" android:layout_margin="@dimen/px_10" android:divider="#00000000" - android:dividerHeight="0px"/> + android:dividerHeight="10dp"/> + + + + + + + + + + + + \ No newline at end of file diff --git a/BHZHGD/app/src/main/res/layout/adapter_device_three_level.xml b/BHZHGD/app/src/main/res/layout/adapter_device_three_level.xml index 77d9ef6..4469598 100644 --- a/BHZHGD/app/src/main/res/layout/adapter_device_three_level.xml +++ b/BHZHGD/app/src/main/res/layout/adapter_device_three_level.xml @@ -1,6 +1,359 @@ - + android:layout_height="wrap_content" + android:background="#cccccc" + android:orientation="horizontal"> - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/BHZHGD/app/src/main/res/layout/adapter_device_two_level.xml b/BHZHGD/app/src/main/res/layout/adapter_device_two_level.xml index 0432427..569bf55 100644 --- a/BHZHGD/app/src/main/res/layout/adapter_device_two_level.xml +++ b/BHZHGD/app/src/main/res/layout/adapter_device_two_level.xml @@ -4,6 +4,7 @@ android:id="@+id/ll" android:layout_width="match_parent" android:layout_height="wrap_content" + android:background="#cccccc" android:orientation="horizontal"> - - - - - + android:layout_height="wrap_content" + android:orientation="horizontal"> + + + + + + + + + + + + + + android:text="电箱名称:" /> + android:text="额定功率:" /> + + + + android:text="接入功率:" /> + + + + + + + + + + + + + + android:text="位置描述:" /> + + + + + android:text="责任人姓名:" /> + android:text="手机号码:" /> - diff --git a/BHZHGD/app/src/main/res/layout/toolbar2.xml b/BHZHGD/app/src/main/res/layout/toolbar2.xml index 666ce44..e5f9d6d 100755 --- a/BHZHGD/app/src/main/res/layout/toolbar2.xml +++ b/BHZHGD/app/src/main/res/layout/toolbar2.xml @@ -20,7 +20,7 @@ android:layout_centerInParent="true" android:gravity="center" android:textColor="@color/white" - android:textSize="16sp" + android:textSize="24sp" android:textStyle="bold" /> \ No newline at end of file