优化
diff --git a/app/src/main/java/com/supwisdom/activities/consume/ConsumeActivity.kt b/app/src/main/java/com/supwisdom/activities/consume/ConsumeActivity.kt
index 8de47f0..b238e97 100644
--- a/app/src/main/java/com/supwisdom/activities/consume/ConsumeActivity.kt
+++ b/app/src/main/java/com/supwisdom/activities/consume/ConsumeActivity.kt
@@ -253,12 +253,12 @@
     }
 
     private fun dealIntent() {
-        amount = this.intent.getIntExtra("amount", 0)
+        amount = this.intent.getStringExtra("amount")?.toInt() ?: 0
         payWay = this.intent.getStringExtra("payway")
         val operation = this.intent.getStringExtra("operation")
         if (operation == "reverse") {
             presenter.clickToReverse(amount)
-            dialogPurchase!!.show("等待冲正", CommonUtil.showFormatAmount("金额:", amount))
+            dialogPurchase!!.show("等待冲正", CommonUtil.showFormatAmount("金额", amount))
         }
         this.intent.putExtra("amount", "0")
         this.intent.putExtra("payway", "")
@@ -409,7 +409,7 @@
                 .append(info.transtime?.substring(2, 4)).append(":")
                 .append(info.transtime?.substring(4))
             vLastPaytime.text = sb.toString()
-            resetPayShowCounter(10 * 1000)
+            resetPayShowCounter(30 * 1000)
         }
     }
 
diff --git a/app/src/main/java/com/supwisdom/activities/consume/mode/CardPayService.kt b/app/src/main/java/com/supwisdom/activities/consume/mode/CardPayService.kt
index e1e2c0d..2bfb60f 100644
--- a/app/src/main/java/com/supwisdom/activities/consume/mode/CardPayService.kt
+++ b/app/src/main/java/com/supwisdom/activities/consume/mode/CardPayService.kt
@@ -154,19 +154,23 @@
                 cardBean.cardNo!!
             )
             if (resp != null && resp.retcode == HttpStatus.SC_OK) {
-                val retBean = GsonUtil.GsonToBean(resp.retjson!!, CardAccountRetBean::class.java)
-                if (retBean.retcode == PublicDef.SUCCESS) {
-                    cardBean.username = retBean.username
-                    cardBean.userid = retBean.userid
-                    cardBean.balance = retBean.balance
-                    when {
-                        "normal" == retBean.status -> cardBean.cardstatus = CardStatus.NORMAL
-                        "expire" == retBean.status -> cardBean.cardstatus = CardStatus.EXPIRE
-                        "lost" == retBean.status -> cardBean.cardstatus = CardStatus.LOCK
-                        "logout" == retBean.status -> cardBean.cardstatus = CardStatus.LOGOUT
-                        "frozen" == retBean.status -> cardBean.cardstatus = CardStatus.FROZEN
-                        "lock" == retBean.status -> cardBean.cardstatus = CardStatus.LOST
+                try {
+                    val retBean = GsonUtil.GsonToBean(resp.retjson!!, CardAccountRetBean::class.java)
+                    if (retBean.retcode == PublicDef.SUCCESS) {
+                        cardBean.username = retBean.username
+                        cardBean.userid = retBean.userid
+                        cardBean.balance = retBean.balance
+                        when {
+                            "normal" == retBean.status -> cardBean.cardstatus = CardStatus.NORMAL
+                            "expire" == retBean.status -> cardBean.cardstatus = CardStatus.EXPIRE
+                            "lost" == retBean.status -> cardBean.cardstatus = CardStatus.LOCK
+                            "logout" == retBean.status -> cardBean.cardstatus = CardStatus.LOGOUT
+                            "frozen" == retBean.status -> cardBean.cardstatus = CardStatus.FROZEN
+                            "lock" == retBean.status -> cardBean.cardstatus = CardStatus.LOST
+                        }
                     }
+                } catch (ex: Exception) {
+                    ex.printStackTrace()
                 }
             }
         }
@@ -336,9 +340,13 @@
                 SPApplication.getInstance().setEpayLinking(false)
                 return false
             }
