From 2c0aa49ad27f707fc76a281b1c10ac51d7766fe5 Mon Sep 17 00:00:00 2001 From: cheney Date: Wed, 20 May 2026 17:55:10 +0800 Subject: [PATCH] =?UTF-8?q?hotfix=20=E5=B1=8F=E8=94=BD=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E4=B8=AD=E6=95=B0=E6=8D=AE=E5=AE=8C=E6=95=B4=E6=80=A7?= =?UTF-8?q?=E9=AA=8C=E8=AF=81=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../interceptor/MacValidationInterceptor.java | 42 ------------------- 1 file changed, 42 deletions(-) delete mode 100644 src/main/java/com/cisd/tms/modules/datamac/interceptor/MacValidationInterceptor.java diff --git a/src/main/java/com/cisd/tms/modules/datamac/interceptor/MacValidationInterceptor.java b/src/main/java/com/cisd/tms/modules/datamac/interceptor/MacValidationInterceptor.java deleted file mode 100644 index 2fb25d9..0000000 --- a/src/main/java/com/cisd/tms/modules/datamac/interceptor/MacValidationInterceptor.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.cisd.tms.modules.datamac.interceptor; - - -import com.cisd.tms.modules.datamac.entity.DataMacEntity; -import com.cisd.tms.modules.datamac.helper.Sm3MacCalculator; -import org.apache.ibatis.executor.resultset.ResultSetHandler; -import org.apache.ibatis.plugin.Interceptor; -import org.apache.ibatis.plugin.Intercepts; -import org.apache.ibatis.plugin.Invocation; -import org.apache.ibatis.plugin.Signature; -import org.springframework.stereotype.Component; - -import java.sql.Statement; -import java.util.List; - - -@Intercepts(@Signature(type = ResultSetHandler.class, method = "handleResultSets", args = {Statement.class})) -@Component -public class MacValidationInterceptor implements Interceptor { - - @Override - public Object intercept(Invocation invocation) throws Throwable { - Object result = invocation.proceed(); - if (result instanceof List) { - ((List) result).forEach(this::validateEntity); - } else { - validateEntity(result); - } - return result; - } - - private void validateEntity(Object obj) { - if (obj instanceof DataMacEntity) { - DataMacEntity entity = (DataMacEntity) obj; - String storedMac = entity.getMac(); - String calculatedMac = Sm3MacCalculator.calculateForEntity(entity); - if (!storedMac.equals(calculatedMac)) { - throw new RuntimeException("Data integrity validation failed. The data has been tampered with."); - } - } - } -} \ No newline at end of file