package com.vci.ubcs.ddl.bo; import lombok.Data; import lombok.Getter; import lombok.Setter; import org.springblade.core.tool.utils.StringPool; import org.springblade.core.tool.utils.StringUtil; /** * Description: * * @author LiHang * @date 2023/4/28 */ @Getter public class DdlFieldMappingAttrBO { /** * 类型 */ @Setter private String dataType; /** * 长度 */ @Setter private Integer dataLength; /** * 精度 */ @Setter private Integer dataPrecision; /** * 允许为空 */ @Setter private Boolean nullable; /** * 默认值 */ @Setter private String defaultValue; public DdlFieldMappingAttrBO() { } public DdlFieldMappingAttrBO(String dataType, Integer dataLength, Integer dataPrecision, Boolean nullable, String defaultValue) { this.dataType = dataType; this.dataLength = dataLength; this.dataPrecision = dataPrecision; this.nullable = nullable; this.defaultValue = defaultValue; } @Override public String toString() { StringBuilder stringBuilder = new StringBuilder().append(dataType); if (dataLength != null){ stringBuilder.append(StringPool.SPACE).append(StringPool.LEFT_BRACKET).append(dataLength); if (dataPrecision != null){ stringBuilder.append(StringPool.COMMA).append(dataPrecision).append(StringPool.RIGHT_BRACKET).append(StringPool.SPACE); }else { stringBuilder.append(StringPool.RIGHT_BRACKET).append(StringPool.SPACE); } } if (!nullable){ stringBuilder.append(StringPool.SPACE).append("not null").append(StringPool.SPACE); } if (StringUtil.isNotBlank(defaultValue)){ stringBuilder.append(StringPool.SPACE).append("default").append(StringPool.SPACE).append(StringPool.SINGLE_QUOTE).append(defaultValue).append(StringPool.SINGLE_QUOTE).append(StringPool.SPACE); } return stringBuilder.toString(); } }