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 0000000..1e35b54 Binary files /dev/null and b/coalMiningApp/app/src/main/res/drawable/ic_point_green.png differ diff --git a/coalMiningApp/app/src/main/res/drawable/ic_point_green_check.png b/coalMiningApp/app/src/main/res/drawable/ic_point_green_check.png new file mode 100644 index 0000000..8f31198 Binary files /dev/null and b/coalMiningApp/app/src/main/res/drawable/ic_point_green_check.png differ diff --git a/coalMiningApp/app/src/main/res/drawable/ic_point_grey.png b/coalMiningApp/app/src/main/res/drawable/ic_point_grey.png new file mode 100644 index 0000000..1635792 Binary files /dev/null and b/coalMiningApp/app/src/main/res/drawable/ic_point_grey.png differ 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 @@ + + + + + + + + + + + + + + + +