Former-commit-id: 39b7c21024cf9dafcb235e7855d8f3bd6d68011c
master
王兵 4 years ago
parent ad71a7e8c5
commit a207f32373

@ -75,7 +75,7 @@ public class JavaFxApplication extends Application {
private FXMLLoader mTableLoader;
private MainController mainController;
private DetailProjectController detailProjectController;
private DetailModuleController mdDetailController;
private DetailModuleController detailModuleController;
private DetailTableController detailTableController;
private Project currentProject;
private Module currentMD;
@ -145,19 +145,19 @@ public class JavaFxApplication extends Application {
@Override
public void handle(MouseEvent event) {
int selectedIndex = mFields.getSelectionModel().getSelectedIndex();
if (currentTable== null || selectedIndex == -1){
if (currentTable == null || selectedIndex == -1) {
return;
}
Field field = currentTable.getFields().get(selectedIndex);
ContextMenu con = null;
if (field.getFieldType().name().equals(FieldType.Dict.name())){
if (field.getFieldType().equals(FieldType.Dict.name())) {
con = new ContextMenu(
new MenuItem("新增"),
new MenuItem("删除"),
new MenuItem("编辑字典"),
new MenuItem("向上调整"),
new MenuItem("向下调整"));
}else {
} else {
con = new ContextMenu(
new MenuItem("新增"),
new MenuItem("删除"),
@ -232,7 +232,7 @@ public class JavaFxApplication extends Application {
}
mModuleLoader = new FXMLLoader(mddetail);
mModuleLoader.load();
mdDetailController = mModuleLoader.getController();
detailModuleController = mModuleLoader.getController();
URL tabledetail = JavaFxApplication.class.getClassLoader().getResource("fxml/DetailTable.fxml");
@ -432,7 +432,7 @@ public class JavaFxApplication extends Application {
{//初始化模块面板
mdDetailController.getModuleComment().textProperty().addListener(new ChangeListener<String>() {
detailModuleController.getModuleComment().textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
if (currentMD != null) {
@ -441,7 +441,7 @@ public class JavaFxApplication extends Application {
}
});
mdDetailController.getModulePrefix().textProperty().addListener(new ChangeListener<String>() {
detailModuleController.getModulePrefix().textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
if (currentMD != null) {
@ -450,7 +450,7 @@ public class JavaFxApplication extends Application {
}
});
mdDetailController.getModuleName().textProperty().addListener(new ChangeListener<String>() {
detailModuleController.getModuleName().textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
if (currentMD != null) {
@ -458,6 +458,15 @@ public class JavaFxApplication extends Application {
}
}
});
detailModuleController.getIsGenerate().selectedProperty().addListener(new ChangeListener<Boolean>() {
@Override
public void changed(ObservableValue<? extends Boolean> observable, Boolean oldValue, Boolean newValue) {
if (currentMD != null) {
currentMD.setNeedGenerate(newValue);
}
}
});
}
{// 初始化项目面板
@ -651,15 +660,16 @@ public class JavaFxApplication extends Application {
return level;
}
private void loadingModule() {
private void loadingModule() {
if (currentMD == null) {
return;
}
GridPane gridPane = mModuleLoader.getRoot();
mdDetailController.getModuleComment().setText(currentMD.getModuleComment());
mdDetailController.getModulePrefix().setText(currentMD.getModulePrefix());
mdDetailController.getModuleName().setText(currentMD.getModuleName());
detailModuleController.getModuleComment().setText(currentMD.getModuleComment());
detailModuleController.getModulePrefix().setText(currentMD.getModulePrefix());
detailModuleController.getModuleName().setText(currentMD.getModuleName());
detailModuleController.getIsGenerate().setSelected(currentMD.getNeedGenerate());
if (gridPane != null) {
mDetail.getChildren().clear();
@ -742,13 +752,13 @@ public class JavaFxApplication extends Application {
field.setFieldName(newValue);
if (newValue.toUpperCase().endsWith("_ID")) {
field.setFieldType(FieldType.Long);
field.setFieldType(FieldType.Long.name());
}
if (newValue.toUpperCase().endsWith("_TIME") || newValue.toUpperCase().endsWith("_DATE")) {
field.setFieldType(FieldType.Date);
field.setFieldType(FieldType.Date.name());
}
if (newValue.toUpperCase().endsWith("_TYPE")) {
field.setFieldType(FieldType.Dict);
field.setFieldType(FieldType.Dict.name());
}
}
});
@ -862,12 +872,12 @@ public class JavaFxApplication extends Application {
columns.get(1).setCellFactory(new Callback<TableColumn, TableCell>() {
@Override
public TableCell call(TableColumn param) {
ObservableList<FieldType> objects = FXCollections.observableArrayList();
ObservableList<String> objects = FXCollections.observableArrayList();
Class clz = FieldType.class;
for (Object obj : clz.getEnumConstants()) {
if (obj instanceof FieldType) {
objects.add((FieldType) obj);
objects.add(obj.toString());
}
}
ChoiceBoxTableCell choiceBoxTableCell = new ChoiceBoxTableCell(objects) {
@ -878,7 +888,7 @@ public class JavaFxApplication extends Application {
int index = this.getTableRow().getIndex();
if (index >= 0 && index <= currentTable.getFields().size() - 1) {
Field field = currentTable.getFields().get(index);
FieldType fieldType = field.getFieldType();
FieldType fieldType = FieldType.parse(field.getFieldType());
if (fieldType.isFix() && fieldType.getDefaultLength() != field.getFieldLength()) {
field.setFieldLength(fieldType.getDefaultLength());
mFields.refresh();
@ -900,12 +910,9 @@ public class JavaFxApplication extends Application {
public void handle(TableColumn.CellEditEvent event) {
int row = event.getTablePosition().getRow();
Field field = currentTable.getFields().get(row);
FieldType oldFieldType = field.getFieldType();
FieldType newValue = (FieldType) event.getNewValue();
field.setFieldLength(newValue.getDefaultLength());
field.setFieldType(newValue);
String fieldType = (String) event.getNewValue();
field.setFieldLength(FieldType.parse(fieldType).getDefaultLength());
field.setFieldType(fieldType);
mFields.refresh();
}
});

@ -1,6 +1,7 @@
package xyz.wbsite.dbtool.javafx.ctrl;
import javafx.fxml.FXML;
import javafx.scene.control.CheckBox;
import javafx.scene.control.TextField;
public class DetailModuleController {
@ -11,6 +12,8 @@ public class DetailModuleController {
private TextField modulePrefix;
@FXML
private TextField moduleName;
@FXML
private CheckBox isGenerate;
public TextField getModuleName() {
return moduleName;
@ -35,4 +38,12 @@ public class DetailModuleController {
public void setModulePrefix(TextField modulePrefix) {
this.modulePrefix = modulePrefix;
}
public CheckBox getIsGenerate() {
return isGenerate;
}
public void setIsGenerate(CheckBox isGenerate) {
this.isGenerate = isGenerate;
}
}

@ -159,14 +159,14 @@ public class ProjectManager {
id.setIsSystem(true);
id.setIsMust(true);
id.setIsPrimaryKey(true);
id.setFieldType(FieldType.Long);
id.setFieldType(FieldType.Long.name());
id.setFieldLength(19);
id.setFieldComment("主键");
Field row_version = new Field("ROW_VERSION");
row_version.setIsSystem(true);
row_version.setIsMust(true);
row_version.setFieldType(FieldType.Long);
row_version.setFieldType(FieldType.Long.name());
row_version.setFieldLength(19);
row_version.setFieldComment("行版本");
@ -174,14 +174,14 @@ public class ProjectManager {
is_deleted.setIsSystem(true);
is_deleted.setIsMust(true);
is_deleted.setDefaultValue("0");
is_deleted.setFieldType(FieldType.Boolean);
is_deleted.setFieldType(FieldType.Boolean.name());
is_deleted.setFieldLength(1);
is_deleted.setFieldComment("是否已删除");
Field created_by = new Field("CREATE_BY");
created_by.setIsSystem(true);
created_by.setIsMust(true);
created_by.setFieldType(FieldType.Long);
created_by.setFieldType(FieldType.Long.name());
created_by.setFieldLength(19);
created_by.setFieldComment("创建用户");
@ -189,19 +189,19 @@ public class ProjectManager {
creation_time.setIsSystem(true);
creation_time.setIsMust(true);
creation_time.setDefaultValue("NULL");
creation_time.setFieldType(FieldType.Date);
creation_time.setFieldType(FieldType.Date.name());
creation_time.setFieldComment("创建时间");
Field last_updated_by = new Field("LAST_UPDATE_BY");
last_updated_by.setIsSystem(true);
creation_time.setDefaultValue("NULL");
last_updated_by.setFieldType(FieldType.Long);
last_updated_by.setFieldType(FieldType.Long.name());
last_updated_by.setFieldLength(19);
last_updated_by.setFieldComment("最后更新用户");
Field last_update_time = new Field("LAST_UPDATE_TIME");
last_update_time.setIsSystem(true);
last_update_time.setFieldType(FieldType.Date);
last_update_time.setFieldType(FieldType.Date.name());
last_update_time.setFieldComment("最后更新时间");
table.putFirstField(id);
@ -257,7 +257,7 @@ public class ProjectManager {
field.setIsQuery(false);
field.setIsMust(false);
field.setIsPrimaryKey(false);
field.setFieldType(FieldType.String_var50);
field.setFieldType(FieldType.String_var50.name());
field.setFieldLength(FieldType.String_var50.getDefaultLength());
int j = 0;
for (; j < fields.size(); j++) {
@ -571,10 +571,7 @@ public class ProjectManager {
ResultSet set = statement.executeQuery(sql);
while (set.next()) {
Field field = new Field();
field.setFieldName(set.getString("COLUMN_NAME"));
Field field = new Field(set.getString("COLUMN_NAME"));
String data_type = set.getString("DATA_TYPE");
int data_length = set.getInt("DATA_LENGTH");
int data_precision = set.getInt("DATA_PRECISION");
@ -645,10 +642,7 @@ public class ProjectManager {
ResultSet set = statement.executeQuery(sql);
while (set.next()) {
Field field = new Field();
field.setFieldName(set.getString("COLUMN_NAME"));
Field field = new Field(set.getString("COLUMN_NAME"));
if ("NO".equals(set.getString("IS_NULLABLE"))) {
field.setIsMust(true);
} else {

@ -1,5 +1,8 @@
package xyz.wbsite.dbtool.javafx.manger;
import javafx.beans.property.BooleanProperty;
import javafx.beans.property.IntegerProperty;
import javafx.beans.property.StringProperty;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
@ -7,10 +10,10 @@ import xyz.wbsite.dbtool.javafx.annotation.Property;
import xyz.wbsite.dbtool.javafx.po.DataBase;
import xyz.wbsite.dbtool.javafx.po.DictItem;
import xyz.wbsite.dbtool.javafx.po.Field;
import xyz.wbsite.dbtool.javafx.po.FieldType;
import xyz.wbsite.dbtool.javafx.po.Module;
import xyz.wbsite.dbtool.javafx.po.Project;
import xyz.wbsite.dbtool.javafx.po.Table;
import xyz.wbsite.dbtool.web.frame.utils.ClassUtil;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
@ -24,6 +27,10 @@ import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
public class XmlManager {
@ -41,115 +48,55 @@ public class XmlManager {
try {
inputStream = new FileInputStream(xmlFile);
Document document = documentBuilderFactory.newDocumentBuilder().parse(inputStream);
Element projectElement = document.getDocumentElement();
Element dbElement = document.getDocumentElement();
if ("project".endsWith(dbElement.getNodeName())) {
// 获取Project信息
if ("project".endsWith(projectElement.getNodeName())) {
System.out.println("加载模型[" + xmlFile.getName() + "]");
java.lang.reflect.Field[] declaredFields = project.getClass().getDeclaredFields();
for (java.lang.reflect.Field declaredField : declaredFields) {
boolean annotationPresent = declaredField.isAnnotationPresent(Property.class);
if (annotationPresent) {
Property annotation = declaredField.getAnnotation(Property.class);
String value = annotation.value();
// 映射属性
map(projectElement, project);
NodeList nodeName = dbElement.getElementsByTagName(value);
if (nodeName.getLength() == 1) {
String textContent = nodeName.item(0).getTextContent();
declaredField.setAccessible(true);
if (declaredField.getType() == String.class) {
declaredField.set(project, textContent);
} else if (declaredField.getType() == DataBase.class) {
DataBase dataBase = null;
try {
dataBase = DataBase.valueOf(textContent);
} catch (IllegalArgumentException e) {
dataBase = DataBase.MySQL;
}
declaredField.set(project, dataBase);
} else if (declaredField.getType() == Boolean.class || declaredField.getType() == boolean.class) {
declaredField.setBoolean(project, getBoolean(textContent));
}
// System.out.println("读取" + value + "=" + textContent);
}
}
}
NodeList modules = dbElement.getElementsByTagName("module");
//获取所有Module
NodeList modules = projectElement.getElementsByTagName("module");
if (modules.getLength() > 0) {
for (int i = 0; i < modules.getLength(); i++) {
Module module = new Module();
Element moduleElement = (Element) modules.item(i);
NodeList moduleName = moduleElement.getElementsByTagName("moduleName");
if (moduleName.getLength() == 1) {
module.setModuleName(moduleName.item(0).getTextContent());
}
NodeList moduleComment = moduleElement.getElementsByTagName("moduleComment");
if (moduleComment.getLength() == 1) {
module.setModuleComment(moduleComment.item(0).getTextContent());
}
NodeList modulePrefix = moduleElement.getElementsByTagName("modulePrefix");
if (modulePrefix.getLength() == 1) {
module.setModulePrefix(modulePrefix.item(0).getTextContent());
}
Module module = new Module();
// 映射属性
map(moduleElement, module);
project.putModule(module);
NodeList tables = moduleElement.getElementsByTagName("table");
if (tables.getLength() > 0) {
for (int j = 0; j < tables.getLength(); j++) {
Element tableElement = (Element) tables.item(j);
Table table = new Table();
// 映射属性
map(tableElement, table);
NodeList fields = tableElement.getElementsByTagName("field");
if (fields.getLength() > 0) {
for (int k = 0; k < fields.getLength(); k++) {
Element fieldElement = (Element) fields.item(k);
Field field = new Field();
field.setFieldName(fieldElement.getAttribute("fieldName"));
field.setFieldType(FieldType.parse(fieldElement.getAttribute("fieldType")));
field.setFieldLength(Integer.parseInt(fieldElement.getAttribute("fieldLength")));
field.setFieldComment(fieldElement.getAttribute("fieldComment"));
field.setDefaultValue(fieldElement.getAttribute("defaultValue"));
field.setIsSystem(getBoolean(fieldElement.getAttribute("IsSystem")));
field.setIsPrimaryKey(getBoolean(fieldElement.getAttribute("isPrimaryKey")));
field.setIsMust(getBoolean(fieldElement.getAttribute("isMust")));
field.setIsUnique(getBoolean(fieldElement.getAttribute("isUnique")));
field.setIsQuery(getBoolean(fieldElement.getAttribute("isQuery")));
field.setIsSearch(getBoolean(fieldElement.getAttribute("isSearch")));
// 映射属性
map(fieldElement, field);
table.putField(field);
NodeList dictItems = fieldElement.getElementsByTagName("dictItem");
for (int l = 0; l < dictItems.getLength(); l++) {
Element di = (Element) dictItems.item(l);
DictItem dictItem = new DictItem();
dictItem.setKey(di.getAttribute("key"));
dictItem.setValue(di.getAttribute("value"));
map(di, dictItem);
field.getDictItems().add(dictItem);
}
}
}
table.setdBhandle(module);
table.setTableName(tableElement.getAttribute("tableName"));
table.setTableComment(tableElement.getAttribute("tableComment"));
table.setCreate(getBoolean(tableElement.getAttribute("create")));
table.setDelete(getBoolean(tableElement.getAttribute("delete")));
table.setUpdate(getBoolean(tableElement.getAttribute("update")));
table.setFind(getBoolean(tableElement.getAttribute("find")));
table.setGet(getBoolean(tableElement.getAttribute("get")));
table.setSearch(getBoolean(tableElement.getAttribute("search")));
table.setHtml(getBoolean(tableElement.getAttribute("html")));
table.setSys(getBoolean(tableElement.getAttribute("sys")));
module.putTable(table);
}
}
project.putModule(module);
}
}
System.out.println("模型初始化成功...");
@ -179,93 +126,45 @@ public class XmlManager {
builder = dbFactory.newDocumentBuilder();
Document doc = builder.newDocument();
Element rootProject = doc.createElement("project");
doc.appendChild(rootProject);
// 写入Project信息
Element projectElement = doc.createElement("project");
doc.appendChild(projectElement);
map(project, projectElement);
java.lang.reflect.Field[] declaredFields = project.getClass().getDeclaredFields();
for (java.lang.reflect.Field declaredField : declaredFields) {
try {
boolean annotationPresent = declaredField.isAnnotationPresent(Property.class);
if (annotationPresent) {
Property annotation = declaredField.getAnnotation(Property.class);
String value = annotation.value();
Element element = doc.createElement(value);
declaredField.setAccessible(true);
Object valuer = declaredField.get(project);
element.setTextContent(String.valueOf(valuer));
rootProject.appendChild(element);
// System.out.println("写入" + value + "=" + String.valueOf(valuer));
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
Element modules = doc.createElement("modules");
rootProject.appendChild(modules);
//region Description
projectElement.appendChild(modules);
for (Module md : project.getModules()) {
// 写入Module信息
Element module = doc.createElement("module");
Element moduleName = doc.createElement("moduleName");
Element moduleComment = doc.createElement("moduleComment");
Element modulePrefix = doc.createElement("modulePrefix");
Element hasSysFields = doc.createElement("hasSysFields");
moduleName.setTextContent(md.getModuleName());
moduleComment.setTextContent(md.getModuleComment());
modulePrefix.setTextContent(md.getModulePrefix());
module.appendChild(moduleComment);
module.appendChild(modulePrefix);
module.appendChild(moduleName);
module.appendChild(hasSysFields);
modules.appendChild(module);
map(md, module);
Element tables = doc.createElement("tables");
module.appendChild(tables);
for (Table t : md.getTables()) {
// 写入table信息
Element table = doc.createElement("table");
table.setAttribute("tableName", t.getTableName());
table.setAttribute("tableComment", t.getTableComment());
table.setAttribute("create", Boolean.toString(t.getCreate()));
table.setAttribute("delete", Boolean.toString(t.getDelete()));
table.setAttribute("update", Boolean.toString(t.getUpdate()));
table.setAttribute("find", Boolean.toString(t.getFind()));
table.setAttribute("get", Boolean.toString(t.getGet()));
table.setAttribute("search", Boolean.toString(t.getSearch()));
table.setAttribute("html", Boolean.toString(t.getHtml()));
table.setAttribute("sys", Boolean.toString(t.getSys()));
tables.appendChild(table);
map(t, table);
Element fields = doc.createElement("fields");
table.appendChild(fields);
for (Field f : t.getFields()) {
// 写入field信息
Element field = doc.createElement("field");
field.setAttribute("fieldName", f.getFieldName());
field.setAttribute("fieldType", f.getFieldType().name());
field.setAttribute("fieldLength", String.valueOf(f.getFieldLength()));
field.setAttribute("fieldComment", f.getFieldComment());
field.setAttribute("defaultValue", f.getDefaultValue());
field.setAttribute("isPrimaryKey", String.valueOf(f.getIsPrimaryKey()));
field.setAttribute("isMust", String.valueOf(f.getIsMust()));
field.setAttribute("isUnique", String.valueOf(f.getIsUnique()));
field.setAttribute("isQuery", String.valueOf(f.getIsQuery()));
field.setAttribute("isSearch", String.valueOf(f.getIsSearch()));
field.setAttribute("IsSystem", String.valueOf(f.getIsSystem()));
map(f, field);
if (f.getDictItems().size() > 0) {
for (DictItem dictItem : f.getDictItems()) {
// 写入dictItem信息
Element dict = doc.createElement("dictItem");
dict.setAttribute("key", dictItem.getKey());
dict.setAttribute("value", dictItem.getValue());
field.appendChild(dict);
map(dictItem, dict);
}
}
fields.appendChild(field);
}
tables.appendChild(table);
}
modules.appendChild(module);
}
//endregion
@ -308,6 +207,87 @@ public class XmlManager {
return true;
}
private void map(Object o, Element element) {
List<java.lang.reflect.Field> fields = getProperties(o.getClass());
try {
for (java.lang.reflect.Field field : fields) {
Property annotation = field.getAnnotation(Property.class);
String value = annotation.value();
Method method = ClassUtil.getMethod(field.getName(), o.getClass());
Object invoke = method.invoke(o);
element.setAttribute(value, invoke.toString());
}
} catch (Exception e) {
e.printStackTrace();
}
}
private void map(Element element, Object o) {
List<java.lang.reflect.Field> fields = getProperties(o.getClass());
try {
for (java.lang.reflect.Field field : fields) {
Property annotation = field.getAnnotation(Property.class);
String value = annotation.value();
String attribute = element.getAttribute(value);
field.setAccessible(true);
if (field.getType() == boolean.class || field.getType() == Boolean.class) {
Method method = ClassUtil.setMethod(field.getName(), o.getClass(), field.getType());
method.setAccessible(true);
method.invoke(o, getBoolean(attribute));
} else if (field.getType() == String.class) {
Method method = ClassUtil.setMethod(field.getName(), o.getClass(), field.getType());
method.setAccessible(true);
method.invoke(o, attribute);
} else if (field.getType() == DataBase.class) {
Method method = ClassUtil.setMethod(field.getName(), o.getClass(), field.getType());
method.setAccessible(true);
method.invoke(o, getDataBase(attribute));
} else if (field.getType() == StringProperty.class) {
Method method = ClassUtil.setMethod(field.getName(), o.getClass(), String.class);
method.setAccessible(true);
method.invoke(o, attribute);
} else if (field.getType() == IntegerProperty.class) {
Method method = ClassUtil.setMethod(field.getName(), o.getClass(), int.class);
method.setAccessible(true);
method.invoke(o, getInt(attribute));
} else if (field.getType() == BooleanProperty.class) {
Method method = ClassUtil.setMethod(field.getName(), o.getClass(), boolean.class);
method.setAccessible(true);
method.invoke(o, getBoolean(attribute));
}
}
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
private List<java.lang.reflect.Field> getProperties(Class clazz) {
List<java.lang.reflect.Field> list = new ArrayList();
for (java.lang.reflect.Field declaredField : clazz.getDeclaredFields()) {
if (declaredField.isAnnotationPresent(Property.class)) {
list.add(declaredField);
}
}
return list;
}
private int getInt(String str) {
if (str == null || "".equals(str)) {
return 0;
}
return Integer.parseInt(str);
}
private DataBase getDataBase(String str) {
if (str == null || "".equals(str)) {
return DataBase.MySQL;
}
return DataBase.valueOf(str);
}
private boolean getBoolean(String str) {
if (str != null && str.matches("true|1")) {
return true;

@ -8,5 +8,5 @@ public abstract class AbstractDBmapper {
abstract String getFieldSql(Field field);
public abstract FieldType getType(String type, int length, int precision, int scale);
public abstract String getType(String type, int length, int precision, int scale);
}

@ -1,9 +1,12 @@
package xyz.wbsite.dbtool.javafx.po;
import xyz.wbsite.dbtool.javafx.annotation.Property;
public class DictItem {
@Property("key")
private String key;
@Property("value")
private String value;
public String getKey() {

@ -7,6 +7,7 @@ import javafx.beans.property.SimpleIntegerProperty;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
import org.springframework.util.StringUtils;
import xyz.wbsite.dbtool.javafx.annotation.Property;
import xyz.wbsite.dbtool.javafx.tool.Tool;
import java.util.ArrayList;
@ -20,186 +21,108 @@ public class Field extends Table {
}
public Field(String fieldName) {
this.fieldName.setValue(fieldName);
setFieldName(fieldName);
}
/**
*
*/
private FieldType fieldType = FieldType.String_var50;
//1字段名称
@Property("fieldName")
private StringProperty fieldName = new SimpleStringProperty();
/**
*
*/
private String fieldComment = "";
/**
*
*/
private String defaultValue = null;
/**
* NULL
*/
private boolean isMust = false;
/**
*
*/
private boolean isPrimaryKey = false;
private boolean isSearch = false;
private boolean isSystem = false;
private List<DictItem> dictItems = new ArrayList<>();
public List<DictItem> getDictItems() {
return dictItems;
public StringProperty fieldNameProperty() {
return fieldName;
}
public void setDictItems(List<DictItem> dictItems) {
this.dictItems = dictItems;
public String getFieldName() {
return fieldName.get();
}
public String getTestValue() {
String value = "";
if (fieldType.name().matches("String_\\d+")) {
Pattern compile = Pattern.compile("String_(\\d+)");
Matcher matcher = compile.matcher(fieldType.name());
public void setFieldName(String fieldName) {
this.fieldName.set(fieldName);
}
if (matcher.find()) {
int len = Integer.parseInt(matcher.group(1));
//3字段类型
@Property("fieldType")
private StringProperty fieldType = new SimpleStringProperty(FieldType.String_var50.name());
if (StringUtils.isEmpty(this.fieldComment)) {
StringBuilder sb = new StringBuilder("\"");
for (int i = 0; i < len; i++) {
sb.append("A");
}
sb.append("\"");
value = sb.toString();
} else {
value = "\"" + this.fieldComment.substring(0, this.fieldComment.length() > getFieldLength() ? getFieldLength() : this.fieldComment.length()) + "\"";
}
}
} else if (fieldType.name().matches("String_var\\d+")) {
Pattern compile = Pattern.compile("String_var(\\d+)");
Matcher matcher = compile.matcher(fieldType.name());
public StringProperty fieldTypeProperty() {
return fieldType;
}
if (matcher.find()) {
int len = Integer.parseInt(matcher.group(1));
public String getFieldType() {
return fieldType.get();
}
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() > getFieldLength() ? getFieldLength() : this.fieldComment.length()) + "\"";
}
public void setFieldType(String fieldType) {
this.fieldType.set(fieldType);
}
}
} else if (fieldType.name().equals("String_var")) {
int len = getFieldLength();
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() > getFieldLength() ? getFieldLength() : this.fieldComment.length()) + "\"";
}
//4字段长度
@Property("fieldLength")
private IntegerProperty fieldLength = new SimpleIntegerProperty();
} else if (fieldType.name().matches("Boolean")) {
value = "true";
} else if (fieldType.name().matches("Dict")) {
value = "\"code\"";
} else if (fieldType.name().matches("Byte")) {
value = "(byte)1";
} else if (fieldType.name().matches("Short")) {
value = "(short)1";
} else if (fieldType.name().matches("Integer")) {
value = "1";
} else if (fieldType.name().matches("Bytes")) {
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("BigDecimal")) {
value = "new BigDecimal()";
} else if (fieldType.name().matches("String_super")) {
value = "\"content\"";
}
return value;
public IntegerProperty fieldLengthProperty() {
return fieldLength;
}
public boolean getIsSearch() {
return isSearch;
public int getFieldLength() {
return fieldLength.get();
}
public void setIsSearch(boolean isSearch) {
this.isSearch = isSearch;
public void setFieldLength(int fieldLength) {
this.fieldLength.set(fieldLength);
}
public boolean getIsSystem() {
return isSystem;
}
//5默认值
@Property("defaultValue")
private StringProperty defaultValue = new SimpleStringProperty();
public void setIsSystem(boolean isSystem) {
this.isSystem = isSystem;
public StringProperty defaultValueProperty() {
return defaultValue;
}
public String getterName() {
return "get" + Tool.ABB2Abb(this.fieldName.get());
public String getDefaultValue() {
return defaultValue.get();
}
public String setterName() {
return "set" + Tool.ABB2Abb(this.fieldName.get());
public void setDefaultValue(String value) {
this.defaultValue.set(value);
}
// 字典名称
private final StringProperty fieldName = new SimpleStringProperty();
//6主键
@Property("isPrimaryKey")
private BooleanProperty isPrimaryKey = new SimpleBooleanProperty();
public StringProperty fieldNameProperty() {
return fieldName;
public BooleanProperty isPrimaryKeyProperty() {
return isPrimaryKey;
}
public String getFieldName() {
return fieldName.get();
public boolean getIsPrimaryKey() {
return isPrimaryKey.get();
}
public void setFieldName(String fieldName) {
this.fieldName.set(fieldName);
public void setIsPrimaryKey(boolean value) {
this.isPrimaryKey.set(value);
}
//7必填
@Property("isMust")
private BooleanProperty isMust = new SimpleBooleanProperty();
// 字段长度
private final IntegerProperty fieldLength = new SimpleIntegerProperty();
public IntegerProperty fieldLengthProperty() {
return fieldLength;
public BooleanProperty isMustProperty() {
return isMust;
}
public int getFieldLength() {
return fieldLength.get();
public boolean getIsMust() {
return isMust.get();
}
public void setFieldLength(int fieldLength) {
this.fieldLength.set(fieldLength);
public void setIsMust(boolean value) {
this.isMust.set(value);
}
// isUnique 是否唯一,新怎前检查重复
private final BooleanProperty isUnique = new SimpleBooleanProperty();
//8是否唯一新增前检查重复
@Property("isUnique")
private BooleanProperty isUnique = new SimpleBooleanProperty();
public BooleanProperty isUniqueProperty() {
return isUnique;
@ -213,8 +136,10 @@ public class Field extends Table {
this.isUnique.set(isUnique);
}
// isQuery 是否作为查询条件
private final BooleanProperty isQuery = new SimpleBooleanProperty();
//9查询
@Property("isQuery")
private BooleanProperty isQuery = new SimpleBooleanProperty();
public BooleanProperty isQueryProperty() {
return isQuery;
@ -228,44 +153,151 @@ public class Field extends Table {
this.isQuery.set(isQuery);
}
public FieldType getFieldType() {
return fieldType;
//10模糊
@Property("isSearch")
private BooleanProperty isSearch = new SimpleBooleanProperty();
public BooleanProperty isSearchProperty() {
return isSearch;
}
public void setFieldType(FieldType fieldType) {
this.fieldType = fieldType;
public boolean getIsSearch() {
return isSearch.get();
}
public String getFieldComment() {
public void setIsSearch(boolean isSearch) {
this.isSearch.set(isSearch);
}
//2字段注释
@Property("fieldType")
private StringProperty fieldComment = new SimpleStringProperty("");
public StringProperty fieldCommentProperty() {
return fieldComment;
}
public String getFieldComment() {
return fieldComment.get();
}
public void setFieldComment(String fieldComment) {
this.fieldComment = fieldComment != null ? fieldComment : "";
this.fieldComment.set(fieldComment);
}
public String getDefaultValue() {
return defaultValue;
//11系统
@Property("isSystem")
private BooleanProperty isSystem = new SimpleBooleanProperty();
public BooleanProperty isSystemProperty() {
return isSystem;
}
public void setDefaultValue(String defaultValue) {
this.defaultValue = defaultValue;
public boolean getIsSystem() {
return isSystem.get();
}
public boolean getIsMust() {
return isMust;
public void setIsSystem(boolean isSystem) {
this.isSystem.set(isSystem);
}
public void setIsMust(boolean isMust) {
this.isMust = isMust;
private List<DictItem> dictItems = new ArrayList<>();
public List<DictItem> getDictItems() {
return dictItems;
}
public boolean getIsPrimaryKey() {
return isPrimaryKey;
public void setDictItems(List<DictItem> dictItems) {
this.dictItems = dictItems;
}
public void setIsPrimaryKey(boolean isPrimaryKey) {
this.isPrimaryKey = isPrimaryKey;
public String getTestValue() {
String value = "";
if (fieldType.get().matches("String_\\d+")) {
Pattern compile = Pattern.compile("String_(\\d+)");
Matcher matcher = compile.matcher(fieldType.get());
if (matcher.find()) {
int len = Integer.parseInt(matcher.group(1));
if (StringUtils.isEmpty(getFieldComment())) {
StringBuilder sb = new StringBuilder("\"");
for (int i = 0; i < len; i++) {
sb.append("A");
}
sb.append("\"");
value = sb.toString();
} else {
value = "\"" + getFieldComment().substring(0, getFieldComment().length() > getFieldLength() ? getFieldLength() : getFieldComment().length()) + "\"";
}
}
} else if (fieldType.get().matches("String_var\\d+")) {
Pattern compile = Pattern.compile("String_var(\\d+)");
Matcher matcher = compile.matcher(fieldType.get());
if (matcher.find()) {
int len = Integer.parseInt(matcher.group(1));
if (StringUtils.isEmpty(getFieldComment())) {
StringBuilder sb = new StringBuilder("");
sb.append("\"");
sb.append("A");
sb.append("\"");
value = sb.toString();
} else {
value = "\"" + getFieldComment().substring(0, getFieldComment().length() > getFieldLength() ? getFieldLength() : getFieldComment().length()) + "\"";
}
}
} else if (fieldType.get().equals("String_var")) {
int len = getFieldLength();
if (StringUtils.isEmpty(getFieldComment())) {
StringBuilder sb = new StringBuilder("");
sb.append("\"");
sb.append("A");
sb.append("\"");
value = sb.toString();
} else {
value = "\"" + getFieldComment().substring(0, getFieldComment().length() > getFieldLength() ? getFieldLength() : getFieldComment().length()) + "\"";
}
} else if (fieldType.get().matches("Boolean")) {
value = "true";
} else if (fieldType.get().matches("Dict")) {
value = "\"code\"";
} else if (fieldType.get().matches("Byte")) {
value = "(byte)1";
} else if (fieldType.get().matches("Short")) {
value = "(short)1";
} else if (fieldType.get().matches("Integer")) {
value = "1";
} else if (fieldType.get().matches("Bytes")) {
value = "null";
} else if (fieldType.get().matches("Long")) {
value = "1L";
} else if (fieldType.get().matches("Float")) {
value = "1.0f";
} else if (fieldType.get().matches("Double")) {
value = "1.0";
} else if (fieldType.get().matches("Character")) {
value = "'A'";
} else if (fieldType.get().matches("Date")) {
value = "new Date()";
} else if (fieldType.get().matches("BigDecimal")) {
value = "new BigDecimal()";
} else if (fieldType.get().matches("String_super")) {
value = "\"content\"";
}
return value;
}
public String getterName() {
return "get" + Tool.ABB2Abb(this.fieldName.get());
}
public String setterName() {
return "set" + Tool.ABB2Abb(this.fieldName.get());
}
public String getFName() {
@ -275,4 +307,11 @@ public class Field extends Table {
public String getCName() {
return Tool.ABB2Abb(this.fieldName.get());
}
public String getFieldTypeJava(){
return FieldType.parse(getFieldType()).javaType();
}
public String getFieldTypeJdbc(){
return FieldType.parse(getFieldType()).jdbcType();
}
}

@ -1,40 +1,37 @@
package xyz.wbsite.dbtool.javafx.po;
import javafx.scene.control.TreeItem;
import xyz.wbsite.dbtool.javafx.annotation.Property;
import java.util.ArrayList;
import java.util.List;
public class Module extends TreeItem {
public Module() {
setExpanded(true);
}
public Module(String moduleName) {
this.moduleName = moduleName;
this.setValue(moduleName);
setModuleName(moduleName);
setExpanded(true);
}
/**
*
*/
@Property("name")
private String moduleName;
@Property("note")
private String moduleComment;
/**
*
*/
@Property("prefix")
private String modulePrefix;
@Property("needGenerate")
private boolean needGenerate;
/**
*
*/
private List<Table> tables = new ArrayList();
private String moduleName;
private String projectName;
private String projectBasePackage;
private String projectAuthor;
private List<Table> tables = new ArrayList();
public String getModuleName() {
return moduleName;
}
@ -106,4 +103,12 @@ public class Module extends TreeItem {
public void setProjectAuthor(String projectAuthor) {
this.projectAuthor = projectAuthor;
}
public boolean getNeedGenerate() {
return needGenerate;
}
public void setNeedGenerate(boolean needGenerate) {
this.needGenerate = needGenerate;
}
}

@ -7,60 +7,60 @@ public class MySQLDBmapper extends AbstractDBmapper {
StringBuffer sb = new StringBuffer("");
sb.append("`").append(field.getFieldName()).append("` ");
FieldType type = field.getFieldType();
String type = field.getFieldType();
if (FieldType.Boolean.name().equals(type.name())) {
if (FieldType.Boolean.name().equals(type)) {
sb.append("TINYINT(1)");
} else if (FieldType.Byte.name().equals(type.name())) {
} else if (FieldType.Byte.name().equals(type)) {
sb.append("TINYINT(3)");
} else if (FieldType.Bytes.name().equals(type.name())) {
} else if (FieldType.Bytes.name().equals(type)) {
sb.append("BLOB");
} else if (FieldType.Character.name().equals(type.name())) {
} else if (FieldType.Character.name().equals(type)) {
sb.append("CHAR(1)");
} else if (FieldType.Short.name().equals(type.name())) {
} else if (FieldType.Short.name().equals(type)) {
sb.append("SMALLINT(5)");
} else if (FieldType.Integer.name().equals(type.name())) {
} else if (FieldType.Integer.name().equals(type)) {
sb.append("INTEGER(10)");
} else if (FieldType.Long.name().equals(type.name())) {
} else if (FieldType.Long.name().equals(type)) {
sb.append("BIGINT(20)");
} else if (FieldType.Float.name().equals(type.name())) {
} else if (FieldType.Float.name().equals(type)) {
sb.append("FLOAT");
} else if (FieldType.Double.name().equals(type.name())) {
} else if (FieldType.Double.name().equals(type)) {
sb.append("DOUBLE");
} else if (FieldType.Date.name().equals(type.name())) {
} else if (FieldType.Date.name().equals(type)) {
sb.append("DATETIME");
} else if (FieldType.BigDecimal.name().equals(type.name())) {
} else if (FieldType.BigDecimal.name().equals(type)) {
sb.append("NUMERIC");
} else if (FieldType.Dict.name().equals(type.name())) {
} else if (FieldType.Dict.name().equals(type)) {
Integer fieldLength = field.getFieldLength();
sb.append("VARCHAR(" + fieldLength + ")");
} else if (FieldType.String_1.name().equals(type.name())) {
} else if (FieldType.String_1.name().equals(type)) {
sb.append("CHAR(1)");
} else if (FieldType.String_10.name().equals(type.name())) {
} else if (FieldType.String_10.name().equals(type)) {
sb.append("CHAR(10)");
} else if (FieldType.String_var.name().equals(type.name())) {
} else if (FieldType.String_var.name().equals(type)) {
Integer fieldLength = field.getFieldLength();
sb.append("VARCHAR(" + fieldLength + ")");
} else if (FieldType.String_var50.name().equals(type.name())) {
} else if (FieldType.String_var50.name().equals(type)) {
sb.append("VARCHAR(50)");
} else if (FieldType.String_var100.name().equals(type.name())) {
} else if (FieldType.String_var100.name().equals(type)) {
sb.append("VARCHAR(100)");
} else if (FieldType.String_var255.name().equals(type.name())) {
} else if (FieldType.String_var255.name().equals(type)) {
sb.append("VARCHAR(250)");
} else if (FieldType.String_var500.name().equals(type.name())) {
} else if (FieldType.String_var500.name().equals(type)) {
sb.append("VARCHAR(500)");
} else if (FieldType.String_var2500.name().equals(type.name())) {
} else if (FieldType.String_var2500.name().equals(type)) {
sb.append("VARCHAR(2500)");
} else if (FieldType.String_var4000.name().equals(type.name())) {
} else if (FieldType.String_var4000.name().equals(type)) {
sb.append("VARCHAR(4000)");
} else if (FieldType.String_super.name().equals(type.name())) {
} else if (FieldType.String_super.name().equals(type)) {
sb.append("TEXT");
}
if (!field.getIsSystem() && field.getIsMust() && (field.getDefaultValue() == null || field.getDefaultValue().toUpperCase().equals("NULL"))) {
sb.append(" NOT NULL");
} else if (!field.getIsSystem() && field.getIsMust() && field.getDefaultValue() != null && !field.getDefaultValue().toUpperCase().equals("NULL")) {
if (field.getFieldType().name().contains("String")) {//默认字符
if (field.getFieldType().contains("String")) {//默认字符
sb.append(" NOT NULL").append(" DEFAULT '" + field.getDefaultValue() + "'");
} else {//不是字符就是数字,目前只考虑两张情况
sb.append(" NOT NULL").append(" DEFAULT " + field.getDefaultValue() + "");
@ -144,50 +144,50 @@ public class MySQLDBmapper extends AbstractDBmapper {
}
@Override
public FieldType getType(String type, int lenght, int precision, int scale) {
public String getType(String type, int lenght, int precision, int scale) {
if ("bigint".equals(type)) {
return FieldType.Long;
return FieldType.Long.name();
} else if ("varchar".equals(type) && lenght == 50) {
return FieldType.String_var50;
return FieldType.String_var50.name();
} else if ("varchar".equals(type) && lenght == 100) {
return FieldType.String_var100;
return FieldType.String_var100.name();
} else if ("varchar".equals(type) && lenght == 255) {
return FieldType.String_var255;
return FieldType.String_var255.name();
} else if ("varchar".equals(type) && lenght == 500) {
return FieldType.String_var500;
return FieldType.String_var500.name();
} else if ("varchar".equals(type) && lenght == 2500) {
return FieldType.String_var2500;
return FieldType.String_var2500.name();
} else if ("varchar".equals(type) && lenght == 4000) {
return FieldType.String_var4000;
return FieldType.String_var4000.name();
} else if ("varchar".equals(type)) {
return FieldType.String_var;
return FieldType.String_var.name();
} else if ("date".equals(type)) {
return FieldType.Date;
return FieldType.Date.name();
} else if ("datetime".equals(type)) {
return FieldType.Date;
return FieldType.Date.name();
} else if ("timestamp".equals(type)) {
return FieldType.Date;
return FieldType.Date.name();
} else if ("char".equals(type) && lenght == 1) {
return FieldType.String_1;
return FieldType.String_1.name();
} else if ("char".equals(type) && lenght == 10) {
return FieldType.String_10;
return FieldType.String_10.name();
} else if ("char".equals(type)) {
return FieldType.String_var;
return FieldType.String_var.name();
} else if ("tinyint".equals(type)) {
return FieldType.Integer;
return FieldType.Integer.name();
} else if ("smallint".equals(type)) {
return FieldType.Integer;
return FieldType.Integer.name();
} else if ("mediumint".equals(type)) {
return FieldType.Integer;
return FieldType.Integer.name();
} else if ("int".equals(type)) {
return FieldType.Integer;
return FieldType.Integer.name();
} else if ("bigint".equals(type)) {
return FieldType.Long;
return FieldType.Long.name();
} else if ("float".equals(type)) {
return FieldType.Float;
return FieldType.Float.name();
} else if ("double".equals(type)) {
return FieldType.Double;
return FieldType.Double.name();
}
return FieldType.String_var50;
return FieldType.String_var50.name();
}
}

@ -7,53 +7,53 @@ public class OracleDBmapper extends AbstractDBmapper {
StringBuffer sb = new StringBuffer("");
sb.append("\"").append(field.getFieldName()).append("\" ");
FieldType type = field.getFieldType();
String type = field.getFieldType();
if (FieldType.Boolean.name().equals(type.name())) {
if (FieldType.Boolean.name().equals(type)) {
sb.append("CHAR(1)");
} else if (FieldType.Byte.name().equals(type.name())) {
} else if (FieldType.Byte.name().equals(type)) {
sb.append("NUMBER(3)");
} else if (FieldType.Bytes.name().equals(type.name())) {
} else if (FieldType.Bytes.name().equals(type)) {
sb.append("BLOB");
} else if (FieldType.Character.name().equals(type.name())) {
} else if (FieldType.Character.name().equals(type)) {
sb.append("CHAR(1)");
} else if (FieldType.Short.name().equals(type.name())) {
} else if (FieldType.Short.name().equals(type)) {
sb.append("NUMBER(5)");
} else if (FieldType.Integer.name().equals(type.name())) {
} else if (FieldType.Integer.name().equals(type)) {
sb.append("NUMBER(10)");
} else if (FieldType.Long.name().equals(type.name())) {
} else if (FieldType.Long.name().equals(type)) {
sb.append("NUMBER(19)");
} else if (FieldType.Float.name().equals(type.name())) {
} else if (FieldType.Float.name().equals(type)) {
sb.append("NUMBER");
} else if (FieldType.Double.name().equals(type.name())) {
} else if (FieldType.Double.name().equals(type)) {
sb.append("NUMBER");
} else if (FieldType.Date.name().equals(type.name())) {
} else if (FieldType.Date.name().equals(type)) {
sb.append("DATE");
} else if (FieldType.BigDecimal.name().equals(type.name())) {
} else if (FieldType.BigDecimal.name().equals(type)) {
sb.append("NUMBER");
} else if (FieldType.Dict.name().equals(type.name())) {
} else if (FieldType.Dict.name().equals(type)) {
Integer fieldLength = field.getFieldLength();
sb.append("VARCHAR(" + fieldLength + ")");
} else if (FieldType.String_1.name().equals(type.name())) {
} else if (FieldType.String_1.name().equals(type)) {
sb.append("CHAR(1)");
} else if (FieldType.String_10.name().equals(type.name())) {
} else if (FieldType.String_10.name().equals(type)) {
sb.append("CHAR(10)");
} else if (FieldType.String_var.name().equals(type.name())) {
} else if (FieldType.String_var.name().equals(type)) {
Integer fieldLength = field.getFieldLength();
sb.append("VARCHAR2(" + fieldLength + ")");
} else if (FieldType.String_var50.name().equals(type.name())) {
} else if (FieldType.String_var50.name().equals(type)) {
sb.append("VARCHAR2(50)");
} else if (FieldType.String_var100.name().equals(type.name())) {
} else if (FieldType.String_var100.name().equals(type)) {
sb.append("VARCHAR2(100)");
} else if (FieldType.String_var255.name().equals(type.name())) {
} else if (FieldType.String_var255.name().equals(type)) {
sb.append("VARCHAR2(250)");
} else if (FieldType.String_var500.name().equals(type.name())) {
} else if (FieldType.String_var500.name().equals(type)) {
sb.append("VARCHAR2(500)");
} else if (FieldType.String_var2500.name().equals(type.name())) {
} else if (FieldType.String_var2500.name().equals(type)) {
sb.append("VARCHAR2(2500)");
} else if (FieldType.String_var4000.name().equals(type.name())) {
} else if (FieldType.String_var4000.name().equals(type)) {
sb.append("VARCHAR2(4000)");
} else if (FieldType.String_super.name().equals(type.name())) {
} else if (FieldType.String_super.name().equals(type)) {
//Oracle中LONG最大支持2G字节
sb.append("LONG");
}
@ -112,56 +112,56 @@ public class OracleDBmapper extends AbstractDBmapper {
return "";
}
public FieldType getType(String type, int lenght, int precision, int scale) {
public String getType(String type, int lenght, int precision, int scale) {
if ("CHAR".equals(type) && lenght == 1) {
return FieldType.String_1;
return FieldType.String_1.name();
} else if ("CHAR".equals(type) && lenght == 10) {
return FieldType.String_10;
return FieldType.String_10.name();
} else if ("CHAR".equals(type)) {
return FieldType.String_var;
return FieldType.String_var.name();
} else if ("VARCHAR".equals(type) && lenght == 50) {
return FieldType.String_var50;
return FieldType.String_var50.name();
} else if ("NVARCHAR".equals(type)) {
return FieldType.String_var50;
return FieldType.String_var50.name();
} else if ("VARCHAR2".equals(type) && lenght == 50) {
return FieldType.String_var50;
return FieldType.String_var50.name();
} else if ("VARCHAR2".equals(type) && lenght == 100) {
return FieldType.String_var100;
return FieldType.String_var100.name();
} else if ("VARCHAR2".equals(type) && lenght == 255) {
return FieldType.String_var255;
return FieldType.String_var255.name();
} else if ("VARCHAR2".equals(type) && lenght == 500) {
return FieldType.String_var500;
return FieldType.String_var500.name();
} else if ("VARCHAR2".equals(type) && lenght == 2500) {
return FieldType.String_var2500;
return FieldType.String_var2500.name();
} else if ("VARCHAR2".equals(type) && lenght == 4000) {
return FieldType.String_var4000;
return FieldType.String_var4000.name();
} else if ("VARCHAR2".equals(type)) {
return FieldType.String_var;
return FieldType.String_var.name();
} else if ("NVARCHAR2".equals(type)) {
return FieldType.String_var100;
return FieldType.String_var100.name();
} else if ("CLOB".equals(type)) {
return FieldType.String_var50;
return FieldType.String_var50.name();
} else if ("NCLOB".equals(type)) {
return FieldType.String_var50;
return FieldType.String_var50.name();
} else if ("LONG".equals(type)) {
return FieldType.String_super;
return FieldType.String_super.name();
} else if ("NUMBER".equals(type)) {
if (precision > 18 && scale == 0) {
return FieldType.Long;
return FieldType.Long.name();
} else if (precision >= 10 && precision <= 18 && scale == 0) {
return FieldType.Long;
return FieldType.Long.name();
} else if (precision >= 1 && precision <= 9 && scale == 0) {
return FieldType.Integer;
return FieldType.Integer.name();
} else if (scale > 0) {
return FieldType.Double;
return FieldType.Double.name();
} else {
return FieldType.Long;
return FieldType.Long.name();
}
} else if ("DATE".equals(type)) {
return FieldType.Date;
return FieldType.Date.name();
} else if ("TIMESTAMP".equals(type)) {
return FieldType.Date;
return FieldType.Date.name();
}
return FieldType.String_var50;
return FieldType.String_var50.name();
}
}

@ -24,11 +24,11 @@ public class Project extends TreeItem {
setExpanded(true);
}
@Property("projectName")
@Property("name")
private String projectName;
@Property("projectBasePackage")
@Property("domain")
private String projectBasePackage;
@Property("projectAuthor")
@Property("author")
private String projectAuthor;
@Property("needMoreDB")
private boolean needMoreDB;
@ -40,8 +40,8 @@ public class Project extends TreeItem {
private boolean needCloud;
@Property("needAsync")
private boolean needAsync;
@Property("api")
private boolean api;
@Property("needApi")
private boolean needApi;
@Property(value = "database")
private DataBase database;
@ -138,10 +138,10 @@ public class Project extends TreeItem {
}
public boolean isNeedApi() {
return api;
return needApi;
}
public void setNeedApi(boolean api) {
this.api = api;
this.needApi = api;
}
}

@ -7,53 +7,53 @@ public class SQLiteDBmapper extends AbstractDBmapper {
StringBuffer sb = new StringBuffer("");
sb.append("\"").append(field.getFieldName()).append("\" ");
FieldType type = field.getFieldType();
String type = field.getFieldType();
if (FieldType.Boolean.name().equals(type.name())) {
if (FieldType.Boolean.name().equals(type)) {
sb.append("BOOLEAN");
} else if (FieldType.Byte.name().equals(type.name())) {
} else if (FieldType.Byte.name().equals(type)) {
sb.append("TINYINT");
} else if (FieldType.Bytes.name().equals(type.name())) {
} else if (FieldType.Bytes.name().equals(type)) {
sb.append("BLOB");
} else if (FieldType.Character.name().equals(type.name())) {
} else if (FieldType.Character.name().equals(type)) {
sb.append("CHARACTER(1)");
} else if (FieldType.Short.name().equals(type.name())) {
} else if (FieldType.Short.name().equals(type)) {
sb.append("SMALLINT");
} else if (FieldType.Integer.name().equals(type.name())) {
} else if (FieldType.Integer.name().equals(type)) {
sb.append("MEDIUMINT");
} else if (FieldType.Long.name().equals(type.name())) {
} else if (FieldType.Long.name().equals(type)) {
sb.append("BIGINT");
} else if (FieldType.Float.name().equals(type.name())) {
} else if (FieldType.Float.name().equals(type)) {
sb.append("FLOAT");
} else if (FieldType.Double.name().equals(type.name())) {
} else if (FieldType.Double.name().equals(type)) {
sb.append("DOUBLE");
} else if (FieldType.Date.name().equals(type.name())) {
} else if (FieldType.Date.name().equals(type)) {
sb.append("DATETIME");
} else if (FieldType.BigDecimal.name().equals(type.name())) {
} else if (FieldType.BigDecimal.name().equals(type)) {
sb.append("INTEGER");
} else if (FieldType.Dict.name().equals(type.name())) {
} else if (FieldType.Dict.name().equals(type)) {
Integer fieldLength = field.getFieldLength();
sb.append("VARCHAR(" + fieldLength + ")");
} else if (FieldType.String_1.name().equals(type.name())) {
} else if (FieldType.String_1.name().equals(type)) {
sb.append("CHAR(1)");
} else if (FieldType.String_10.name().equals(type.name())) {
} else if (FieldType.String_10.name().equals(type)) {
sb.append("CHAR(10)");
} else if (FieldType.String_var.name().equals(type.name())) {
} else if (FieldType.String_var.name().equals(type)) {
Integer fieldLength = field.getFieldLength();
sb.append("VARCHAR(" + fieldLength + ")");
} else if (FieldType.String_var50.name().equals(type.name())) {
} else if (FieldType.String_var50.name().equals(type)) {
sb.append("VARCHAR(50)");
} else if (FieldType.String_var100.name().equals(type.name())) {
} else if (FieldType.String_var100.name().equals(type)) {
sb.append("VARCHAR(100)");
} else if (FieldType.String_var255.name().equals(type.name())) {
} else if (FieldType.String_var255.name().equals(type)) {
sb.append("VARCHAR(250)");
} else if (FieldType.String_var500.name().equals(type.name())) {
} else if (FieldType.String_var500.name().equals(type)) {
sb.append("VARCHAR(500)");
} else if (FieldType.String_var2500.name().equals(type.name())) {
} else if (FieldType.String_var2500.name().equals(type)) {
sb.append("TEXT");
} else if (FieldType.String_var4000.name().equals(type.name())) {
} else if (FieldType.String_var4000.name().equals(type)) {
sb.append("TEXT");
} else if (FieldType.String_super.name().equals(type.name())) {
} else if (FieldType.String_super.name().equals(type)) {
sb.append("TEXT");
}
@ -130,7 +130,7 @@ public class SQLiteDBmapper extends AbstractDBmapper {
}
@Override
public FieldType getType(String type, int length, int precision, int scale) {
return FieldType.String_var50;
public String getType(String type, int length, int precision, int scale) {
return FieldType.String_var50.name();
}
}

@ -3,6 +3,7 @@ package xyz.wbsite.dbtool.javafx.po;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.control.TreeItem;
import xyz.wbsite.dbtool.javafx.annotation.Property;
import xyz.wbsite.dbtool.javafx.manger.ManagerFactory;
import xyz.wbsite.dbtool.javafx.manger.ProjectManager;
import xyz.wbsite.dbtool.javafx.tool.Tool;
@ -29,23 +30,25 @@ public class Table extends TreeItem {
setExpanded(true);
}
/**
*
*/
@Property("tableName")
private String tableName;
/**
*
*/
@Property("tableComment")
private String tableComment;
@Property("create")
private boolean create = true;
@Property("delete")
private boolean delete = true;
@Property("update")
private boolean update = true;
@Property("find")
private boolean find = true;
@Property("get")
private boolean get = true;
@Property("search")
private boolean search = false;
@Property("html")
private boolean html = false;
@Property("sys")
private boolean sys = true;
/**
@ -55,7 +58,7 @@ public class Table extends TreeItem {
public boolean has(String type) {
for (Field field : fields) {
if (field.getFieldType().name().equals(type) && !field.getIsSystem()) {
if (field.getFieldType().equals(type) && !field.getIsSystem()) {
return true;
}
}

@ -87,7 +87,7 @@ public class ClassUtil {
try {
return pojoClass.getMethod(setMethodName, type);
} catch (Exception e) {
throw new RuntimeException("can not find[" + name + "]method");
throw new RuntimeException("can not find[" + setMethodName + "]method");
}
}

@ -34,6 +34,10 @@
<Label GridPane.rowIndex="1" GridPane.columnIndex="0" text="*" alignment="CENTER" textAlignment="CENTER" textFill="RED" GridPane.halignment="CENTER" GridPane.valignment="CENTER"/>
<Label GridPane.rowIndex="1" GridPane.columnIndex="1" text="表名前缀" GridPane.halignment="CENTER" GridPane.valignment="CENTER"/>
<TextField GridPane.rowIndex="1" GridPane.columnIndex="2" fx:id="modulePrefix"/>
<Label GridPane.rowIndex="1" GridPane.columnIndex="3" text="*" alignment="CENTER" textAlignment="CENTER" textFill="RED" GridPane.halignment="CENTER" GridPane.valignment="CENTER"/>
<Label GridPane.rowIndex="1" GridPane.columnIndex="4" text="是否生成" GridPane.halignment="CENTER" GridPane.valignment="CENTER"/>
<CheckBox GridPane.rowIndex="1" GridPane.columnIndex="5" selected="true" fx:id="isGenerate"/>
<!-- ROW -->
</children>

@ -31,21 +31,21 @@ public class ${table.getCName()} extends BaseEntity {
<#if table.getHtml()>
@ExcelProperty("${field.fieldComment?default("")}")
@ExcelNote("")
<#if field.fieldType.javaType()=="Boolean">
<#if field.getFieldTypeJava()=="Boolean">
@ExcelSelect({"是","否"})
</#if>
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,11 +25,11 @@
1 = 1
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
<#elseif field.fieldType.javaType() == "Boolean">
<#elseif field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
@ -70,7 +70,7 @@
VALUES
(
<#list table.fields as field>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#list>
)
</insert>
@ -97,7 +97,7 @@
SET
<#list table.fields as field>
<#if !field.isPrimaryKey>
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
<#if table.hasPrimaryKey()>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -27,7 +27,7 @@
${r"#{"}request.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -50,7 +50,7 @@
${r"#{"}item.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}item.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -88,7 +88,7 @@
<#list table.fields as field>
<#if !field.isPrimaryKey>
<#if !field.isSystem || field.fieldName == 'ID'>
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#if>
</#list>
@ -108,52 +108,52 @@
WHERE `IS_DELETED` = 0
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "Boolean">
<#if field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Byte">
<#if field.getFieldTypeJava() == "Byte">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Short">
<#if field.getFieldTypeJava() == "Short">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Integer">
<#if field.getFieldTypeJava() == "Integer">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Long">
<#if field.getFieldTypeJava() == "Long">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Float">
<#if field.getFieldTypeJava() == "Float">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Double">
<#if field.getFieldTypeJava() == "Double">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Character">
<#if field.getFieldTypeJava() == "Character">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Date">
<#if field.getFieldTypeJava() == "Date">
<if test="request.${field.getFName()} != null">
AND DATE_FORMAT(`${field.fieldName}`,"%Y-%m-%d %T") = DATE_FORMAT(${r"#{"}request.${field.getFName()}},"%Y-%m-%d %T")
</if>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,11 +25,11 @@
1 = 1
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
<#elseif field.fieldType.javaType() == "Boolean">
<#elseif field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
@ -70,7 +70,7 @@
VALUES
(
<#list table.fields as field>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#list>
)
</insert>
@ -97,7 +97,7 @@
SET
<#list table.fields as field>
<#if !field.isPrimaryKey>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#if>
</#list>
<#if table.hasPrimaryKey()>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -27,7 +27,7 @@
${r"#{"}request.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -51,7 +51,7 @@
${r"#{"}item.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}item.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -90,7 +90,7 @@
<#list table.fields as field>
<#if !field.isPrimaryKey>
<#if !field.isSystem || field.fieldName == 'ID'>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#if>
</#list>
@ -110,52 +110,52 @@
WHERE "IS_DELETED" = 0
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "Boolean">
<#if field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Byte">
<#if field.getFieldTypeJava() == "Byte">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Short">
<#if field.getFieldTypeJava() == "Short">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Integer">
<#if field.getFieldTypeJava() == "Integer">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Long">
<#if field.getFieldTypeJava() == "Long">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Float">
<#if field.getFieldTypeJava() == "Float">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Double">
<#if field.getFieldTypeJava() == "Double">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Character">
<#if field.getFieldTypeJava() == "Character">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Date">
<#if field.getFieldTypeJava() == "Date">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND to_char("${field.fieldName}",'yyyy-MM-dd HH24:mi:ss') = to_char(${r"#{"}request.${field.getFName()}},'yyyy-MM-dd HH24:mi:ss')
</if>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,11 +25,11 @@
1 = 1
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
<#elseif field.fieldType.javaType() == "Boolean">
<#elseif field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
@ -70,7 +70,7 @@
VALUES
(
<#list table.fields as field>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#list>
)
</insert>
@ -97,7 +97,7 @@
SET
<#list table.fields as field>
<#if !field.isPrimaryKey>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#if>
</#list>
<#if table.hasPrimaryKey()>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -27,7 +27,7 @@
${r"#{"}request.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -50,7 +50,7 @@
${r"#{"}item.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}item.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -88,7 +88,7 @@
<#list table.fields as field>
<#if !field.isPrimaryKey>
<#if !field.isSystem || field.fieldName == 'ID'>
${field.fieldName} = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${field.fieldName} = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#if>
</#list>
@ -108,52 +108,52 @@
WHERE "IS_DELETED" = 0
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "Boolean">
<#if field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Byte">
<#if field.getFieldTypeJava() == "Byte">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Short">
<#if field.getFieldTypeJava() == "Short">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Integer">
<#if field.getFieldTypeJava() == "Integer">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Long">
<#if field.getFieldTypeJava() == "Long">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Float">
<#if field.getFieldTypeJava() == "Float">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Double">
<#if field.getFieldTypeJava() == "Double">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Character">
<#if field.getFieldTypeJava() == "Character">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Date">
<#if field.getFieldTypeJava() == "Date">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>

@ -37,17 +37,17 @@ public class ${table.getCName()}CreateRequest extends BaseRequest {
<#if field.fieldType?contains("Dict")>
@Dict(name = "${field.getFieldName()}")
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -32,15 +32,15 @@ public class ${table.getCName()}DeleteRequest extends BaseRequest {
/**
* ${field.fieldComment?default("")}.
*/
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#list>
<#list table.fields as field>
<#if !field.isSystem>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -23,7 +23,7 @@ public class ${table.getCName()}FindRequest extends BaseFindRequest {
<#if field.fieldType?contains("Dict")>
@Dict(name = "${field.getFieldName()}")
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
@ -39,11 +39,11 @@ public class ${table.getCName()}FindRequest extends BaseFindRequest {
<#list table.fields as field>
<#if field.isQuery>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -38,17 +38,17 @@ public class ${table.getCName()}UpdateRequest extends BaseUpdateRequest {
<#if field.fieldType?contains("Dict")>
@Dict(name = "${field.getFieldName()}")
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem || field.fieldName == 'ID'>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -4,50 +4,50 @@
<el-form class="search" :inline="true" :model="vm" ref="vm" label-position="right" label-width="90px">
<#list fields as item>
<#if item.isQuery>
<#if item.fieldType.javaType() =="Boolean">
<#if item.getFieldTypeJava() =="Boolean">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-radio-group v-model="vm.${item.getFName()}" clearable size="mini">
<el-radio :label="true">是</el-radio>
<el-radio :label="false">否</el-radio>
</el-radio-group>
</el-form-item>
<#elseif item.fieldType.javaType() =="Byte">
<#elseif item.getFieldTypeJava() =="Byte">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" controls-position="right" :min="-128" :max="127" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Short">
<#elseif item.getFieldTypeJava() =="Short">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" controls-position="right" :min="-32768" :max="32767" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Integer">
<#elseif item.getFieldTypeJava() =="Integer">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" controls-position="right" :min="-2147483648" :max="2147483647" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Long">
<#elseif item.getFieldTypeJava() =="Long">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" controls-position="right" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Float">
<#elseif item.getFieldTypeJava() =="Float">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" controls-position="right" :step="0.01" step-strictly :precision="2"></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Double">
<#elseif item.getFieldTypeJava() =="Double">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" controls-position="right" :step="0.01" step-strictly :precision="2"></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Character">
<#elseif item.getFieldTypeJava() =="Character">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" minlength="0" maxlength="1"></el-input>
</el-form-item>
<#elseif item.fieldType.javaType() =="String" && item.fieldType != "Dict">
<#elseif item.getFieldTypeJava() =="String" && item.fieldType != "Dict">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}"></el-input>
</el-form-item>
<#elseif item.fieldType.javaType() =="String" && item.fieldType == "Dict">
<#elseif item.getFieldTypeJava() =="String" && item.fieldType == "Dict">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-dict v-model="vm.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" dict-name="${item.getFieldName()}" ></el-input-dict>
</el-form-item>
<#elseif item.fieldType.javaType() =="Date">
<#elseif item.getFieldTypeJava() =="Date">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-date-picker
size="mini"
@ -58,7 +58,7 @@
placeholder="选择日期时间">
</el-date-picker>
</el-form-item>
<#elseif item.fieldType.javaType() =="BigDecimal">
<#elseif item.getFieldTypeJava() =="BigDecimal">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="vm.${item.getFName()}"clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :step="1" step-strictly :precision="2" :step="0.01"></el-input-number>
</el-form-item>
@ -255,18 +255,18 @@
<el-form class="form" :model="form" :inline="true" :rules="formRules" ref="form" label-position="right" label-width="90px">
<#list fields as item>
<#if !item.isSystem>
<#if item.fieldType.javaType() =="Boolean">
<#if item.getFieldTypeJava() =="Boolean">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-radio-group v-model="form.${item.getFName()}" clearable size="mini">
<el-radio :label="true">是</el-radio>
<el-radio :label="false">否</el-radio>
</el-radio-group>
</el-form-item>
<#elseif item.fieldType.javaType() =="String" && item.getFieldLength() lte 50 && item.fieldType != "Dict">
<#elseif item.getFieldTypeJava() =="String" && item.getFieldLength() lte 50 && item.fieldType != "Dict">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" maxlength="${item.getFieldLength()}"></el-input>
</el-form-item>
<#elseif item.fieldType.javaType() =="String" && item.getFieldLength() gt 50 && item.fieldType != "Dict">
<#elseif item.getFieldTypeJava() =="String" && item.getFieldLength() gt 50 && item.fieldType != "Dict">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input v-model="form.${item.getFName()}"
clearable
@ -276,39 +276,39 @@
maxlength="${item.getFieldLength()}"
show-word-limit></el-input>
</el-form-item>
<#elseif item.fieldType.javaType() =="String" && item.fieldType == "Dict">
<#elseif item.getFieldTypeJava() =="String" && item.fieldType == "Dict">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-dict v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" dict-name="${item.getFieldName()}" ></el-input-dict>
</el-form-item>
<#elseif item.fieldType.javaType() =="Byte">
<#elseif item.getFieldTypeJava() =="Byte">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="form.${item.getFName()}"clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :min="-128" :max="127" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Short">
<#elseif item.getFieldTypeJava() =="Short">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :min="-32768" :max="32767" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Integer">
<#elseif item.getFieldTypeJava() =="Integer">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :min="-2147483648" :max="2147483647" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Long">
<#elseif item.getFieldTypeJava() =="Long">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :step="1" step-strictly></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Float">
<#elseif item.getFieldTypeJava() =="Float">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :step="0.01" step-strictly :precision="2"></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Double">
<#elseif item.getFieldTypeJava() =="Double">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :step="0.01" step-strictly :precision="2"></el-input-number>
</el-form-item>
<#elseif item.fieldType.javaType() =="Character">
<#elseif item.getFieldTypeJava() =="Character">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input v-model="form.${item.getFName()}" clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" minlength="0" maxlength="1"></el-input>
</el-form-item>
<#elseif item.fieldType.javaType() =="Date">
<#elseif item.getFieldTypeJava() =="Date">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-date-picker
size="mini"
@ -319,7 +319,7 @@
placeholder="选择日期时间">
</el-date-picker>
</el-form-item>
<#elseif item.fieldType.javaType() =="BigDecimal">
<#elseif item.getFieldTypeJava() =="BigDecimal">
<el-form-item label="${item.fieldComment?default("")}" prop="${item.getFName()}">
<el-input-number v-model="form.${item.getFName()}"clearable size="mini" placeholder="请输入${item.fieldComment?default("")}" :step="1" step-strictly :precision="2" :step="0.01"></el-input-number>
</el-form-item>

@ -31,21 +31,21 @@ public class ${table.getCName()} extends BaseEntity {
<#if table.getHtml()>
@ColumnName("${field.fieldComment?default("")}")
@ColumnDescription("")
<#if field.fieldType.javaType()=="Boolean">
<#if field.getFieldTypeJava()=="Boolean">
@ColumnList({"是","否"})
</#if>
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,11 +25,11 @@
1 = 1
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
<#elseif field.fieldType.javaType() == "Boolean">
<#elseif field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
@ -70,7 +70,7 @@
VALUES
(
<#list table.fields as field>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#list>
)
</insert>
@ -97,7 +97,7 @@
SET
<#list table.fields as field>
<#if !field.isPrimaryKey>
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
<#if table.hasPrimaryKey()>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,52 +25,52 @@
`IS_DELETED` = 0
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "Boolean">
<#if field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Byte">
<#if field.getFieldTypeJava() == "Byte">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Short">
<#if field.getFieldTypeJava() == "Short">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Integer">
<#if field.getFieldTypeJava() == "Integer">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Long">
<#if field.getFieldTypeJava() == "Long">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Float">
<#if field.getFieldTypeJava() == "Float">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Double">
<#if field.getFieldTypeJava() == "Double">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Character">
<#if field.getFieldTypeJava() == "Character">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Date">
<#if field.getFieldTypeJava() == "Date">
<if test="request.${field.getFName()} != null">
AND DATE_FORMAT(`${field.fieldName}`,"%Y-%m-%d %T") = DATE_FORMAT(${r"#{"}request.${field.getFName()}},"%Y-%m-%d %T")
</if>
@ -112,7 +112,7 @@
${r"#{"}request.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -136,7 +136,7 @@
${r"#{"}item.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}item.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -164,7 +164,7 @@
<#list table.fields as field>
<#if !field.isPrimaryKey>
<#if !field.isSystem || field.fieldName == 'ID'>
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
`${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#if>
</#list>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,11 +25,11 @@
1 = 1
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
<#elseif field.fieldType.javaType() == "Boolean">
<#elseif field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
@ -70,7 +70,7 @@
VALUES
(
<#list table.fields as field>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#list>
)
</insert>
@ -97,7 +97,7 @@
SET
<#list table.fields as field>
<#if !field.isPrimaryKey>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#if>
</#list>
<#if table.hasPrimaryKey()>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,52 +25,52 @@
"IS_DELETED" = 0
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "Boolean">
<#if field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Byte">
<#if field.getFieldTypeJava() == "Byte">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Short">
<#if field.getFieldTypeJava() == "Short">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Integer">
<#if field.getFieldTypeJava() == "Integer">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Long">
<#if field.getFieldTypeJava() == "Long">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Float">
<#if field.getFieldTypeJava() == "Float">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Double">
<#if field.getFieldTypeJava() == "Double">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Character">
<#if field.getFieldTypeJava() == "Character">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Date">
<#if field.getFieldTypeJava() == "Date">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND to_char("${field.fieldName}",'yyyy-MM-dd HH24:mi:ss') = to_char(${r"#{"}request.${field.getFName()}},'yyyy-MM-dd HH24:mi:ss')
</if>
@ -112,7 +112,7 @@
${r"#{"}request.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -136,7 +136,7 @@
${r"#{"}item.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}item.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -164,7 +164,7 @@
<#list table.fields as field>
<#if !field.isPrimaryKey>
<#if !field.isSystem || field.fieldName == 'ID'>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#if>
</#list>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,11 +25,11 @@
1 = 1
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
<#elseif field.fieldType.javaType() == "Boolean">
<#elseif field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}}
</if>
@ -70,7 +70,7 @@
VALUES
(
<#list table.fields as field>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#list>
)
</insert>
@ -97,7 +97,7 @@
SET
<#list table.fields as field>
<#if !field.isPrimaryKey>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>,</#if>
"${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}}<#if field_has_next>,</#if>
</#if>
</#list>
<#if table.hasPrimaryKey()>

@ -12,7 +12,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.module.${moduleName}.ent.${table.getCName()}">
<#list table.fields as field>
<result column="${field.fieldName}" jdbcType="${field.fieldType.jdbcType()}" property="${field.getFName()}"/>
<result column="${field.fieldName}" jdbcType="${field.getFieldTypeJdbc()}" property="${field.getFName()}"/>
</#list>
</resultMap>
@ -25,52 +25,52 @@
"IS_DELETED" = 0
<#list table.fields as field>
<#if field.isQuery>
<#if field.fieldType.javaType() == "Boolean">
<#if field.getFieldTypeJava() == "Boolean">
<if test="request.${field.getFName()} != null">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Byte">
<#if field.getFieldTypeJava() == "Byte">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Short">
<#if field.getFieldTypeJava() == "Short">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Integer">
<#if field.getFieldTypeJava() == "Integer">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Long">
<#if field.getFieldTypeJava() == "Long">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Float">
<#if field.getFieldTypeJava() == "Float">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Double">
<#if field.getFieldTypeJava() == "Double">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != 0">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Character">
<#if field.getFieldTypeJava() == "Character">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "String">
<#if field.getFieldTypeJava() == "String">
<if test="request.${field.getFName()} != null and request.${field.getFName()} != ''">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
</#if>
<#if field.fieldType.javaType() == "Date">
<#if field.getFieldTypeJava() == "Date">
<if test="request.${field.getFName()} != null">
AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}}
</if>
@ -112,7 +112,7 @@
${r"#{"}request.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -136,7 +136,7 @@
${r"#{"}item.id},
<#list table.fields as field>
<#if !field.isSystem>
${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${r"#{"}item.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -164,7 +164,7 @@
<#list table.fields as field>
<#if !field.isPrimaryKey>
<#if !field.isSystem || field.fieldName == 'ID'>
${field.fieldName} = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}},
${field.fieldName} = ${r"#{"}request.${field.getFName()},jdbcType=${field.getFieldTypeJdbc()}},
</#if>
</#if>
</#list>

@ -37,17 +37,17 @@ public class ${table.getCName()}CreateRequest extends BaseRequest {
<#if field.fieldType?contains("Dict")>
@Dict(name = "${field.getFieldName()}")
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -32,15 +32,15 @@ public class ${table.getCName()}DeleteRequest extends BaseUpdateRequest {
/**
* ${field.fieldComment?default("")}
*/
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#list>
<#list table.fields as field>
<#if !field.isSystem>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -25,17 +25,17 @@ public class ${table.getCName()}FindRequest extends BaseFindRequest {
<#if field.fieldType?contains("Dict")>
@Dict(name = "${field.getFieldName()}")
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if field.isQuery>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -38,17 +38,17 @@ public class ${table.getCName()}UpdateRequest extends BaseUpdateRequest {
<#if field.fieldType?contains("Dict")>
@Dict(name = "${field.getFieldName()}")
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem || field.fieldName == 'ID'>
public ${field.fieldType.javaType()} ${field.getterName()}() {
public ${field.getFieldTypeJava()} ${field.getterName()}() {
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}) {
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}) {
this.${field.getFName()} = ${field.getFName()};
}
</#if>

@ -17,17 +17,17 @@ public class ${table.getCName()} extends BaseEntity{
<#list table.fields as field>
<#if !field.isSystem || field.fieldName == 'ID'>
/** ${field.fieldName} - ${field.fieldComment?default("")} */
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem || field.fieldName == 'ID'>
public ${field.fieldType.javaType()} ${field.getterName()}(){
public ${field.getFieldTypeJava()} ${field.getterName()}(){
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}){
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}){
this.${field.getFName()} = ${field.getFName()};
}

@ -21,7 +21,7 @@
<resultMap id="${table.getFName()}" type="${basePackage}.${moduleName}.ent.${table.getCName()}">
<#list table.fields as f>
<result column="${f.fieldName}" jdbcType="${f.fieldType.jdbcType()}" property="${f.getFName()}"/>
<result column="${f.fieldName}" jdbcType="${f.getFieldTypeJdbc()}" property="${f.getFName()}"/>
</#list>
</resultMap>
@ -88,7 +88,7 @@
${r"#{"}request.id},
<#list table.fields as f>
<#if !f.isSystem>
${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}},
${r"#{"}request.${f.getFName()},jdbcType=${f.getFieldTypeJdbc()}},
</#if>
</#list>
0,
@ -116,7 +116,7 @@
<#list table.fields as f>
<#if !f.isPrimaryKey>
<#if !f.isSystem || f.fieldName == 'ID'>
${f.fieldName} = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}},
${f.fieldName} = ${r"#{"}request.${f.getFName()},jdbcType=${f.getFieldTypeJdbc()}},
</#if>
</#if>
</#list>

@ -32,17 +32,17 @@ public class ${table.getCName()}CreateRequest extends BaseRequest{
@NotNull(message = "${field.fieldComment?default("")}不能为NULL")
</#if>
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem>
public ${field.fieldType.javaType()} ${field.getterName()}(){
public ${field.getFieldTypeJava()} ${field.getterName()}(){
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}){
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}){
this.${field.getFName()} = ${field.getFName()};
}

@ -17,17 +17,17 @@ public class ${table.getCName()}FindRequest extends BaseFindRequest{
<#list table.fields as field>
<#if field.isQuery>
/** ${field.fieldComment?default("")} */
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if field.isQuery>
public ${field.fieldType.javaType()} ${field.getterName()}(){
public ${field.getFieldTypeJava()} ${field.getterName()}(){
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}){
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}){
this.${field.getFName()} = ${field.getFName()};
}

@ -32,17 +32,17 @@ public class ${table.getCName()}UpdateRequest extends BaseUpdateRequest{
@NotNull(message = "${field.fieldComment?default("")}不能为NULL")
</#if>
</#if>
private ${field.fieldType.javaType()} ${field.getFName()};
private ${field.getFieldTypeJava()} ${field.getFName()};
</#if>
</#list>
<#list table.fields as field>
<#if !field.isSystem || field.fieldName == 'ID'>
public ${field.fieldType.javaType()} ${field.getterName()}(){
public ${field.getFieldTypeJava()} ${field.getterName()}(){
return this.${field.getFName()};
}
public void ${field.setterName()}(${field.fieldType.javaType()} ${field.getFName()}){
public void ${field.setterName()}(${field.getFieldTypeJava()} ${field.getFName()}){
this.${field.getFName()} = ${field.getFName()};
}

Loading…
Cancel
Save

Powered by TurnKey Linux.