app/src/main/java/com/okgoincar/base/MoneyBroadCastReceiver.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/okgoincar/bean/LocalOrderBean.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/okgoincar/utils/Cache/CacheKey.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/okgoincar/utils/UtilKt.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/drawable/mode_write.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/drawable/mode_write_and_black.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/res/layout/slab_activity_main.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/src/main/java/com/okgoincar/base/MoneyBroadCastReceiver.kt
@@ -3,22 +3,18 @@ import android.content.BroadcastReceiver import android.content.Context import android.content.Intent import android.net.ConnectivityManager import android.os.Handler import android.os.Looper import cn.sinata.rxnetty.netStatus.NetUtils import cn.sinata.xldutils.netstatus.NetUtils import cn.sinata.xldutils.utils.toast import com.google.gson.Gson import com.okgoincar.bean.LoginBean import com.okgoincar.bean.LocalOrderBean import com.okgoincar.netUtls.Api import com.okgoincar.netUtls.callNet import com.okgoincar.netUtls.getMapByAny import com.okgoincar.netUtls.getToken import com.okgoincar.slab.SlabLoginActivity import com.okgoincar.slab.SlabMainActivity import com.okgoincar.utils.Cache.CacheKey import com.okgoincar.utils.Cache.CacheUtil import io.netty.util.NetUtil import org.greenrobot.eventbus.EventBus import org.jetbrains.anko.startActivity import java.lang.Exception class MoneyBroadCastReceiver : BroadcastReceiver() { @@ -42,6 +38,11 @@ var mileage = intent.getDoubleExtra("mileage",0.0) //里程,单位为km callOver(contexts!!,price) } ConnectivityManager.CONNECTIVITY_ACTION -> { if (NetUtils.isNetworkConnected(MyApplication.getInstance())){ callErrorOrder() } } } @@ -57,6 +58,60 @@ toast("没有进行中的订单,无法开始") return } if (CacheKey.getLocalOrderBean() == null) { //没有数据 代表没有异常订单 if (NetUtils.isNetworkConnected(MyApplication.getInstance())) { //有网络直接处理 callStartOrder(contexts, i) } else { //无网络 存本地 var bean = LocalOrderBean() bean.orderId = MyApplication.currentOrderId bean.startTime = System.currentTimeMillis() CacheKey.saveLocalOrderBean(bean) } } else { //有数据存着,并且有网络上传异常订单 如果没有网络就不处理,这个肯定是线下的单 if (NetUtils.isNetworkConnected(MyApplication.getInstance())){ callErrorOrder() } } } private fun callOver(contexts: Context, travelFee: Double) { if (MyApplication.currentOrderId.isEmpty()) { toast("没有进行中的订单,无法结束") return } if (CacheKey.getLocalOrderBean() == null) { //没有数据 代表没有异常订单 if (NetUtils.isNetworkConnected(MyApplication.getInstance())) { //有网络直接处理 callEndOrder(contexts, travelFee) } else { //无网络 存本地 var bean = LocalOrderBean() bean.orderId = MyApplication.currentOrderId bean.endTime = System.currentTimeMillis() CacheKey.saveLocalOrderBean(bean) } } else { //有数据存着,并且有网络上传异常订单 如果没有网络就不处理,这个肯定是线下的单 if (NetUtils.isNetworkConnected(MyApplication.getInstance())){ callErrorOrder() }else{ val bean = CacheKey.getLocalOrderBean() bean?.let { bean.endTime = System.currentTimeMillis() bean.money = travelFee bean.orderId = MyApplication.currentOrderId CacheKey.saveLocalOrderBean(bean) } } } } /*** * 上传异常订单 */ private fun callErrorOrder() { } fun callStartOrder(contexts: Context, i: Int) { var map = getMapByAny() map["orderId"] = MyApplication.currentOrderId map["orderType"] = MyApplication.currentOrderType @@ -68,11 +123,9 @@ } } private fun callOver(contexts: Context,travelFee:Double){ if (MyApplication.currentOrderId.isEmpty()){ toast("没有进行中的订单,无法结束") return } fun callEndOrder(contexts: Context, travelFee: Double) { var map = getMapByAny() map["orderId"] = MyApplication.currentOrderId map["orderType"] = MyApplication.currentOrderType @@ -83,7 +136,6 @@ callNet(contexts,Api.confirmFees_,map){ EventBus.getDefault().post(BaseEvent(BaseEvent.SURE_MONEY)) } } } app/src/main/java/com/okgoincar/bean/LocalOrderBean.java
New file @@ -0,0 +1,50 @@ package com.okgoincar.bean; public class LocalOrderBean { public static String LOCAL_ORDER_INFO = "LOCAL_ORDER_INFO"; private Long startTime; private Long endTime; private String orderId; private String orderType = "2"; private double money; public Long getStartTime() { return startTime; } public void setStartTime(Long startTime) { this.startTime = startTime; } public Long getEndTime() { return endTime; } public void setEndTime(Long endTime) { this.endTime = endTime; } public String getOrderId() { return orderId; } public void setOrderId(String orderId) { this.orderId = orderId; } public String getOrderType() { return orderType; } public void setOrderType(String orderType) { this.orderType = orderType; } public double getMoney() { return money; } public void setMoney(double money) { this.money = money; } } app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
@@ -98,6 +98,7 @@ callPersion() // showOrder("2221", "2", 100, 2) callVersion() view_mode.isSelected = !getNowTimeBlack() } @@ -218,6 +219,21 @@ tv_title_top.clickDelay { } view_mode.clickDelay { view_mode.isSelected = !view_mode.isSelected if (getNowTimeBlack()){ CacheKey.putKeyStr("date_mode",System.currentTimeMillis().toString()) CacheKey.putKeyStr("mode_now_time","1")//记录为点击切换的颜色 1 白色 2 黑色 setBlackMode(false) }else{ CacheKey.putKeyStr("date_mode",System.currentTimeMillis().toString()) CacheKey.putKeyStr("mode_now_time","2") setBlackMode(true) } } tv_car.clickDelay { // if (homeDataBean?.data?.work == 1) { app/src/main/java/com/okgoincar/utils/Cache/CacheKey.kt
@@ -3,6 +3,7 @@ import cn.sinata.xldutils.utils.Md5 import com.google.gson.Gson import com.google.gson.reflect.TypeToken import com.okgoincar.bean.LocalOrderBean import com.okgoincar.bean.UserInfoBean import com.okgoincar.utils.Cache.CacheUtil @@ -66,4 +67,19 @@ fun getTerminalName():String{ return getKeyStr("terminalName") } fun getLocalOrderBean():LocalOrderBean?{ var str = getKeyStr(LocalOrderBean.LOCAL_ORDER_INFO) if (str.isEmpty()){ return null }else{ return Gson().fromJson<LocalOrderBean>(str,LocalOrderBean::class.java) } } fun saveLocalOrderBean(bean: LocalOrderBean){ putKeyStr(LocalOrderBean.LOCAL_ORDER_INFO,Gson().toJson(bean)) } } app/src/main/java/com/okgoincar/utils/UtilKt.kt
@@ -24,6 +24,7 @@ import cn.sinata.xldutils.utils.ViewClickDelay.lastClickTime import cn.sinata.xldutils.xldUtils import com.okgoincar.base.MyApplication import com.okgoincar.utils.Cache.CacheKey import org.jetbrains.anko.internals.AnkoInternals import java.lang.NumberFormatException import java.util.* @@ -296,6 +297,7 @@ fun getFormatOne(value:Double?):String{ return Formatter().format("%.1f",value).toString() } fun getFormatTwo(value:Double?):String{ return Formatter().format("%.2f",value).toString() } @@ -308,13 +310,29 @@ //}) fun getNowTimeBlack():Boolean{ var hour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY) var hour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY) //此时的小时 var dayNow = Calendar.getInstance().get(Calendar.DAY_OF_MONTH)//此时的天数 var date = CacheKey.getKeyStr("date_mode") //记录为点击切换的时间Long var mode = CacheKey.getKeyStr("mode_now_time") ///记录为点击切换的颜色 1 白色 2 黑色 if (date.isEmpty()) { if (hour < 7 || hour >= 18){ return true } return false } else { var time: Long = date.toLong() var calendar = Calendar.getInstance() calendar.timeInMillis = time var day = calendar.get(Calendar.DAY_OF_MONTH) if (day != dayNow) { CacheKey.putKeyStr("date_mode", "") return getNowTimeBlack() } else { return mode != "1" } } } fun toast(s:String){ app/src/main/res/drawable/mode_write.xml
New file @@ -0,0 +1,23 @@ <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="oval"> <stroke android:width="1dp" android:color="@color/main_yellow" /> <size android:width="64dp" android:height="64dp" /> </shape> </item> <item> <shape android:shape="line" android:useLevel="true"> <stroke android:width="1dp" android:color="@color/main_yellow" /> <size android:height="64dp" /> </shape> </item> </layer-list> app/src/main/res/drawable/mode_write_and_black.xml
New file @@ -0,0 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@mipmap/close_big" android:state_selected="true" /> <item android:drawable="@mipmap/close_write_c" android:state_selected="false" /> </selector> app/src/main/res/layout/slab_activity_main.xml
@@ -100,6 +100,8 @@ app:layout_constraintStart_toEndOf="@+id/ll_top" app:layout_constraintTop_toTopOf="parent" /> <View android:layout_width="0dp" android:layout_height="1px" @@ -199,8 +201,8 @@ <ImageView android:id="@+id/iv_head" android:layout_width="180dp" android:layout_height="180dp" android:layout_width="170dp" android:layout_height="170dp" android:layout_marginTop="75dp" android:layout_marginEnd="26dp" android:elevation="5dp" @@ -281,6 +283,20 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="@+id/rl_container" /> <View android:id="@+id/view_mode" android:layout_width="64dp" android:layout_height="64dp" android:background="@drawable/mode_write_and_black" android:gravity="center" android:textSize="40sp" android:textColor="#F28105" android:textStyle="bold" android:layout_marginStart="38dp" android:layout_marginBottom="31dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" /> <TextView android:id="@+id/ll_task" android:layout_width="260dp"