From bb09bc304f7fad374a2f3f5c7f9b0ac55385cbf1 Mon Sep 17 00:00:00 2001 From: lvmeng <848755140@qq.com> Date: Thu, 25 Sep 2025 23:30:03 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BC=96=E5=BD=95=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/src/main/AndroidManifest.xml | 3 +- .../coaloperation/adapter/GeoPointAdapter.kt | 80 +++++++++++ .../adapter/GeoPointParentAdapter.kt | 50 +++++++ .../com/zmkg/coaloperation/bean/OtherData.kt | 14 +- .../GeologicalActivity.kt | 11 +- .../ui/geologging/GeologicalPointActivity.kt | 64 +++++++++ .../ui/home/fragment/HomeFragment.kt | 5 +- .../src/main/res/drawable/ic_point_green.png | Bin 0 -> 796 bytes .../res/drawable/ic_point_green_check.png | Bin 0 -> 875 bytes .../src/main/res/drawable/ic_point_grey.png | Bin 0 -> 818 bytes .../main/res/layout/activity_geological.xml | 6 +- .../activity_geological_catalog_point.xml | 42 ------ .../res/layout/activity_geological_point.xml | 64 +++++++++ .../res/layout/item_geological_header.xml | 69 +++++++++ .../main/res/layout/item_geological_point.xml | 132 ++++++++++++------ .../main/res/layout/lay_title_right_bar.xml | 2 +- .../list_item_geological_point_parent.xml | 42 ++++++ .../main/res/mipmap-xhdpi/ic_point_green.png | Bin 472 -> 0 bytes .../res/mipmap-xhdpi/ic_point_green_check.png | Bin 533 -> 0 bytes .../main/res/mipmap-xhdpi/ic_point_grey.png | Bin 520 -> 0 bytes 20 files changed, 488 insertions(+), 96 deletions(-) create mode 100644 coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointAdapter.kt create mode 100644 coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointParentAdapter.kt rename coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/{home/activity => geologging}/GeologicalActivity.kt (53%) create mode 100644 coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/GeologicalPointActivity.kt create mode 100644 coalMiningApp/app/src/main/res/drawable/ic_point_green.png create mode 100644 coalMiningApp/app/src/main/res/drawable/ic_point_green_check.png create mode 100644 coalMiningApp/app/src/main/res/drawable/ic_point_grey.png delete mode 100644 coalMiningApp/app/src/main/res/layout/activity_geological_catalog_point.xml create mode 100644 coalMiningApp/app/src/main/res/layout/activity_geological_point.xml create mode 100644 coalMiningApp/app/src/main/res/layout/item_geological_header.xml create mode 100644 coalMiningApp/app/src/main/res/layout/list_item_geological_point_parent.xml delete mode 100644 coalMiningApp/app/src/main/res/mipmap-xhdpi/ic_point_green.png delete mode 100644 coalMiningApp/app/src/main/res/mipmap-xhdpi/ic_point_green_check.png delete mode 100644 coalMiningApp/app/src/main/res/mipmap-xhdpi/ic_point_grey.png diff --git a/coalMiningApp/app/src/main/AndroidManifest.xml b/coalMiningApp/app/src/main/AndroidManifest.xml index 25dbde0..283d7a7 100644 --- a/coalMiningApp/app/src/main/AndroidManifest.xml +++ b/coalMiningApp/app/src/main/AndroidManifest.xml @@ -45,7 +45,7 @@ - + @@ -67,6 +67,7 @@ android:windowSoftInputMode="adjustPan"/> + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointAdapter.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointAdapter.kt new file mode 100644 index 0000000..2bc1ff6 --- /dev/null +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointAdapter.kt @@ -0,0 +1,80 @@ +package com.zmkg.coaloperation.adapter + +import android.view.LayoutInflater +import android.view.ViewGroup +import androidx.core.graphics.toColorInt +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.viewholder.BaseViewHolder +import com.zmkg.coaloperation.R +import com.zmkg.coaloperation.bean.GeoPointItem +import com.zmkg.coaloperation.databinding.ItemGeologicalPointBinding +import com.zmkg.coaloperation.utils.gone +import com.zmkg.coaloperation.utils.visible + +class GeoPointAdapter(list: MutableList) : + BaseQuickAdapter( + R.layout.item_geological_point, list + ) { + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): VH { + val binding = ItemGeologicalPointBinding.inflate( + LayoutInflater.from(context), parent, false + ) + return VH(binding).also { + bindViewClickListener(it, viewType) + } + } + + override fun convert( + holder: VH, + item: GeoPointItem + ) { + val index = holder.layoutPosition + val binding = holder.binding + binding.tvNum.run { + text = "${index+1}" + setTextColor( + if (item.isLogging) "#A3FEA6".toColorInt() else "#6A6F87".toColorInt() + ) + } + binding.tvName.run { + text = item.name + setTextColor( + if (item.isLogging) "#A3FEA6".toColorInt() else "#6A6F87".toColorInt() + ) + } + binding.tvDistance.run { + text = item.distance + setTextColor( + if (item.isLogging) "#A3FEA6".toColorInt() else "#6A6F87".toColorInt() + ) + } + if (item.isLogging) { + binding.ivState.setImageResource( + if (item.isChecked) R.drawable.ic_point_green_check + else R.drawable.ic_point_green + ) + } else { + binding.ivState.setImageResource(R.drawable.ic_point_grey) + } + binding.horizontalDivider.run { + if (item.isLogging) { + if (index == data.size-1) gone() else visible() + } else { + visible() + } + } + binding.btnAddPoint.run { + if (!item.isLogging && index == data.size-1) visible() else gone() + setOnClickListener { + + } + } + } + + init { + addChildClickViewIds(R.id.btnAddPoint) + } + + inner class VH(var binding: ItemGeologicalPointBinding) : BaseViewHolder(binding.root) +} \ No newline at end of file diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointParentAdapter.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointParentAdapter.kt new file mode 100644 index 0000000..664dd12 --- /dev/null +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointParentAdapter.kt @@ -0,0 +1,50 @@ +package com.zmkg.coaloperation.adapter + +import android.view.LayoutInflater +import android.view.ViewGroup +import androidx.recyclerview.widget.LinearLayoutManager +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.viewholder.BaseViewHolder +import com.zmkg.coaloperation.R +import com.zmkg.coaloperation.bean.GeoPointItem +import com.zmkg.coaloperation.bean.GeoPointParent +import com.zmkg.coaloperation.databinding.ItemGeologicalHeaderBinding +import com.zmkg.coaloperation.databinding.ListItemGeologicalPointParentBinding + +class GeoPointParentAdapter(list: MutableList) : + BaseQuickAdapter( + R.layout.list_item_geological_point_parent, list + ) { + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): VH { + val binding = ListItemGeologicalPointParentBinding.inflate( + LayoutInflater.from(context), parent, false + ) + return VH(binding).also { + bindViewClickListener(it, viewType) + } + } + + override fun convert( + holder: VH, + item: GeoPointParent + ) { + val binding = holder.binding + binding.tvPointFlag.run { + text = item.name + } + binding.rvPointList.let { rv -> + rv.layoutManager = LinearLayoutManager(context) + if (item.list == null) { + item.list = mutableListOf() + } + val geoPointAdapter = GeoPointAdapter(item.list!!) + rv.adapter = geoPointAdapter +// val headerBinding = +// ItemGeologicalHeaderBinding.inflate(LayoutInflater.from(context)) +// geoPointAdapter.addHeaderView(headerBinding.root) + } + } + + inner class VH(var binding: ListItemGeologicalPointParentBinding) : BaseViewHolder(binding.root) +} \ No newline at end of file diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/bean/OtherData.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/bean/OtherData.kt index 76d330d..5f964e6 100644 --- a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/bean/OtherData.kt +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/bean/OtherData.kt @@ -29,7 +29,7 @@ data class DataSyncItem( ) data class BuoyTopItem( - var faceName:String= "", + var faceName: String = "", var ditchWidth: String = "", var ditchDepth: String = "" ) @@ -37,4 +37,16 @@ data class BuoyTopItem( data class BuoyBottomItem( var name: String = "", var value: String = "" +) + +data class GeoPointItem( + var isChecked: Boolean = false, + var isLogging: Boolean = false, + var name: String = "", + var distance: String = "" +) + +data class GeoPointParent( + var name: String = "", + var list: MutableList? = null ) \ No newline at end of file diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/home/activity/GeologicalActivity.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/GeologicalActivity.kt similarity index 53% rename from coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/home/activity/GeologicalActivity.kt rename to coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/GeologicalActivity.kt index c49f37b..f3dc1eb 100644 --- a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/home/activity/GeologicalActivity.kt +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/GeologicalActivity.kt @@ -1,4 +1,4 @@ -package com.zmkg.coaloperation.ui.home.activity +package com.zmkg.coaloperation.ui.geologging import android.os.Bundle import android.view.View @@ -10,10 +10,15 @@ import com.zmkg.coaloperation.databinding.ActivityGeologicalBinding /** * 地质编录 */ -class GeologicalActivity : BaseVMBActivity(R.layout.activity_geological) { +class GeologicalActivity : + BaseVMBActivity(R.layout.activity_geological) { override fun initView(savedInstanceState: Bundle?) { - + mBinding.toolbarLay.title = "编录位置选择" + mBinding.toolbarLay.rightText = "新增工作面" + mBinding.toolbarLay.titleTvRight.setOnClickListener { + toActivity(GeologicalPointActivity::class.java) + } } override fun initData() { diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/GeologicalPointActivity.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/GeologicalPointActivity.kt new file mode 100644 index 0000000..c97b4fd --- /dev/null +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/GeologicalPointActivity.kt @@ -0,0 +1,64 @@ +package com.zmkg.coaloperation.ui.geologging + +import android.os.Bundle +import android.view.View +import androidx.recyclerview.widget.LinearLayoutManager +import com.zmkg.coaloperation.R +import com.zmkg.coaloperation.adapter.GeoPointParentAdapter +import com.zmkg.coaloperation.base.BaseVMBActivity +import com.zmkg.coaloperation.base.viewmodel.TestViewModel +import com.zmkg.coaloperation.bean.GeoPointItem +import com.zmkg.coaloperation.bean.GeoPointParent +import com.zmkg.coaloperation.databinding.ActivityGeologicalPointBinding + +/** + * 地质编录 + */ +class GeologicalPointActivity : + BaseVMBActivity(R.layout.activity_geological_point) { + + private val parentList: MutableList = mutableListOf( + GeoPointParent(name = "已编录点"), + GeoPointParent(name = "未编录点") + ) + private val parentAdapter by lazy { + GeoPointParentAdapter(parentList) + } + + override fun initView(savedInstanceState: Bundle?) { + mBinding.toolbarLay.title = "编录点" +// mBinding.toolbarLay.rightText = "新增工作面" + + val subList = mutableListOf( + GeoPointItem(isLogging = true, name = "1#", distance = "0", isChecked = true), + GeoPointItem(isLogging = true, name = "2#", distance = "24.252"), + GeoPointItem(isLogging = true, name = "3#", distance = "37.859"), + GeoPointItem(isLogging = true, name = "4#", distance = "43.123"), + GeoPointItem(isLogging = true, name = "5#", distance = "50.567"), + GeoPointItem(isLogging = true, name = "6#", distance = "60.567"), + GeoPointItem(isLogging = true, name = "7#", distance = "70.567") + ) + val subList2 = mutableListOf( + GeoPointItem(name = "1#", distance = "0"), + GeoPointItem(name = "2#", distance = "24.252"), + GeoPointItem(name = "3#", distance = "37.859"), + GeoPointItem(name = "4#", distance = "56.859"), + GeoPointItem(name = "5#", distance = "89.859") + ) + parentList[0].list = subList + parentList[1].list = subList2 + mBinding.rvPointParent.let { + it.layoutManager = LinearLayoutManager(this) + it.adapter = parentAdapter + } + } + + override fun initData() { + } + + override fun bindEvent() { + } + + override fun processClick(v: View?) { + } +} \ No newline at end of file diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/home/fragment/HomeFragment.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/home/fragment/HomeFragment.kt index 4026d80..3b8a332 100644 --- a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/home/fragment/HomeFragment.kt +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/home/fragment/HomeFragment.kt @@ -13,6 +13,7 @@ import com.zmkg.coaloperation.databinding.FragmentHomeBinding import com.zmkg.coaloperation.superfuntion.addItemTouchCallback import com.zmkg.coaloperation.superfuntion.init import com.zmkg.coaloperation.superfuntion.onPageChangeCallback +import com.zmkg.coaloperation.ui.geologging.GeologicalActivity import com.zmkg.coaloperation.ui.home.adapter.HomeMenuAdapter import com.zmkg.coaloperation.ui.home.bean.HomeMenuBean import com.zmkg.coaloperation.ui.home.viewmodel.HomeViewModel @@ -84,7 +85,9 @@ class HomeFragment : HomeMenuBean(index = 3, name = "瓦斯巡检", type = 0), HomeMenuBean(index = 4, name = "防灭火检查", type = 0), HomeMenuBean(index = 5, name = "通风巡检", type = 1), - HomeMenuBean(index = 6, name = "地质编录", type = 1), + HomeMenuBean(index = 6, name = "地质编录", type = 1, onClick = { + toActivity(GeologicalActivity::class.java) + }), HomeMenuBean(index = 7, name = "水文地质编录", type = 1), HomeMenuBean(index = 8, name = "隐蔽致灾", type = 1), HomeMenuBean(index = 9, name = "地物查询", type = 1) diff --git a/coalMiningApp/app/src/main/res/drawable/ic_point_green.png b/coalMiningApp/app/src/main/res/drawable/ic_point_green.png new file mode 100644 index 0000000000000000000000000000000000000000..1e35b5420fb13a2577acb14dded7a67d8b65e26e GIT binary patch literal 796 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 literal 0 HcmV?d00001 diff --git a/coalMiningApp/app/src/main/res/layout/activity_geological.xml b/coalMiningApp/app/src/main/res/layout/activity_geological.xml index e14e074..21c01d9 100644 --- a/coalMiningApp/app/src/main/res/layout/activity_geological.xml +++ b/coalMiningApp/app/src/main/res/layout/activity_geological.xml @@ -15,12 +15,10 @@ + layout="@layout/lay_title_right_bar"/> diff --git a/coalMiningApp/app/src/main/res/layout/activity_geological_catalog_point.xml b/coalMiningApp/app/src/main/res/layout/activity_geological_catalog_point.xml deleted file mode 100644 index 14e36fe..0000000 --- a/coalMiningApp/app/src/main/res/layout/activity_geological_catalog_point.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/activity_geological_point.xml b/coalMiningApp/app/src/main/res/layout/activity_geological_point.xml new file mode 100644 index 0000000..a7bf641 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/activity_geological_point.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + +