UNIVPLMDataIntegration/Admin.NET/Admin.NET.Web.Entry/wwwroot/template/PartialService_Service.cs.vm

76 lines
3.0 KiB
Plaintext

// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
//
// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
//
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
using Microsoft.AspNetCore.Http;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
@{
string joinTableName = "u";
Dictionary<string, int> definedObjects = new Dictionary<string, int>();
bool haveLikeCdt = false;
string RemoteField="";
string PKName="";
foreach (var column in Model.TableField){
if (column.QueryWhether == "Y" && column.QueryType == "like"){
haveLikeCdt = true;
}
if(column.RemoteVerify){
RemoteField=@column.PropertyName;
}
if(column.ColumnKey == "True"){
PKName=column.PropertyName;
}
}
}
@if(@Model.NameSpace != "Admin.NET.Core"){
@:using Admin.NET.Core;
}
namespace @Model.NameSpace;
/// <summary>
/// 扩展@(@Model.BusName)服务
/// </summary>
public partial class @(@Model.ClassName)Service
{
/// <summary>
/// 获取列表 🔖
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[ApiDescriptionSettings(Name = "GetTreeList", Description = "获取列表", Order = 1100), HttpPost]
[DisplayName("获取列表")]
public async Task<List<@(@Model.ClassName)Output>> GetTreeList(Page@(@Model.ClassName)Input input)
{
@if(Model.TabType=="Tree"){
@:var list = await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).OrderBuilder(input).ToTreeAsync(u => u.Children, u => u.@(@Model.TreeKey), input.Id);
@://var list = await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).OrderBuilder(input).ToListAsync();//非树形结构表
@:var md = await _@(@Model.LowerClassName)Rep.AsQueryable().Where(u => u.Id == input.Id).Select<@(@Model.ClassName)Output>().FirstAsync();
@:if (md == null) return list;
@:
@:md.Children = list;
@:list = [md];
@:return list;
}else{
@://return await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).OrderBuilder(input).ToTreeAsync(u => u.Children, u => u.@(@Model.TreeKey), input.Id));//树形结构表
@:return await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).OrderBuilder(input).ToListAsync();
}
}
}
/// <summary>
/// 扩展@(@Model.BusName)中间件
/// </summary>
public partial class @(@Model.ClassName)Mid
{
}
@{
string LowerFirstLetter(string text)
{
return text.ToString()[..1].ToLower() + text[1..]; // 首字母小写
}
}