代码生成新增加导航查询

This commit is contained in:
不做码农
2022-05-08 14:08:18 +08:00
parent aba8768c44
commit 6ab0f86ca2
10 changed files with 67 additions and 36 deletions

View File

@@ -1,26 +1,22 @@
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Infrastructure;
using Infrastructure;
using Infrastructure.Attribute;
using Infrastructure.Enums;
using Infrastructure.Model;
using Mapster;
using Microsoft.AspNetCore.Mvc;
using ${options.ModelsNamespace}.Dto;
using ${options.ModelsNamespace}.Models;
using ${options.IServicsNamespace}.${options.SubNamespace}.I${options.SubNamespace}Service;
using ${options.ApiControllerNamespace}.Extensions;
using ${options.ApiControllerNamespace}.Filters;
using ZR.Common;
using Infrastructure.Extensions;
using System.Linq;
using ${options.BaseNamespace}.Common;
namespace ${options.ApiControllerNamespace}.Controllers
{
/// <summary>
/// ${genTable.functionName}Controller
///
///
/// @tableName ${genTable.TableName}
/// @author ${replaceDto.Author}
/// @date ${replaceDto.AddTime}
/// </summary>
@@ -97,14 +93,8 @@ $if(replaceDto.ShowBtnAdd)
//从 Dto 映射到 实体
var modal = parm.Adapt<${replaceDto.ModelTypeName}>().ToCreate(HttpContext);
var response = _${replaceDto.ModelTypeName}Service.Insert(modal, it => new
{
$foreach(item in genTable.Columns)
$if((item.IsInsert))
it.$item.CsharpField,
$end
${end}
});
var response = _${replaceDto.ModelTypeName}Service.Add${replaceDto.ModelTypeName}(modal);
return ToResponse(response);
}
$end

View File

@@ -19,5 +19,6 @@ namespace ${options.IServicsNamespace}.${options.SubNamespace}.I${options.SubNam
$if(genTable.TplCategory == "tree")
List<${replaceDto.ModelTypeName}> GetTreeList(${replaceDto.ModelTypeName}QueryDto parm);
$end
int Add${replaceDto.ModelTypeName}(${replaceDto.ModelTypeName} parm);
}
}

View File

@@ -23,7 +23,7 @@ $if(replaceDto.ShowBtnExport)
[EpplusTableColumn(Header = "$if(item.ColumnComment == "")${item.CsharpField}${else}${item.ColumnComment}${end}"$if(item.CsharpType == "DateTime"), NumberFormat = "yyyy-MM-dd HH:mm:ss"$end)]
$end
$if(item.IsPk || item.IsIncrement)
[SqlSugar.SugarColumn(IsPrimaryKey = ${item.IsPk.ToString().ToLower()}, IsIdentity = ${item.IsIncrement.ToString().ToLower()}$if(item.CsharpField.ToLower() != item.ColumnName.ToLower()), ColumnName = "$item.ColumnName"$end)]
[SugarColumn(IsPrimaryKey = ${item.IsPk.ToString().ToLower()}, IsIdentity = ${item.IsIncrement.ToString().ToLower()}$if(item.CsharpField.ToLower() != item.ColumnName.ToLower()), ColumnName = "$item.ColumnName"$end)]
$elseif(item.CsharpField.ToLower() != item.ColumnName.ToLower())
[SugarColumn(ColumnName = "$item.ColumnName")]
$end
@@ -35,5 +35,15 @@ $if(genTable.TplCategory == "tree")
[SugarColumn(IsIgnore = true)]
public List<${replaceDto.ModelTypeName}> Children { get; set; }
$end
$if(genTable.TplCategory == "subNav" && genTable.SubTable != null)
[Navigate(NavigateType.Dynamic, null)] //自定义关系映射
public ${genTable.SubTable.ClassName} Sub { get; set; }
$end
$if(genTable.TplCategory == "subNavMore" && genTable.SubTable != null)
[Navigate(NavigateType.Dynamic, null)] //自定义关系映射
public List<${genTable.SubTable.ClassName}> Sub { get; set; }
$end
}
}

View File

@@ -1,13 +1,13 @@
using Infrastructure;
using System;
using SqlSugar;
using System.Collections.Generic;
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;
using System.Collections.Generic;
namespace ${options.ServicesNamespace}.${options.SubNamespace}
{
@@ -20,10 +20,10 @@ namespace ${options.ServicesNamespace}.${options.SubNamespace}
[AppService(ServiceType = typeof(I${replaceDto.ModelTypeName}Service), ServiceLifetime = LifeTime.Transient)]
public class ${replaceDto.ModelTypeName}Service : BaseService<${replaceDto.ModelTypeName}>, I${replaceDto.ModelTypeName}Service
{
private readonly ${replaceDto.ModelTypeName}Repository _${replaceDto.ModelTypeName}repository;
private readonly ${replaceDto.ModelTypeName}Repository _${replaceDto.ModelTypeName}Repository;
public ${replaceDto.ModelTypeName}Service(${replaceDto.ModelTypeName}Repository repository)
{
_${replaceDto.ModelTypeName}repository = repository;
_${replaceDto.ModelTypeName}Repository = repository;
}
#region 业务逻辑代码
@@ -51,15 +51,17 @@ $elseif(column.CsharpType == "int" || column.CsharpType == "long")
$end
$end
$end
$if(genTable.SortField != "" && genTable.SortField != null)
var response = _${replaceDto.ModelTypeName}repository
.GetPages(predicate.ToExpression(), parm, it => it.${genTable.SortField}, "${genTable.SortType}");
$else
var response = _${replaceDto.ModelTypeName}repository
var response = _${replaceDto.ModelTypeName}Repository
.Queryable()
$if(genTable.SubTableName != "" && genTable.SubTableName != null)
.Includes(it => it.Sub.MappingField(z => z.${genTable.SubTableFkName}, () => it.${replaceDto.PKName}))
$end
$if(genTable.SortField != "" && genTable.SortField != null)
.OrderBy("${genTable.SortField} ${genTable.SortType}")
$end
.Where(predicate.ToExpression())
.ToPage(parm);
$end
return response;
}
@@ -85,12 +87,29 @@ $end
$end
$end
var response = _${replaceDto.ModelTypeName}repository.Queryable().Where(predicate.ToExpression())
var response = _${replaceDto.ModelTypeName}Repository.Queryable().Where(predicate.ToExpression())
.ToTree(it => it.Children, it => it.${genTable.TreeParentCode}, 0);
return response;
}
$end
/// <summary>
/// 添加${genTable.FunctionName}
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public int Add${replaceDto.ModelTypeName}(${replaceDto.ModelTypeName} parm)
{
var response = _${replaceDto.ModelTypeName}Repository.Insert(parm, it => new
{
${foreach(item in genTable.Columns)}
$if((item.IsInsert))
it.$item.CsharpField,
$end
${end}
});
return response;
}
#endregion
}
}