package org.yeshi.utils.generater;
|
|
import org.yeshi.utils.FreemarkerUtils;
|
import org.yeshi.utils.generater.entity.admin.AdminGeneraterInfo;
|
import org.yeshi.utils.generater.vo.ExceptionVO;
|
import org.yeshi.utils.generater.vo.admin.controller.AdminControllerInfoVO;
|
import org.yeshi.utils.generater.vo.admin.page.FormAddInfoVO;
|
import org.yeshi.utils.generater.vo.admin.page.FormUpdateInfoVO;
|
import org.yeshi.utils.generater.vo.admin.page.ListInfoVO;
|
import org.yeshi.utils.generater.vo.dao.MongoDBDaoVO;
|
import org.yeshi.utils.generater.vo.dao.MyBatisDBDaoVO;
|
import org.yeshi.utils.generater.vo.service.QueryVO;
|
import org.yeshi.utils.generater.vo.service.ServiceImplInfoVO;
|
import org.yeshi.utils.generater.vo.service.ServiceInfoVO;
|
|
import java.io.IOException;
|
import java.io.InputStream;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
public class GeneraterUtil {
|
|
public static String createException(ExceptionVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\exception.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createMongoDBDao(MongoDBDaoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\dao\\mongoDBDao.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
public static String createMybatisDBMapper(MyBatisDBDaoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\dao\\mybatisDBDao.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createMybatisDBMapperXML(MyBatisDBDaoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\dao\\mybatisDBXML.ftl"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
public static String createQuery(QueryVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\service\\queryVO.ftl"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createService(ServiceInfoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\service\\service.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createServiceImpl(ServiceImplInfoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\service\\serviceImpl.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
public static String createAdminController(AdminControllerInfoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater\\admin\\adminController.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
private static Map<String, InputStream> getAdminIncludePageMap() {
|
//将所有的控件模板加载进去
|
String[] template = new String[]{
|
"admin/form/checkBox.ftl",
|
"admin/form/img.ftl",
|
"admin/form/password.ftl",
|
"admin/form/radioGroup.ftl",
|
"admin/form/select.ftl",
|
"admin/form/switch.ftl",
|
"admin/form/text.ftl",
|
"admin/form/textArea.ftl",
|
"admin/add.ftl",
|
"admin/update.ftl",
|
"admin/list.ftl"
|
};
|
Map<String, InputStream> map = new HashMap<>();
|
for (String st : template) {
|
map.put(st, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/" + st));
|
}
|
return map;
|
}
|
|
public static String createAdminPageForUpdate(AdminGeneraterInfo vo) throws IOException {
|
Map<String, InputStream> map = getAdminIncludePageMap();
|
String result = FreemarkerUtils.generateInputStream(new FormUpdateInfoVO.Builder().setAdminInfo(vo).build(), "admin/update.ftl", map);
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createAdminPageForAdd(AdminGeneraterInfo vo) throws IOException {
|
Map<String, InputStream> map = getAdminIncludePageMap();
|
String result = FreemarkerUtils.generateInputStream(new FormAddInfoVO.Builder().setAdminInfo(vo).build(), "admin/add.ftl", map);
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createAdminPageForList(AdminGeneraterInfo vo) throws IOException {
|
Map<String, InputStream> map = getAdminIncludePageMap();
|
String result = FreemarkerUtils.generateInputStream(new ListInfoVO.Builder().setAdminInfo(vo).build(), "admin/list.ftl", map);
|
System.out.println(result);
|
return result;
|
}
|
|
|
}
|