diff --git a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/v3/README.txt b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/v3/README.txt
new file mode 100644
index 0000000..e69de29
diff --git a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/v3/Vue3.txt b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/v3/Vue3.txt
new file mode 100644
index 0000000..b3cc1b4
--- /dev/null
+++ b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/v3/Vue3.txt
@@ -0,0 +1,552 @@
+
+
+
+
+
+$foreach(column in genTable.Columns)
+$set(labelName = "")
+$set(columnName = "")
+$set(numLabel = "")
+$if(column.IsQuery == true)
+ $set(columnName = column.CsharpFieldFl)
+ $if(column.ColumnComment != "")
+ $set(labelName = column.ColumnComment)
+ $else
+ $set(labelName = column.CsharpFieldFl)
+ $end
+ $if(column.CsharpType == "int" || column.CsharpType == "long")
+ $set(numLabel = ".number")
+ $end
+
+$if(column.HtmlType == "datetime")
+
+
+
+$elseif(column.HtmlType == "select" || column.HtmlType == "radio")
+
+
+
+
+
+$else
+
+
+
+$end
+$end
+$end
+
+
+ 搜索
+ 重置
+
+
+
+
+$if(replaceDto.ShowBtnAdd)
+
+ 新增
+
+$end
+$if(replaceDto.ShowBtnEdit)
+
+ 修改
+
+$end
+$if(replaceDto.ShowBtnDelete)
+
+ 删除
+
+$end
+$if(replaceDto.ShowBtnExport)
+
+ 导出
+
+$end
+
+
+
+
+
+
+
+$foreach(column in genTable.Columns)
+$set(labelName = "")
+$set(checkboxHtml = "")
+$set(showToolTipHtml = "")
+$set(columnName = column.CsharpFieldFl)
+$if(column.CsharpType == "string" || column.HtmlType == "datetime")
+$set(showToolTipHtml = " :show-overflow-tooltip=\"true\"")
+$end
+$if(column.ColumnComment != "")
+$set(labelName = column.ColumnComment)
+$else
+$set(labelName = column.CsharpFieldFl)
+$end
+$if(column.IsList == true)
+$if(column.HtmlType == "customInput" && column.IsPk == false)
+
+
+ {{scope.row.${columnName}}}
+
+
+
+$elseif(column.HtmlType == "imageUpload")
+
+
+
+
+
+
+
+$elseif(column.HtmlType == "checkbox" || column.HtmlType == "select" || column.HtmlType == "radio")
+
+
+$if(column.HtmlType == "checkbox")
+
+$else
+
+$end
+
+
+$else
+
+$end
+$end
+$end
+
+
+
+$if(replaceDto.ShowBtnEdit)
+
+$end
+$if(replaceDto.ShowBtnDelete)
+
+$end
+
+
+
+
+
+
+
+
+
+
+$foreach(column in genTable.Columns)
+$set(labelName = "")
+$set(labelDisabled = "")
+$set(columnName = column.CsharpFieldFl)
+$set(value = "item.dictValue")
+
+$if(column.ColumnComment != "")
+$set(labelName = column.ColumnComment)
+$else
+$set(labelName = column.CsharpFieldFl)
+$end
+$if(column.IsPk == true)
+$set(labelDisabled = ":disabled=true")
+$end
+$if(column.CsharpType == "int" || column.CsharpType == "long")
+ $set(value = "parseInt(item.dictValue)")
+$end
+
+$if(column.IsInsert == false && column.IsEdit == false)
+
+ {{form.${columnName}}}
+
+$elseif(column.IsPK || column.IsIncrement)
+
+
+$if(column.IsIncrement == false)
+
+$else
+
+$end
+
+
+$else
+$if(column.HtmlType == "inputNumber")
+
+
+
+
+
+$elseif(column.HtmlType == "datetime")
+
+
+
+
+
+$elseif(column.HtmlType == "imageUpload")
+
+
+
+
+
+$elseif(column.HtmlType == "fileUpload")
+
+
+
+
+
+$elseif(column.HtmlType == "radio")
+
+
+
+ {{item.dictLabel}}
+
+
+
+$elseif(column.HtmlType == "textarea")
+
+
+
+
+
+$elseif(column.HtmlType == "editor")
+
+
+
+
+
+$elseif(column.HtmlType == "select")
+
+
+
+
+
+
+
+$elseif(column.HtmlType == "checkbox")
+
+
+
+ {{item.dictLabel}}
+
+
+
+$else
+
+
+
+
+
+$end
+$end
+$end
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ZR.CodeGenerator/CodeGenerateTemplate.cs b/ZR.CodeGenerator/CodeGenerateTemplate.cs
index 03fcdbc..b3820d9 100644
--- a/ZR.CodeGenerator/CodeGenerateTemplate.cs
+++ b/ZR.CodeGenerator/CodeGenerateTemplate.cs
@@ -34,26 +34,23 @@ namespace ZR.CodeGenerator
sb.AppendLine(" ");
sb.AppendLine($" {{{{form.{columnName}}}}}");
sb.AppendLine(" ");
- return sb.ToString();
}
-
- //树
- if (genTable.TplCategory.Equals("tree", StringComparison.OrdinalIgnoreCase) && genTable.TreeParentCode != null && dbFieldInfo.CsharpField.Equals(genTable.TreeParentCode))
+ else if (genTable.TplCategory.Equals("tree", StringComparison.OrdinalIgnoreCase) && genTable.TreeParentCode != null && dbFieldInfo.CsharpField.Equals(genTable.TreeParentCode))
{
+ //树
sb.AppendLine(@" ");
sb.AppendLine($@" ");
sb.AppendLine($@" ");
sb.AppendLine(@" ");
sb.AppendLine(@" ");
- return sb.ToString();
}
//主键、非自增要插入,不能编辑
- if (dbFieldInfo.IsPk || dbFieldInfo.IsIncrement)
+ else if (dbFieldInfo.IsPk || dbFieldInfo.IsIncrement)
{
sb.AppendLine(" ");
sb.AppendLine($" ");
//主键非自增 显示input
- if (dbFieldInfo.IsPk && !dbFieldInfo.IsIncrement)
+ if (!dbFieldInfo.IsIncrement)
{
sb.AppendLine($" ");
}
@@ -64,105 +61,106 @@ namespace ZR.CodeGenerator
sb.AppendLine(" ");
sb.AppendLine(" ");
- return sb.ToString();
- }
- if (dbFieldInfo.HtmlType == GenConstants.HTML_INPUT_NUMBER)
- {
- //数字框
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_DATETIME)
- {
- //时间
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_IMAGE_UPLOAD)
- {
- //图片
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($@" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_FILE_UPLOAD)
- {
- //文件
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($@" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_RADIO)
- {
- //单选按钮
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine($" {{{{item.dictLabel}}}}");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_TEXTAREA)
- {
- //文本域
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_EDITOR)
- {
- //编辑器
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_SELECT)
- {
- //下拉框
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- }
- else if (dbFieldInfo.HtmlType == GenConstants.HTML_CHECKBOX)
- {
- //多选框
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine($" {{{{item.dictLabel}}}}");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
}
else
{
- string inputNumTxt = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? ".number" : "";
- sb.AppendLine(" ");
- sb.AppendLine($" ");
- sb.AppendLine($" ");
- sb.AppendLine(" ");
- sb.AppendLine(" ");
+ if (dbFieldInfo.HtmlType == GenConstants.HTML_INPUT_NUMBER)
+ {
+ //数字框
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_DATETIME)
+ {
+ //时间
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_IMAGE_UPLOAD)
+ {
+ //图片
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($@" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_FILE_UPLOAD)
+ {
+ //文件
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($@" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_RADIO)
+ {
+ //单选按钮
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" {{{{item.dictLabel}}}}");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_TEXTAREA)
+ {
+ //文本域
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_EDITOR)
+ {
+ //编辑器
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_SELECT)
+ {
+ //下拉框
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else if (dbFieldInfo.HtmlType == GenConstants.HTML_CHECKBOX)
+ {
+ //多选框
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" {{{{item.dictLabel}}}}");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
+ else
+ {
+ string inputNumTxt = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? ".number" : "";
+ sb.AppendLine(" ");
+ sb.AppendLine($" ");
+ sb.AppendLine($" ");
+ sb.AppendLine(" ");
+ sb.AppendLine(" ");
+ }
}
-
return sb.ToString();
}
diff --git a/ZR.CodeGenerator/CodeGeneratorTool.cs b/ZR.CodeGenerator/CodeGeneratorTool.cs
index 29805e2..55aaeea 100644
--- a/ZR.CodeGenerator/CodeGeneratorTool.cs
+++ b/ZR.CodeGenerator/CodeGeneratorTool.cs
@@ -85,6 +85,7 @@ namespace ZR.CodeGenerator
GenerateService(replaceDto, dto);
GenerateControllers(replaceDto, dto);
GenerateVueViews(replaceDto, dto);
+ GenerateVue3Views(replaceDto, dto);
GenerateVueJs(replaceDto, dto);
GenerateSql(replaceDto, dto);
@@ -201,7 +202,40 @@ namespace ZR.CodeGenerator
generateDto.GenCodes.Add(new GenCode(6, "index.vue", fullPath, result));
}
+ ///
+ /// vue3
+ ///
+ ///
+ ///
+ private static void GenerateVue3Views(ReplaceDto replaceDto, GenerateDto generateDto)
+ {
+ string fileName = string.Empty;
+ switch (generateDto.GenTable.TplCategory)
+ {
+ case "tree":
+ fileName = "TplTreeVue.txt";
+ break;
+ case "crud":
+ fileName = "Vue3.txt";
+ break;
+ case "select":
+ fileName = "TplVueSelect.txt";
+ break;
+ default:
+ break;
+ }
+ fileName = Path.Combine("v3", fileName);
+ var tpl = FileHelper.ReadJtTemplate(fileName);
+ //tpl.Set("vueQueryFormHtml", replaceDto.VueQueryFormHtml);
+ //tpl.Set("VueViewEditFormRuleContent", replaceDto.VueViewEditFormRuleContent);//添加、修改表单验证规则
+ //tpl.Set("VueViewFormContent", replaceDto.VueViewFormHtml);//添加、修改表单
+ //tpl.Set("VueViewListContent", replaceDto.VueViewListHtml);//查询 table列
+ var result = tpl.Render();
+ var fullPath = generateDto.IsPreview ? string.Empty : Path.Combine(generateDto.GenCodePath, "ZR.Vue3", "src", "views", generateDto.GenTable.ModuleName.FirstLowerCase(), $"{generateDto.GenTable.BusinessName.FirstUpperCase()}.vue");
+ //Console.WriteLine(result);
+ generateDto.GenCodes.Add(new GenCode(16, "index.vue", fullPath, result));
+ }
///
/// 生成vue页面api
///
@@ -466,7 +500,7 @@ namespace ZR.CodeGenerator
///
private static void InitJntTemplate(GenerateDto dto, ReplaceDto replaceDto)
{
- //Engine.Current.Clean();
+ Engine.Current.Clean();
dto.GenTable.Columns = dto.GenTable.Columns.OrderBy(x => x.Sort).ToList();
bool showCustomInput = dto.GenTable.Columns.Any(f => f.HtmlType.Equals(GenConstants.HTML_CUSTOM_INPUT, StringComparison.OrdinalIgnoreCase));
//jnt模板引擎全局变量