From fe2f3011f3f5d3ea760b6520e9e95a2c419e4b78 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期一, 11 十二月 2023 12:56:30 +0800 Subject: [PATCH] 修改 --- zt/common/src/main/java/com/zt/common/utils/CommonUtils.java | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 46 insertions(+), 0 deletions(-) diff --git a/zt/common/src/main/java/com/zt/common/utils/CommonUtils.java b/zt/common/src/main/java/com/zt/common/utils/CommonUtils.java index e9cde03..fd9805b 100644 --- a/zt/common/src/main/java/com/zt/common/utils/CommonUtils.java +++ b/zt/common/src/main/java/com/zt/common/utils/CommonUtils.java @@ -1,10 +1,12 @@ package com.zt.common.utils; import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.ReflectUtil; import com.alibaba.fastjson.JSONObject; import com.zt.common.entity.MapData; import org.apache.commons.lang3.StringUtils; +import java.lang.reflect.Field; import java.text.NumberFormat; import java.util.*; import java.util.stream.Collectors; @@ -170,4 +172,48 @@ long msec = diff % 1000; return hour + "灏忔椂" + min + "鍒嗛挓" + sec + "绉�" + msec + "姣"; } + + public static boolean isActureChangeData(Object pageData, Object dbData) { + if (dbData == null) + return true; + Field[] fields = ReflectUtil.getFields(pageData.getClass()); + for (Field field : fields) { + field.setAccessible(true); + String fieldName = field.getName(); + String typeName = field.getType().getName().toLowerCase(); + String fieldsList = "serialversionuid,updater,updatedate,creator,createdate,tenantid,companyid,files,isdelete"; + if (!typeName.contains("com.zt.life.modules") && !typeName.equals("java.util.List") && !fieldsList.contains(fieldName.toLowerCase())) { + Object staticFieldValue = ReflectUtil.getFieldValue(pageData, field.getName()); + try { + Object staticFieldValue2 = ReflectUtil.getFieldValue(dbData, field.getName()); + if ("java.lang.string,java.lang.long".contains(typeName)) { + if ((staticFieldValue == null && staticFieldValue2 != null) || (staticFieldValue != null && staticFieldValue2 == null)) { + System.out.println(fieldName); + System.out.println(staticFieldValue); + System.out.println(staticFieldValue2); + return true; + } + if (staticFieldValue != null && staticFieldValue2 != null) { + if (!staticFieldValue.equals(staticFieldValue2)) { + System.out.println(fieldName); + System.out.println(staticFieldValue); + System.out.println(staticFieldValue2); + return true; + } + } + } else { + if (staticFieldValue != staticFieldValue2) { + System.out.println(fieldName); + System.out.println(staticFieldValue); + System.out.println(staticFieldValue2); + return true; + } + } + } catch (Exception ex) { + + } + } + } + return false; + } } -- Gitblit v1.9.1