切换项目后,其他页面同步更新

main
chenglifeng 7 months ago
parent 802043d9ad
commit 98696640c3
  1. 1
      app/src/main/java/com/project/survey/constants/Constants.kt
  2. 7
      app/src/main/java/com/project/survey/logic/bean/HahaReq.kt
  3. 12
      app/src/main/java/com/project/survey/ui/home/HomeFragment.kt
  4. 10
      app/src/main/java/com/project/survey/ui/home/InstrumentFragment.kt
  5. 16
      app/src/main/java/com/project/survey/ui/home/MeFragment.kt
  6. 3
      app/src/main/java/com/project/survey/ui/project/ProjectListActivity.kt
  7. 13
      app/src/main/res/layout/fragment_me.xml

@ -19,4 +19,5 @@ object SPConstants {
object EventConstants {
const val LOGIN_STATUS = "loginStatus"
const val UPDATE_PROJECT = "updateProject"
}

@ -1,7 +0,0 @@
package com.project.survey.logic.bean
data class HahaReq(
val type: String,
val userName: String? = null,
val page: Int = 1
)

@ -3,6 +3,7 @@ package com.project.survey.ui.home
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.fragment.app.viewModels
import com.project.survey.constants.EventConstants
import com.project.survey.constants.SPConstants
import com.project.survey.databinding.FragmentHomeBinding
import com.project.survey.extend.setOnClickNoRepeatListener
@ -31,10 +32,19 @@ class HomeFragment : BaseBindingFragment<FragmentHomeBinding>() {
}
override fun initData() {
viewModel.msgEvent.observe(this) {
if (it.msg == EventConstants.UPDATE_PROJECT) {
updateViewByData()
}
}
updateViewByData()
// mBinding.itemToBeProcessed.setBadge(4)
}
private fun updateViewByData() {
val currentProject =
SPUtils.getParcelable(SPConstants.CURRENT_PROJECT, ProjectBean::class.java)
mBinding.tvProject.text = currentProject?.XMXX_NAME
// mBinding.itemToBeProcessed.setBadge(4)
}
override fun initListener() {

@ -13,6 +13,7 @@ import com.bingce.device.ui.ConnectTSActivity
import com.bingce.rtk.command.RTK
import com.bingce.rtk.config.GnssConfigManager
import com.project.survey.R
import com.project.survey.constants.EventConstants
import com.project.survey.constants.SPConstants
import com.project.survey.databinding.FragmentInstrumentBinding
import com.project.survey.extend.setOnClickNoRepeatListener
@ -46,6 +47,15 @@ class InstrumentFragment : BaseBindingFragment<FragmentInstrumentBinding>() {
}
override fun initData() {
viewModel.msgEvent.observe(this) {
if (it.msg == EventConstants.UPDATE_PROJECT) {
updateViewByData()
}
}
updateViewByData()
}
private fun updateViewByData() {
val currentProject =
SPUtils.getParcelable(SPConstants.CURRENT_PROJECT, ProjectBean::class.java)
mBinding.tvProject.text = currentProject?.XMXX_NAME

@ -38,13 +38,21 @@ class MeFragment : BaseBindingFragment<FragmentMeBinding>() {
}
override fun initData() {
viewModel.msgEvent.observe(this) {
if (it.msg == EventConstants.UPDATE_PROJECT) {
updateViewByData()
}
}
mBinding.tvName.text = SPUtils.getString(SPConstants.ACCOUNT)
mBinding.tvVersion.text = BuildConfig.VERSION_NAME
updateViewByData()
}
private fun updateViewByData() {
val currentProject =
SPUtils.getParcelable(SPConstants.CURRENT_PROJECT, ProjectBean::class.java)
mBinding.tvProject.text = currentProject?.XMXX_NAME
mBinding.tvName.text = SPUtils.getString(SPConstants.ACCOUNT)
if (BuildConfig.DEBUG) {
mBinding.tvVersion.text = BuildConfig.VERSION_NAME
}
}
override fun initListener() {

@ -5,10 +5,12 @@ import android.view.MenuItem
import androidx.activity.viewModels
import com.afollestad.materialdialogs.MaterialDialog
import com.project.survey.R
import com.project.survey.constants.EventConstants
import com.project.survey.constants.SPConstants
import com.project.survey.databinding.ActivityProjectListBinding
import com.project.survey.extend.smartDismiss
import com.project.survey.extend.toast
import com.project.survey.logic.event.Message
import com.project.survey.logic.viewmodel.ProjectViewModel
import com.project.survey.model.LoginBean
import com.project.survey.ui.MainActivity
@ -84,6 +86,7 @@ class ProjectListActivity : BaseBindingActivity<ActivityProjectListBinding>(), O
adapter.getItem(position)?.let { bean ->
// 进入项目,设置当前项目
SPUtils.put(SPConstants.CURRENT_PROJECT, bean)
viewModel.msgEvent.postValue(Message(EventConstants.UPDATE_PROJECT))
MainActivity.start()
ActivityNavUtil.finishActivity<ProjectListActivity>()
}

@ -130,6 +130,13 @@
android:textSize="@dimen/sw_15sp"
app:drawableStartCompat="@drawable/about" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/tvVersion"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="10dp"
tools:text="1.0.0" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@ -148,11 +155,5 @@
android:textColor="@color/text_color_20"
android:textSize="15sp" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/tvVersion"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="1.0.0" />
</LinearLayout>
Loading…
Cancel
Save