Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
2025-10-24 11:08:23 +08:00
4 changed files with 32 additions and 21 deletions

View File

@ -136,7 +136,7 @@ public class DataLogTools {
public static final String SQL_LIST = "SELECT * FROM ${TBL_NAME} WHERE entity_id = ? ORDER BY operation_time DESC, flow_id DESC";
public static final Set<String> excludeFields = SetUtils.of("tenantId","dataVersion","createUserId","createDate","modifyUserId","modifyDate","modifyDate","deleteMark");
public static final Set<String> excludeFields = SetUtils.of("id","tenantId","dataVersion","createUserId","createDate","modifyUserId","modifyDate","modifyDate","deleteMark");
public static DataChangeLog createLog(Class<?> klazz,OperationType type) {
@ -645,12 +645,15 @@ public class DataLogTools {
FieldChange change = new FieldChange();
change.setField(item.getFieldName());
change.setName(item.getName());
Object newVal = BeanUtils.getFieldValue(item.getField(),entity);
if(old!=null) {
Object newVal = BeanUtils.getFieldValue(item.getField(),entity);
Object oldVal = BeanUtils.getFieldValue(item.getField(),old);
boolean flag = false;
if((newVal==null && oldVal!=null) || (newVal!=null && oldVal==null)) {
flag = true;
boolean isString = String.class.equals(item.getJavaType());
if(newVal==null && oldVal!=null) {
flag = isString?StringUtils.isNotEmpty((String)oldVal):true;
}else if(newVal!=null && oldVal==null) {
flag = isString?StringUtils.isNotEmpty((String)newVal):true;
}else if(newVal!=null && oldVal!=null && !newVal.equals(oldVal)) {
flag = true;
}
@ -910,7 +913,7 @@ public class DataLogTools {
DataChangeLogVo fvo = new DataChangeLogVo();
fvo.setId(obj.getId()+"_"+fieldChange.getField());
fvo.setPid(obj.getId());
fvo.setName(fvo.getName());
fvo.setName(fieldChange.getName());
fvo.setOldValue(fieldChange.getOldValue());
fvo.setNewValue(fieldChange.getNewValue());