You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

237 lines
6.3 KiB

6 years ago
package xyz.wbsite.dbtool.javafx.po;
import org.springframework.util.StringUtils;
6 years ago
import xyz.wbsite.dbtool.javafx.enums.FieldType;
6 years ago
import xyz.wbsite.dbtool.javafx.tool.Tool;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Field extends Table {
public Field() {
}
public Field(String fieldName) {
this.fieldName = fieldName;
}
/**
*
*/
private String fieldName;
/**
*
*/
private FieldType fieldType = FieldType.String_var50;
/**
*
*/
private int fieldLength = 0;
/**
*
*/
private String fieldComment = null;
/**
*
*/
private String defaultValue = null;
/**
* NULL
*/
private Boolean isMust = false;
/**
*
*/
private Boolean isPrimaryKey = false;
/**
*
*/
private Boolean isQuery = false;
private Boolean isSearch = false;
private Boolean isSystem = false;
public String getTestValue() {
String value = "";
if (fieldType.name().matches("String_\\d+")) {
Pattern compile = Pattern.compile("String_(\\d+)");
Matcher matcher = compile.matcher(fieldType.name());
if (matcher.find()) {
int len = Integer.parseInt(matcher.group(1));
if (StringUtils.isEmpty(this.fieldComment)) {
StringBuilder sb = new StringBuilder("\"");
6 years ago
for (int i = 0; i < len; i++) {
sb.append("A");
}
sb.append("\"");
6 years ago
value = sb.toString();
} else {
value = "\"" + this.fieldComment.substring(0, this.fieldComment.length() > this.fieldLength ? this.fieldLength : this.fieldComment.length()) + "\"";
}
}
} else if (fieldType.name().matches("String_var\\d+")) {
Pattern compile = Pattern.compile("String_var(\\d+)");
Matcher matcher = compile.matcher(fieldType.name());
if (matcher.find()) {
int len = Integer.parseInt(matcher.group(1));
if (StringUtils.isEmpty(this.fieldComment)) {
StringBuilder sb = new StringBuilder("");
sb.append("\"");
sb.append("A");
sb.append("\"");
value = sb.toString();
} else {
value = "\"" + this.fieldComment.substring(0, this.fieldComment.length() > this.fieldLength ? this.fieldLength : this.fieldComment.length()) + "\"";
}
}
} else if (fieldType.name().equals("String_var")) {
int len = fieldLength;
if (StringUtils.isEmpty(this.fieldComment)) {
StringBuilder sb = new StringBuilder("");
sb.append("\"");
sb.append("A");
sb.append("\"");
value = sb.toString();
} else {
value = "\"" + this.fieldComment.substring(0, this.fieldComment.length() > this.fieldLength ? this.fieldLength : this.fieldComment.length()) + "\"";
}
} else if (fieldType.name().matches("Boolean")) {
value = "true";
} else if (fieldType.name().matches("Dict")) {
value = "\"code\"";
6 years ago
} else if (fieldType.name().matches("Byte|Short|Integer")) {
value = "1";
} else if (fieldType.name().matches("Bytes")) {
6 years ago
value = "null";
} else if (fieldType.name().matches("Long")) {
value = "1L";
} else if (fieldType.name().matches("Float")) {
value = "1.0f";
} else if (fieldType.name().matches("Double")) {
value = "1.0";
} else if (fieldType.name().matches("Character")) {
value = "'A'";
} else if (fieldType.name().matches("Date")) {
value = "new Date()";
} else if (fieldType.name().matches("Date")) {
value = "new Date()";
} else if (fieldType.name().matches("BigDecimal")) {
value = "new BigDecimal()";
} else if (fieldType.name().matches("String_super")) {
value = "\"content\"";
}
return value;
}
public Boolean getIsSearch() {
return isSearch;
}
public void setIsSearch(Boolean isSearch) {
this.isSearch = isSearch;
}
public Boolean getIsSystem() {
return isSystem;
}
public void setIsSystem(Boolean isSystem) {
this.isSystem = isSystem;
}
public String getterName() {
return "get" + Tool.lineToClassName(this.fieldName);
}
public String setterName() {
return "set" + Tool.lineToClassName(this.fieldName);
}
public Boolean getIsQuery() {
return isQuery;
}
public void setIsQuery(Boolean isQuery) {
this.isQuery = isQuery;
}
public String getFieldName() {
return fieldName;
}
public void setFieldName(String fieldName) {
this.fieldName = fieldName;
}
public FieldType getFieldType() {
return fieldType;
}
public void setFieldType(FieldType fieldType) {
this.fieldType = fieldType;
}
public Integer getFieldLength() {
return fieldLength;
}
public void setFieldLength(Integer fieldLength) {
this.fieldLength = fieldLength;
}
public String getFieldComment() {
return fieldComment;
}
public void setFieldComment(String fieldComment) {
this.fieldComment = fieldComment != null ? fieldComment : "";
}
public String getDefaultValue() {
return defaultValue;
}
public void setDefaultValue(String defaultValue) {
this.defaultValue = defaultValue;
}
public Boolean getIsMust() {
return isMust;
}
public void setIsMust(Boolean isMust) {
this.isMust = isMust;
}
public Boolean getIsPrimaryKey() {
return isPrimaryKey;
}
public void setIsPrimaryKey(Boolean isPrimaryKey) {
this.isPrimaryKey = isPrimaryKey;
}
public String getFName() {
return Tool.lineToFieldName(this.fieldName);
}
6 years ago
public String getCName() {
return Tool.lineToClassName(this.fieldName);
}
6 years ago
}

Powered by TurnKey Linux.