白名单组切换重新下载白名单
diff --git a/app/src/main/java/com/supwisdom/activities/load/LoadPresenter.kt b/app/src/main/java/com/supwisdom/activities/load/LoadPresenter.kt
index 05a0365..77ba654 100644
--- a/app/src/main/java/com/supwisdom/activities/load/LoadPresenter.kt
+++ b/app/src/main/java/com/supwisdom/activities/load/LoadPresenter.kt
@@ -96,7 +96,7 @@
 
             try {
                 sendMessage(LOAD_PROGRESS, "加载白名单...")
-                apiInterface.downloadWhitelist(bean.cardverno!!)
+                apiInterface.downloadWhitelist(bean.whitelistid, bean.cardverno!!)
                 sendMessage(LOAD_DONE, "加载白名单成功")
             } catch (ex: Exception) {
                 sendMessage(LOAD_DONE, "加载白名单失败:${ex.message}")
diff --git a/app/src/main/java/com/supwisdom/activities/manage/ManagePresenter.kt b/app/src/main/java/com/supwisdom/activities/manage/ManagePresenter.kt
index d7ced8c..681d57d 100644
--- a/app/src/main/java/com/supwisdom/activities/manage/ManagePresenter.kt
+++ b/app/src/main/java/com/supwisdom/activities/manage/ManagePresenter.kt
@@ -69,7 +69,7 @@
             dyRecord!!.cardverno = "0"
             pos.replaceDynamicPara(dyRecord)
             return try {
-                EpayApiImpl().downloadWhitelist("0")
+                EpayApiImpl().downloadWhitelist(dyRecord.whitelistid, "0")
                 BaseResp(PublicDef.SUCCESS, "更新成功")
             } catch (ex: Exception) {
                 BaseResp(PublicDef.ERROR, ex.message)
diff --git a/app/src/main/java/com/supwisdom/bean/AuthRetBean.kt b/app/src/main/java/com/supwisdom/bean/AuthRetBean.kt
index b488ac6..560f8fd 100644
--- a/app/src/main/java/com/supwisdom/bean/AuthRetBean.kt
+++ b/app/src/main/java/com/supwisdom/bean/AuthRetBean.kt
@@ -12,5 +12,6 @@
     var offlineseqno: Int = 0
     var paraverno: Int = 0
     var paragroupid: Int = 0
+    var whitelistid: Int = 0
     var cardverno: String? = null
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/supwisdom/service/APIInterface.kt b/app/src/main/java/com/supwisdom/service/APIInterface.kt
index b24df22..4c970a2 100644
--- a/app/src/main/java/com/supwisdom/service/APIInterface.kt
+++ b/app/src/main/java/com/supwisdom/service/APIInterface.kt
@@ -14,7 +14,7 @@
 
     fun downloadSyspara(paragroupid: Int, paraverno: Int)
 
-    fun downloadWhitelist(maxCardverno: String)
+    fun downloadWhitelist(whitelistid: Int, maxCardverno: String)
 
     fun uploadTransdtl(record: TransdtlOnlineRecord)
 
diff --git a/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt b/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt
index e523f80..8b359b0 100644
--- a/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt
+++ b/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt
@@ -27,7 +27,7 @@
     @Throws(HeartBeatError::class)
     override fun heartBeat() {
         val dyRecord = pos.getDynamicPara()
-        var cardverno = dyRecord!!.cardverno ?: "0"
+        val cardverno = dyRecord!!.cardverno ?: "0"
         val params = WebParams()
         params.setParameter("devphyid", pos.getConfigPara()!!.devphyid)
             .setParameter("termdate", DateUtil.getNowDateNoFormat())
@@ -55,23 +55,11 @@
                 throw HeartBeatError(ex.message ?: "null")
             }
         }
-        /**
-         * 白名单组ID变化清空本地白名单重新下载
-         */
-        if (dyRecord.whitelistid != retBean.whitelistid) {
-            if (!pos.clearWhiteList()) {
-                throw HeartBeatError("清空白名单失败")
-            }
-            val dyRecord = pos.getDynamicPara()
-            dyRecord!!.whitelistid = retBean.whitelistid
-            if (!pos.replaceDynamicPara(dyRecord)) {
-                throw HeartBeatError("保存参数失败")
-            }
-            cardverno = "0"
-        }
-        if (cardverno < retBean.cardverno!!) {
+        if (dyRecord.whitelistid != retBean.whitelistid ||
+            cardverno < retBean.cardverno!!
+        ) {
             try {
-                downloadWhitelist(retBean.cardverno!!)
+                downloadWhitelist(retBean.whitelistid, retBean.cardverno!!)
             } catch (ex: WhiteListError) {
                 throw HeartBeatError(ex.message ?: "null")
             }
@@ -150,7 +138,21 @@
     }
 
     @Throws(WhiteListError::class)
-    override fun downloadWhitelist(maxCardverno: String) {
+    override fun downloadWhitelist(whitelistid: Int, maxCardverno: String) {
+        var dyRecord = pos.getDynamicPara()
+        /**
+         * 白名单组ID变化清空本地白名单重新下载
+         */
+        if (dyRecord!!.whitelistid != whitelistid) {
+            if (!pos.clearWhiteList()) {
+                throw WhiteListError("清空白名单失败")
+            }
+            dyRecord.cardverno = "0"
+            dyRecord.whitelistid = whitelistid
+            if (!pos.replaceDynamicPara(dyRecord)) {
+                throw WhiteListError("保存参数失败")
+            }
+        }
         val maxcount = 20
         do {
             val params = WebParams()
@@ -185,7 +187,7 @@
             if (!pos.saveWhiteList(list)) {
                 throw WhiteListError("保存白名单失败")
             }
-            val dyRecord = pos.getDynamicPara()
+            dyRecord = pos.getDynamicPara()
             dyRecord!!.cardverno = retBean.cardverno
             if (!pos.replaceDynamicPara(dyRecord)) {
                 throw WhiteListError("保存参数失败")