| New file |
| | |
| | | package com.java110.code.web; |
| | | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.java110.code.back.BaseGenerator; |
| | | import com.java110.code.util.FileUtilBase; |
| | | |
| | | /** |
| | | * @ClassName GeneratorChooseComponent |
| | | * @Description TODO |
| | | * @Author wuxw |
| | | * @Date 2019/7/27 10:26 |
| | | * @Version 1.0 |
| | | * add by wuxw 2019/7/27 |
| | | **/ |
| | | public class GeneratorChooseComponent extends BaseGenerator { |
| | | public void generator(JSONObject data) throws Exception { |
| | | |
| | | //处理组件 |
| | | generatorComponentHtml(data); |
| | | generatorComponentJs(data); |
| | | //generatorComponentJava(data); |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 生成 html js java 类 |
| | | * |
| | | * @param data |
| | | */ |
| | | private void generatorComponentHtml(JSONObject data) { |
| | | |
| | | StringBuffer sb = readFile(GeneratorStart.class.getResource("/web/choose/choose.html").getFile()); |
| | | String fileContext = sb.toString(); |
| | | |
| | | fileContext = super.replaceTemplateContext(fileContext, data); |
| | | |
| | | // 处理 th 信息 |
| | | |
| | | StringBuffer thSb = new StringBuffer(); |
| | | StringBuffer tdSb = new StringBuffer(); |
| | | thSb.append(" <th class=\"text-center\">" + data.getString("templateKeyName") + "</th>\n"); |
| | | |
| | | tdSb.append(" <td class=\"text-center\">{{" + data.getString("templateCode") + "." + data.getString("templateKey") + "}}</td>\n"); |
| | | |
| | | JSONArray columns = data.getJSONArray("columns"); |
| | | for (int columnIndex = 0; columnIndex < columns.size(); columnIndex++) { |
| | | JSONObject column = columns.getJSONObject(columnIndex); |
| | | thSb.append(" <th class=\"text-center\">" + column.getString("cnCode") + "</th>\n"); |
| | | |
| | | tdSb.append(" <td class=\"text-center\">{{" + data.getString("templateCode") + "." + column.getString("code") + "}}</td>\n"); |
| | | } |
| | | thSb.append(" <th class=\"text-center\">操作</th>\n"); |
| | | |
| | | fileContext = fileContext.replace("@@columnsCnCode@@", thSb.toString()) |
| | | .replace("@@columnsName@@", tdSb.toString()); |
| | | |
| | | |
| | | String writePath = this.getClass().getResource("/").getPath() |
| | | + "out/web/components/" + data.getString("directories") + "/choose" + toUpperCaseFirstOne(data.getString("templateCode")) + "/choose" + toUpperCaseFirstOne(data.getString("templateCode")) + ".html"; |
| | | System.out.printf("writePath: " + writePath); |
| | | writeFile(writePath, |
| | | fileContext); |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 生成 html js java 类 |
| | | * |
| | | * @param data |
| | | */ |
| | | private void generatorComponentJs(JSONObject data) { |
| | | |
| | | StringBuffer sb = readFile(GeneratorStart.class.getResource("/web/choose/choose.js").getFile()); |
| | | String fileContext = sb.toString(); |
| | | |
| | | fileContext = super.replaceTemplateContext(fileContext, data); |
| | | |
| | | String writePath = this.getClass().getResource("/").getPath() |
| | | + "out/web/components/" + data.getString("directories") + "/choose" + toUpperCaseFirstOne(data.getString("templateCode")) + "/choose" + toUpperCaseFirstOne(data.getString("templateCode")) + ".js"; |
| | | System.out.printf("writePath: " + writePath); |
| | | writeFile(writePath, |
| | | fileContext); |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 生成 html js java 类 |
| | | * |
| | | * @param data |
| | | */ |
| | | private void generatorComponentJava(JSONObject data) throws Exception { |
| | | |
| | | StringBuffer sb = readFile(GeneratorStart.class.getResource("/web/choose/ChooseComponent.java").getFile()); |
| | | String fileContext = sb.toString(); |
| | | |
| | | fileContext = super.replaceTemplateContext(fileContext, data); |
| | | |
| | | String writePath = this.getClass().getResource("/").getPath() |
| | | + "out/web/component/java/" + data.getString("templateCode") + "/Choose" + toUpperCaseFirstOne(data.getString("templateCode")) + "Component.java"; |
| | | System.out.printf("writePath: " + writePath); |
| | | writeFile(writePath, |
| | | fileContext); |
| | | //复制生成的文件到对应分区目录下 |
| | | FileUtilBase.copyfile(writePath, "FrontService\\src\\main\\java\\com\\java110\\front\\components\\" + data.getString("templateCode") + "/Choose" + toUpperCaseFirstOne(data.getString("templateCode")) + "Component.java"); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | } |