| | |
| | | private String systemPackagePath; |
| | | private String systemPackage; |
| | | private String itemName; |
| | | private String tableColumns; |
| | | |
| | | public void build() throws Exception { |
| | | init(); |
| | |
| | | break; |
| | | case "Index": |
| | | pass = react; |
| | | directory = frontendPrefixPath + "/src/pages/" + itemName + "/"; |
| | | directory = frontendPrefixPath + "/src/pages/" + itemName + "/" + simpleEntityName + "/"; |
| | | fileName = "index.jsx"; |
| | | break; |
| | | case "Edit": |
| | | pass = react; |
| | | directory = frontendPrefixPath + "/src/pages/" + itemName + "/components/"; |
| | | directory = frontendPrefixPath + "/src/pages/" + itemName + "/" + simpleEntityName + "/components/"; |
| | | fileName = "edit.jsx"; |
| | | break; |
| | | default: |
| | |
| | | } |
| | | } |
| | | itemName = packagePathSplit[packagePathSplit.length - 1]; |
| | | tableColumns = createTableColumns(); |
| | | } |
| | | |
| | | private String readFile(String template){ |
| | |
| | | .replaceAll("@\\{PRIMARYKEYCOLUMN0}", GeneratorUtils.firstCharConvert(primaryKeyColumn, true)) |
| | | .replaceAll("@\\{UPCASEMARJORCOLUMN}", GeneratorUtils.firstCharConvert(primaryKeyColumn, false)) |
| | | .replaceAll("@\\{SYSTEMPACKAGE}",systemPackage) |
| | | .replaceAll("@\\{TABLECOLUMNS}", tableColumns) |
| | | ; |
| | | writerFile.createNewFile(); |
| | | BufferedWriter writer=new BufferedWriter(new FileWriter(writerFile)); |
| | |
| | | /************************************** Index动态字段 *******************************************/ |
| | | /**********************************************************************************************/ |
| | | |
| | | private String createTableColumns() { |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (Column column : columns) { |
| | | if (column.isPrimaryKey() |
| | | || column.getHumpName().equals("deleted") |
| | | || column.getHumpName().equals("hostId") |
| | | ) { |
| | | continue; |
| | | } |
| | | sb.append(" {\n") |
| | | .append(" title: '").append(column.getComment()).append("',\n") |
| | | .append(" dataIndex: '"); |
| | | if ("Date".equals(column.getType()) || !Cools.isEmpty(column.getEnums()) || !Cools.isEmpty(column.getForeignKeyMajor())){ |
| | | // 时间、枚举 格式化 主键修饰 |
| | | sb.append(column.getHumpName()).append("\\$"); |
| | | } else { |
| | | sb.append(column.getHumpName()); |
| | | } |
| | | sb.append("',\n") |
| | | .append(" valueType: 'text',\n"); |
| | | if (column.isMajor()) { |
| | | sb.append(" copyable: true,\n"); |
| | | } |
| | | sb.append(" filterDropdown: (props) => <").append(getAntProFilterType(column)).append("\n") |
| | | .append(" name='").append(column.getHumpName()).append("'\n") |
| | | .append(" {...props}\n") |
| | | .append(" actionRef={actionRef}\n") |
| | | .append(" setSearchParam={setSearchParam}\n"); |
| | | if (!Cools.isEmpty(column.getEnums())) { |
| | | sb.append(" data={[\n"); |
| | | for (Map<String, Object> map : column.getEnums()) { |
| | | for (Map.Entry<String, Object> entry : map.entrySet()){ |
| | | sb.append(" { label: '").append(entry.getValue()).append("', value: ").append(entry.getKey()).append(" },\n"); |
| | | } |
| | | } |
| | | sb.append(" ]}\n"); |
| | | } |
| | | sb.append(" />,\n") |
| | | .append(" },\n"); |
| | | } |
| | | return sb.toString(); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | private String getAntProFilterType(Column column){ |
| | | String filter = "TextFilter"; |
| | | switch (column.getType()) { |
| | | case "Boolean": |
| | | filter = "TextFilter"; |
| | | break; |
| | | case "Short": |
| | | filter = "TextFilter"; |
| | | break; |
| | | case "Integer": |
| | | filter = "TextFilter"; |
| | | break; |
| | | case "Long": |
| | | filter = "TextFilter"; |
| | | break; |
| | | case "Double": |
| | | filter = "TextFilter"; |
| | | break; |
| | | case "String": |
| | | filter = "TextFilter"; |
| | | break; |
| | | case "Date": |
| | | filter = "DatetimeRangeFilter"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | if (!Cools.isEmpty(column.getEnums())) { |
| | | filter = "SelectFilter"; |
| | | } |
| | | if (!Cools.isEmpty(column.getForeignKey())) { |
| | | filter = "LinkFilter"; |
| | | } |
| | | return filter; |
| | | } |
| | | |
| | | /**********************************************************************************************/ |
| | | /************************************** Edit动态字段 ********************************************/ |