|
@@ -4,6 +4,7 @@ import android.content.Context
|
|
import android.content.Intent
|
|
import android.content.Intent
|
|
import android.net.Uri
|
|
import android.net.Uri
|
|
import android.os.Bundle
|
|
import android.os.Bundle
|
|
|
|
+import android.view.View
|
|
import androidx.activity.viewModels
|
|
import androidx.activity.viewModels
|
|
import androidx.appcompat.app.AlertDialog
|
|
import androidx.appcompat.app.AlertDialog
|
|
import androidx.appcompat.app.AppCompatActivity
|
|
import androidx.appcompat.app.AppCompatActivity
|
|
@@ -13,6 +14,7 @@ import androidx.lifecycle.MutableLiveData
|
|
import androidx.lifecycle.ViewModel
|
|
import androidx.lifecycle.ViewModel
|
|
import androidx.lifecycle.lifecycleScope
|
|
import androidx.lifecycle.lifecycleScope
|
|
import com.doverfuelingsolutions.issp.R
|
|
import com.doverfuelingsolutions.issp.R
|
|
|
|
+import com.doverfuelingsolutions.issp.api.SystemApi
|
|
import com.doverfuelingsolutions.issp.data.GlobalData
|
|
import com.doverfuelingsolutions.issp.data.GlobalData
|
|
import com.doverfuelingsolutions.issp.databinding.ActivityMainBinding
|
|
import com.doverfuelingsolutions.issp.databinding.ActivityMainBinding
|
|
import com.doverfuelingsolutions.issp.fusion.FusionManager
|
|
import com.doverfuelingsolutions.issp.fusion.FusionManager
|
|
@@ -33,6 +35,7 @@ import java.io.File
|
|
import java.util.*
|
|
import java.util.*
|
|
|
|
|
|
class MainActivity : AppCompatActivity(),
|
|
class MainActivity : AppCompatActivity(),
|
|
|
|
+ View.OnClickListener,
|
|
OnFusionStatus {
|
|
OnFusionStatus {
|
|
|
|
|
|
companion object {
|
|
companion object {
|
|
@@ -57,7 +60,11 @@ class MainActivity : AppCompatActivity(),
|
|
super.onCreate(savedInstanceState)
|
|
super.onCreate(savedInstanceState)
|
|
binding.lifecycleOwner = this
|
|
binding.lifecycleOwner = this
|
|
binding.mainViewModel = mainViewModel
|
|
binding.mainViewModel = mainViewModel
|
|
|
|
+ binding.handler = this
|
|
|
|
+
|
|
|
|
+ supportActionBar?.hide()
|
|
initView()
|
|
initView()
|
|
|
|
+ initBanner()
|
|
|
|
|
|
FusionManager.onFusionStatus = this
|
|
FusionManager.onFusionStatus = this
|
|
lifecycle.addObserver(FusionManager)
|
|
lifecycle.addObserver(FusionManager)
|
|
@@ -81,8 +88,10 @@ class MainActivity : AppCompatActivity(),
|
|
when (requestCode) {
|
|
when (requestCode) {
|
|
PreferenceActivity.codeRequestResult -> {
|
|
PreferenceActivity.codeRequestResult -> {
|
|
data?.let {
|
|
data?.let {
|
|
- val isMiddleModified = it.getBooleanExtra(PreferenceActivity.isMiddleModified, false)
|
|
|
|
- val isFuelModified = it.getBooleanExtra(PreferenceActivity.isFuelModified, false)
|
|
|
|
|
|
+ val isMiddleModified =
|
|
|
|
+ it.getBooleanExtra(PreferenceActivity.isMiddleModified, false)
|
|
|
|
+ val isFuelModified =
|
|
|
|
+ it.getBooleanExtra(PreferenceActivity.isFuelModified, false)
|
|
if (!isFuelModified && !isMiddleModified) return@let
|
|
if (!isFuelModified && !isMiddleModified) return@let
|
|
|
|
|
|
if (isMiddleModified || FusionManager.stateFusion != FdcClient.FdcClientState.Connected) {
|
|
if (isMiddleModified || FusionManager.stateFusion != FdcClient.FdcClientState.Connected) {
|
|
@@ -110,6 +119,29 @@ class MainActivity : AppCompatActivity(),
|
|
if (!isBlockBackPress) super.onBackPressed()
|
|
if (!isBlockBackPress) super.onBackPressed()
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ override fun onClick(v: View?) {
|
|
|
|
+ when (v) {
|
|
|
|
+ binding.stationLogo,
|
|
|
|
+ binding.stationName -> {
|
|
|
|
+ DFSLog.i("refresh station info")
|
|
|
|
+ lifecycleScope.launch {
|
|
|
|
+ val resultPhone = SystemApi.sessionInfo()
|
|
|
|
+ if (resultPhone.success && resultPhone.data != null) {
|
|
|
|
+ GlobalData.stationTel.set(resultPhone.data.phoneNumber)
|
|
|
|
+ GlobalData.businessName.set(resultPhone.data.currentbuName)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ val resultLogo = SystemApi.stationLogo()
|
|
|
|
+ if (resultLogo.success && !resultLogo.data.isNullOrBlank()) {
|
|
|
|
+ GlobalData.stationLogoFileName.set(resultLogo.data)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ initView()
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
override fun onFusionStatus(status: FusionStatus) {
|
|
override fun onFusionStatus(status: FusionStatus) {
|
|
DFSLog.i("Fusion status: ${status.name.toLowerCase(Locale.CHINESE)}")
|
|
DFSLog.i("Fusion status: ${status.name.toLowerCase(Locale.CHINESE)}")
|
|
lifecycleScope.launch {
|
|
lifecycleScope.launch {
|
|
@@ -146,10 +178,13 @@ class MainActivity : AppCompatActivity(),
|
|
}
|
|
}
|
|
|
|
|
|
private fun initView() {
|
|
private fun initView() {
|
|
- supportActionBar?.hide()
|
|
|
|
mainViewModel.stationName.value = GlobalData.businessName.get()
|
|
mainViewModel.stationName.value = GlobalData.businessName.get()
|
|
- if (GlobalData.stationLogoFileName.get().isNotEmpty())
|
|
|
|
|
|
+ if (GlobalData.stationLogoFileName.get().isNotEmpty()) {
|
|
binding.stationLogo.setImageURI(Uri.fromFile(File(filesDir, GlobalData.stationLogoFileName.get())))
|
|
binding.stationLogo.setImageURI(Uri.fromFile(File(filesDir, GlobalData.stationLogoFileName.get())))
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private fun initBanner() {
|
|
binding.banner.run {
|
|
binding.banner.run {
|
|
addBannerLifecycleObserver(this@MainActivity)
|
|
addBannerLifecycleObserver(this@MainActivity)
|
|
scrollTime = 500
|
|
scrollTime = 500
|