diff --git a/coalMiningApp/app/src/main/AndroidManifest.xml b/coalMiningApp/app/src/main/AndroidManifest.xml index 283d7a7..a80e8ae 100644 --- a/coalMiningApp/app/src/main/AndroidManifest.xml +++ b/coalMiningApp/app/src/main/AndroidManifest.xml @@ -68,6 +68,7 @@ + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointMultiAdapter.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointMultiAdapter.kt new file mode 100644 index 0000000..f23fe88 --- /dev/null +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/adapter/GeoPointMultiAdapter.kt @@ -0,0 +1,91 @@ +package com.zmkg.coaloperation.adapter + +import android.view.LayoutInflater +import android.widget.LinearLayout +import androidx.core.view.updateLayoutParams +import com.chad.library.adapter.base.BaseMultiItemQuickAdapter +import com.chad.library.adapter.base.viewholder.BaseViewHolder +import com.zmkg.coaloperation.R +import com.zmkg.coaloperation.bean.BaseItem +import com.zmkg.coaloperation.bean.GeoPointMultiItem +import com.zmkg.coaloperation.databinding.ListItemPointBaseHorizontalBinding +import com.zmkg.coaloperation.databinding.ListItemPointLoggingItemBinding +import com.zmkg.coaloperation.utils.gone +import com.zmkg.coaloperation.utils.visible + +class GeoPointMultiAdapter(list: MutableList): + BaseMultiItemQuickAdapter(list){ + + init { + addItemType(GeoPointMultiItem.TYPE_BASE_INFO, R.layout.list_item_point_base_info) + addItemType(GeoPointMultiItem.TYPE_LOGGING_INFO, R.layout.list_item_point_logging_info) + addItemType(GeoPointMultiItem.TYPE_CALCULATE_INFO, R.layout.list_item_point_calculate_info) + addItemType(GeoPointMultiItem.TYPE_UPLOAD_IMAGE, R.layout.list_item_point_upload_image) + } + + override fun convert( + holder: BaseViewHolder, + item: GeoPointMultiItem + ) { + when (holder.itemViewType) { + GeoPointMultiItem.TYPE_BASE_INFO->{ + loadBaseInfo(holder, item) + } + GeoPointMultiItem.TYPE_LOGGING_INFO->{ + loadLoggingInfo(holder, item) + } + GeoPointMultiItem.TYPE_CALCULATE_INFO->{ + loadCalculateInfo(holder, item) + } + GeoPointMultiItem.TYPE_UPLOAD_IMAGE->{ + loadUploadImage(holder, item) + } + } + } + + private fun loadUploadImage(holder: BaseViewHolder,item: GeoPointMultiItem) {} + + private fun loadCalculateInfo(holder: BaseViewHolder,item: GeoPointMultiItem) {} + + private fun loadLoggingInfo(holder: BaseViewHolder,item: GeoPointMultiItem) { + + } + + private fun loadBaseInfo(holder: BaseViewHolder,item: GeoPointMultiItem) { + val llBaseTop = holder.itemView.findViewById(R.id.llBaseTop) + val topList = mutableListOf( + BaseItem(name = "点号", value = "1#"), + BaseItem(name = "点距", value = "1#"), + BaseItem(name = "累距", value = "78.874"), + ) + val bottomList = mutableListOf( + BaseItem(name = "巷高", value = "2.855"), + BaseItem(name = "顶板", value = "1024.491"), + BaseItem(name = "底板", value = "1018.491"), + BaseItem(name = "巷顶煤厚", value = "0.15"), + ) + topList.forEach { + val itemBinding = ListItemPointBaseHorizontalBinding.inflate(LayoutInflater.from(context)) + itemBinding.run { + tvItemName.text = it.name + tvItemValue.text = it.value + } + llBaseTop.addView(itemBinding.root) + } + val llBaseBottom = holder.itemView.findViewById(R.id.llBaseBottom) + + bottomList.forEachIndexed {index, it -> + val itemBinding = ListItemPointBaseHorizontalBinding.inflate(LayoutInflater.from(context)) + itemBinding.run { + tvItemName.text = it.name + tvItemValue.text = it.value + } + itemBinding.root.updateLayoutParams { + width = 0 + height = LinearLayout.LayoutParams.MATCH_PARENT + weight = if (index == bottomList.size - 1) 1.24F else 1.0F + } + llBaseBottom.addView(itemBinding.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 5f964e6..f7a9371 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 @@ -1,5 +1,7 @@ package com.zmkg.coaloperation.bean +import com.chad.library.adapter.base.entity.MultiItemEntity + data class UserMenuBean( var menuName: String, var iconResId: Int, @@ -49,4 +51,23 @@ data class GeoPointItem( data class GeoPointParent( var name: String = "", var list: MutableList? = null -) \ No newline at end of file +) + +data class BaseItem( + var name: String = "", + var value: String = "" +) + +data class GeoPointMultiItem( + override val itemType: Int, + var pointName: String = "", + var pointDistance: String = "", + var totalDistance: String = "", +): MultiItemEntity { + companion object { + const val TYPE_BASE_INFO = 1 + const val TYPE_LOGGING_INFO = 2 + const val TYPE_CALCULATE_INFO = 3 + const val TYPE_UPLOAD_IMAGE = 4 + } +} \ No newline at end of file diff --git a/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/AddGeologicalPointActivity.kt b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/AddGeologicalPointActivity.kt new file mode 100644 index 0000000..390a27f --- /dev/null +++ b/coalMiningApp/app/src/main/java/com/zmkg/coaloperation/ui/geologging/AddGeologicalPointActivity.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 AddGeologicalPointActivity : + 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/res/drawable-xxhdpi/ic_add_image.png b/coalMiningApp/app/src/main/res/drawable-xxhdpi/ic_add_image.png new file mode 100644 index 0000000..2bf0f7b Binary files /dev/null and b/coalMiningApp/app/src/main/res/drawable-xxhdpi/ic_add_image.png differ diff --git a/coalMiningApp/app/src/main/res/layout/activity_add_geological_point.xml b/coalMiningApp/app/src/main/res/layout/activity_add_geological_point.xml new file mode 100644 index 0000000..206dc36 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/activity_add_geological_point.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_base_horizontal.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_base_horizontal.xml new file mode 100644 index 0000000..d69d6a5 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_base_horizontal.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_base_info.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_base_info.xml new file mode 100644 index 0000000..f8b4873 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_base_info.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_base_vertical.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_base_vertical.xml new file mode 100644 index 0000000..c248c7a --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_base_vertical.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_calculate_info.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_calculate_info.xml new file mode 100644 index 0000000..c2e8a09 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_calculate_info.xml @@ -0,0 +1,237 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_image.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_image.xml new file mode 100644 index 0000000..b2adff1 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_image.xml @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_logging_info.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_logging_info.xml new file mode 100644 index 0000000..2233747 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_logging_info.xml @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_logging_item.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_logging_item.xml new file mode 100644 index 0000000..d1a2837 --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_logging_item.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coalMiningApp/app/src/main/res/layout/list_item_point_upload_image.xml b/coalMiningApp/app/src/main/res/layout/list_item_point_upload_image.xml new file mode 100644 index 0000000..39e5a0e --- /dev/null +++ b/coalMiningApp/app/src/main/res/layout/list_item_point_upload_image.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + \ No newline at end of file