数据脱敏处理
diff --git a/src/main/java/com/supwisdom/dlpay/util/DataUtil.java b/src/main/java/com/supwisdom/dlpay/util/DataUtil.java
new file mode 100644
index 0000000..cc048a2
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/util/DataUtil.java
@@ -0,0 +1,18 @@
+package com.supwisdom.dlpay.util;
+
+import com.supwisdom.dlpay.framework.util.StringUtil;
+
+public class DataUtil {
+ public static String dataDesensitization(String data,int length) {
+ if (StringUtil.isEmpty(data)) {
+ return "";
+ }
+ int originLength = data.length();
+ String preStr = data.substring(0, length);
+ StringBuilder result = new StringBuilder(preStr);
+ for (int i = 0; i < originLength - preStr.length(); i++) {
+ result.append("X");
+ }
+ return result.toString();
+ }
+}
diff --git a/src/main/kotlin/com/supwisdom/dlpay/water/controller/water_controller.kt b/src/main/kotlin/com/supwisdom/dlpay/water/controller/water_controller.kt
index 33a5dda..8dbd922 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/water/controller/water_controller.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/water/controller/water_controller.kt
@@ -4,6 +4,7 @@
import com.supwisdom.dlpay.framework.ResponseBodyBuilder
import com.supwisdom.dlpay.framework.util.*
import com.supwisdom.dlpay.system.service.UserDataService
+import com.supwisdom.dlpay.util.DataUtil
import com.supwisdom.dlpay.util.WebCheckException
import com.supwisdom.dlpay.water.bean.*
import com.supwisdom.dlpay.water.domain.*
@@ -393,8 +394,13 @@
this.accdate = accdate
this.notacc = notacc
}
- collectdtlService.queryTransdtlDTOByParam(searchBean)?.let {
- return it
+ collectdtlService.queryTransdtlDTOByParam(searchBean)?.let { pageResult ->
+ val page = pageResult.data
+ page.forEach {
+ it.username = DataUtil.dataDesensitization(it.username,1)
+ it.citizencardno = DataUtil.dataDesensitization(it.citizencardno,4)
+ }
+ return pageResult
}
return PageResult(WaterErrorCode.DATA_NOTFOUND_ERROR, "采集流水未找到")
} catch (ex: Exception) {
@@ -650,7 +656,13 @@
this.accdate = accdate
}
accdtlService.queryAccdtlByParam(searchBean)?.let {
- return it
+ pageResult ->
+ val page = pageResult.data
+ page.forEach {
+ it.username = DataUtil.dataDesensitization(it.username,1)
+ it.citizencardno = DataUtil.dataDesensitization(it.citizencardno,4)
+ }
+ return pageResult
}
return PageResult(WaterErrorCode.DATA_NOTFOUND_ERROR, "采集流水未找到")
} catch (ex: Exception) {
@@ -682,7 +694,13 @@
this.cardno = cardno
}
userDataService.queryUserAccByParam(searchBean)?.let {
- return it
+ pageResult ->
+ val page = pageResult.data
+ page.forEach {
+ it.username = DataUtil.dataDesensitization(it.username,1)
+ it.cardno = DataUtil.dataDesensitization(it.cardno,4)
+ }
+ return pageResult
}
return PageResult(WaterErrorCode.DATA_NOTFOUND_ERROR, "采集流水未找到")
} catch (ex: Exception) {
diff --git a/src/main/kotlin/com/supwisdom/dlpay/water/scheduler_task.kt b/src/main/kotlin/com/supwisdom/dlpay/water/scheduler_task.kt
index b383383..1aeadc2 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/water/scheduler_task.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/water/scheduler_task.kt
@@ -1,5 +1,6 @@
package com.supwisdom.dlpay.water
+import com.supwisdom.dlpay.framework.service.SystemUtilService
import com.supwisdom.dlpay.paysdk.ApiLoginHelper
import com.supwisdom.dlpay.paysdk.proxy.ApiLoginProxy
import com.supwisdom.dlpay.water.pay.WaterPayAsyncTask
@@ -21,9 +22,17 @@
@Autowired
private lateinit var waterPayAsyncTask: WaterPayAsyncTask
+ @Autowired
+ private lateinit var systemUtilService: SystemUtilService
+
@Scheduled(cron = "0 */2 * * * ?")
@SchedulerLock(name = "dealCollectdtlAccountEntry", lockAtMostForString = "PT10M")
fun queryCollectdtlResult() {
+ //避免出现同银行对账日期不一致,23点至1点间不执行
+ val currentime = systemUtilService.sysdatetime.hosttime.substring(0, 2).toInt()
+ if (currentime >= 23 || currentime <= 1) {
+ return
+ }
val collectdtlList = collectdtlService.queryTransdtlNotEntry()
if (null == collectdtlList || 0 == collectdtlList.size) {
return