|  | @@ -10,6 +10,7 @@ import java.util.Map;
 | 
	
		
			
				|  |  |  import java.util.stream.Collectors;
 | 
	
		
			
				|  |  |  import java.util.zip.ZipEntry;
 | 
	
		
			
				|  |  |  import java.util.zip.ZipOutputStream;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  import org.apache.commons.io.IOUtils;
 | 
	
		
			
				|  |  |  import org.apache.velocity.Template;
 | 
	
		
			
				|  |  |  import org.apache.velocity.VelocityContext;
 | 
	
	
		
			
				|  | @@ -38,12 +39,11 @@ import com.ruoyi.generator.util.VelocityUtils;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  /**
 | 
	
		
			
				|  |  |   * 业务 服务层实现
 | 
	
		
			
				|  |  | - * 
 | 
	
		
			
				|  |  | + *
 | 
	
		
			
				|  |  |   * @author ruoyi
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  @Service
 | 
	
		
			
				|  |  | -public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  | -{
 | 
	
		
			
				|  |  | +public class GenTableServiceImpl implements IGenTableService {
 | 
	
		
			
				|  |  |      private static final Logger log = LoggerFactory.getLogger(GenTableServiceImpl.class);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
	
		
			
				|  | @@ -54,13 +54,12 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 查询业务信息
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param id 业务ID
 | 
	
		
			
				|  |  |       * @return 业务信息
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public GenTable selectGenTableById(Long id)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public GenTable selectGenTableById(Long id) {
 | 
	
		
			
				|  |  |          GenTable genTable = genTableMapper.selectGenTableById(id);
 | 
	
		
			
				|  |  |          setTableFromOptions(genTable);
 | 
	
		
			
				|  |  |          return genTable;
 | 
	
	
		
			
				|  | @@ -68,57 +67,51 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 查询业务列表
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param genTable 业务信息
 | 
	
		
			
				|  |  |       * @return 业务集合
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public List<GenTable> selectGenTableList(GenTable genTable)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public List<GenTable> selectGenTableList(GenTable genTable) {
 | 
	
		
			
				|  |  |          return genTableMapper.selectGenTableList(genTable);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 查询据库列表
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param genTable 业务信息
 | 
	
		
			
				|  |  |       * @return 数据库表集合
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public List<GenTable> selectDbTableList(GenTable genTable)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public List<GenTable> selectDbTableList(GenTable genTable) {
 | 
	
		
			
				|  |  |          return genTableMapper.selectDbTableList(genTable);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 查询据库列表
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableNames 表名称组
 | 
	
		
			
				|  |  |       * @return 数据库表集合
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public List<GenTable> selectDbTableListByNames(String[] tableNames)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public List<GenTable> selectDbTableListByNames(String[] tableNames) {
 | 
	
		
			
				|  |  |          return genTableMapper.selectDbTableListByNames(tableNames);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 修改业务
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param genTable 业务信息
 | 
	
		
			
				|  |  |       * @return 结果
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      @Transactional
 | 
	
		
			
				|  |  | -    public void updateGenTable(GenTable genTable)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public void updateGenTable(GenTable genTable) {
 | 
	
		
			
				|  |  |          String options = JSON.toJSONString(genTable.getParams());
 | 
	
		
			
				|  |  |          genTable.setOptions(options);
 | 
	
		
			
				|  |  |          int row = genTableMapper.updateGenTable(genTable);
 | 
	
		
			
				|  |  | -        if (row > 0)
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | -            for (GenTableColumn cenTableColumn : genTable.getColumns())
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +        if (row > 0) {
 | 
	
		
			
				|  |  | +            for (GenTableColumn cenTableColumn : genTable.getColumns()) {
 | 
	
		
			
				|  |  |                  genTableColumnMapper.updateGenTableColumn(cenTableColumn);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -126,62 +119,53 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 删除业务对象
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableIds 需要删除的数据ID
 | 
	
		
			
				|  |  |       * @return 结果
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      @Transactional
 | 
	
		
			
				|  |  | -    public void deleteGenTableByIds(Long[] tableIds)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public void deleteGenTableByIds(Long[] tableIds) {
 | 
	
		
			
				|  |  |          genTableMapper.deleteGenTableByIds(tableIds);
 | 
	
		
			
				|  |  |          genTableColumnMapper.deleteGenTableColumnByIds(tableIds);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 导入表结构
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableList 导入表列表
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      @Transactional
 | 
	
		
			
				|  |  | -    public void importGenTable(List<GenTable> tableList)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public void importGenTable(List<GenTable> tableList) {
 | 
	
		
			
				|  |  |          String operName = SecurityUtils.getUsername();
 | 
	
		
			
				|  |  | -        try
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | -            for (GenTable table : tableList)
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +        try {
 | 
	
		
			
				|  |  | +            for (GenTable table : tableList) {
 | 
	
		
			
				|  |  |                  String tableName = table.getTableName();
 | 
	
		
			
				|  |  |                  GenUtils.initTable(table, operName);
 | 
	
		
			
				|  |  |                  int row = genTableMapper.insertGenTable(table);
 | 
	
		
			
				|  |  | -                if (row > 0)
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | +                if (row > 0) {
 | 
	
		
			
				|  |  |                      // 保存列信息
 | 
	
		
			
				|  |  |                      List<GenTableColumn> genTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName);
 | 
	
		
			
				|  |  | -                    for (GenTableColumn column : genTableColumns)
 | 
	
		
			
				|  |  | -                    {
 | 
	
		
			
				|  |  | +                    for (GenTableColumn column : genTableColumns) {
 | 
	
		
			
				|  |  |                          GenUtils.initColumnField(column, table);
 | 
	
		
			
				|  |  |                          genTableColumnMapper.insertGenTableColumn(column);
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        catch (Exception e)
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        } catch (Exception e) {
 | 
	
		
			
				|  |  |              throw new CustomException("导入失败:" + e.getMessage());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 预览代码
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableId 表编号
 | 
	
		
			
				|  |  |       * @return 预览数据列表
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public Map<String, String> previewCode(Long tableId)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public Map<String, String> previewCode(Long tableId) {
 | 
	
		
			
				|  |  |          Map<String, String> dataMap = new LinkedHashMap<>();
 | 
	
		
			
				|  |  |          // 查询表信息
 | 
	
		
			
				|  |  |          GenTable table = genTableMapper.selectGenTableById(tableId);
 | 
	
	
		
			
				|  | @@ -194,8 +178,7 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 获取模板列表
 | 
	
		
			
				|  |  |          List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
 | 
	
		
			
				|  |  | -        for (String template : templates)
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        for (String template : templates) {
 | 
	
		
			
				|  |  |              // 渲染模板
 | 
	
		
			
				|  |  |              StringWriter sw = new StringWriter();
 | 
	
		
			
				|  |  |              Template tpl = Velocity.getTemplate(template, Constants.UTF8);
 | 
	
	
		
			
				|  | @@ -207,13 +190,12 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 生成代码(下载方式)
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableName 表名称
 | 
	
		
			
				|  |  |       * @return 数据
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public byte[] downloadCode(String tableName)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public byte[] downloadCode(String tableName) {
 | 
	
		
			
				|  |  |          ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
 | 
	
		
			
				|  |  |          ZipOutputStream zip = new ZipOutputStream(outputStream);
 | 
	
		
			
				|  |  |          generatorCode(tableName, zip);
 | 
	
	
		
			
				|  | @@ -223,12 +205,11 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 生成代码(自定义路径)
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableName 表名称
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public void generatorCode(String tableName)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public void generatorCode(String tableName) {
 | 
	
		
			
				|  |  |          // 查询表信息
 | 
	
		
			
				|  |  |          GenTable table = genTableMapper.selectGenTableByName(tableName);
 | 
	
		
			
				|  |  |          // 查询列信息
 | 
	
	
		
			
				|  | @@ -241,21 +222,16 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 获取模板列表
 | 
	
		
			
				|  |  |          List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
 | 
	
		
			
				|  |  | -        for (String template : templates)
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | -            if (!StringUtils.containsAny(template, "sql.vm", "api.js.vm", "index.vue.vm", "index-tree.vue.vm"))
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +        for (String template : templates) {
 | 
	
		
			
				|  |  | +            if (!StringUtils.containsAny(template, "sql.vm", "api.js.vm", "index.vue.vm", "index-tree.vue.vm")) {
 | 
	
		
			
				|  |  |                  // 渲染模板
 | 
	
		
			
				|  |  |                  StringWriter sw = new StringWriter();
 | 
	
		
			
				|  |  |                  Template tpl = Velocity.getTemplate(template, Constants.UTF8);
 | 
	
		
			
				|  |  |                  tpl.merge(context, sw);
 | 
	
		
			
				|  |  | -                try
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | +                try {
 | 
	
		
			
				|  |  |                      String path = getGenPath(table, template);
 | 
	
		
			
				|  |  |                      FileUtils.writeStringToFile(new File(path), sw.toString(), CharsetKit.UTF_8);
 | 
	
		
			
				|  |  | -                }
 | 
	
		
			
				|  |  | -                catch (IOException e)
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | +                } catch (IOException e) {
 | 
	
		
			
				|  |  |                      throw new CustomException("渲染模板失败,表名:" + table.getTableName());
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 | 
	
	
		
			
				|  | @@ -264,13 +240,12 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 同步数据库
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableName 表名称
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      @Transactional
 | 
	
		
			
				|  |  | -    public void synchDb(String tableName)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public void synchDb(String tableName) {
 | 
	
		
			
				|  |  |          GenTable table = genTableMapper.selectGenTableByName(tableName);
 | 
	
		
			
				|  |  |          List<GenTableColumn> tableColumns = table.getColumns();
 | 
	
		
			
				|  |  |          List<String> tableColumnNames = tableColumns.stream().map(GenTableColumn::getColumnName).collect(Collectors.toList());
 | 
	
	
		
			
				|  | @@ -279,33 +254,29 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |          List<String> dbTableColumnNames = dbTableColumns.stream().map(GenTableColumn::getColumnName).collect(Collectors.toList());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          dbTableColumns.forEach(column -> {
 | 
	
		
			
				|  |  | -            if (!tableColumnNames.contains(column.getColumnName()))
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +            if (!tableColumnNames.contains(column.getColumnName())) {
 | 
	
		
			
				|  |  |                  GenUtils.initColumnField(column, table);
 | 
	
		
			
				|  |  |                  genTableColumnMapper.insertGenTableColumn(column);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          List<GenTableColumn> delColumns = tableColumns.stream().filter(column -> !dbTableColumnNames.contains(column.getColumnName())).collect(Collectors.toList());
 | 
	
		
			
				|  |  | -        if (StringUtils.isNotEmpty(delColumns))
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        if (StringUtils.isNotEmpty(delColumns)) {
 | 
	
		
			
				|  |  |              genTableColumnMapper.deleteGenTableColumns(delColumns);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 批量生成代码(下载方式)
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param tableNames 表数组
 | 
	
		
			
				|  |  |       * @return 数据
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public byte[] downloadCode(String[] tableNames)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public byte[] downloadCode(String[] tableNames) {
 | 
	
		
			
				|  |  |          ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
 | 
	
		
			
				|  |  |          ZipOutputStream zip = new ZipOutputStream(outputStream);
 | 
	
		
			
				|  |  | -        for (String tableName : tableNames)
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        for (String tableName : tableNames) {
 | 
	
		
			
				|  |  |              generatorCode(tableName, zip);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          IOUtils.closeQuietly(zip);
 | 
	
	
		
			
				|  | @@ -315,8 +286,7 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 查询表信息并生成代码
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    private void generatorCode(String tableName, ZipOutputStream zip)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    private void generatorCode(String tableName, ZipOutputStream zip) {
 | 
	
		
			
				|  |  |          // 查询表信息
 | 
	
		
			
				|  |  |          GenTable table = genTableMapper.selectGenTableByName(tableName);
 | 
	
		
			
				|  |  |          // 查询列信息
 | 
	
	
		
			
				|  | @@ -329,23 +299,19 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          // 获取模板列表
 | 
	
		
			
				|  |  |          List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
 | 
	
		
			
				|  |  | -        for (String template : templates)
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        for (String template : templates) {
 | 
	
		
			
				|  |  |              // 渲染模板
 | 
	
		
			
				|  |  |              StringWriter sw = new StringWriter();
 | 
	
		
			
				|  |  |              Template tpl = Velocity.getTemplate(template, Constants.UTF8);
 | 
	
		
			
				|  |  |              tpl.merge(context, sw);
 | 
	
		
			
				|  |  | -            try
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +            try {
 | 
	
		
			
				|  |  |                  // 添加到zip
 | 
	
		
			
				|  |  |                  zip.putNextEntry(new ZipEntry(VelocityUtils.getFileName(template, table)));
 | 
	
		
			
				|  |  |                  IOUtils.write(sw.toString(), zip, Constants.UTF8);
 | 
	
		
			
				|  |  |                  IOUtils.closeQuietly(sw);
 | 
	
		
			
				|  |  | -				zip.flush();
 | 
	
		
			
				|  |  | +                zip.flush();
 | 
	
		
			
				|  |  |                  zip.closeEntry();
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            catch (IOException e)
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +            } catch (IOException e) {
 | 
	
		
			
				|  |  |                  log.error("渲染模板失败,表名:" + table.getTableName(), e);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -353,26 +319,19 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 修改保存参数校验
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param genTable 业务信息
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | -    public void validateEdit(GenTable genTable)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | -        if (GenConstants.TPL_TREE.equals(genTable.getTplCategory()))
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +    public void validateEdit(GenTable genTable) {
 | 
	
		
			
				|  |  | +        if (GenConstants.TPL_TREE.equals(genTable.getTplCategory())) {
 | 
	
		
			
				|  |  |              String options = JSON.toJSONString(genTable.getParams());
 | 
	
		
			
				|  |  |              JSONObject paramsObj = JSONObject.parseObject(options);
 | 
	
		
			
				|  |  | -            if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_CODE)))
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +            if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_CODE))) {
 | 
	
		
			
				|  |  |                  throw new CustomException("树编码字段不能为空");
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_PARENT_CODE)))
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +            } else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_PARENT_CODE))) {
 | 
	
		
			
				|  |  |                  throw new CustomException("树父编码字段不能为空");
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_NAME)))
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +            } else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_NAME))) {
 | 
	
		
			
				|  |  |                  throw new CustomException("树名称字段不能为空");
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -380,42 +339,36 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 设置主键列信息
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | -     * @param table 业务表信息
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  | +     * @param table   业务表信息
 | 
	
		
			
				|  |  |       * @param columns 业务字段列表
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    public void setPkColumn(GenTable table, List<GenTableColumn> columns)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | -        for (GenTableColumn column : columns)
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | -            if (column.isPk())
 | 
	
		
			
				|  |  | -            {
 | 
	
		
			
				|  |  | +    public void setPkColumn(GenTable table, List<GenTableColumn> columns) {
 | 
	
		
			
				|  |  | +        for (GenTableColumn column : columns) {
 | 
	
		
			
				|  |  | +            if (column.isPk()) {
 | 
	
		
			
				|  |  |                  table.setPkColumn(column);
 | 
	
		
			
				|  |  |                  break;
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        if (StringUtils.isNull(table.getPkColumn()))
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        if (StringUtils.isNull(table.getPkColumn())) {
 | 
	
		
			
				|  |  |              table.setPkColumn(columns.get(0));
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 设置代码生成其他选项值
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  |       * @param genTable 设置后的生成对象
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    public void setTableFromOptions(GenTable genTable)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public void setTableFromOptions(GenTable genTable) {
 | 
	
		
			
				|  |  |          JSONObject paramsObj = JSONObject.parseObject(genTable.getOptions());
 | 
	
		
			
				|  |  | -        if (StringUtils.isNotNull(paramsObj))
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        if (StringUtils.isNotNull(paramsObj)) {
 | 
	
		
			
				|  |  |              String treeCode = paramsObj.getString(GenConstants.TREE_CODE);
 | 
	
		
			
				|  |  |              String treeParentCode = paramsObj.getString(GenConstants.TREE_PARENT_CODE);
 | 
	
		
			
				|  |  |              String treeName = paramsObj.getString(GenConstants.TREE_NAME);
 | 
	
		
			
				|  |  |              String parentMenuId = paramsObj.getString(GenConstants.PARENT_MENU_ID);
 | 
	
		
			
				|  |  |              String parentMenuName = paramsObj.getString(GenConstants.PARENT_MENU_NAME);
 | 
	
		
			
				|  |  | -            
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              genTable.setTreeCode(treeCode);
 | 
	
		
			
				|  |  |              genTable.setTreeParentCode(treeParentCode);
 | 
	
		
			
				|  |  |              genTable.setTreeName(treeName);
 | 
	
	
		
			
				|  | @@ -426,18 +379,16 @@ public class GenTableServiceImpl implements IGenTableService
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 获取代码生成地址
 | 
	
		
			
				|  |  | -     * 
 | 
	
		
			
				|  |  | -     * @param table 业务表信息
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  | +     * @param table    业务表信息
 | 
	
		
			
				|  |  |       * @param template 模板文件路径
 | 
	
		
			
				|  |  |       * @return 生成地址
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    public static String getGenPath(GenTable table, String template)
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | +    public static String getGenPath(GenTable table, String template) {
 | 
	
		
			
				|  |  |          String genPath = table.getGenPath();
 | 
	
		
			
				|  |  | -        if (StringUtils.equals(genPath, "/"))
 | 
	
		
			
				|  |  | -        {
 | 
	
		
			
				|  |  | +        if (StringUtils.equals(genPath, "/")) {
 | 
	
		
			
				|  |  |              return System.getProperty("user.dir") + File.separator + "src" + File.separator + VelocityUtils.getFileName(template, table);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          return genPath + File.separator + VelocityUtils.getFileName(template, table);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +}
 |