From 776688625defffd51fb238a73835fa03c9c0491e Mon Sep 17 00:00:00 2001 From: yangyakun Date: Thu, 18 Jul 2024 14:21:53 +0800 Subject: [PATCH] =?UTF-8?q?[6.5.0]=20[fix]=20[=E8=AE=A2=E5=8D=95=E4=B8=8D?= =?UTF-8?q?=E5=8F=AF=E9=80=86=E9=80=BB=E8=BE=91=E6=A0=A1=E9=AA=8C]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../och/common/module/biz/order/OrderModel.kt | 27 ++++++++++++++----- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/order/OrderModel.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/order/OrderModel.kt index fbed1c8d2d..5a88421ccd 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/order/OrderModel.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/order/OrderModel.kt @@ -7,6 +7,7 @@ object OrderModel { private val mOrderStatusCallbackMap: MutableMap = ConcurrentHashMap() var orderBean: BaseOrderBean?=null + var preOrderBean: BaseOrderBean?=null init { @@ -21,23 +22,35 @@ object OrderModel { mOrderStatusCallbackMap[tag] = callback } - fun invokeListener(orderBean: T?){ + fun invokeListener(newOrderBean: T?){ + preOrderBean?.let { + if(newOrderBean!=null){ + if(it.orderNo==newOrderBean.orderNo){ + return + } + } + } if(this.orderBean==null){ - this.orderBean = orderBean + this.orderBean = newOrderBean }else { - if(orderBean==null){ + if(newOrderBean==null){ + this.preOrderBean = this.orderBean this.orderBean = null }else{ - if (this.orderBean!!.orderNo == orderBean.orderNo && this.orderBean!!.orderStatus == orderBean.orderStatus) { - return + if(this.orderBean!!.orderNo == newOrderBean.orderNo){ + if(this.orderBean!!.orderStatus >= newOrderBean.orderStatus){ + return + }else{ + this.orderBean = newOrderBean + } }else{ - this.orderBean = orderBean + this.orderBean = newOrderBean } } } for (callback in mOrderStatusCallbackMap.values) { - callback.onCurrentOrderStatusChanged(orderBean) + callback.onCurrentOrderStatusChanged(newOrderBean) } } } \ No newline at end of file