From 19eaa91b8d881873a02e44dceea234b44ae9ed5b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com>
Date: Tue, 28 Dec 2021 20:52:08 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81=E7=94=9F?=
=?UTF-8?q?=E6=88=90=E6=9F=A5=E8=AF=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ZR.Admin.WebApi/Extensions/EntityExtension.cs | 5 ++-
.../CodeGenTemplate/TplControllers.txt | 24 +---------
.../wwwroot/CodeGenTemplate/TplIService.txt | 4 +-
.../wwwroot/CodeGenTemplate/TplService.txt | 36 +++++++++++++++
ZR.CodeGenerator/CodeGenerateTemplate.cs | 44 ++++++++++++-------
ZR.CodeGenerator/CodeGeneratorTool.cs | 3 +-
6 files changed, 75 insertions(+), 41 deletions(-)
diff --git a/ZR.Admin.WebApi/Extensions/EntityExtension.cs b/ZR.Admin.WebApi/Extensions/EntityExtension.cs
index 1ec762a1..8308ca5e 100644
--- a/ZR.Admin.WebApi/Extensions/EntityExtension.cs
+++ b/ZR.Admin.WebApi/Extensions/EntityExtension.cs
@@ -22,7 +22,10 @@ namespace ZR.Admin.WebApi.Extensions
{
types.GetProperty("CreateTime").SetValue(source, DateTime.Now, null);
}
-
+ if (types.GetProperty("AddTime") != null)
+ {
+ types.GetProperty("AddTime").SetValue(source, DateTime.Now, null);
+ }
if (types.GetProperty("UpdateTime") != null)
{
types.GetProperty("UpdateTime").SetValue(source, DateTime.Now, null);
diff --git a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplControllers.txt b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplControllers.txt
index 0f7fd0ab..9ba7fe91 100644
--- a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplControllers.txt
+++ b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplControllers.txt
@@ -2,7 +2,6 @@
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
-using SqlSugar;
using Infrastructure;
using Infrastructure.Attribute;
using Infrastructure.Enums;
@@ -48,28 +47,7 @@ namespace ${options.ApiControllerNamespace}.Controllers
[ActionPermissionFilter(Permission = "${replaceDto.PermissionPrefix}:list")]
public IActionResult Query${replaceDto.ModelTypeName}([FromQuery] ${replaceDto.ModelTypeName}QueryDto parm)
{
- //开始拼装查询条件
- var predicate = Expressionable.Create<${replaceDto.ModelTypeName}>();
-
- //搜索条件查询语法参考Sqlsugar
-$foreach(column in genTable.Columns)
-$if(column.IsQuery)
-$if(column.CsharpType == "string")
- predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.${column.CsharpField}), ${codeTool.QueryExp(column.CsharpField, column.QueryType)};
-$elseif(column.CsharpType == "DateTime")
- predicate = predicate.AndIF(parm.Begin${column.CsharpField} == null, it => it.${column.CsharpField} >= DateTime.Now.AddDays(-1));
- predicate = predicate.AndIF(parm.Begin${column.CsharpField} != null, it => it.${column.CsharpField} >= parm.Begin${column.CsharpField});
- predicate = predicate.AndIF(parm.End${column.CsharpField} != null, it => it.${column.CsharpField} <= parm.End${column.CsharpField});
-$elseif(column.CsharpType == "int" || column.CsharpType == "long")
- predicate = predicate.AndIF(parm.${column.CsharpField} != null, ${codeTool.QueryExp(column.CsharpField, column.QueryType)};
-$end
-$end
-$end
-$if(genTable.SortField != "" && genTable.SortField != null)
- var response = _${replaceDto.ModelTypeName}Service.GetPages(predicate.ToExpression(), parm, x => x.${genTable.SortField}, "${genTable.SortType}");
-$else
- var response = _${replaceDto.ModelTypeName}Service.GetPages(predicate.ToExpression(), parm);
-$end
+ var response = _${replaceDto.ModelTypeName}Service.GetList(parm);
return SUCCESS(response);
}
diff --git a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplIService.txt b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplIService.txt
index fcdbf97a..714ee091 100644
--- a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplIService.txt
+++ b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplIService.txt
@@ -1,7 +1,8 @@
using System;
+using ${options.ModelsNamespace};
+using ${options.ModelsNamespace}.Dto;
using ${options.ModelsNamespace}.Models;
-
namespace ${options.IServicsNamespace}.${options.SubNamespace}.I${options.SubNamespace}Service
{
///
@@ -12,5 +13,6 @@ namespace ${options.IServicsNamespace}.${options.SubNamespace}.I${options.SubNam
///
public interface I${replaceDto.ModelTypeName}Service : IBaseService<${replaceDto.ModelTypeName}>
{
+ PagedInfo<${replaceDto.ModelTypeName}> GetList(${replaceDto.ModelTypeName}QueryDto parm);
}
}
diff --git a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt
index 2ae74209..92528e35 100644
--- a/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt
+++ b/ZR.Admin.WebApi/wwwroot/CodeGenTemplate/TplService.txt
@@ -1,8 +1,12 @@
using Infrastructure;
using Infrastructure.Attribute;
+using ${options.ModelsNamespace};
+using ${options.ModelsNamespace}.Dto;
using ${options.ModelsNamespace}.Models;
using ${options.IRepositoriesNamespace};
using ${options.IServicsNamespace}.${options.SubNamespace}.I${options.SubNamespace}Service;
+using System;
+using SqlSugar;
namespace ${options.ServicesNamespace}.${options.SubNamespace}
{
@@ -23,6 +27,38 @@ namespace ${options.ServicesNamespace}.${options.SubNamespace}
#region 业务逻辑代码
+ ///
+ /// 查询${genTable.FunctionName}列表
+ ///
+ ///
+ ///
+ public PagedInfo<${replaceDto.ModelTypeName}> GetList(${replaceDto.ModelTypeName}QueryDto parm)
+ {
+ //开始拼装查询条件
+ var predicate = Expressionable.Create<${replaceDto.ModelTypeName}>();
+
+ //搜索条件查询语法参考Sqlsugar
+$foreach(column in genTable.Columns)
+$if(column.IsQuery)
+$if(column.CsharpType == "string")
+ predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.${column.CsharpField}), ${codeTool.QueryExp(column.CsharpField, column.QueryType)};
+$elseif(column.CsharpType == "DateTime")
+ predicate = predicate.AndIF(parm.Begin${column.CsharpField} == null, it => it.${column.CsharpField} >= DateTime.Now.AddDays(-1));
+ predicate = predicate.AndIF(parm.Begin${column.CsharpField} != null, it => it.${column.CsharpField} >= parm.Begin${column.CsharpField});
+ predicate = predicate.AndIF(parm.End${column.CsharpField} != null, it => it.${column.CsharpField} <= parm.End${column.CsharpField});
+$elseif(column.CsharpType == "int" || column.CsharpType == "long")
+ predicate = predicate.AndIF(parm.${column.CsharpField} != null, ${codeTool.QueryExp(column.CsharpField, column.QueryType)};
+$end
+$end
+$end
+$if(genTable.SortField != "" && genTable.SortField != null)
+ var response = Queryable().GetPages(predicate.ToExpression(), parm, x => x.${genTable.SortField}, "${genTable.SortType}");
+$else
+ var response = Queryable().Where(predicate.ToExpression()).ToPage(parm);
+$end
+ return response;
+ }
+
#endregion
}
}
\ No newline at end of file
diff --git a/ZR.CodeGenerator/CodeGenerateTemplate.cs b/ZR.CodeGenerator/CodeGenerateTemplate.cs
index 6e6933e2..bd4a0226 100644
--- a/ZR.CodeGenerator/CodeGenerateTemplate.cs
+++ b/ZR.CodeGenerator/CodeGenerateTemplate.cs
@@ -1,7 +1,6 @@
using System;
using System.Linq;
using System.Text;
-using ZR.CodeGenerator.Model;
using ZR.Model.System.Generate;
namespace ZR.CodeGenerator
@@ -98,10 +97,10 @@ namespace ZR.CodeGenerator
sb.AppendLine(" ");
sb.AppendLine($" ");
sb.AppendLine($" ");
- if (string.IsNullOrEmpty(dbFieldInfo.DictType))
- {
- sb.AppendLine(" 请选择字典生成");
- }
+ //if (string.IsNullOrEmpty(dbFieldInfo.DictType))
+ //{
+ // sb.AppendLine(" 请选择字典生成");
+ //}
sb.AppendLine($" {{{{item.dictLabel}}}}");
sb.AppendLine(" ");
sb.AppendLine(" ");
@@ -131,10 +130,10 @@ namespace ZR.CodeGenerator
sb.AppendLine(" ");
sb.AppendLine($" ");
sb.AppendLine($" ");
- if (string.IsNullOrEmpty(dbFieldInfo.DictType))
- {
- sb.AppendLine($" ");
- }
+ //if (string.IsNullOrEmpty(dbFieldInfo.DictType))
+ //{
+ // sb.AppendLine($" ");
+ //}
sb.AppendLine($" ");
sb.AppendLine(" ");
sb.AppendLine(" ");
@@ -146,10 +145,10 @@ namespace ZR.CodeGenerator
sb.AppendLine(" ");
sb.AppendLine($" ");
sb.AppendLine($" ");
- if (string.IsNullOrEmpty(dbFieldInfo.DictType))
- {
- sb.AppendLine($" 请选择字典生成");
- }
+ //if (string.IsNullOrEmpty(dbFieldInfo.DictType))
+ //{
+ // sb.AppendLine($" 请选择字典生成");
+ //}
sb.AppendLine($" {{{{item.dictLabel}}}}");
sb.AppendLine(" ");
sb.AppendLine(" ");
@@ -215,7 +214,7 @@ namespace ZR.CodeGenerator
{
string columnName = dbFieldInfo.CsharpFieldFl;
string label = CodeGeneratorTool.GetLabelName(dbFieldInfo.ColumnComment, columnName);
- string showToolTip = dbFieldInfo.CsharpType == "string" ? ":show-overflow-tooltip=\"true\"" : "";
+ string showToolTip = ShowToolTip(dbFieldInfo);
string formatter = GetFormatter(dbFieldInfo.HtmlType, columnName);
StringBuilder sb = new StringBuilder();
//自定义排序字段
@@ -254,7 +253,7 @@ namespace ZR.CodeGenerator
}
else if (dbFieldInfo.IsList)
{
- sb.AppendLine($" ");
+ sb.AppendLine($" ");
}
return sb.ToString();
}
@@ -309,5 +308,20 @@ namespace ZR.CodeGenerator
}
return "";
}
+
+ ///
+ /// 超出隐藏
+ ///
+ ///
+ ///
+ public static string ShowToolTip(GenTableColumn column)
+ {
+ if (column.CsharpType.Equals("string") ||
+ column.HtmlType.Equals(GenConstants.HTML_DATETIME))
+ {
+ return $" :show-overflow-tooltip=\"true\"";
+ }
+ return "";
+ }
}
}
diff --git a/ZR.CodeGenerator/CodeGeneratorTool.cs b/ZR.CodeGenerator/CodeGeneratorTool.cs
index f4e1ea4f..c2e4972c 100644
--- a/ZR.CodeGenerator/CodeGeneratorTool.cs
+++ b/ZR.CodeGenerator/CodeGeneratorTool.cs
@@ -1,4 +1,5 @@
using Infrastructure;
+using Infrastructure.Extensions;
using JinianNet.JNTemplate;
using SqlSugar;
using System;
@@ -384,7 +385,7 @@ namespace ZR.CodeGenerator
TableId = genTable.TableId,
TableName = genTable.TableName,
CsharpType = GetCSharpDatatype(column.DataType),
- CsharpField = FirstUpperCase(column.DbColumnName),//TODO 优化下划线处理
+ CsharpField = FirstUpperCase(column.DbColumnName.UnderScoreToCamelCase()),
IsRequired = !column.IsNullable,
IsIncrement = column.IsIdentity,
Create_by = genTable.Create_by,