将shortid长度修改为可配置
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/ShortURLUtil.java b/src/main/java/com/supwisdom/dlpay/framework/util/ShortURLUtil.java
index b9b3a6e..3c126f9 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/ShortURLUtil.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/ShortURLUtil.java
@@ -26,8 +26,11 @@
return doGetBaiduShortUrl(longUrl);
}
- public String doGetShortId() {
- return RandomStringUtils.random(6, "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");
+ public String doGetShortId(int length) {
+ if (length <= 0) {
+ length = 6;
+ }
+ return RandomStringUtils.random(length, "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");
}
public String doGetBaiduShortUrl(String longUrl) {
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/WaterBudinessConstants.java b/src/main/java/com/supwisdom/dlpay/framework/util/WaterBudinessConstants.java
index a0cbaf5..009e288 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/WaterBudinessConstants.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/WaterBudinessConstants.java
@@ -2,6 +2,7 @@
public class WaterBudinessConstants {
public final static String waterAuthUrl = "water_auth_url";
+ public final static String WATER_SHORTID_LENGTH = "water_shortid_length";
public final static String WATER_SHORTURL_BAIDU = "water_shorturl_baidu";
public final static String WATER_SHORTURL_BAIDU_TOKEN = "water_shorturl_baidu_token";
public final static String WATER_SHOP_ACCNO = "water_shopaccno";
diff --git a/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt b/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt
index c50a717..dfcc823 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt
@@ -194,8 +194,12 @@
//2.将流水号及认证地址返回给终端
//生成短id 将id与认证url的映射存入redis
var shortId: String
+ var length = businessparaService.findByParakey(WaterBudinessConstants.WATER_SHORTID_LENGTH).paraval
+ if (length == null) {
+ length = "4"
+ }
do{
- shortId = shortURLUtil.doGetShortId()
+ shortId = shortURLUtil.doGetShortId(length.toInt())
val hasKey = redisTemplate.hasKey(Constants.REDISKEY_SHORTURL + shortId)
}while (hasKey)
redisTemplate.opsForValue().set(Constants.REDISKEY_SHORTURL + shortId, savedTrans.cobillno, 200, TimeUnit.SECONDS)