fix: 字段有TableField注解但未指定value值下全局columnFormat未生效问题

This commit is contained in:
miemie 2024-10-28 18:30:58 +08:00
parent bbf2b671b5
commit 736064bca3

View File

@ -15,32 +15,18 @@
*/
package com.baomidou.mybatisplus.core.metadata;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.OrderBy;
import com.baomidou.mybatisplus.annotation.SqlCondition;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.core.config.GlobalConfig;
import com.baomidou.mybatisplus.core.handlers.IJsonTypeHandler;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.core.toolkit.MybatisUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.sql.SqlScriptUtils;
import lombok.AccessLevel;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.*;
import org.apache.ibatis.mapping.ResultMapping;
import org.apache.ibatis.reflection.Reflector;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.type.JdbcType;
import org.apache.ibatis.type.TypeAliasRegistry;
import org.apache.ibatis.type.TypeHandler;
import org.apache.ibatis.type.TypeHandlerRegistry;
import org.apache.ibatis.type.UnknownTypeHandler;
import org.apache.ibatis.type.*;
import java.lang.reflect.Field;
import java.util.Map;
@ -273,12 +259,16 @@ public class TableFieldInfo implements Constants {
/* 开启字段全大写申明 */
column = column.toUpperCase();
}
String columnFormat = dbConfig.getColumnFormat();
if (StringUtils.isNotBlank(columnFormat)) {
column = String.format(columnFormat, column);
}
} else {
String columnFormat = dbConfig.getColumnFormat();
if (StringUtils.isNotBlank(columnFormat) && tableField.keepGlobalFormat()) {
column = String.format(columnFormat, column);
}
}
String columnFormat = dbConfig.getColumnFormat();
if (StringUtils.isNotBlank(columnFormat) && tableField.keepGlobalFormat()) {
column = String.format(columnFormat, column);
}
this.column = column;
this.sqlSelect = column;
if (needAs) {
@ -384,7 +374,7 @@ public class TableFieldInfo implements Constants {
* 排序初始化
*
* @param tableInfo 表信息
* @param orderBy 排序注解
* @param orderBy 排序注解
*/
private void initOrderBy(TableInfo tableInfo, OrderBy orderBy) {
if (null != orderBy) {
@ -401,7 +391,7 @@ public class TableFieldInfo implements Constants {
* 逻辑删除初始化
*
* @param globalConfig 全局配置
* @param field 字段属性对象
* @param field 字段属性对象
*/
private void initLogicDelete(GlobalConfig globalConfig, Field field, boolean existTableLogic) {
GlobalConfig.DbConfig dbConfig = globalConfig.getDbConfig();