|
@@ -2,13 +2,16 @@ package com.quyunshuo.module.home.fragment.fragment
|
|
|
|
|
|
import android.annotation.SuppressLint
|
|
|
import android.graphics.Point
|
|
|
+import android.os.Build
|
|
|
import android.os.Bundle
|
|
|
import android.os.Handler
|
|
|
+import android.telephony.SignalStrength
|
|
|
import android.text.format.DateFormat
|
|
|
import android.util.Log
|
|
|
import android.view.MotionEvent
|
|
|
import android.view.View
|
|
|
import android.view.ViewGroup
|
|
|
+import androidx.annotation.RequiresApi
|
|
|
import androidx.fragment.app.Fragment
|
|
|
import androidx.fragment.app.viewModels
|
|
|
import androidx.lifecycle.Lifecycle
|
|
@@ -29,11 +32,13 @@ import com.hboxs.serialport.sbc.frame.VboxCommand
|
|
|
import com.hboxs.serialport.sbc.frame.VboxWriteCommand
|
|
|
import com.module.pay.nayax.CreditCardPresenter
|
|
|
import com.quyunshuo.androidbaseframemvvm.base.addressenum.ProTypeEnum
|
|
|
+import com.quyunshuo.androidbaseframemvvm.base.bean.Global
|
|
|
import com.quyunshuo.androidbaseframemvvm.base.ktx.observeLiveData
|
|
|
import com.quyunshuo.androidbaseframemvvm.base.ktx.setVisible
|
|
|
import com.quyunshuo.androidbaseframemvvm.base.utils.RegisterEventBus
|
|
|
import com.quyunshuo.androidbaseframemvvm.base.utils.SpUtils
|
|
|
import com.quyunshuo.androidbaseframemvvm.common.bean.ProductDataBean
|
|
|
+import com.quyunshuo.androidbaseframemvvm.common.bean.ShoppingCartBean
|
|
|
import com.quyunshuo.androidbaseframemvvm.common.constant.Heartbeat
|
|
|
import com.quyunshuo.androidbaseframemvvm.common.constant.MMKVName
|
|
|
import com.quyunshuo.androidbaseframemvvm.common.constant.MqName
|
|
@@ -47,6 +52,7 @@ import com.quyunshuo.androidbaseframemvvm.common.util.UiUtil
|
|
|
import com.quyunshuo.androidbaseframemvvm.common.util.XLogUtil
|
|
|
import com.quyunshuo.module.home.R
|
|
|
import com.quyunshuo.module.home.adapter.HomeProductAdapter
|
|
|
+import com.quyunshuo.module.home.bean.PaySuccessBean
|
|
|
import com.quyunshuo.module.home.databinding.HomeFragmentHomeBinding
|
|
|
import com.quyunshuo.module.home.dialog.ContactDialog
|
|
|
import com.quyunshuo.module.home.dialog.PayChooseDialogFragment
|
|
@@ -56,6 +62,10 @@ import com.quyunshuo.module.home.dialog.TipsDialog
|
|
|
import com.quyunshuo.module.home.enums.LogoEnum
|
|
|
import com.quyunshuo.module.home.fragment.vm.HomeFragmentVM
|
|
|
import com.quyunshuo.module.home.weight.NXHooldeIMGView
|
|
|
+import com.quyunshuo.module.home.utils.NetWorkUtils
|
|
|
+import com.quyunshuo.module.home.utils.PhoneStateUtils
|
|
|
+import com.zhanshow.mylibrary.network.NetworkStateReceiver.NetworkStateReceiverListener
|
|
|
+import com.zhanshow.mylibrary.phonestate.MyPhoneStateListener.MyPhoneStateListenerListener
|
|
|
import dagger.hilt.android.AndroidEntryPoint
|
|
|
import kotlinx.coroutines.CoroutineScope
|
|
|
import kotlinx.coroutines.Dispatchers
|
|
@@ -78,7 +88,7 @@ import java.math.BigDecimal
|
|
|
@RegisterEventBus
|
|
|
@AndroidEntryPoint
|
|
|
class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), View.OnTouchListener,
|
|
|
- View.OnClickListener {
|
|
|
+ View.OnClickListener,LifecycleObserver {
|
|
|
|
|
|
private val myHandler: MyHandler = MyHandler(this@HomeFragment)
|
|
|
private var productList = ArrayList<ProductDataBean>()//传递给make的制作商品list
|
|
@@ -97,7 +107,14 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
private var paySuccessDialog: PaySuccessDialog? = null//支付成功对话框
|
|
|
private var shoppingCartDialog: ShoppingCartDialogFragment? = null//购物车列表对话框
|
|
|
private var promotionCode: String? = "" //用户输入的优惠码
|
|
|
-
|
|
|
+ private var networkName = "";//当前的网络状态
|
|
|
+ private var networkLevel = 4;//当前的网络等级
|
|
|
+ private var NETWORK_STATE = 2//网络状态
|
|
|
+ private var NETWORK_LEVEL = 3//网络等级
|
|
|
+ var shopping: WeakReference<ShoppingCartDialogFragment>? = null
|
|
|
+ var payChoose: WeakReference<PayChooseDialogFragment>? = null//支付方式选择对户口
|
|
|
+
|
|
|
+ @RequiresApi(Build.VERSION_CODES.P)
|
|
|
override fun HomeFragmentHomeBinding.initView() {
|
|
|
startRefreshime()
|
|
|
with(homeRvProduct) {
|
|
@@ -147,6 +164,36 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
enumByValue?.navId?.let { ivLogo.setImageResource(it) }
|
|
|
enumByValue?.width?.let { layoutParams.width = it }
|
|
|
enumByValue?.height?.let { layoutParams.height = it }
|
|
|
+
|
|
|
+ NetWorkUtils.registerLister(
|
|
|
+ this@HomeFragment.activity,
|
|
|
+ object : NetworkStateReceiverListener {
|
|
|
+ override fun networkAvailable(networkName: String) {
|
|
|
+ Log.e(TAG, "网络 networkAvailable: $networkName")
|
|
|
+ Global.isNetWork = true
|
|
|
+ this@HomeFragment.networkName = networkName
|
|
|
+ myHandler.sendEmptyMessage(NETWORK_STATE)
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ override fun networkUnavailable() {
|
|
|
+ Log.e(TAG, "网络 networkUnavailable: ")
|
|
|
+ Global.isNetWork = false
|
|
|
+ networkName = "disconnect"
|
|
|
+ myHandler.sendEmptyMessage(NETWORK_STATE)
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ PhoneStateUtils.registerPhoneStateListener(
|
|
|
+ this@HomeFragment.activity,
|
|
|
+ object : MyPhoneStateListenerListener {
|
|
|
+
|
|
|
+ override fun onSignalStrengthsChanged(p0: SignalStrength?) {
|
|
|
+ Log.e(TAG, "网络 currentSignalStrength: " + p0?.level)
|
|
|
+ this@HomeFragment.networkLevel = p0?.level!!
|
|
|
+ myHandler.sendEmptyMessage(NETWORK_LEVEL)
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
//设置字体文件
|
|
@@ -174,6 +221,7 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
observeLiveData(mViewModel.coinValue, ::getCoinValue)
|
|
|
lifecycle.addObserver(mViewModel.threadHomeParam)
|
|
|
lifecycle.addObserver(myHandler)
|
|
|
+ lifecycle.addObserver(this)
|
|
|
}
|
|
|
var lastCoin: BigDecimal = BigDecimal.ZERO.setScale(2, java.math.RoundingMode.HALF_UP);
|
|
|
|
|
@@ -205,15 +253,7 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
product = productList[position]
|
|
|
Log.d(TAG, "clickProduct: "+product)
|
|
|
//点击前校验 有没有开机、有没有选择支付方式等。
|
|
|
- val deviceStatusCheck = mViewModel.deviceStatusCheck()//是否开机
|
|
|
- if (deviceStatusCheck != "02") {
|
|
|
- showTipsDialog(deviceStatusCheck)
|
|
|
- return
|
|
|
- }
|
|
|
-// if (product?.price!! <= 0 && !Heartbeat.isForeign) {
|
|
|
-// showTipsDialog("价格低于0元,不能购买")
|
|
|
-// return
|
|
|
-// }
|
|
|
+ if (checkToBuy()) return//是否开机
|
|
|
|
|
|
// selectProductDataBean = ProTypeEnum.getEnumByValue(product!!.nameChinese)
|
|
|
//todo 测试做糖 传递价格等信息过去。
|
|
@@ -234,33 +274,58 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private fun checkToBuy(): Boolean {
|
|
|
+ val deviceStatusCheck = mViewModel.deviceStatusCheck()
|
|
|
+ if (deviceStatusCheck != "02") {
|
|
|
+ showTipsDialog(deviceStatusCheck)
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ // if (product?.price!! <= 0 && !Heartbeat.isForeign) {
|
|
|
+ // showTipsDialog("价格低于0元,不能购买")
|
|
|
+ // return
|
|
|
+ // }
|
|
|
+ return false
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 去付款
|
|
|
* 选择支付方式对话框
|
|
|
*/
|
|
|
private fun openPayDialog() {
|
|
|
- if (payChooseDialogFragment == null) {
|
|
|
- payChooseDialogFragment = PayChooseDialogFragment()
|
|
|
- lifecycle.addObserver(payChooseDialogFragment!!)
|
|
|
- payChooseDialogFragment?.setListener(object : DialogClickListener {
|
|
|
- override fun onClickListener(type: Int, text: String?) {
|
|
|
- when (type) {
|
|
|
- payChooseDialogFragment?.typeBack -> {
|
|
|
- pauseTime = true
|
|
|
- //点击取消的时候发送一个event,这样统一一点,因为mdb刷卡器也可以取消,nayax也可以取消。。
|
|
|
- EventBus.getDefault().post(ApiMessageEvent(PayName.CANCEL_PAY,""))
|
|
|
- }
|
|
|
-
|
|
|
- else -> {}
|
|
|
+ if (payChoose?.get()?.let { isShow(it) } == true) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ payChoose = WeakReference(PayChooseDialogFragment())
|
|
|
+ payChoose?.get()?.setListener(object : DialogClickListener {
|
|
|
+ override fun onClickListener(type: Int, text: String?) {
|
|
|
+ when (type) {
|
|
|
+ payChoose?.get()?.typeBack -> {
|
|
|
+ pauseTime = true
|
|
|
+ startRefreshime()
|
|
|
+ //点击取消的时候发送一个event,这样统一一点,因为mdb刷卡器也可以取消,nayax也可以取消。。
|
|
|
+ EventBus.getDefault().post(ApiMessageEvent(PayName.CANCEL_PAY, ""))
|
|
|
}
|
|
|
+
|
|
|
+ else -> {}
|
|
|
}
|
|
|
- })
|
|
|
- lifecycle.addObserver(payChooseDialogFragment!!)
|
|
|
- }
|
|
|
- //携带购物车内容、优惠码过去。
|
|
|
- payChooseDialogFragment?.setData(mViewModel.getShoppingTrolleyList(), promotionCode, mViewModel.shoppingTrolleySumPrice())
|
|
|
- payChooseDialogFragment?.show(parentFragmentManager, payChooseDialogFragment?.tag)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ payChoose?.get()?.setData(
|
|
|
+ mViewModel.getShoppingTrolleyList(),
|
|
|
+ promotionCode,
|
|
|
+ mViewModel.shoppingTrolleySumPrice()
|
|
|
+ )
|
|
|
+ payChoose?.get()?.show(parentFragmentManager, payChooseDialogFragment?.tag)
|
|
|
+ }
|
|
|
|
|
|
+ fun isShow(dialogFragment: PayChooseDialogFragment): Boolean {
|
|
|
+ if (dialogFragment != null && dialogFragment.getDialog() != null && dialogFragment.getDialog()!!
|
|
|
+ .isShowing()
|
|
|
+ ) {
|
|
|
+ return true
|
|
|
+ } else {
|
|
|
+ return false
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
override fun initRequestData() {
|
|
@@ -271,15 +336,12 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
mViewModel.getArticleData()
|
|
|
}
|
|
|
|
|
|
- override fun onStop() {
|
|
|
- Log.d(TAG, "onStop: ")
|
|
|
- stopRefreshTime()
|
|
|
- super.onStop()
|
|
|
- }
|
|
|
|
|
|
override fun onDestroyView() {
|
|
|
Log.d(TAG, "onDestroyView: ")
|
|
|
mBinding.homeRvProduct.adapter = null //为什么要手动呢?。。。。。
|
|
|
+ NetWorkUtils.unRegisterNetWork(activity)
|
|
|
+ PhoneStateUtils.unRegisterPhoneStateListener(activity)
|
|
|
super.onDestroyView()
|
|
|
}
|
|
|
|
|
@@ -306,10 +368,11 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
when (message.name) {
|
|
|
MqName.PAY_SUCCESS -> {
|
|
|
Log.d(TAG, "event: 收到了支付成功")
|
|
|
+ payChoose?.get()?.dismiss()
|
|
|
showPaySuccessDialog()
|
|
|
lifecycleScope.launch {
|
|
|
delay(2000)
|
|
|
- gotoMake(message.name,message.data as String)
|
|
|
+ gotoMake(message.name,message.data as PaySuccessBean)
|
|
|
}
|
|
|
}
|
|
|
PayName.ACCEPT_BILL->{
|
|
@@ -324,12 +387,11 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
mViewModel.disposeData(messageEvent)
|
|
|
}
|
|
|
|
|
|
+ var makeList: List<ShoppingCartBean>? = null
|
|
|
|
|
|
-
|
|
|
- private fun gotoMake(name: String, payType: String) {
|
|
|
-
|
|
|
+ private fun gotoMake(name: String, payInfo: PaySuccessBean) {
|
|
|
Log.d(TAG, "gotoMake: "+mViewModel.getShoppingTrolleyList())
|
|
|
- var selectProductDataBean = ProTypeEnum.getEnumByValue(name) //上线需要使用这个。
|
|
|
+// var selectProductDataBean = ProTypeEnum.getEnumByValue(name) //上线需要使用这个。
|
|
|
if (product != null) {
|
|
|
val findNavController = findNavController()
|
|
|
var bundle = Bundle()
|
|
@@ -338,7 +400,17 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
bundle.putString("SELECT_PRO", Gson().toJson(mViewModel.getShoppingTrolleyList()))
|
|
|
bundle.putDouble("PRICE", mViewModel.shoppingTrolleySumPrice())
|
|
|
bundle.putString("PROMOTION_CODE", promotionCode)
|
|
|
- bundle.putString("PAY_TYPE",payType)
|
|
|
+ makeList = splitProductsByCount(mViewModel.getShoppingTrolleyList())
|
|
|
+ makeList?.let {
|
|
|
+ val allPrice = calculateTotal(it)
|
|
|
+ val name = buildNameString(it)
|
|
|
+ val sn = payInfo.payNamber
|
|
|
+ val payType = payInfo.payType
|
|
|
+ CoroutineScope(Dispatchers.Main).launch {
|
|
|
+ Log.d(TAG, "insert: sn:${sn}allPrice:${allPrice}payType:${payType}name:${name}")
|
|
|
+ mViewModel.addLocalOrder(sn, allPrice, payType, name)
|
|
|
+ }
|
|
|
+ }
|
|
|
try {
|
|
|
findNavController.navigate(
|
|
|
R.id.home_action_home_homefragment_to_home_makefragment,
|
|
@@ -348,26 +420,129 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
Log.d(TAG, "gotoMake: "+e.message)
|
|
|
}
|
|
|
}
|
|
|
- XLog.d("payType:$payType")
|
|
|
+ XLog.d("payType:$payInfo")
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ fun calculateTotal(cartItems: List<ShoppingCartBean>): Double {
|
|
|
+ return cartItems.sumOf { it.price }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 生成名称拼接字符串
|
|
|
+ fun buildNameString(items: List<ShoppingCartBean>): String {
|
|
|
+ return items
|
|
|
+ .map { bean ->
|
|
|
+ // 优先取非空中文名,否则用ID
|
|
|
+ bean.nameChinese.takeIf { !it.isNullOrBlank() } ?: bean.nameId
|
|
|
+ }
|
|
|
+ .joinToString(separator = ", ") // 添加逗号和空格
|
|
|
+ }
|
|
|
+
|
|
|
+ fun splitProductsByCount(originalList: List<ShoppingCartBean>): List<ShoppingCartBean> {
|
|
|
+ val resultList: MutableList<ShoppingCartBean> = ArrayList<ShoppingCartBean>()
|
|
|
+
|
|
|
+ for (product in originalList) {
|
|
|
+ val count: Int = product.count
|
|
|
+ if (count <= 0) continue // 跳过无效count
|
|
|
+ // 根据count生成新对象
|
|
|
+ for (i in 0 until count) {
|
|
|
+ val newItem: ShoppingCartBean = ShoppingCartBean(
|
|
|
+ product.productNo,
|
|
|
+ product.price,
|
|
|
+ product.nameId,
|
|
|
+ product.imgID,
|
|
|
+ product.nameChinese,
|
|
|
+ product.index,
|
|
|
+ 1
|
|
|
+ )
|
|
|
+ resultList.add(newItem)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return resultList
|
|
|
}
|
|
|
|
|
|
+
|
|
|
internal class MyHandler(fragment: Fragment) : Handler(), LifecycleObserver {
|
|
|
var mWeakReference: WeakReference<Fragment> = WeakReference(fragment)
|
|
|
|
|
|
override fun handleMessage(msg: android.os.Message) {
|
|
|
//as用来强转
|
|
|
- var fragment: HomeFragment = mWeakReference.get() as HomeFragment
|
|
|
+ var fragment: HomeFragment? = mWeakReference.get() as HomeFragment
|
|
|
when (msg.what) {
|
|
|
- fragment.HANDLE_TIME -> {
|
|
|
+ fragment?.HANDLE_TIME -> {
|
|
|
setTimeDate(fragment)
|
|
|
}
|
|
|
|
|
|
+ fragment?.NETWORK_STATE -> {
|
|
|
+ setNetwork(fragment)
|
|
|
+ }
|
|
|
+
|
|
|
+ fragment?.NETWORK_LEVEL -> {
|
|
|
+ setNetworkLevel(fragment)
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ else -> {
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private fun setNetworkLevel(fragment: HomeFragment) {
|
|
|
+ XLogUtil.d("fragment.networkLevel:" + fragment.networkLevel)
|
|
|
+ when (fragment.networkLevel) {
|
|
|
+ 1 -> {
|
|
|
+ fragment.mBinding.iv4g.setImageResource(R.drawable.leven1)
|
|
|
+ }
|
|
|
+
|
|
|
+ 2 -> {
|
|
|
+ fragment.mBinding.iv4g.setImageResource(R.drawable.leven2)
|
|
|
+ }
|
|
|
+
|
|
|
+ 3 -> {
|
|
|
+ fragment.mBinding.iv4g.setImageResource(R.drawable.leven3)
|
|
|
+ }
|
|
|
+
|
|
|
+ 4 -> {
|
|
|
+ fragment.mBinding.iv4g.setImageResource(R.drawable.leven4)
|
|
|
+ }
|
|
|
+
|
|
|
+ 5 -> {
|
|
|
+ fragment.mBinding.iv4g.setImageResource(R.drawable.leven4)
|
|
|
+ }
|
|
|
+
|
|
|
else -> {
|
|
|
+ fragment.mBinding.iv4g.setImageResource(R.drawable.leven0)
|
|
|
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private fun setNetwork(fragment: HomeFragment) {
|
|
|
+ XLogUtil.d("fragment.networkName:" + fragment.networkName)
|
|
|
+ when (fragment.networkName) {
|
|
|
+ "4g" -> {
|
|
|
+ fragment.mBinding.iv4g.setVisible(true)
|
|
|
+ fragment.mBinding.ivWifi.setVisible(false)
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ "wifi" -> {
|
|
|
+ fragment.mBinding.ivWifi.setImageResource(R.drawable.wifi)
|
|
|
+ fragment.mBinding.ivWifi.setVisible(true)
|
|
|
+ fragment.mBinding.iv4g.setVisible(false)
|
|
|
+ }
|
|
|
+
|
|
|
+ "disconnect" -> {
|
|
|
+ fragment.mBinding.ivWifi.setImageResource(R.drawable.leven0)
|
|
|
+ fragment.mBinding.ivWifi.setVisible(true)
|
|
|
+ fragment.mBinding.iv4g.setVisible(false)
|
|
|
+ }
|
|
|
+
|
|
|
+ else -> {}
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 设置时间
|
|
|
*/
|
|
@@ -376,10 +551,10 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
val sysTime = System.currentTimeMillis() //获取系统时间
|
|
|
val sysTimeStr = DateFormat.format("yyyy-MM-dd HH:mm:ss", sysTime) //时间显示格式
|
|
|
fragment.mBinding.tvTime.text = sysTimeStr //更新时间
|
|
|
- fragment.mBinding.tvWendu.text = SBCHeartbeat.outsideTemp+"°C"
|
|
|
- fragment.mBinding.tvShidu.text = SBCHeartbeat.outsideHumidity+"%"
|
|
|
- fragment.mBinding.tvLutou.text = SBCHeartbeat.headTemp+"°C"
|
|
|
- fragment.mBinding.tvFashengqi.text = SBCHeartbeat.steamTemp+"°C"
|
|
|
+ fragment.mBinding.tvWendu.text = SBCHeartbeat.outsideTemp + "°C"
|
|
|
+ fragment.mBinding.tvShidu.text = SBCHeartbeat.outsideHumidity + "%"
|
|
|
+ fragment.mBinding.tvLutou.text = SBCHeartbeat.headTemp + "°C"
|
|
|
+ fragment.mBinding.tvFashengqi.text = SBCHeartbeat.steamTemp + "°C"
|
|
|
|
|
|
if (fragment.pauseTime) {
|
|
|
fragment.backTime--
|
|
@@ -390,6 +565,7 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
@OnLifecycleEvent(Lifecycle.Event.ON_STOP)
|
|
|
fun disconnectListener() {
|
|
|
removeCallbacksAndMessages(null)
|
|
@@ -412,7 +588,8 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private fun stopRefreshTime() {
|
|
|
+ @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
|
|
|
+ fun stopRefreshTime() {
|
|
|
jobTimer?.cancel()
|
|
|
}
|
|
|
|
|
@@ -496,8 +673,8 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
// gotoMake("","")
|
|
|
}
|
|
|
R.id.btn_cif -> {
|
|
|
- val name=SpUtils.getString(MMKVName.CONTACT_NAME,"")
|
|
|
- val way=SpUtils.getString(MMKVName.CONTACT_NUMBER,"")
|
|
|
+ val name=SpUtils.getString(MMKVName.CONTACT,"")
|
|
|
+ val way=SpUtils.getString(MMKVName.CONTACT_WAY,"")
|
|
|
showContactDialog(name,way)
|
|
|
}
|
|
|
else -> {}
|
|
@@ -526,34 +703,32 @@ class HomeFragment : BaseFragment<HomeFragmentHomeBinding, HomeFragmentVM>(), Vi
|
|
|
return
|
|
|
}
|
|
|
stopTimeReturn()
|
|
|
- if (shoppingCartDialog == null) {
|
|
|
- shoppingCartDialog = ShoppingCartDialogFragment()
|
|
|
- shoppingCartDialog?.setListener(object : DialogClickListener {
|
|
|
- override fun onClickListener(type: Int, text: String?) {
|
|
|
- when (type) {
|
|
|
- shoppingCartDialog?.type1 -> {
|
|
|
- startTimerReturn()
|
|
|
- }
|
|
|
-
|
|
|
- R.id.btn_pay -> {
|
|
|
- promotionCode = text
|
|
|
- pay()
|
|
|
- }
|
|
|
-
|
|
|
- else -> {}
|
|
|
+ shopping = WeakReference(ShoppingCartDialogFragment())
|
|
|
+ shopping?.get()?.setListener(object : DialogClickListener {
|
|
|
+ override fun onClickListener(type: Int, text: String?) {
|
|
|
+
|
|
|
+
|
|
|
+ when (type) {
|
|
|
+ shopping?.get()?.type1 -> {
|
|
|
+ Log.d(
|
|
|
+ "backinfo",
|
|
|
+ "onClickListeneronClickListeneronClickListeneronClickListener"
|
|
|
+ )
|
|
|
+ startTimerReturn()
|
|
|
+ startRefreshime()
|
|
|
}
|
|
|
+
|
|
|
+ R.id.btn_pay -> {
|
|
|
+ promotionCode = text
|
|
|
+ pay()
|
|
|
+ }
|
|
|
+
|
|
|
+ else -> {}
|
|
|
}
|
|
|
- })
|
|
|
- lifecycle.addObserver(shoppingCartDialog!!)
|
|
|
- }
|
|
|
-// shoppingCartDialog?.show(this.parentFragmentManager,"shoppingCartDialog")
|
|
|
- getParentFragmentManager().let {
|
|
|
- shoppingCartDialog!!.show(
|
|
|
- it,
|
|
|
- "shoppingCartDialog"
|
|
|
- )
|
|
|
- }
|
|
|
- shoppingCartDialog?.setData(mViewModel)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ shopping?.get()?.show(this.parentFragmentManager, "shoppingCartDialog")
|
|
|
+ shopping?.get()?.setData(mViewModel)
|
|
|
}
|
|
|
|
|
|
/**
|