diff --git a/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt index 269677d..a64b71b 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt @@ -17,6 +17,7 @@ import com.casic.br.operationsite.vm.AlarmViewModel import com.casic.br.operationsite.vm.ConstructionCheckViewModel import com.casic.br.operationsite.vm.UploadFileViewModel +import com.casic.br.operationsite.vm.WorkSiteViewModel import com.luck.picture.lib.basic.PictureSelector import com.luck.picture.lib.config.SelectMimeType import com.luck.picture.lib.entity.LocalMedia @@ -30,6 +31,8 @@ import com.pengxh.kt.lite.utils.WeakReferenceHandler import com.pengxh.kt.lite.widget.TitleBarView import java.io.File +import java.util.Timer +import java.util.TimerTask class ConstructionCheckActivity : KotlinBaseActivity(), Handler.Callback { @@ -43,6 +46,8 @@ private lateinit var uploadFileViewModel: UploadFileViewModel private lateinit var alarmViewModel: AlarmViewModel private lateinit var constructionCheckViewModel: ConstructionCheckViewModel + private lateinit var workSiteViewModel: WorkSiteViewModel + private lateinit var timer: Timer private var isConnected = false private var isCompletedFirst = false private var isCompletedSecond = false @@ -215,6 +220,9 @@ override fun initOnCreate(savedInstanceState: Bundle?) { ActivityStackManager.addActivity(this) + + val projectId = intent.getStringExtra(Constant.INTENT_PARAM) as String + weakReferenceHandler = WeakReferenceHandler(this) uploadFileViewModel = ViewModelProvider(this)[UploadFileViewModel::class.java] @@ -231,6 +239,26 @@ alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] constructionCheckViewModel = ViewModelProvider(this)[ConstructionCheckViewModel::class.java] + + timer = Timer() + workSiteViewModel = ViewModelProvider(this)[WorkSiteViewModel::class.java] + timer.schedule(object : TimerTask() { + override fun run() { + workSiteViewModel.getWorkers(context, projectId) + } + }, 0, 5000) + workSiteViewModel.workerResult.observe(this) { + if (it.code == 200) { + it.data.forEach { worker -> + if (worker.lat.isNotBlank() && worker.lng.isNotBlank()) { + binding.coValueView.text = "CO:${worker.co}ppm" + binding.gasValueView.text = "CH4:${worker.gas}ppm" + binding.h2sValueView.text = "H2S:${worker.co}ppm" + binding.o2ValueView.text = "O2:${worker.o2}%VOL" + } + } + } + } } override fun initViewBinding(): ActivityConstructionCheckBinding { @@ -258,4 +286,9 @@ } }) } + + override fun onDestroy() { + super.onDestroy() + timer.cancel() + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt index 269677d..a64b71b 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt @@ -17,6 +17,7 @@ import com.casic.br.operationsite.vm.AlarmViewModel import com.casic.br.operationsite.vm.ConstructionCheckViewModel import com.casic.br.operationsite.vm.UploadFileViewModel +import com.casic.br.operationsite.vm.WorkSiteViewModel import com.luck.picture.lib.basic.PictureSelector import com.luck.picture.lib.config.SelectMimeType import com.luck.picture.lib.entity.LocalMedia @@ -30,6 +31,8 @@ import com.pengxh.kt.lite.utils.WeakReferenceHandler import com.pengxh.kt.lite.widget.TitleBarView import java.io.File +import java.util.Timer +import java.util.TimerTask class ConstructionCheckActivity : KotlinBaseActivity(), Handler.Callback { @@ -43,6 +46,8 @@ private lateinit var uploadFileViewModel: UploadFileViewModel private lateinit var alarmViewModel: AlarmViewModel private lateinit var constructionCheckViewModel: ConstructionCheckViewModel + private lateinit var workSiteViewModel: WorkSiteViewModel + private lateinit var timer: Timer private var isConnected = false private var isCompletedFirst = false private var isCompletedSecond = false @@ -215,6 +220,9 @@ override fun initOnCreate(savedInstanceState: Bundle?) { ActivityStackManager.addActivity(this) + + val projectId = intent.getStringExtra(Constant.INTENT_PARAM) as String + weakReferenceHandler = WeakReferenceHandler(this) uploadFileViewModel = ViewModelProvider(this)[UploadFileViewModel::class.java] @@ -231,6 +239,26 @@ alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] constructionCheckViewModel = ViewModelProvider(this)[ConstructionCheckViewModel::class.java] + + timer = Timer() + workSiteViewModel = ViewModelProvider(this)[WorkSiteViewModel::class.java] + timer.schedule(object : TimerTask() { + override fun run() { + workSiteViewModel.getWorkers(context, projectId) + } + }, 0, 5000) + workSiteViewModel.workerResult.observe(this) { + if (it.code == 200) { + it.data.forEach { worker -> + if (worker.lat.isNotBlank() && worker.lng.isNotBlank()) { + binding.coValueView.text = "CO:${worker.co}ppm" + binding.gasValueView.text = "CH4:${worker.gas}ppm" + binding.h2sValueView.text = "H2S:${worker.co}ppm" + binding.o2ValueView.text = "O2:${worker.o2}%VOL" + } + } + } + } } override fun initViewBinding(): ActivityConstructionCheckBinding { @@ -258,4 +286,9 @@ } }) } + + override fun onDestroy() { + super.onDestroy() + timer.cancel() + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt index 0343f09..74c3717 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt @@ -362,7 +362,7 @@ override fun initEvent() { binding.floatingActionButton.setOnClickListener { - navigatePageTo() + navigatePageTo(projectId) } binding.alarmTextView.setOnClickListener { diff --git a/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt index 269677d..a64b71b 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/ConstructionCheckActivity.kt @@ -17,6 +17,7 @@ import com.casic.br.operationsite.vm.AlarmViewModel import com.casic.br.operationsite.vm.ConstructionCheckViewModel import com.casic.br.operationsite.vm.UploadFileViewModel +import com.casic.br.operationsite.vm.WorkSiteViewModel import com.luck.picture.lib.basic.PictureSelector import com.luck.picture.lib.config.SelectMimeType import com.luck.picture.lib.entity.LocalMedia @@ -30,6 +31,8 @@ import com.pengxh.kt.lite.utils.WeakReferenceHandler import com.pengxh.kt.lite.widget.TitleBarView import java.io.File +import java.util.Timer +import java.util.TimerTask class ConstructionCheckActivity : KotlinBaseActivity(), Handler.Callback { @@ -43,6 +46,8 @@ private lateinit var uploadFileViewModel: UploadFileViewModel private lateinit var alarmViewModel: AlarmViewModel private lateinit var constructionCheckViewModel: ConstructionCheckViewModel + private lateinit var workSiteViewModel: WorkSiteViewModel + private lateinit var timer: Timer private var isConnected = false private var isCompletedFirst = false private var isCompletedSecond = false @@ -215,6 +220,9 @@ override fun initOnCreate(savedInstanceState: Bundle?) { ActivityStackManager.addActivity(this) + + val projectId = intent.getStringExtra(Constant.INTENT_PARAM) as String + weakReferenceHandler = WeakReferenceHandler(this) uploadFileViewModel = ViewModelProvider(this)[UploadFileViewModel::class.java] @@ -231,6 +239,26 @@ alarmViewModel = ViewModelProvider(this)[AlarmViewModel::class.java] constructionCheckViewModel = ViewModelProvider(this)[ConstructionCheckViewModel::class.java] + + timer = Timer() + workSiteViewModel = ViewModelProvider(this)[WorkSiteViewModel::class.java] + timer.schedule(object : TimerTask() { + override fun run() { + workSiteViewModel.getWorkers(context, projectId) + } + }, 0, 5000) + workSiteViewModel.workerResult.observe(this) { + if (it.code == 200) { + it.data.forEach { worker -> + if (worker.lat.isNotBlank() && worker.lng.isNotBlank()) { + binding.coValueView.text = "CO:${worker.co}ppm" + binding.gasValueView.text = "CH4:${worker.gas}ppm" + binding.h2sValueView.text = "H2S:${worker.co}ppm" + binding.o2ValueView.text = "O2:${worker.o2}%VOL" + } + } + } + } } override fun initViewBinding(): ActivityConstructionCheckBinding { @@ -258,4 +286,9 @@ } }) } + + override fun onDestroy() { + super.onDestroy() + timer.cancel() + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt index 0343f09..74c3717 100644 --- a/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt +++ b/app/src/main/java/com/casic/br/operationsite/view/WorkSiteTabActivity.kt @@ -362,7 +362,7 @@ override fun initEvent() { binding.floatingActionButton.setOnClickListener { - navigatePageTo() + navigatePageTo(projectId) } binding.alarmTextView.setOnClickListener { diff --git a/app/src/main/res/layout/activity_construction_check.xml b/app/src/main/res/layout/activity_construction_check.xml index b41a790..8d56ffa 100644 --- a/app/src/main/res/layout/activity_construction_check.xml +++ b/app/src/main/res/layout/activity_construction_check.xml @@ -179,6 +179,7 @@ android:orientation="horizontal">