-            val retBean = GsonUtil.GsonToBean(resp.retjson!!, CardPayInitRetBean::class.java)
+            val retBean = try {
+                GsonUtil.GsonToBean(resp.retjson!!, CardPayInitRetBean::class.java)
+            } catch (ex: java.lang.Exception) {
+                throw CardPayFailError("json异常:${ex.message}")
+            }
             if (retBean.retcode != PublicDef.SUCCESS) {
-                throw CardPayFailError(retBean.retmsg!!)
+                throw CardPayFailError(retBean.getErrorMsg())
             }
             onlRecord.billno = retBean.billno
             return true
@@ -349,9 +357,13 @@
                 SPApplication.getInstance().setEpayLinking(false)
                 return false
             }
-            val retBean = GsonUtil.GsonToBean(resp.retjson!!, CardPayConfirmRetBean::class.java)
+            val retBean = try {
+                GsonUtil.GsonToBean(resp.retjson!!, CardPayConfirmRetBean::class.java)
+            } catch (ex: Exception) {
+                throw CardPayFailError("json异常:${ex.message}")
+            }
             if (retBean.retcode != PublicDef.SUCCESS) {
-                throw CardPayFailError(retBean.retmsg!!)
+                throw CardPayFailError(retBean.getErrorMsg())
             }
             if (retBean.require_query) {
                 //TODO
diff --git a/app/src/main/java/com/supwisdom/activities/consume/mode/CodePayService.kt b/app/src/main/java/com/supwisdom/activities/consume/mode/CodePayService.kt
index 116a82b..486ff10 100644
--- a/app/src/main/java/com/supwisdom/activities/consume/mode/CodePayService.kt
+++ b/app/src/main/java/com/supwisdom/activities/consume/mode/CodePayService.kt
@@ -14,6 +14,7 @@
 import com.supwisdom.okhttp.TransResp
 import com.supwisdom.utils.*
 import org.apache.http.HttpStatus
+import java.lang.Exception
 
 /**
  ** create by zzq on 2019/7/30
@@ -95,9 +96,13 @@
         if (resp.retcode != HttpStatus.SC_OK) {
             throw CardPayFailError("错误码=${resp.retcode}")
         }
-        val retBean = GsonUtil.GsonToBean(resp.retjson!!, CardPayConfirmRetBean::class.java)
+        val retBean = try {
+            GsonUtil.GsonToBean(resp.retjson!!, CardPayConfirmRetBean::class.java)
+        } catch (ex: Exception) {
+            throw CardPayFailError("json异常:${ex.message}")
+        }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw CardPayFailError(retBean.retmsg!!)
+            throw CardPayFailError(retBean.getErrorMsg())
         }
         if (retBean.require_query) {
             // 等待查询
@@ -116,9 +121,13 @@
         if (resp.retcode != HttpStatus.SC_OK) {
             throw CardPayFailError("错误码=${resp.retcode}")
         }
-        val retBean = GsonUtil.GsonToBean(resp.retjson!!, CardPayInitRetBean::class.java)
+        val retBean = try {
+            GsonUtil.GsonToBean(resp.retjson!!, CardPayInitRetBean::class.java)
+        } catch (ex: Exception) {
+            throw CardPayFailError("json异常:${ex.message}")
+        }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw CardPayFailError(retBean.retmsg!!)
+            throw CardPayFailError(retBean.getErrorMsg())
         }
         codeRecord.billno = retBean.billno
         codeRecord.username = retBean.username
diff --git a/app/src/main/java/com/supwisdom/activities/menu/MenuPresenter.kt b/app/src/main/java/com/supwisdom/activities/menu/MenuPresenter.kt
index 68b8dd6..8f49136 100644
--- a/app/src/main/java/com/supwisdom/activities/menu/MenuPresenter.kt
+++ b/app/src/main/java/com/supwisdom/activities/menu/MenuPresenter.kt
@@ -13,7 +13,6 @@
 import com.supwisdom.exception.TransdtlUploadError
 import com.supwisdom.service.AuthEpay
 import com.supwisdom.service.EpayApiImpl
-import com.supwisdom.utils.CommonUtil
 import com.supwisdom.utils.DateUtil
 import com.supwisdom.utils.PublicDef
 
diff --git a/app/src/main/java/com/supwisdom/activities/revenue/RevenuePresenter.kt b/app/src/main/java/com/supwisdom/activities/revenue/RevenuePresenter.kt
index 4ee5bd2..cbf95db 100644
--- a/app/src/main/java/com/supwisdom/activities/revenue/RevenuePresenter.kt
+++ b/app/src/main/java/com/supwisdom/activities/revenue/RevenuePresenter.kt
@@ -23,7 +23,7 @@
     private inner class AsyncRevenue : AsyncTask<String, Void, RevenueAmtRetBean>() {
         override fun onPostExecute(retBean: RevenueAmtRetBean) {
             if (retBean.retcode != PublicDef.SUCCESS) {
-                iRevenueView.showRevenueFail(retBean.retmsg!!)
+                iRevenueView.showRevenueFail(retBean.getErrorMsg())
             } else {
                 iRevenueView.showRevenueSuc(retBean)
             }
@@ -36,7 +36,11 @@
             if (resp.retcode != HttpStatus.SC_OK) {
                 return RevenueAmtRetBean(resp.retcode, "错误码=" + resp.retcode)
             }
-            return GsonUtil.GsonToBean(resp.retjson!!, RevenueAmtRetBean::class.java)
+            return try {
+                GsonUtil.GsonToBean(resp.retjson!!, RevenueAmtRetBean::class.java)
+            } catch (ex: Exception) {
+                RevenueAmtRetBean(PublicDef.ERROR, "json异常:${ex.message}")
+            }
         }
     }
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/supwisdom/activities/upgrade/mode/EpayUpgradeApi.kt b/app/src/main/java/com/supwisdom/activities/upgrade/mode/EpayUpgradeApi.kt
index 1545002..91be409 100644
--- a/app/src/main/java/com/supwisdom/activities/upgrade/mode/EpayUpgradeApi.kt
+++ b/app/src/main/java/com/supwisdom/activities/upgrade/mode/EpayUpgradeApi.kt
@@ -163,7 +163,7 @@
             }
         } catch (e: Exception) {
             e.printStackTrace()
-            UpgradeInfoRetBean(PublicDef.ERROR, "获取版本号JSON错误:${e.message}")
+            UpgradeInfoRetBean(PublicDef.ERROR, "获取版本号JSON异常:${e.message}")
         }
     }
 
diff --git a/app/src/main/java/com/supwisdom/bean/BaseResp.kt b/app/src/main/java/com/supwisdom/bean/BaseResp.kt
index ac5fb29..68e95fe 100644
--- a/app/src/main/java/com/supwisdom/bean/BaseResp.kt
+++ b/app/src/main/java/com/supwisdom/bean/BaseResp.kt
@@ -14,4 +14,7 @@
 
     var retcode: Int = 0
     var retmsg: String? = null
+    fun getErrorMsg(): String {
+        return retmsg ?: "错误码:$retcode"
+    }
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/supwisdom/db/TransdtlUnionDao.kt b/app/src/main/java/com/supwisdom/db/TransdtlUnionDao.kt
index 973dd8d..e764afa 100644
--- a/app/src/main/java/com/supwisdom/db/TransdtlUnionDao.kt
+++ b/app/src/main/java/com/supwisdom/db/TransdtlUnionDao.kt
@@ -26,7 +26,6 @@
             .append(BeanPropEnum.TransdtlOffline.status).append(",")
             .append(" 'null' as ").append(BeanPropEnum.TransdtlUnion.username).append(",")
             .append(BeanPropEnum.TransdtlOffline.cardno).append(",")
-            .append(",")
             .append(BeanPropEnum.TransdtlOffline.upflag)
             .append(" from ").append(DBTransdtlHelper.TABLE_NAME_DTL_OFFLINE)
             .append(" UNION ALL select ")
diff --git a/app/src/main/java/com/supwisdom/service/AuthEpay.kt b/app/src/main/java/com/supwisdom/service/AuthEpay.kt
index 1e4ef62..8c28078 100644
--- a/app/src/main/java/com/supwisdom/service/AuthEpay.kt
+++ b/app/src/main/java/com/supwisdom/service/AuthEpay.kt
@@ -72,7 +72,7 @@
             throw AuthEpayError("token json异常:${ex.message}")
         }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw AuthEpayError(retBean.retmsg ?: "错误码:${retBean.retcode}")
+            throw AuthEpayError(retBean.getErrorMsg())
         }
         if (TextUtils.isEmpty(retBean.token)) {
             throw AuthEpayError("token不能为空")
@@ -126,14 +126,14 @@
             throw AuthEpayError("json异常:${ex.message}")
         }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw AuthEpayError(retBean.retmsg ?: "错误码:${retBean.retcode}")
+            throw AuthEpayError(retBean.getErrorMsg())
         }
         return retBean
     }
 
     private fun dealSession(bean: AuthJwtRetBean) {
         if (bean.retcode != PublicDef.SUCCESS) {
-            throw AuthEpayError(bean.retmsg!!)
+            throw AuthEpayError(bean.getErrorMsg())
         }
         if (TextUtils.isEmpty(bean.jwt)) {
             throw AuthEpayError("jwt不能为空")
diff --git a/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt b/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt
index 5c05581..2495ff6 100644
--- a/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt
+++ b/app/src/main/java/com/supwisdom/service/EpayApiImpl.kt
@@ -46,7 +46,7 @@
             throw HeartBeatError("json异常:${ex.message}")
         }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw HeartBeatError(retBean.retmsg ?: "错误码:${retBean.retcode}")
+            throw HeartBeatError(retBean.getErrorMsg())
         }
         if (cardverno < retBean.cardverno!!) {
             try {
@@ -92,7 +92,7 @@
             throw SysParaError("json异常:${ex.message}")
         }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw SysParaError(retBean.retmsg ?: "错误码:${retBean.retcode}")
+            throw SysParaError(retBean.getErrorMsg())
         }
         val record = pos.getSysPara() ?: SysParaRecord()
         retBean.syspara?.forEach {
@@ -133,7 +133,7 @@
                 throw WhiteListError("json异常:${ex.message}")
             }
             if (retBean.retcode != PublicDef.SUCCESS) {
-                throw WhiteListError(retBean.retmsg ?: "错误码:${retBean.retcode}")
+                throw WhiteListError(retBean.getErrorMsg())
             }
             if (retBean.count != retBean.whitelist?.size) {
                 throw WhiteListError("白名单数量不对[${retBean.count},${retBean.whitelist?.size}]")
@@ -178,7 +178,7 @@
             throw TransdtlUploadError("json异常:${ex.message}")
         }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw TransdtlUploadError(retBean.retmsg ?: "错误码:${retBean.retcode}")
+            throw TransdtlUploadError(retBean.getErrorMsg())
         }
         if (retBean.termseqno != record.devseqno) {
             throw TransdtlUploadError("返回流水号不一致")
@@ -220,7 +220,7 @@
             throw TransdtlUploadError("json异常:${ex.message}")
         }
         if (retBean.retcode != PublicDef.SUCCESS) {
-            throw TransdtlUploadError(retBean.retmsg ?: "错误码:${retBean.retcode}")
+            throw TransdtlUploadError(retBean.getErrorMsg())
         }
         if (retBean.termseqno != record.devseqno) {
             throw TransdtlUploadError("返回流水号不一致")