admin
2021-10-14 932777e9d6dc8dc5d9edbfc9117639ae02d96956
src/main/java/org/yeshi/utils/generater/GeneraterManager.java
@@ -21,6 +21,7 @@
import org.yeshi.utils.mybatis.BaseMapper;
import java.io.File;
import java.io.IOException;
import java.lang.annotation.Annotation;
/**
@@ -62,7 +63,25 @@
        if (!f.exists()) {
            f.mkdirs();
        }
        return new File(f.getAbsolutePath(), packageName.replace(".", "/")).getAbsolutePath();
        f = new File(f.getAbsolutePath(), packageName.replace(".", "/"));
        if (!f.exists()) {
            f.mkdirs();
        }
        return f.getAbsolutePath();
    }
    /**
     * @return void
     * @author hxh
     * @description 保存文件
     * @date 10:06 2021/10/14
     * @param: data
     * @param: path
     **/
    private void saveFile(String data, String path) throws IOException {
        if (!new File(path).exists())
            new File(path).createNewFile();
        FileUtil.saveAsFileByte(data.getBytes("UTF-8"), path);
    }
    public void createException(String packageName, Class base) {
@@ -71,7 +90,7 @@
            ExceptionVO vo = new ExceptionVO.Builder().setEntity(entity).setPackageName(packageName).setBase(new ClassInfo(base.getSimpleName(), base.getName())).build();
            String result = GeneraterUtil.createException(vo);
            //保存
            FileUtil.saveAsFileByte(result.getBytes("UTF-8"), path);
            saveFile(result, path);
        } catch (Exception e) {
            e.printStackTrace();
        }
@@ -93,7 +112,7 @@
                .setEntity(entity).build();
        String result = GeneraterUtil.createMongoDBDao(vo);
        //保存
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, daoName).getAbsolutePath());
        saveFile(result, new File(path, daoName + ".java").getAbsolutePath());
        return vo;
    }
@@ -115,11 +134,11 @@
                .build();
        String result = GeneraterUtil.createMybatisDBMapper(vo);
        //保存
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, mapperName + ".java").getAbsolutePath());
        saveFile(result, new File(path, mapperName + ".java").getAbsolutePath());
        if (!new File(mapperDir).exists())
            new File(mapperDir).mkdirs();
        result = GeneraterUtil.createMybatisDBMapperXML(vo);
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(mapperDir, mapperName + ".xml").getAbsolutePath());
        saveFile(result, new File(mapperDir, mapperName + ".xml").getAbsolutePath());
        return vo;
    }
@@ -135,7 +154,7 @@
        String path = getDirPath(packageName);
        QueryVO queryVO = new QueryVO.Builder().setEntity(entity).setPackageName(packageName).build();
        String result = GeneraterUtil.createQuery(queryVO);
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, queryVO.getClassName() + ".java").getAbsolutePath());
        saveFile(result, new File(path, queryVO.getClassName() + ".java").getAbsolutePath());
        return queryVO;
    }
@@ -162,7 +181,7 @@
                .setService(new ClassInfo(serviceName, interPackageName + "." + serviceName))
                .build();
        String result = GeneraterUtil.createService(vo);
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, serviceName + ".java").getAbsolutePath());
        saveFile(result, new File(path, serviceName + ".java").getAbsolutePath());
        //创建service实现
        String serviceImplName = entity.getSimpleName() + "ServiceImpl";
@@ -176,7 +195,7 @@
                .setDaoQuery(new ClassInfo("DaoQuery", dao.getClazz() + ".DaoQuery"))
                .build();
        result = GeneraterUtil.createServiceImpl(implVO);
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, serviceImplName + ".java").getAbsolutePath());
        saveFile(result, new File(path, serviceImplName + ".java").getAbsolutePath());
        return vo;
    }
@@ -194,28 +213,29 @@
    public void createAdmin(String controllerPackage, String htmlDir, ClassInfo query, ClassInfo service) throws Exception {
        String path = getDirPath(controllerPackage);
        String controllerName = entity.getSimpleName() + "AdminController";
        AdminGeneraterInfo generaterInfo = new AdminGeneraterInfo.Builder().setEntityClass(entity).build();
        String htmlNamePrefix = getHtmlNameFromEntityName(entity.getSimpleName());
        AdminControllerInfoVO vo = new AdminControllerInfoVO.Builder().setAdminInfo(generaterInfo).setPackageName(controllerName).setQueryVO(query).setService(service).build();
        AdminControllerInfoVO vo = new AdminControllerInfoVO.Builder().setAdminInfo(generaterInfo).setPackageName(controllerPackage).setQueryVO(query).setService(service).build();
        String controllerName = vo.getControllerName();
        //生成controller
        String result = GeneraterUtil.createAdminController(vo);
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, controllerName + ".java").getAbsolutePath());
        saveFile(result, new File(path, controllerName + ".java").getAbsolutePath());
        result = GeneraterUtil.createAdminPageForList(generaterInfo);
        FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(htmlDir, htmlNamePrefix + "_list.html").getAbsolutePath());
        saveFile(result, new File(htmlDir, htmlNamePrefix + "_list.html").getAbsolutePath());
        if (generaterInfo.getAddFormRows() != null && generaterInfo.getAddFormRows().size() > 0) {
            result = GeneraterUtil.createAdminPageForAdd(generaterInfo);
            FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(htmlDir, htmlNamePrefix + "_add.html").getAbsolutePath());
            saveFile(result, new File(htmlDir, htmlNamePrefix + "_add.html").getAbsolutePath());
        }
        if (generaterInfo.getUpdateFormRows() != null && generaterInfo.getUpdateFormRows().size() > 0) {
            result = GeneraterUtil.createAdminPageForUpdate(generaterInfo);
            FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(htmlDir, htmlNamePrefix + "_update.html").getAbsolutePath());
            saveFile(result, new File(htmlDir, htmlNamePrefix + "_update.html").getAbsolutePath());
        }
    }
@@ -276,8 +296,11 @@
            serviceClass = serviceInfoVO.getService();
        }
        //创建Admin模块
        createAdmin(adminParams.getControllerPackage(), adminParams.getHtmlDir(), queryClass, serviceClass);
        if (queryClass != null && serviceClass != null) {
            if (adminParams != null)
                //创建Admin模块
                createAdmin(adminParams.getControllerPackage(), adminParams.getHtmlDir(), queryClass, serviceClass);
        }
    }
    /**