保留原始生成二维码接口
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt
index 31da5df..b195422 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/qrcode_srvice_impl.kt
@@ -31,6 +31,42 @@
 
     val logger = KotlinLogging.logger { }
 
+    override fun encodeCode(uid:String): ApiResponse {
+        var resp = ApiResponse()
+        val rootkey = systemUtilService.getBusinessValue("aes.cfb.rootkey")
+        val iv = systemUtilService.getBusinessValue("aes.cfb.iv")
+        if (rootkey.isNullOrEmpty()||iv.isNullOrEmpty()) {
+            resp.retcode = 1
+            resp.retmsg = "秘钥未配置"
+            return resp
+        }
+        val muser = mobileApiService.findUserById(uid)
+        if(muser==null||TradeDict.STATUS_NORMAL!=muser.status){
+            resp.retcode = 1
+            resp.retmsg = "用户不存在或状态异常"
+            return resp
+        }
+        if(muser.userid.isNullOrEmpty()){
+            resp.retcode = 1
+            resp.retmsg = "用户未绑定身份"
+            return resp
+        }
+        val totp = QrCodeTotpUtil.generateTOTP(muser.secertkey)
+        val rowdata = QrcodeRawData()
+        rowdata.userid = muser.userid
+        rowdata.setTotp(totp)
+        val orgData = Gson().toJson(rowdata)
+        val publicKey = RSAKeysGenerate.getPublicKey(muser.rsapublic)
+        val encdata = org.apache.commons.codec.binary.Base64.encodeBase64String(RSAKeysGenerate.encryptbyte(publicKey, orgData))
+        val qrcode = AesUtil.encryptCFB("$uid:$encdata", rootkey, iv, "AES/CFB/NoPadding")
+
+        val key = MD5.encodeByMD5ToURLSafeBase64(qrcode)
+        redisTemplate.opsForValue().set(key,qrcode, Duration.ofSeconds(20))
+        resp.retcode = 0
+        resp.retmsg = key
+        return resp
+    }
+
     override fun encodeCode(param: QrcodeParam): ApiResponse {
         var resp = ApiResponse()
         val uid = param.uid
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/qrcode_service.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/qrcode_service.kt
index b5facd8..d8b21ce 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/qrcode_service.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/qrcode_service.kt
@@ -5,6 +5,7 @@
 import com.supwisdom.dlpay.api.bean.QrcodeParam
 
 interface QRCodeService {
+    fun encodeCode(uid: String): ApiResponse
     fun encodeCode(param: QrcodeParam): ApiResponse
     fun decodeCode(qrcode: String): DoorQrcodeResponse
 }
\ No newline at end of file
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt
index 417e852..299fd7f 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt
@@ -857,18 +857,18 @@
      *
      * 二维码在线生成
      * */
-//    @RequestMapping("/qrcode")
-//    fun qrcode(): JsonResult {
-//        val p = SecurityContextHolder.getContext().authentication
-//        val user = mobileApiService.findUserById(p.name)
-//                ?: return JsonResult.error("用户不存在,请注册")
-//        val resp = qrcodeService.encodeCode(user.uid)
-//        return if(resp.retcode==0){
-//            JsonResult.ok("ok").put("qrcode", resp.retmsg)!!
-//        }else{
-//            JsonResult.error(resp.retmsg)
-//        }
-//    }
+    @RequestMapping("/qrcode")
+    fun qrcode(): JsonResult {
+        val p = SecurityContextHolder.getContext().authentication
+        val user = mobileApiService.findUserById(p.name)
+                ?: return JsonResult.error("用户不存在,请注册")
+        val resp = qrcodeService.encodeCode(user.uid)
+        return if(resp.retcode==0){
+            JsonResult.ok("ok").put("qrcode", resp.retmsg)!!
+        }else{
+            JsonResult.error(resp.retmsg)
+        }
+    }
 
     /**
      *