From aa50b5a6969ea0d4d261d3693aa0fefb2b3255f7 Mon Sep 17 00:00:00 2001 From: thinkgem Date: Sun, 2 Feb 2020 12:51:48 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E8=B6=85=E5=A4=9A=E5=AD=97=E6=AE=B5=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=E4=BD=BF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jeesite/test/GenTableToolTest.java | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 modules/core/src/test/java/com/jeesite/test/GenTableToolTest.java diff --git a/modules/core/src/test/java/com/jeesite/test/GenTableToolTest.java b/modules/core/src/test/java/com/jeesite/test/GenTableToolTest.java new file mode 100644 index 00000000..14bf1c16 --- /dev/null +++ b/modules/core/src/test/java/com/jeesite/test/GenTableToolTest.java @@ -0,0 +1,69 @@ +/** + * Copyright (c) 2013-Now http://jeesite.com All rights reserved. + */ +package com.jeesite.test; + +import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.annotation.Rollback; +import org.springframework.test.context.ActiveProfiles; + +import com.jeesite.common.config.Global; +import com.jeesite.common.lang.StringUtils; +import com.jeesite.common.tests.BaseSpringContextTests; +import com.jeesite.modules.gen.entity.GenTable; +import com.jeesite.modules.gen.entity.GenTableColumn; +import com.jeesite.modules.gen.service.GenTableService; + +/** + * 代码生成工具(API) + * @author ThinkGem + * @version 2020-2-1 + */ +@ActiveProfiles("test") +@SpringBootTest(classes=ApplicationTest.class) +@Rollback(false) +public class GenTableToolTest extends BaseSpringContextTests { + + @Autowired + private GenTableService genTableService; + + @Test + public void execute() throws Exception{ + GenTable genTable = new GenTable(); + genTable.setIsNewRecord(true); + genTable.setTableName("test_data_demo"); // 表名 + genTable = genTableService.getFromDb(genTable); + genTable.setClassName(StringUtils.capCamelCase(genTable.getTableName())); // 实体类名 + genTable.setFunctionAuthor("ThinkGem"); // 作者名称 + genTable.setTplCategory("crud"); // 生成模板:crud、treeGrid、service、dao、query + genTable.setPackageName("com.jeesite.modules");// 生成包路径 + genTable.setModuleName("test"); // 生成模块名 + genTable.setSubModuleName(""); // 生成子模块名 + genTable.setFunctionName(genTable.getComments()); // 生成功能名 + genTable.setFunctionNameSimple(genTable.getComments()); // 功能名(简称) + genTable.getOptionMap().put("isHaveDisableEnable", Global.NO); // 是否有停用启用 + genTable.getOptionMap().put("isHaveDelete", Global.YES); // 是否有删除功能 + genTable.getOptionMap().put("isFileUpload", Global.NO); // 是否有上传附件 + genTable.getOptionMap().put("isImageUpload", Global.NO); // 是否有上传图片 + for(GenTableColumn column : genTable.getColumnList()){ + // 字段配置(下拉框) + if ("trade_type".equals(column.getColumnName())){ + column.setShowType("select"); + column.getOptionMap().put("dictType", "sys_menu_type"); + } + } + // 删除旧配置 + genTableService.delete(genTable); + // 保存新配置 + genTable.setIsNewRecord(true); + genTableService.save(genTable); + // 编译并生成代码 + genTable.setGenFlag("1"); // 1:编译输出;2:生成文件 + genTable.setReplaceFile(Global.YES); // 如果存在则替换 + String result = genTableService.generateCode(genTable); + System.out.println(result); + } + +}