Prechádzať zdrojové kódy

行情防抖 3.5秒

jieyu 4 rokov pred
rodič
commit
9789d52fdc

+ 5 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/StringUtils.kt

@@ -221,6 +221,11 @@ fun String.toTimeData(format: String = "yyyy-MM-dd HH:mm:ss"): Date{
     return sdf.parse(this)!!
 }
 
+fun String.toTimeNormalData(): Date{
+    val sdf = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA)
+    return sdf.parse(this)!!
+}
+
 /**
  * 历史委托单的状态
  */

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/chart/ChartActivity.kt

@@ -206,7 +206,7 @@ class ChartActivity : BaseActivity<ChartViewModel>() , View.OnClickListener {
         timeChartView.setTimeChartListener {
             // 这里做个防抖
             // 重新刷新
-            if(TimeUtils.getNowMills() - requestTime > 3000){
+            if(TimeUtils.getNowMills() - requestTime > 3500){
                 viewModel.queryTimeChart()
                 requestTime = TimeUtils.getNowMills()
             }

+ 3 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/chart/ChartDataAdapter.kt

@@ -5,6 +5,7 @@ import cn.muchinfo.rma.global.data.GoodsInfoAndQuotes
 import cn.muchinfo.rma.global.data.chart.HistoryDatas
 import cn.muchinfo.rma.global.toShowTime
 import cn.muchinfo.rma.global.toTimeData
+import cn.muchinfo.rma.global.toTimeNormalData
 import cn.muchinfo.rma.view.base.chart.old.controls.MTPChartControl
 import com.blankj.utilcode.util.TimeUtils
 import com.desfate.chart.data.ChartData
@@ -54,9 +55,9 @@ class ChartDataAdapter {
 
     fun checkSameMin(time1: String, time2: String): Boolean{
         val cal1 = Calendar.getInstance()
-        cal1.time = time1.toTimeData()
+        cal1.time = time1.toTimeNormalData()
         val cal2 = Calendar.getInstance()
-        cal2.time = time2.toTimeData()
+        cal2.time = time2.toTimeNormalData()
         return cal1.get(Calendar.DAY_OF_YEAR) == cal2.get(Calendar.DAY_OF_YEAR) &&
         cal1.get(Calendar.HOUR) == cal2.get(Calendar.HOUR) &&
         cal1.get(Calendar.MINUTE) == cal2.get(Calendar.MINUTE)

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/chart/old/timeCharts/TimeChartView.java

@@ -164,7 +164,7 @@ public class TimeChartView extends FrameLayout implements ITouchEventResponse {
         if (timeChartData == null || timeChartData.getHistoryDatas() == null) return; // 没有数据
         HistoryDatas lastData = timeChartData.getHistoryDatas().get(timeChartData.getHistoryDatas().size() - 1);
         HistoryDatas nowData = lastData;
-        if(new ChartDataAdapter().checkSameMin(nowData.getTime(), lastData.getTime())){ // 不是同一分钟 则重新请求
+        if(new ChartDataAdapter().checkSameMin(nowData.getTime().replace("T"," ").replace("+08:00",""), lastDate.getTime())){ // 不是同一分钟 则重新请求
             timeChartData.getHistoryDatas().add(lastDate);
         }else{
             if(timeChartListener != null) timeChartListener.onTimeRepairFail();

+ 8 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/yrdzpurchase/chart/YrdzChartActivity.kt

@@ -37,6 +37,8 @@ import cn.muchinfo.rma.view.base.yrdzpurchase.listed.PurchaseListedActivity
 import cn.muchinfo.rma.view.eventbus.QuoteMessageEvent
 import com.blankj.utilcode.util.ActivityUtils
 import com.blankj.utilcode.util.ConvertUtils
+import com.blankj.utilcode.util.LogUtils
+import com.blankj.utilcode.util.TimeUtils
 import com.qmuiteam.qmui.util.QMUIDisplayHelper
 import com.qmuiteam.qmui.widget.tab.QMUITabIndicator
 import com.qmuiteam.qmui.widget.tab.QMUITabSegment
@@ -351,10 +353,15 @@ class YrdzChartActivity : BaseActivity<YrdzChartViewModel>() , View.OnClickListe
         })
 
         timeChartView.setTimeChartListener {
+            // 这里做个防抖
             // 重新刷新
-            viewModel.queryTimeChart()
+            if(TimeUtils.getNowMills() - requestTime > 3500) {
+                viewModel.queryTimeChart()
+                requestTime = TimeUtils.getNowMills()
+            }
         }
     }
+    var requestTime = TimeUtils.getNowMills()
 
     override fun onClick(v: View?) {
         when(v?.id){