From 40f9ac00ec5e4d6363450d1c8e0b0937cc0b1de4 Mon Sep 17 00:00:00 2001 From: liugl <liugl@sinata.cn> Date: 星期四, 14 一月 2021 10:50:18 +0800 Subject: [PATCH] 1。4:处理预约单导致串单的问题 隐藏预约单 --- app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt | 228 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 172 insertions(+), 56 deletions(-) diff --git a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt index d126f15..b1a98e3 100644 --- a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt +++ b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt @@ -1,23 +1,20 @@ package com.okgoincar.slab import android.content.Context -import android.content.Intent -import android.content.IntentFilter -import android.os.Bundle import android.os.Handler import android.os.Looper +import android.view.Gravity +import android.view.KeyEvent +import android.view.ViewGroup +import android.widget.PopupWindow import android.widget.Toast import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView -import cn.sinata.rxnetty.Cache.CacheUtil import cn.sinata.rxnetty.NettyClient +import cn.sinata.xldutils.netstatus.NetUtils import cn.sinata.xldutils.utils.* import com.amap.api.location.AMapLocation import com.amap.api.location.AMapLocationListener -import com.okgoincar.netUtls.callNet -import com.okgoincar.netUtls.getMapByAny -import com.okgoincar.ui.adapter.SlabStartAdapter -import com.okgoincar.utils.Cache.CacheKey import com.google.gson.Gson import com.okgoincar.R import com.okgoincar.base.AMapKit @@ -25,19 +22,22 @@ import com.okgoincar.base.MyApplication import com.okgoincar.bean.* import com.okgoincar.netUtls.Api -import com.okgoincar.netUtls.sendAudio +import com.okgoincar.netUtls.callNet +import com.okgoincar.netUtls.createView +import com.okgoincar.netUtls.getMapByAny import com.okgoincar.slab.event.SlabMineEventActivity import com.okgoincar.slab.util.DialogUtil +import com.okgoincar.ui.adapter.SlabStartAdapter +import com.okgoincar.utils.Cache.CacheKey import com.okgoincar.utils.DateUtil +import com.okgoincar.utils.EasePopup.EasyPopup +import com.okgoincar.utils.PackageUtil import com.okgoincar.utils.download.DownloadUtil import com.okgoincar.utils.glide.GlideUtil -import kotlinx.android.synthetic.main.slab_activity_login.* +import kotlinx.android.synthetic.main.dialog_sure_and_del_slab.view.* import kotlinx.android.synthetic.main.slab_activity_main.* -import kotlinx.android.synthetic.main.slab_activity_main.tv_name -import org.greenrobot.eventbus.EventBus import org.jetbrains.anko.startActivity import org.jetbrains.anko.toast -import java.lang.Exception class SlabMainActivity : MySlabBaseActivity(), AMapLocationListener { @@ -84,25 +84,28 @@ tv_time.textColor(this, R.color.black) tv_car_statue.textColor(this, R.color.black) tv_title.textColor(this, R.color.yellow_ffa72d) - } } override fun initView() { - setTitleText("OK出行司机") - showHeader(false) - showTitle(false) - callLogin { - view_mode.isSelected = !getNowTimeBlack() - addFragment(mainFragment, R.id.rl_container) - AMapKit.initLocation(this, this) - initCall() - NettyClient.getInstance().startService() - callPersion() + if (NetUtils.isNetworkConnected(this)) { + setTitleText("OK出行司机") + showHeader(false) + showTitle(false) + callLogin { + view_mode.isSelected = !getNowTimeBlack() + addFragment(mainFragment, R.id.rl_container) + AMapKit.initLocation(this, this) + initCall() + NettyClient.getInstance().startService() + callPersion() // showOrder("2221", "2", 100, 2) - callVersion() + callVersion() + } + } else { + showNoneNetDialog() } - //重重新登录 用来上线 + tv_server_ing.textColor(this, R.color.main_yellow) } @@ -114,18 +117,80 @@ } } + var popup: PopupWindow? = null + override fun onResume() { super.onResume() + showNoneNetDialog() try { - mainFragment.refresh() - }catch (e:Exception){ + mainFragment?.refresh() + callPersion() + callHomeNUm() + } catch (e: Exception) { } } + fun showNoneNetDialog() { + if (!NetUtils.isNetworkConnected(this)) { + popup = getSlabDelAndSurePopWindow(this, "刷新", "取消", "网络不通畅,是否刷新页面?", {}) { + if (!NetUtils.isNetworkConnected(this)) { + toast("无网络") + } else { + initView() + popup?.dismiss() + } + } + window.decorView.post { + popup?.showAtLocation(window.decorView, Gravity.CENTER, 0, 0); +// popup?.showCenter(window.decorView) + } + } + } + + fun getSlabDelAndSurePopWindow( + context: Context, + sureStr: String, + cancelStr: String, + content: String, + clickClose: () -> Unit, + clickSure: () -> Unit + ): PopupWindow { + var dialog = PopupWindow(createView(R.layout.dialog_sure_and_del_slab,context)) + dialog.width = ViewGroup.LayoutParams.MATCH_PARENT + dialog.height = ViewGroup.LayoutParams.MATCH_PARENT + + var view = dialog.contentView + view.tv_close_base.text = cancelStr + view.tv_sure_base.text = sureStr + view.tv_close_base.gone() + view.tv_close_base.setOnClickListener { + dialog.dismiss() + clickClose() + } + view.tv_sure_base.setOnClickListener { + clickSure() + } + view.tv_view_two_base.text = content + return dialog + } + + private fun showUI(data: UserInfoBean?) { data?.let { - tv_code_num.text = "资格证号:" + data.taxiAptitudeCard + textView_version.text = "版本-V" + PackageUtil.getVersionName(this) + tv_title_top.text = "服 务 监 督 卡" + if (data.taxiAptitudeCard.length > 7) { + tv_code_num.text = "资格证号:" + data.taxiAptitudeCard.substring( + 0, + 3 + ) + "*******" + data.taxiAptitudeCard.substring( + data.taxiAptitudeCard.length - 4, + data.taxiAptitudeCard.length + ) + } else { + tv_code_num.text = "资格证号:" + data.taxiAptitudeCard + } tv_name.text = "姓名:" + it.name tv_car_num.text = "车牌:" + it.licensePlate recycler_view_start.layoutManager = @@ -136,8 +201,8 @@ ) as RecyclerView.LayoutManager? recycler_view_start.adapter = SlabStartAdapter(it.score.toDouble()) var company = it.company - if (company.startsWith("广西")){ - company = company.substring(2,company.length) + if (company.startsWith("广西")) { + company = company.substring(2, company.length) } tv_company.text = "公司:" + company tv_time.text = "发证日期:" + it.networkCarlssueDate @@ -168,8 +233,10 @@ } } } + callHomeNUm() + } - + fun callHomeNUm(){ callNet(true, Api.queryHomeNum, getMapByAny()) { var data = gson.fromJson<MainInfoBean>(it, MainInfoBean::class.java) if (!data.data.service.isNullOrEmpty() && data.data.service != "0") @@ -183,16 +250,20 @@ } } + var testOrderId = 267 override fun setOnclick() { tv_server_ing.setOnClickListener { tv_server_ing.textColor(this, R.color.main_yellow) if (getNowTimeBlack()) { tv_wait_server.textColor(this, R.color.white) + iv_small.textColor(this, R.color.white) } else { tv_wait_server.textColor(this, R.color.black) + iv_small.textColor(this, R.color.black) } mainFragment.state = 1 + mainFragment.type = 1 mainFragment.autoRefresh() } @@ -200,14 +271,37 @@ tv_wait_server.textColor(this, R.color.main_yellow) if (getNowTimeBlack()) { tv_server_ing.textColor(this, R.color.white) + iv_small.textColor(this, R.color.white) } else { tv_server_ing.textColor(this, R.color.black) + iv_small.textColor(this, R.color.black) } mainFragment.state = 2 + mainFragment.type = 1 + mainFragment.autoRefresh() + } + + tv_title_top.clickDelay { + testOrderId++ + showOrder(testOrderId.toString(),"4",265,1) + } + + iv_small.setOnClickListener { + iv_small.textColor(this, R.color.main_yellow) + if (getNowTimeBlack()) { + tv_server_ing.textColor(this, R.color.white) + tv_wait_server.textColor(this, R.color.white) + } else { + tv_server_ing.textColor(this, R.color.black) + tv_wait_server.textColor(this, R.color.black) + } + mainFragment.state = 1 + mainFragment.type = 2 mainFragment.autoRefresh() } tv_name.clickDelay { + } tv_car_num.clickDelay { @@ -224,10 +318,6 @@ ll_task.clickDelay { startActivity<SlabMineEventActivity>() - } - - tv_title_top.clickDelay { - } view_mode.clickDelay { @@ -273,6 +363,9 @@ var mBackAppTime: Long = 0 override fun onBackPressed() { + if (popup != null && popup!!.isShowing) { + return + } if (System.currentTimeMillis() - mBackAppTime > 2000) { Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT) .show() @@ -280,6 +373,13 @@ } else { moveTaskToBack(true) } + } + + override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean { + if (popup != null && popup!!.isShowing) { + return false + } + return super.onKeyDown(keyCode, event) } override fun onEventMainThread(event: BaseEvent?) { @@ -293,11 +393,16 @@ toast("收到显示屏信息") } } + BaseEvent.UPDATA_MAIN_CAR -> { + try { + mainFragment.refresh() + } catch (e: Exception) { + } + } BaseEvent.ERROR_INFO -> { try { mainFragment.refresh() - }catch (e:Exception){ - + } catch (e: Exception) { } } } @@ -314,7 +419,7 @@ CacheKey.putKeyStr("location", Gson().toJson(p0)) } else { p0.let { -// toast("定位失败" + it.errorCode.toString()) + // toast("定位失败" + it.errorCode.toString()) } } } @@ -326,16 +431,23 @@ if (bean.data.version != "" && bean.data.version != Utils.getAppVersion(this)) { if (bean.data.mandatory == 0) { var pop = - DialogUtil.getSlabDelAndSurePopWindow(this, "确定", "取消", "有新版本是否更新", {}) { + DialogUtil.getSlabDelAndSurePopWindow( + true, + this, + "确定", + "取消", + "有新版本是否更新", + {}) { DownloadUtil(this).downloadAPK(bean.data.url, "ok出行车载端") } pop.showCenter(window.decorView) } else { var pop = DialogUtil.getSlabDelAndSurePopWindow( + false, this, "确定", "取消", - "版本已过时,是否强制升级?", + "版本已过时,强制升级!", {}) { DownloadUtil(this).downloadAPK(bean.data.url, "ok出行车载端") toast("后台开始下载,请等待") @@ -353,21 +465,8 @@ var identification = CacheKey.getKeyStr("identification") if (jobNum.isNotEmpty()) { var map = getMapByAny() - map["jobNum"] = jobNum - callNet(true, Api.loginByJobNumber, map) { - var bean = gson.fromJson<LoginBean>(it, LoginBean::class.java) - CacheKey.putKeyStr("jobNum", jobNum) - CacheKey.putKeyStr("appid", bean.data.appid) - CacheKey.putKeyStr("token", bean.data.token) - CacheKey.putKeyStr("userId", bean.data.id.toString()) - CacheKey.putKeyStr("serverId", bean.data.serverId.toString()) - CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString()) - ok() - } - } else if (identification.isNotEmpty()) { - var map = getMapByAny() - map["identification"] = identification - callNet(true, Api.loginByIdentification, map) { + map["taxiAptitudeCard"] = identification + callNet(this, Api.loginByTaxiAptitudeCard, map, { var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java) CacheKey.putKeyStr("identification", identification) CacheKey.putKeyStr("appid", bean.data.appid) @@ -376,6 +475,23 @@ CacheKey.putKeyStr("serverId", bean.data.serverId.toString()) CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString()) ok() + }) { + ok() + } + } else if (identification.isNotEmpty()) { + var map = getMapByAny() + map["taxiAptitudeCard"] = identification + callNet(this, Api.loginByTaxiAptitudeCard, map, { + var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java) + CacheKey.putKeyStr("identification", identification) + CacheKey.putKeyStr("appid", bean.data.appid) + CacheKey.putKeyStr("token", bean.data.token) + CacheKey.putKeyStr("userId", bean.data.id.toString()) + CacheKey.putKeyStr("serverId", bean.data.serverId.toString()) + CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString()) + ok() + }) { + ok() } } else { ok() -- Gitblit v1.7.1