4835 lines
238 KiB
Plaintext
4835 lines
238 KiB
Plaintext
using JNPF.Common.Core.Manager;
|
|
using JNPF.Common.Models;
|
|
@if(Model.IsExport)
|
|
{
|
|
@:using JNPF.ClayObject;
|
|
@:using JNPF.Common.Models.NPOI;
|
|
@:using JNPF.Common.Core.Manager.Files;
|
|
}
|
|
using JNPF.Common.Manager;
|
|
using JNPF.Common.CodeGen.DataParsing;
|
|
using JNPF.Common.Enums;
|
|
using JNPF.Common.Extension;
|
|
using JNPF.Common.Filter;
|
|
using JNPF.Common.Security;
|
|
using JNPF.DatabaseAccessor;
|
|
using JNPF.DependencyInjection;
|
|
using JNPF.DynamicApiController;
|
|
using JNPF.FriendlyException;
|
|
using JNPF.Systems.Entitys.System;
|
|
using JNPF.Systems.Entitys.Permission;
|
|
using JNPF.Systems.Interfaces.System;
|
|
using JNPF.@(@Model.NameSpace).Entitys.Dto.@Model.ClassName;
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@*循环出副表的命名空间*@
|
|
@:using JNPF.@(@Model.NameSpace).Entitys.Dto.@(@table.ClassName);
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@*循环出子表的命名空间*@
|
|
@:using JNPF.@(@Model.NameSpace).Entitys.Dto.@(@table.ClassName);
|
|
}
|
|
using JNPF.@(@Model.NameSpace).Entitys;
|
|
using JNPF.@(@Model.NameSpace).Interfaces;
|
|
using Mapster;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using SqlSugar;
|
|
|
|
namespace JNPF.@(@Model.NameSpace);
|
|
|
|
/// <summary>
|
|
/// 业务实现:@(@Model.BusName).
|
|
/// </summary>
|
|
[ApiDescriptionSettings(Tag = "@(@Model.NameSpace)", Name = "@Model.ClassName", Order = 200)]
|
|
[Route("api/@(@Model.NameSpace)/[controller]")]
|
|
public class @(@Model.ClassName)Service : I@(@Model.ClassName)Service, IDynamicApiController, ITransient
|
|
{
|
|
/// <summary>
|
|
/// 服务基础仓储.
|
|
/// </summary>
|
|
private readonly ISqlSugarRepository<@(@Model.ClassName)Entity> _repository;
|
|
@if(Model.IsBillRule)
|
|
{
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 单据规则服务.
|
|
@:/// </summary>
|
|
@:private readonly IBillRullService _billRullService;
|
|
}
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 数据库管理.
|
|
@:/// </summary>
|
|
@:private readonly IDataBaseManager _dataBaseManager;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 数据接口服务.
|
|
/// </summary>
|
|
private readonly IDataInterfaceService _dataInterfaceService;
|
|
|
|
/// <summary>
|
|
/// 缓存管理.
|
|
/// </summary>
|
|
private readonly ICacheManager _cacheManager;
|
|
|
|
/// <summary>
|
|
/// 通用数据解析.
|
|
/// </summary>
|
|
private readonly ControlParsing _controlParsing;
|
|
|
|
/// <summary>
|
|
/// 用户管理.
|
|
/// </summary>
|
|
private readonly IUserManager _userManager;
|
|
@if(Model.IsExport)
|
|
{
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 文件服务.
|
|
@:/// </summary>
|
|
@:private readonly IFileManager _fileManager;
|
|
}
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 客户端.
|
|
@:/// </summary>
|
|
@:private static SqlSugarScope? _sqlSugarClient;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 初始化一个<see cref="@(@Model.ClassName)Service"/>类型的新实例.
|
|
/// </summary>
|
|
public @(@Model.ClassName)Service(
|
|
ISqlSugarRepository<@(@Model.ClassName)Entity> repository,
|
|
@if(Model.IsBillRule)
|
|
{
|
|
@:IBillRullService billRullService,
|
|
}
|
|
IDataInterfaceService dataInterfaceService,
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:IDataBaseManager dataBaseManager,
|
|
@:ISqlSugarClient context,
|
|
}
|
|
@if(Model.IsExport)
|
|
{
|
|
@:IFileManager fileManager,
|
|
}
|
|
ICacheManager cacheManager,
|
|
ControlParsing controlParsing,
|
|
IUserManager userManager)
|
|
{
|
|
_repository = repository;
|
|
@if(Model.IsBillRule)
|
|
{
|
|
@:_billRullService = billRullService;
|
|
}
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:_dataBaseManager = dataBaseManager;
|
|
@:_sqlSugarClient = (SqlSugarScope)context;
|
|
}
|
|
_dataInterfaceService = dataInterfaceService;
|
|
@if(Model.IsExport)
|
|
{
|
|
@:_fileManager = fileManager;
|
|
}
|
|
_cacheManager = cacheManager;
|
|
_controlParsing = controlParsing;
|
|
_userManager = userManager;
|
|
}
|
|
@foreach(var item in Model.Function)
|
|
{
|
|
@switch(item.FullName)
|
|
{
|
|
@*信息方法*@
|
|
case "info":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 获取@(@Model.BusName).
|
|
@:/// </summary>
|
|
@:/// <param name="id">主键值.</param>
|
|
@:/// <returns></returns>
|
|
@:[HttpGet("{id}")]
|
|
@:public async Task<dynamic> GetInfo(@(Model.PrimaryKeyPolicy == 1 ? "string" : "long") id)
|
|
@:{
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
@:var output = await _sqlSugarClient.Queryable<@(@Model.ClassName)Entity>()
|
|
}else{
|
|
@:var output = await _repository.AsQueryable()
|
|
}
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.Includes(x => x.@(@table.LowerClassName))
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:.Includes(x => x.@(@table.LowerClassName)List)
|
|
}
|
|
@:.FirstAsync(a => a.@(@Model.PrimaryKey).Equals(id));
|
|
@:
|
|
@*获取出副表数据*@
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:var auxiliay@(@table.ClassName) = output.@(@table.LowerClassName).Adapt<@(@table.ClassName)InfoOutput>();
|
|
}
|
|
@:
|
|
@:var data = output.Adapt<@(@Model.ClassName)InfoOutput>();
|
|
@*合并*@
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:data = ConcurrentDictionaryExtensions.AssignmentObject<@(@Model.ClassName)InfoOutput, @(@table.ClassName)InfoOutput>(data, auxiliay@(@table.ClassName)).Adapt<@(@Model.ClassName)InfoOutput>();
|
|
}
|
|
@:
|
|
@:var list = new List<@(@Model.ClassName)InfoOutput>() { data };
|
|
@:await _repository.AsSugarClient().ThenMapperAsync(list, async item =>
|
|
@:{
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@{var parameterName = string.Empty;}
|
|
@switch(column.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @column.TableName + "_jnpf_" + @column.LowerColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @column.LowerColumnName;}
|
|
break;
|
|
}
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "modifyUser":
|
|
case "createUser":
|
|
@:// @column.ColumnComment
|
|
@:var @(parameterName)Data = await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName) = @(parameterName)Data != null ? string.Format("{0}/{1}", @(parameterName)Data.RealName, @(parameterName)Data.Account) : null;
|
|
@:
|
|
break;
|
|
case "currOrganize":
|
|
@:// @column.ColumnComment
|
|
@:var @(parameterName)Data = await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName) = @(parameterName)Data != null ? @(parameterName)Data.FullName : null;
|
|
@:
|
|
break;
|
|
case "currPosition":
|
|
@:// @column.ColumnComment
|
|
@:var @(parameterName)Data = await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName) = @(parameterName)Data != null ? @(parameterName)Data.FullName : null;
|
|
@:
|
|
break;
|
|
}
|
|
}
|
|
@:});
|
|
@:
|
|
@:return list.FirstOrDefault();
|
|
@:}
|
|
break;
|
|
@*新增*@
|
|
case "add":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 新建@(@Model.BusName).
|
|
@:/// </summary>
|
|
@:/// <param name="input">参数.</param>
|
|
@:/// <returns></returns>
|
|
@:[HttpPost("")]
|
|
@:[UnitOfWork]
|
|
@:public async Task Create([FromBody] @(@Model.ClassName)CrInput input)
|
|
@:{
|
|
@:var entity = input.Adapt<@(@Model.ClassName)Entity>();
|
|
@if(Model.PrimaryKeyPolicy == 1)
|
|
{
|
|
@:entity.@(@Model.PrimaryKey) = SnowflakeIdHelper.NextId();
|
|
}
|
|
@if(Model.ConcurrencyLock)
|
|
{
|
|
@:entity.Version = 0;
|
|
}
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(!column.IsAuxiliary)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "createTime":
|
|
@:entity.@column.ColumnName = DateTime.Now;
|
|
break;
|
|
case "createUser":
|
|
@:entity.@column.ColumnName = _userManager.UserId;
|
|
break;
|
|
case "currPosition":
|
|
@:entity.@column.ColumnName = _userManager.User.PositionId;
|
|
break;
|
|
case "currOrganize":
|
|
@:entity.@column.ColumnName = _userManager.User.OrganizeId;
|
|
break;
|
|
case "billRule":
|
|
@:entity.@column.ColumnName = await _billRullService.GetBillNumber("@(@column.Rule)");
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@*跨库与主表验证唯一值*@
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
}
|
|
@if(Model.IsUnique)
|
|
{
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(column.IsUnique && !column.IsAuxiliary)
|
|
{
|
|
@:
|
|
@:if(await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + @Model.ClassName + "Entity>()." : "_repository.Is")AnyAsync(it => it.@(@column.ColumnName).Equals(input.@(@column.LowerColumnName))))
|
|
@:throw Oops.Bah("@(@column.ControlLabel)不能重复");
|
|
}
|
|
}
|
|
}
|
|
@*副表循环*@
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:
|
|
@:var auxiliay@(@table.ClassName) = input.Adapt<@(@table.ClassName)CrInput>().Adapt<@(@table.ClassName)Entity>();
|
|
@if(Model.PrimaryKeyPolicy == 1)
|
|
{
|
|
@:auxiliay@(@table.ClassName).@(@table.PrimaryKey) = SnowflakeIdHelper.NextId();
|
|
}
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(column.IsAuxiliary && column.TableName == table.OriginalTableName)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "createTime":
|
|
@:auxiliay@(@table.ClassName).@column.ColumnName = DateTime.Now;
|
|
break;
|
|
case "createUser":
|
|
@:auxiliay@(@table.ClassName).@column.ColumnName = _userManager.UserId;
|
|
break;
|
|
case "currPosition":
|
|
@:auxiliay@(@table.ClassName).@column.ColumnName = _userManager.User.PositionId;
|
|
break;
|
|
case "currOrganize":
|
|
@:auxiliay@(@table.ClassName).@column.ColumnName = _userManager.User.OrganizeId;
|
|
break;
|
|
case "billRule":
|
|
@:auxiliay@(@table.ClassName).@column.ColumnName = await _billRullService.GetBillNumber("@(@column.Rule)");
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@*副表验证唯一值*@
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(column.IsAuxiliary && column.TableName == table.OriginalTableName && column.IsUnique)
|
|
{
|
|
@:
|
|
@:if(await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Queryable<@(@table.ClassName)Entity>().AnyAsync(it => it.@(@column.ColumnName).Equals(auxiliay@(@table.ClassName).@(@column.ColumnName))))
|
|
@:throw Oops.Bah("@(@column.ControlLabel)不能重复");
|
|
}
|
|
}
|
|
@:entity.@(@table.LowerClassName) = auxiliay@(@table.ClassName);
|
|
}
|
|
@*子表循环*@
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:
|
|
@:var @(@table.LowerClassName)EntityList = input.@(@table.ControlModel).Adapt<List<@(@table.ClassName)Entity>>();
|
|
@*子表验证唯一值*@
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@if(column.IsUnique)
|
|
{
|
|
@:
|
|
@:if(@(@table.LowerClassName)EntityList != null && @(@table.LowerClassName)EntityList.GroupBy(it => it.@(@column.ColumnName)).Any(g => g.Count() > 1))
|
|
@:throw Oops.Bah("@(@column.ControlLabel)不能重复");
|
|
}
|
|
}
|
|
@:
|
|
@:if(@(@table.LowerClassName)EntityList != null)
|
|
@:{
|
|
@:foreach (var item in @(@table.LowerClassName)EntityList)
|
|
@:{
|
|
@if(Model.PrimaryKeyPolicy == 1)
|
|
{
|
|
@:item.@(@table.PrimaryKey) = SnowflakeIdHelper.NextId();
|
|
}
|
|
@foreach(var childer in table.ChilderColumnConfigList)
|
|
{
|
|
@*使用Switch 为后续添加控件方便*@
|
|
@switch(childer.jnpfKey)
|
|
{
|
|
case "billRule":
|
|
@:item.@(childer.ColumnName) = await _billRullService.GetBillNumber("@(@childer.Rule)");
|
|
break;
|
|
}
|
|
}
|
|
@:}
|
|
@:
|
|
@:entity.@(@table.LowerClassName)List = @(@table.LowerClassName)EntityList;
|
|
@:}
|
|
@:
|
|
}
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").InsertNav(entity)
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.Include(it => it.@(@table.LowerClassName))
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:.Include(it => it.@(@table.LowerClassName)List)
|
|
}
|
|
@:.ExecuteCommandAsync();
|
|
@:}
|
|
break;
|
|
@*编辑*@
|
|
case "edit":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 更新@(@Model.BusName).
|
|
@:/// </summary>
|
|
@:/// <param name="id">主键值.</param>
|
|
@:/// <param name="input">参数.</param>
|
|
@:/// <returns></returns>
|
|
@:[HttpPut("{id}")]
|
|
@:[UnitOfWork]
|
|
@:public async Task Update(@(Model.PrimaryKeyPolicy == 1 ? "string" : "long") id, [FromBody] @(@Model.ClassName)UpInput input)
|
|
@:{
|
|
@:var entity = input.Adapt<@(@Model.ClassName)Entity>();
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(!column.IsAuxiliary)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "modifyTime":
|
|
@:entity.@column.ColumnName = DateTime.Now;
|
|
break;
|
|
case "modifyUser":
|
|
@:entity.@column.ColumnName = _userManager.UserId;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@:
|
|
@*填充副表数据*@
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:var auxiliay@(@table.ClassName) = input.Adapt<@(@table.ClassName)CrInput>().Adapt<@(@table.ClassName)Entity>();
|
|
@:auxiliay@(@table.ClassName).@(@table.TableField) = entity.@(@table.RelationField);
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(column.IsAuxiliary && column.TableName == table.OriginalTableName)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "modifyTime":
|
|
@:auxiliay@(@table.ClassName).@column.ColumnName = DateTime.Now;
|
|
break;
|
|
case "modifyUser":
|
|
@:auxiliay@(@table.ClassName).@column.ColumnName = _userManager.UserId;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@:
|
|
}
|
|
@*跨库*@
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
@:
|
|
}
|
|
@*主表唯一值验证*@
|
|
@if(Model.IsUnique)
|
|
{
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(!column.IsAuxiliary && column.IsUnique)
|
|
{
|
|
@:if (await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + Model.MainTable +"Entity>()." : "_repository.Is")AnyAsync(it => it.@(@column.ColumnName).Equals(input.@(@column.LowerColumnName)) && !it.@(@Model.PrimaryKey).Equals(id)))
|
|
@:throw Oops.Bah("@(@column.ControlLabel)不能重复");
|
|
@:
|
|
}
|
|
}
|
|
}
|
|
@*副表唯一值验证*@
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@*跨库*@
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(column.IsAuxiliary && column.IsUnique && column.TableName == table.OriginalTableName)
|
|
{
|
|
@:if (await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + @Model.ClassName + "Entity>()" : "_repository.AsSugarClient().Queryable<" + @table.ClassName + "Entity>()").AnyAsync(it => it.@(@column.ColumnName).Equals(auxiliay@(@table.ClassName).@(@column.ColumnName)) && !it.@(@table.TableField).Equals(entity.@(@table.RelationField))))
|
|
@:throw Oops.Bah("@(@column.ControlLabel)不能重复");
|
|
@:
|
|
}
|
|
}
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:// 新增@(@table.TableComment)新数据
|
|
@:var @(@table.LowerClassName)EntityList = new List<@(@table.ClassName)Entity>();
|
|
@:
|
|
}
|
|
@:if(!_userManager.UserOrigin.Equals("pc"))
|
|
@:{
|
|
@*子表唯一值验证*@
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:// 移除子表内本次编辑删除数据
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Deleteable<@(@table.ClassName)Entity>().Where(it => it.@(@table.TableField) == entity.@(@table.RelationField) && !input.@(@table.ControlModel).Select(a => a.@(@table.LowerPrimaryKey)).ToList().Contains(it.@(@table.PrimaryKey))).ExecuteCommandAsync();
|
|
@:
|
|
@:// 新增@(@table.TableComment)新数据
|
|
@:@(@table.LowerClassName)EntityList = input.@(@table.ControlModel).Adapt<List<@(@table.ClassName)Entity>>();
|
|
@if(table.IsUnique)
|
|
{
|
|
@:if(@(@table.LowerClassName)EntityList != null)
|
|
@:{
|
|
@:foreach (var item in @(@table.LowerClassName)EntityList)
|
|
@:{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@if(column.IsUnique)
|
|
{
|
|
@:if(await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Queryable<@(@table.ClassName)Entity>().AnyAsync(it => it.@(@column.ColumnName) == item.@(@column.ColumnName) && it.@(@table.TableField).Equals(entity.@(@table.RelationField)) && it.@(@table.PrimaryKey) != item.@(@table.PrimaryKey)))
|
|
@:throw Oops.Bah("@(@column.ControlLabel)不能重复");
|
|
@:
|
|
}
|
|
}
|
|
@:}
|
|
@:}
|
|
@:
|
|
}
|
|
}
|
|
@:}
|
|
@:
|
|
@:try
|
|
@:{
|
|
@*修改主表数据*@
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient." : "_repository.As")Updateable(entity)
|
|
@:.IgnoreColumns(ignoreAllNullColumns: true)
|
|
@*主表是否存在系统自动添加字段*@
|
|
@if(Model.IsMainUpdate)
|
|
{
|
|
@:.IgnoreColumns(it => new {
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(!column.IsAuxiliary)
|
|
{
|
|
switch(column.jnpfKey)
|
|
{
|
|
case "createUser":
|
|
case "currOrganize":
|
|
case "currPosition":
|
|
@:it.@(@column.ColumnName),
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@:})
|
|
}
|
|
@if(Model.ConcurrencyLock)
|
|
{
|
|
@:.ExecuteCommandWithOptLockAsync(true);
|
|
}else{
|
|
@:.ExecuteCommandAsync();
|
|
}
|
|
@:
|
|
@*修改副表数据*@
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Updateable(auxiliay@(@table.ClassName))
|
|
@:.IgnoreColumns(ignoreAllNullColumns: true)
|
|
@if(table.IsConversion)
|
|
{
|
|
@:.IgnoreColumns(it => new {
|
|
@foreach(var column in Model.TableField)
|
|
{
|
|
@if(column.IsAuxiliary && column.TableName == table.OriginalTableName)
|
|
{
|
|
switch(column.jnpfKey)
|
|
{
|
|
case "createUser":
|
|
case "currOrganize":
|
|
case "currPosition":
|
|
@:it.@(@column.ColumnName),
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@:})
|
|
}
|
|
@:.Where(it => it.@(@table.TableField) == entity.@(@table.RelationField)).ExecuteCommandAsync();
|
|
@:
|
|
}
|
|
@:
|
|
@:if(!_userManager.UserOrigin.Equals("pc"))
|
|
@:{
|
|
@*修改子表数据*@
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:if(@(@table.LowerClassName)EntityList != null)
|
|
@:{
|
|
@:foreach (var item in @(@table.LowerClassName)EntityList)
|
|
@:{
|
|
@if(Model.PrimaryKeyPolicy == 1)
|
|
{
|
|
@:item.@(@table.PrimaryKey) = item.@(@table.PrimaryKey) == null ? SnowflakeIdHelper.NextId() : item.@(@table.PrimaryKey);
|
|
}
|
|
@:item.@(@table.TableField) = entity.@(@table.RelationField);
|
|
@foreach(var childer in table.ChilderColumnConfigList)
|
|
{
|
|
@*使用Switch 为后续添加控件方便*@
|
|
@switch(childer.jnpfKey)
|
|
{
|
|
case "billRule":
|
|
@:item.@(childer.ColumnName) = item.@(childer.ColumnName) == null ? await _billRullService.GetBillNumber("@(@childer.Rule)") : item.@(childer.ColumnName);
|
|
break;
|
|
}
|
|
}
|
|
@:}
|
|
@:
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Storageable<@(@table.ClassName)Entity>(@(@table.LowerClassName)EntityList).ExecuteCommandAsync();
|
|
@:}
|
|
@:
|
|
}
|
|
@:}
|
|
@:}
|
|
@:catch (Exception)
|
|
@:{
|
|
@:throw Oops.Oh(ErrorCode.COM1001);
|
|
@:}
|
|
@:}
|
|
break;
|
|
@*删除*@
|
|
case "remove":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 删除@(@Model.BusName).
|
|
@:/// </summary>
|
|
@:/// <returns></returns>
|
|
@:[HttpDelete("{id}")]
|
|
@:[UnitOfWork]
|
|
@:public async Task Delete(@(Model.PrimaryKeyPolicy == 1 ? "string" : "long") id)
|
|
@:{
|
|
@*跨库*@
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
@:
|
|
}
|
|
@:if(!await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + @Model.ClassName + "Entity>()." : "_repository.Is")AnyAsync(it => it.@(@Model.PrimaryKey) == id))
|
|
@:{
|
|
@:throw Oops.Oh(ErrorCode.COM1005);
|
|
@:}
|
|
@:
|
|
@*删除主表数据*@
|
|
@:var entity = await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + @Model.ClassName + "Entity>()." : "_repository.Get")FirstAsync(it => it.@(@Model.PrimaryKey).Equals(id));
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Deleteable<" + @Model.ClassName + "Entity>()" : "_repository.AsDeleteable()").Where(it => it.@(@Model.PrimaryKey).Equals(id)).ExecuteCommandAsync();
|
|
@*删除副表数据*@
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:
|
|
@:// 清空@(@table.TableComment)表数据
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Deleteable<@(@table.ClassName)Entity>().Where(it => it.@(@table.TableField).Equals(entity.@(@table.RelationField))).ExecuteCommandAsync();
|
|
}
|
|
@*删除子表数据*@
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:
|
|
@:// 清空@(@table.TableComment)表数据
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Deleteable<@(@table.ClassName)Entity>().Where(it => it.@(@table.TableField).Equals(entity.@(@table.RelationField))).ExecuteCommandAsync();
|
|
}
|
|
@:}
|
|
break;
|
|
@*详情*@
|
|
case "detail":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// @(@Model.BusName)详情.
|
|
@:/// </summary>
|
|
@:/// <param name="id">主键值.</param>
|
|
@:/// <returns></returns>
|
|
@:[HttpGet("Detail/{id}")]
|
|
@:public async Task<dynamic> GetDetails(@(Model.PrimaryKeyPolicy == 1 ? "string" : "long") id)
|
|
@:{
|
|
@{var tableNo = Model.AuxiliayTableRelations.Count; }
|
|
@*跨库*@
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
@:var data = await _sqlSugarClient.Queryable<@(@Model.ClassName)Entity>()
|
|
@{var leagueTable = "a";}
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@{leagueTable += ", a"+ table.TableNo;}
|
|
@:.LeftJoin(_sqlSugarClient.Queryable<@(@table.ClassName)Entity>(), (@(@leagueTable)) => @("a" + table.TableNo + "." + table.TableField + " == a." + table.RelationField))
|
|
}
|
|
@if(Model.LeagueTableCount > 0)
|
|
{
|
|
@foreach(var league in Model.TableField)
|
|
{
|
|
@switch(league.jnpfKey)
|
|
{
|
|
case "modifyUser":
|
|
case "createUser":
|
|
@{leagueTable += ", " + league.LeagueTableNo + (league.IsAuxiliary ? league.TableNo : "");}
|
|
@:.LeftJoin(_sqlSugarClient.Queryable<UserEntity>().AS("db_@(@Model.ConfigId).@(@Model.DBName).dbo.BASE_USER"), (@(@leagueTable)) => @("a." + league.ColumnName + " == " + league.LeagueTableNo + (league.IsAuxiliary ? league.TableNo : "") + ".Id"))
|
|
break;
|
|
case "currOrganize":
|
|
@{leagueTable += ", " + league.LeagueTableNo + (league.IsAuxiliary ? league.TableNo : "");}
|
|
@:.LeftJoin(_sqlSugarClient.Queryable<OrganizeEntity>().AS("db_@(@Model.ConfigId).@(@Model.DBName).dbo.BASE_ORGANIZE"), (@(@leagueTable)) => @("a." + league.ColumnName + " == " + league.LeagueTableNo + (league.IsAuxiliary ? league.TableNo : "") + ".Id"))
|
|
break;
|
|
case "currPosition":
|
|
@{leagueTable += ", " + league.LeagueTableNo + (league.IsAuxiliary ? league.TableNo : "");}
|
|
@:.LeftJoin(_sqlSugarClient.Queryable<PositionEntity>().AS("db_@(@Model.ConfigId).@(@Model.DBName).dbo.BASE_POSITION"), (@(@leagueTable)) => @("a." + league.ColumnName + " == " + league.LeagueTableNo + (league.IsAuxiliary ? league.TableNo : "") + ".Id"))
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}else{
|
|
@if(Model.LeagueTableCount > 0)
|
|
{
|
|
var no = Model.LeagueTableCount;
|
|
@:var data = await _repository.AsSugarClient().Queryable<@(@Model.ClassName)Entity, @foreach(var table in Model.AuxiliayTableRelations){@(@table.ClassName + "Entity, ")}@foreach(var league in Model.TableField){@switch(league.jnpfKey){case "modifyUser":case "createUser":@(no == 1 ? "UserEntity" : "UserEntity, ")no--;break;case "currOrganize":@(no == 1 ? "OrganizeEntity" : "OrganizeEntity, ")no--;break;case "currPosition":@(no == 1 ? "PositionEntity" : "PositionEntity, ")no--;break;}}>((a,@foreach(var table in Model.AuxiliayTableRelations){@(" a" + @table.TableNo + ", ")}@{no = Model.LeagueTableCount;}@foreach(var league in Model.TableField){@switch(league.IsAuxiliary){case false:@switch(league.jnpfKey){case "modifyUser":case "createUser":case "currOrganize":case "currPosition":@(no == 1 ? league.LeagueTableNo : league.LeagueTableNo + ", ")no--;break;}break;default:@switch(league.jnpfKey){case "modifyUser":case "createUser":case "currOrganize":case "currPosition":@(no == 1 ? league.LeagueTableNo + + league.TableNo : league.LeagueTableNo + + league.TableNo + ", ")no--;break;}break;}}) => new JoinQueryInfos(@foreach(var table in Model.AuxiliayTableRelations){@("JoinType.Left, a" + @table.TableNo + "." + @table.TableField + " == a." + @table.RelationField + ", ")}@{no = Model.LeagueTableCount;}@foreach(var league in Model.TableField){@switch(league.IsAuxiliary){case false:@switch(league.jnpfKey){case "modifyUser":case "createUser":case "currOrganize":case "currPosition":@(no == 1 ? "JoinType.Left, a." + league.ColumnName + " == " + league.LeagueTableNo + ".Id" : "JoinType.Left, a." + league.ColumnName + " == " + league.LeagueTableNo + ".Id, ")no--;break;}break;default:@switch(league.jnpfKey){case "modifyUser":case "createUser":case "currOrganize":case "currPosition":@(no == 1 ? "JoinType.Left, a" + league.TableNo + "." + league.ColumnName + " == " + league.LeagueTableNo + league.TableNo + ".Id" : "JoinType.Left, a" + league.TableNo + "." + league.ColumnName + " == " + league.LeagueTableNo + league.TableNo + ".Id, ")no--;break;}break;}}))
|
|
}else{
|
|
@:var data = await _repository.AsSugarClient().Queryable<@(@Model.ClassName)Entity, @foreach(var table in Model.AuxiliayTableRelations){@(@table.ClassName + "Entity")@(@tableNo == 1 ? ">" : ",") tableNo--;}((a,@{tableNo = Model.AuxiliayTableRelations.Count;}@foreach(var table in Model.AuxiliayTableRelations){@(" a" + @table.TableNo)@(@tableNo == 1 ? ")" : ",")tableNo--;} => new JoinQueryInfos(@{tableNo = Model.AuxiliayTableRelations.Count;}@foreach(var table in Model.AuxiliayTableRelations){@("JoinType.Left, a" + @table.TableNo + "." + @table.TableField + " == a." + @table.RelationField)@(@tableNo == 1 ? ")" : ", ")tableNo--;})
|
|
}
|
|
}
|
|
@if(Model.LeagueTableCount > 0)
|
|
{
|
|
var no = Model.LeagueTableCount;
|
|
@:.Select((a,@foreach(var table in Model.AuxiliayTableRelations){@(" a" + @table.TableNo + ", ")}@{no = Model.LeagueTableCount;}@foreach(var league in Model.TableField){@switch(league.IsAuxiliary){case false:@switch(league.jnpfKey){case "modifyUser":case "createUser":case "currOrganize":case "currPosition":@(no == 1 ? league.LeagueTableNo : league.LeagueTableNo + ", ")no--;break;}break;default:@switch(league.jnpfKey){case "modifyUser":case "createUser":case "currOrganize":case "currPosition":@(no == 1 ? league.LeagueTableNo + + league.TableNo : league.LeagueTableNo + + league.TableNo + ", ")no--;break;}break;}}) => new @(@Model.ClassName)DetailOutput
|
|
}else{
|
|
@:.Select((a,@{tableNo = Model.AuxiliayTableRelations.Count;}@foreach(var table in Model.AuxiliayTableRelations){@(" a" + @table.TableNo)@(@tableNo == 1 ? ")" : ",")tableNo--;} => new @(@Model.ClassName)DetailOutput
|
|
}
|
|
@:{
|
|
@*循环展示字段*@
|
|
@foreach (var column in Model.TableField){
|
|
@{var parameterName = string.Empty;}
|
|
@switch(column.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @column.TableName + "_jnpf_" + @column.LowerColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @column.LowerColumnName;}
|
|
break;
|
|
}
|
|
@if (column.PrimaryKey){
|
|
@:@(@column.LowerColumnName) = a.@column.ColumnName,
|
|
}else if(column.jnpfKey != null){
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "uploadFz":
|
|
case "uploadImg":
|
|
@:@(@parameterName)List = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
break;
|
|
case "switch":
|
|
@:@(@parameterName) = SqlFunc.IIF(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName) == 0, "@(@column.InactiveTxt)", "@(@column.ActiveTxt)"),
|
|
break;
|
|
case "date":
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName).Value.ToString("@(@column.Format)"),
|
|
break;
|
|
case "createTime":
|
|
case "modifyTime":
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName).Value.ToString("yyyy-MM-dd HH:mm"),
|
|
break;
|
|
case "modifyUser":
|
|
case "createUser":
|
|
@:@(@parameterName) = SqlFunc.MergeString(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").RealName, "/", @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").Account),
|
|
break;
|
|
case "currOrganize":
|
|
case "currPosition":
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").FullName,
|
|
break;
|
|
case "userSelect":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@parameterName) = SqlFunc.Subqueryable<UserEntity>()@(Model.DbLinkId != "0" ? ".AS(\"db_"+ Model.ConfigId +"."+ Model.DBName +".dbo.BASE_USER\")" : "").Where(it => it.Id.Equals(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName))).Select(it => it.RealName),
|
|
}else{
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
}
|
|
break;
|
|
case "posSelect":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@parameterName) = SqlFunc.Subqueryable<PositionEntity>()@(Model.DbLinkId != "0" ? ".AS(\"db_"+ Model.ConfigId +"."+ Model.DBName +".dbo.BASE_POSITION\")" : "").Where(it => it.Id.Equals(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName))).Select(it => it.FullName),
|
|
}else{
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
}
|
|
break;
|
|
case "depSelect":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@parameterName) = SqlFunc.Subqueryable<OrganizeEntity>()@(Model.DbLinkId != "0" ? ".AS(\"db_"+ Model.ConfigId +"."+ Model.DBName +".dbo.BASE_ORGANIZE\")" : "").Where(it => it.Id.Equals(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName))).Select(a => a.FullName),
|
|
}else{
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
}
|
|
break;
|
|
case "roleSelect":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@parameterName) = SqlFunc.Subqueryable<RoleEntity>()@(Model.DbLinkId != "0" ? ".AS(\"db_"+ Model.ConfigId +"."+ Model.DBName +".dbo.BASE_ROLE\")" : "").Where(it => it.Id.Equals(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName))).Select(it => it.FullName),
|
|
}else{
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
}
|
|
break;
|
|
case "groupSelect":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@parameterName) = SqlFunc.Subqueryable<GroupEntity>()@(Model.DbLinkId != "0" ? ".AS(\"db_"+ Model.ConfigId +"."+ Model.DBName +".dbo.BASE_GROUP\")" : "").Where(it => it.Id.Equals(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName))).Select(it => it.FullName),
|
|
}else{
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
}
|
|
break;
|
|
case "select":
|
|
case "radio":
|
|
case "treeSelect":
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:@(@parameterName) = SqlFunc.Subqueryable<DictionaryDataEntity>()@(Model.DbLinkId != "0" ? ".AS(\"db_"+ Model.ConfigId +"."+ Model.DBName +".dbo.BASE_DICTIONARYDATA\")" : "").Where(dic => dic.Id.Equals(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(dic => dic.FullName),
|
|
break;
|
|
case "enCode":
|
|
@:@(@parameterName) = SqlFunc.Subqueryable<DictionaryDataEntity>()@(Model.DbLinkId != "0" ? ".AS(\"db_"+ Model.ConfigId +"."+ Model.DBName +".dbo.BASE_DICTIONARYDATA\")" : "").Where(dic => dic.EnCode.Equals(@(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(dic => dic.FullName),
|
|
break;
|
|
}
|
|
}else{
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
}
|
|
break;
|
|
default:
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
break;
|
|
}
|
|
break;
|
|
default:
|
|
@:@(@parameterName) = @(@column.LeagueTableNo)@(column.IsAuxiliary ? @column.TableNo : "").@(@column.ColumnName),
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@:}).MergeTable().Where(it => it.@(@Model.LowerPrimaryKey) == id).ToListAsync();
|
|
@:
|
|
@:await _repository.AsSugarClient().ThenMapperAsync(data, async item =>
|
|
@:{
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:item.@(table.ControlModel) = @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Queryable<@(@table.ClassName)Entity>().SetContext(scl => scl.@(@table.TableField), () => item.@(@table.LowerRelationField), item).ToList().Adapt<List<@(@table.ClassName)DetailOutput>>();
|
|
@:
|
|
}
|
|
@if(Model.IsConversion)
|
|
{
|
|
@foreach (var column in Model.TableField)
|
|
{
|
|
@{var dataCount = column.StaticData != null ? column.StaticData.Count : 0;}
|
|
@*参数名*@
|
|
@{var parameterName = string.Empty;}
|
|
@switch(column.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @column.TableName + "_jnpf_" + @column.LowerColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @column.LowerColumnName;}
|
|
break;
|
|
}
|
|
@if(column.IsDetailConversion)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "uploadFz":
|
|
case "uploadImg":
|
|
@:if(item.@(@parameterName)List != null)
|
|
@:{
|
|
@:item.@(@parameterName) = item.@(@parameterName)List.ToObject<List<FileControlsModel>>();
|
|
@:item.@(@parameterName)List = null;
|
|
@:}
|
|
@:else
|
|
@:{
|
|
@:item.@(@parameterName) = new List<FileControlsModel>();
|
|
@:}
|
|
@:
|
|
break;
|
|
case "select":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:item.@(@parameterName) = @(@parameterName)Data.Find(it => item.@(@parameterName).Equals(it.id))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:item.@(@parameterName) = @(@parameterName)Data.Find(it => it.id.Equals(item.@(@parameterName)))?.fullName;
|
|
}else{
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "checkbox":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "radio":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:item.@(@parameterName) = @(@parameterName)Data.Find(it => item.@(@parameterName).Equals(it.id))?.fullName;
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data .Find(it => it.id.Equals(item.@(@parameterName)))?.fullName);
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "cascader":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join("@(@column.Separator)", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@parameterName)Excessive = new List<string>();
|
|
@:foreach (var @(@parameterName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@parameterName)Excessive.Add(string.Join("@(@column.Separator)", @(@parameterName)Data.FindAll(it => @(@parameterName).Contains(it.id)).Select(s => s.fullName)));
|
|
@:}
|
|
@:
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@parameterName)Excessive = new List<string>();
|
|
@:foreach (var @(@parameterName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@parameterName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@parameterName).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Excessive);
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@parameterName)Excessive = new List<string>();
|
|
@:foreach (var @(@parameterName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@parameterName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@parameterName).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Excessive);
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join("@(@column.Separator)", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@parameterName)Excessive = new List<string>();
|
|
@:foreach (var @(@parameterName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@parameterName)Excessive.Add(string.Join("@(@column.Separator)", @(@parameterName)Data.FindAll(it => @(@parameterName).Contains(it.id)).Select(a => a.fullName)));
|
|
@:}
|
|
@:
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "comSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@parameterName)Excessive = new List<string>();
|
|
@:foreach (var @(@parameterName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@parameterName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@parameterName).Contains(it.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "depSelect":
|
|
@:// @column.ColumnComment
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
@:
|
|
break;
|
|
case "posSelect":
|
|
@:// @column.ColumnComment
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<PositionEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
@:
|
|
break;
|
|
case "userSelect":
|
|
@:// @column.ColumnComment
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<UserEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.RealName).ToListAsync());
|
|
@:}
|
|
@:
|
|
break;
|
|
case "roleSelect":
|
|
@:// @column.ColumnComment
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<RoleEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
@:
|
|
break;
|
|
case "groupSelect":
|
|
@:// @column.ColumnComment
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<GroupEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
@:
|
|
break;
|
|
case "treeSelect":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:item.@(@parameterName) = @(@parameterName)Data.Find(it => it.id.Equals(item.@(@parameterName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:var @(@parameterName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.EnCode) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:item.@(@parameterName) = @(@parameterName)Data.Find(it => it.id.Equals(item.@(@parameterName)))?.fullName;
|
|
}else{
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "address":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@parameterName)Excessive = new List<string>();
|
|
@:foreach (var @(@parameterName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@parameterName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@parameterName).Contains(a.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "popupTableSelect":
|
|
@:// @column.ColumnComment
|
|
@:var @(@parameterName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(@parameterName) = @(@parameterName)Data.Find(it => it.id.Equals(item.@(@parameterName)))?.fullName;
|
|
}else{
|
|
@:if(item.@(@parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(@parameterName).ToObject<List<string>>();
|
|
@:item.@(@parameterName) = string.Join(",", @(@parameterName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@:});
|
|
@:
|
|
@:foreach (var item in data)
|
|
@:{
|
|
@foreach (var table in Model.TableRelations)
|
|
{
|
|
@if(table.IsConversion)
|
|
{
|
|
@:await _repository.AsSugarClient().ThenMapperAsync(item.@(@table.ControlModel), async @(@table.LowerClassName) =>
|
|
@:{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@{var dataCount = column.StaticData != null ? column.StaticData.Count : 0;}
|
|
@if(column.IsConversion)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "select":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => @(@table.LowerClassName).@(@column.LowerColumnName).Equals(it.id))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
@:}
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "checkbox":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "radio":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => @(@table.LowerClassName).@(@column.LowerColumnName).Equals(it.id))?.fullName;
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data .Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName);
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "cascader":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@: var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(s => s.fullName)));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(a => a.fullName)));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "comSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "depSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "posSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<PositionEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "userSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.RealName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<UserEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.RealName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "roleSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<RoleEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<RoleEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "groupSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<GroupEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<GroupEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "treeSelect":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
case "enCode":
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.EnCode) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "address":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName).Contains(a.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "popupTableSelect":
|
|
@:// @column.ColumnComment
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
@:});
|
|
}
|
|
@:
|
|
}
|
|
@:}
|
|
@:return data.FirstOrDefault();
|
|
@:}
|
|
break;
|
|
@*分页列表*@
|
|
case "page":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 获取@(@Model.BusName)列表.
|
|
@:/// </summary>
|
|
@:/// <param name="input">请求参数.</param>
|
|
@:/// <returns></returns>
|
|
@if(@item.IsInterface)
|
|
{
|
|
@:[HttpPost("List")]
|
|
@:public async Task<dynamic> GetList([FromBody] @(@Model.ClassName)ListQueryInput input)
|
|
}else{
|
|
@:private async Task<dynamic> GetList(@(@Model.ClassName)ListQueryInput input)
|
|
}
|
|
@:{
|
|
@if(Model.UseDataPermission)
|
|
{
|
|
@:var authorizeWhere = new List<IConditionalModel>();
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:var @(table.LowerClassName)AuthorizeWhere = new List<IConditionalModel>();
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:var @(table.LowerClassName)AuthorizeWhere = new List<IConditionalModel>();
|
|
}
|
|
@:
|
|
@:// 数据权限过滤
|
|
@:if (_userManager.User.IsAdministrator == 0)
|
|
@:{
|
|
@:var allAuthorizeWhere = await _userManager.GetCodeGenAuthorizeModuleResource<@(@Model.ClassName)ListOutput>(input.menuId, "@(@Model.OriginalPrimaryKey)", _userManager.UserOrigin.Equals("pc") ? @(@Model.PcUseDataPermission) : @(@Model.AppUseDataPermission));
|
|
@:authorizeWhere = allAuthorizeWhere.Find(it => it.FieldRule == 0)?.conditionalModel;
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:@(table.LowerClassName)AuthorizeWhere = allAuthorizeWhere.Find(it => it.FieldRule == 1 && it.TableName.Equals("@(table.OriginalTableName)"))?.conditionalModel;
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:@(table.LowerClassName)AuthorizeWhere = allAuthorizeWhere.Find(it => it.FieldRule == 2 && it.TableName.Equals("@(table.OriginalTableName)"))?.conditionalModel;
|
|
}
|
|
@:}
|
|
@:
|
|
}
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
@:
|
|
}
|
|
@if(Model.HasSuperQuery)
|
|
{
|
|
@:var entityInfo = @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").EntityMaintenance.GetEntityInfo<@(@Model.ClassName)Entity>();
|
|
@:input.sidx = CodeGenHelper.GetSortRealField(input.sidx, string.Empty, entityInfo, 0);
|
|
@:var superQuery = SuperQueryHelper.GetSuperQueryInput(input.superQueryJson, string.Empty, entityInfo, 0, false);
|
|
@:List<IConditionalModel> mainConditionalModel = SuperQueryHelper.GetSuperQueryJson(superQuery);
|
|
@:
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:entityInfo = @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").EntityMaintenance.GetEntityInfo<@(@table.ClassName)Entity>();
|
|
@:superQuery = SuperQueryHelper.GetSuperQueryInput(input.superQueryJson, entityInfo.DbTableName, entityInfo, 2, false);
|
|
@:List<IConditionalModel> @(@table.LowerClassName)ConditionalModel = SuperQueryHelper.GetSuperQueryJson(superQuery);
|
|
@:
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:entityInfo = @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").EntityMaintenance.GetEntityInfo<@(@table.ClassName)Entity>();
|
|
@:superQuery = SuperQueryHelper.GetSuperQueryInput(input.superQueryJson, "@(@table.ControlModel)-", entityInfo, 1, false);
|
|
@:List<IConditionalModel> @(@table.LowerClassName)ConditionalModel = SuperQueryHelper.GetSuperQueryJson(superQuery);
|
|
@:
|
|
}
|
|
}
|
|
@foreach(var table in Model.TableField)
|
|
{
|
|
@*是查询条件*@
|
|
@if(table.QueryWhether)
|
|
{
|
|
@{var parameterName = string.Empty;var parameterValue = string.Empty;}
|
|
@switch(table.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @table.TableName + "_jnpf_" + @table.LowerColumnName;}
|
|
@{parameterValue = @table.QueryType == 1 ? "auxiliary" + @table.ColumnName + "_" + @table.TableNo : "Auxiliary" + @table.ColumnName + "_" + @table.TableNo;}
|
|
break;
|
|
default:
|
|
@{parameterName = @table.LowerColumnName;}
|
|
@{parameterValue = @table.QueryType == 1 ? table.LowerColumnName : table.ColumnName;}
|
|
break;
|
|
}
|
|
@switch(table.QueryType)
|
|
{
|
|
case 1:
|
|
@switch(table.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:var @(parameterValue) = input.@(parameterName)?.Split(',').ToList().Last();
|
|
break;
|
|
default:
|
|
@if(table.IsMultiple)
|
|
{
|
|
@:var @(parameterValue) = input.@(parameterName)?.Split(',').ToList().Last();
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
case 3:
|
|
@switch(table.jnpfKey)
|
|
{
|
|
case "time":
|
|
@:List<string> query@(parameterValue) = input.@(parameterName)?.Split(',').ToObject<List<string>>();
|
|
@:var start@(parameterValue) = query@(parameterValue)?.First();
|
|
@:var end@(parameterValue) = query@(parameterValue)?.Last();
|
|
break;
|
|
case "numInput":
|
|
case "calculate":
|
|
@:List<object> query@(parameterValue) = input.@(parameterName)?.Split(',').ToObject<List<object>>();
|
|
@:var start@(parameterValue) = query@(parameterValue)?.First().ParseToDecimal() == 0 ? decimal.MinValue : query@(parameterValue)?.First().ParseToDecimal();
|
|
@:var end@(parameterValue) = query@(parameterValue)?.Last().ParseToDecimal() == 0 ? decimal.MaxValue : query@(parameterValue)?.Last().ParseToDecimal();
|
|
break;
|
|
default:
|
|
@:List<DateTime> query@(parameterValue) = input.@(parameterName)?.Split(',').ToObject<List<DateTime>>();
|
|
@:DateTime? start@(parameterValue) = query@(parameterValue)?.First();
|
|
@:DateTime? end@(parameterValue) = query@(parameterValue)?.Last();
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@*是查询条件*@
|
|
@if(table.IsQueryWhether)
|
|
{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@switch(column.QueryType)
|
|
{
|
|
case 1:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:var @(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToList().Last();
|
|
break;
|
|
default:
|
|
@if(column.IsMultiple)
|
|
{
|
|
@:var @(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToList().Last();
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
case 3:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "time":
|
|
@:List<string> query@(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToObject<List<string>>();
|
|
@:var start@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.First();
|
|
@:var end@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.Last();
|
|
break;
|
|
case "numInput":
|
|
case "calculate":
|
|
@:List<object> query@(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToObject<List<object>>();
|
|
@:var start@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.First().ParseToDecimal() == 0 ? decimal.MinValue : query@(@table.ControlModel + @column.ColumnName)?.First().ParseToDecimal();
|
|
@:var end@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.Last().ParseToDecimal() == 0 ? decimal.MaxValue : query@(@table.ControlModel + @column.ColumnName)?.Last().ParseToDecimal();
|
|
break;
|
|
default:
|
|
@:List<DateTime> query@(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToObject<List<DateTime>>();
|
|
@:DateTime? start@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.First();
|
|
@:DateTime? end@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.Last();
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@{tableNo = Model.AuxiliayTableRelations.Count; }
|
|
@:var data = await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + @Model.ClassName + "Entity>()" : "_repository.AsQueryable()")
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.Includes(x => x.@(@table.LowerClassName))
|
|
}
|
|
@foreach (var table in Model.TableRelations)
|
|
{
|
|
if(table.IsQueryWhether || table.IsShowField)
|
|
{
|
|
@:.Includes(x => x.@(@table.LowerClassName)List
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@*查询方式*@
|
|
@switch(column.QueryType)
|
|
{
|
|
@*查询方式为等于*@
|
|
case 1:
|
|
@*多选控件*@
|
|
@if(column.IsMultiple)
|
|
{
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName)))
|
|
}else{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName)))
|
|
break;
|
|
case "checkbox":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName)))
|
|
break;
|
|
case "usersSelect":
|
|
@:.Where(_controlParsing.GetUsersSelectQueryWhere("@(column.OriginalColumnName)", input.@(@table.ControlModel + "_" + @column.LowerColumnName), @(column.IsMultiple.ToString().ToLower())))
|
|
break;
|
|
default:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Equals(input.@(@table.ControlModel + "_" + @column.LowerColumnName)))
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
@*查询类型为模糊查询*@
|
|
case 2:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName)))
|
|
break;
|
|
@*查询类型为范围查询*@
|
|
case 3:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "time":
|
|
case "numInput":
|
|
case "calculate":
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => SqlFunc.Between(it.@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName), end@(@table.ControlModel + @column.ColumnName)))
|
|
break;
|
|
default:
|
|
@if(column.IsDateTime)
|
|
{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => SqlFunc.Between(it.@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss")))
|
|
}else{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => SqlFunc.Between(it.@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 00:00:00"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 23:59:59")))
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
@if(Model.HasSuperQuery)
|
|
{
|
|
@:.Where(@(@table.LowerClassName)ConditionalModel)
|
|
}
|
|
@if(table.IsShowField)
|
|
{
|
|
@:.Select(it => new @(@table.ClassName)Entity()
|
|
@:{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
if(column.IsShow)
|
|
{
|
|
@:@column.ColumnName = it.@column.ColumnName,
|
|
}
|
|
}
|
|
@:})
|
|
}
|
|
@:.ToList())
|
|
}
|
|
}
|
|
@*循环查询条件*@
|
|
@foreach(var field in Model.TableField)
|
|
{
|
|
@*是否查询条件*@
|
|
@switch(field.QueryWhether)
|
|
{
|
|
case true:
|
|
@{var parameterName = string.Empty;var parameterValue = string.Empty;var queryParameter = string.Empty;}
|
|
@switch(field.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @field.TableName + "_jnpf_" + @field.LowerColumnName;}
|
|
@{parameterValue = @field.QueryType == 1 ? "auxiliary" + @field.ColumnName + "_" + @field.TableNo : "Auxiliary" + @field.ColumnName + "_" + @field.TableNo;}
|
|
@{queryParameter = @field.LowerClassName + "." + @field.ColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @field.LowerColumnName;}
|
|
@{parameterValue = @field.QueryType == 1 ? field.LowerColumnName : field.ColumnName;}
|
|
@{queryParameter = @field.ColumnName;}
|
|
break;
|
|
}
|
|
@*查询方式*@
|
|
@switch(field.QueryType)
|
|
{
|
|
@*查询方式为等于*@
|
|
case 1:
|
|
@*多选控件*@
|
|
@if(field.IsMultiple)
|
|
{
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(@(parameterValue)))
|
|
}else{
|
|
@switch(field.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(@(parameterValue)))
|
|
break;
|
|
case "checkbox":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(input.@(parameterName)))
|
|
break;
|
|
case "usersSelect":
|
|
@:.Where(_controlParsing.GetUsersSelectQueryWhere("@(field.OriginalColumnName)", input.@(parameterName), @(field.IsMultiple.ToString().ToLower())))
|
|
break;
|
|
default:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Equals(input.@(parameterName)))
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
@*查询类型为模糊查询*@
|
|
case 2:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(input.@(parameterName)))
|
|
break;
|
|
@*查询类型为范围查询*@
|
|
case 3:
|
|
@switch(field.jnpfKey)
|
|
{
|
|
case "time":
|
|
case "numInput":
|
|
case "calculate":
|
|
@:.WhereIF(query@(parameterValue) != null, it => SqlFunc.Between(it.@(queryParameter), start@(parameterValue), end@(parameterValue)))
|
|
break;
|
|
default:
|
|
@if(field.IsDateTime)
|
|
{
|
|
@:.WhereIF(query@(parameterValue) != null, it => SqlFunc.Between(it.@(queryParameter), start@(parameterValue).ParseToDateTime("yyyy-MM-dd HH:mm:ss"), end@(parameterValue).ParseToDateTime("yyyy-MM-dd HH:mm:ss")))
|
|
}else{
|
|
@:.WhereIF(query@(parameterValue) != null, it => SqlFunc.Between(it.@(queryParameter), start@(parameterValue).ParseToDateTime("yyyy-MM-dd 00:00:00"), end@(parameterValue).ParseToDateTime("yyyy-MM-dd 23:59:59")))
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
@*子表循环查询条件*@
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@*是否查询条件*@
|
|
@if(table.IsQueryWhether)
|
|
{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@*查询方式*@
|
|
@switch(column.QueryType)
|
|
{
|
|
@*查询方式为等于*@
|
|
case 1:
|
|
@*多选控件*@
|
|
@if(column.IsMultiple)
|
|
{
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName))))
|
|
}else{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName))))
|
|
break;
|
|
case "checkbox":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName))))
|
|
break;
|
|
case "usersSelect":
|
|
@:.Where(_controlParsing.GetUsersSelectQueryWhere("@(column.OriginalColumnName)", input.@(@table.ControlModel + "_" + @column.LowerColumnName), @(column.IsMultiple.ToString().ToLower())))
|
|
break;
|
|
default:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Equals(input.@(@table.ControlModel + "_" + @column.LowerColumnName))))
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
@*查询类型为模糊查询*@
|
|
case 2:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName))))
|
|
break;
|
|
@*查询类型为范围查询*@
|
|
case 3:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "time":
|
|
case "numInput":
|
|
case "calculate":
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => SqlFunc.Between(@(@table.LowerClassName).@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName), end@(@table.ControlModel + @column.ColumnName))))
|
|
break;
|
|
default:
|
|
@if(column.IsDateTime)
|
|
{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) =>SqlFunc.Between(@(@table.LowerClassName).@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss"))))
|
|
}else{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => SqlFunc.Between(@(@table.LowerClassName).@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 00:00:00"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 23:59:59"))))
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@*数据权限*@
|
|
@if(Model.UseDataPermission)
|
|
{
|
|
@:.Where(authorizeWhere)
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.WhereIF(@(table.LowerClassName)AuthorizeWhere?.Count > 0, it => SqlFunc.Exists(it.@(@table.LowerClassName).@(@table.TableField), @(table.LowerClassName)AuthorizeWhere))
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:.WhereIF(@(table.LowerClassName)AuthorizeWhere?.Count > 0, it => it.@(@table.LowerClassName)List.Any(@(table.LowerClassName)AuthorizeWhere))
|
|
}
|
|
}
|
|
@if(Model.HasSuperQuery)
|
|
{
|
|
@:.Where(mainConditionalModel)
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.WhereIF(@(@table.LowerClassName)ConditionalModel.Count > 0, it => SqlFunc.Exists(it.@(@table.LowerClassName).@(@table.TableField), @(@table.LowerClassName)ConditionalModel))
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:.WhereIF(@(@table.LowerClassName)ConditionalModel.Count > 0, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName)ConditionalModel))
|
|
}
|
|
}
|
|
@:.OrderByIF(string.IsNullOrEmpty(input.sidx), it => it.@(@Model.PrimaryKey)).OrderByIF(!string.IsNullOrEmpty(input.sidx), input.sidx + " " + input.sort)
|
|
@:.ToPagedListAsync(input.currentPage, input.pageSize, it => new @(@Model.ClassName)ListOutput
|
|
@:{
|
|
@*循环展示字段*@
|
|
@foreach (var column in Model.TableField){
|
|
@if (column.PrimaryKey){
|
|
@:@(@column.LowerColumnName) = it.@column.ColumnName,
|
|
}else if(column.IsShow){
|
|
@{var parameterName = string.Empty;var parameterValue = string.Empty;}
|
|
@switch(column.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @column.TableName + "_jnpf_" + @column.LowerColumnName;}
|
|
@{parameterValue = @column.LowerClassName + "." + @column.ColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @column.LowerColumnName;}
|
|
@{parameterValue = @column.ColumnName;}
|
|
break;
|
|
}
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "date":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue) == null ? null : it.@(parameterValue).Value.ToString("@(column.Format)"),
|
|
break;
|
|
case "modifyTime":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue) == null ? null : it.@(parameterValue).Value.ToString("yyyy-MM-dd HH:mm"),
|
|
break;
|
|
case "createTime":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue).Value.ToString("yyyy-MM-dd HH:mm"),
|
|
break;
|
|
case "switch":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue) == 0 ? "@(@column.InactiveTxt)" : "@(@column.ActiveTxt)",
|
|
break;
|
|
case "comInput":
|
|
case "billRule":
|
|
case "textarea":
|
|
case "time":
|
|
case "popupSelect":
|
|
case "relationForm":
|
|
case "numInput":
|
|
@:@(parameterName) = it.@parameterValue,
|
|
@:@(parameterName)_name = it.@parameterValue,
|
|
break;
|
|
default:
|
|
@:@(parameterName) = it.@parameterValue,
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@if(Model.ConcurrencyLock)
|
|
{
|
|
@:version = it.Version,
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@if(table.IsShowField)
|
|
{
|
|
@:@table.ControlModel = it.@(table.LowerClassName)List.Adapt<List<@(table.ClassName)ListOutput>>(),
|
|
}
|
|
}
|
|
@:});
|
|
@:
|
|
@:var inlineEditorList = data.list.Adapt<List<@(@Model.ClassName)InlineEditorOutput>>();
|
|
@:@if(Model.IsConversion)
|
|
{
|
|
@:
|
|
@:await _repository.AsSugarClient().ThenMapperAsync(inlineEditorList, async item =>
|
|
@:{
|
|
@foreach (var column in Model.TableField)
|
|
{
|
|
@{var dataCount = column.StaticData != null ? column.StaticData.Count : 0;}
|
|
@if(column.IsShow && column.IsConversion)
|
|
{
|
|
@{var parameterName = string.Empty;var dataParameter = string.Empty;}
|
|
@switch(column.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @column.TableName + "_jnpf_" + @column.LowerColumnName;}
|
|
@{dataParameter = @column.LowerClassName + @column.ColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @column.LowerColumnName;}
|
|
@{dataParameter = @column.LowerColumnName;}
|
|
break;
|
|
}
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "modifyUser":
|
|
case "createUser":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName)_name = @(dataParameter)Data != null ? string.Format("{0}/{1}", @(dataParameter)Data.RealName, @(dataParameter)Data.Account) : null;
|
|
@:
|
|
break;
|
|
case "currOrganize":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName)_name = @(dataParameter)Data != null ? @(dataParameter)Data.FullName : null;
|
|
@:
|
|
break;
|
|
case "currPosition":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName)_name = @(dataParameter)Data != null ? @(dataParameter)Data.FullName : null;
|
|
@:
|
|
break;
|
|
case "select":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => item.@(parameterName).Equals(it.id))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:item.@(parameterName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.Id.Equals(item.@(parameterName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
break;
|
|
case "enCode":
|
|
@:item.@(parameterName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.EnCode.Equals(item.@(parameterName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
break;
|
|
}
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
}
|
|
@:}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
}else{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
}
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "checkbox":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
case "dictionary":
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
}
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "radio":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "dictionary":
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.Id.Equals(item.@(parameterName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
case "enCode":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.EnCode.Equals(item.@(parameterName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
}
|
|
@:}
|
|
break;
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => item.@(parameterName).Equals(it.id))?.fullName;
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data .Find(it => it.id.Equals(item.@(parameterName)))?.fullName);
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "cascader":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(s => s.fullName)));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
}
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
break;
|
|
}
|
|
@:}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
}else{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(a => a.fullName)));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
}
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "comSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "depSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "posSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<PositionEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "userSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.RealName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<UserEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.RealName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "roleSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<RoleEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<RoleEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "groupSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<GroupEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<GroupEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "treeSelect":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
case "enCode":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.EnCode.Equals(item.@(parameterName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.EnCode) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "address":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName).Contains(a.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "popupTableSelect":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@:});
|
|
}
|
|
@if(Model.IsChildIndexShow)
|
|
{
|
|
@:
|
|
@:foreach (var item in inlineEditorList)
|
|
@:{
|
|
@foreach (var table in Model.TableRelations)
|
|
{
|
|
@if(table.IsConversion && table.IsShowField)
|
|
{
|
|
@:await _repository.AsSugarClient().ThenMapperAsync(item.@table.ControlModel, async @(@table.LowerClassName) =>
|
|
@:{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@{var dataCount = column.StaticData != null ? column.StaticData.Count : 0;}
|
|
@if(column.IsShow && column.IsConversion)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "switch":
|
|
@:// @column.ColumnComment
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@table.LowerClassName).@(@column.LowerColumnName) == "0" ? "@(@column.InactiveTxt)" : "@(@column.ActiveTxt)";
|
|
break;
|
|
case "select":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => @(@table.LowerClassName).@(@column.LowerColumnName).Equals(it.id))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
@:}
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "checkbox":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "radio":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => @(@table.LowerClassName).@(@column.LowerColumnName).Equals(it.id))?.fullName;
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data .Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName);
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "cascader":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@: var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(s => s.fullName)));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(a => a.fullName)));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "comSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "depSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "posSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<PositionEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "userSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.RealName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<UserEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.RealName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "roleSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<RoleEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<RoleEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "groupSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<GroupEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<GroupEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "treeSelect":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
case "enCode":
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.EnCode) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "address":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName).Contains(a.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "popupTableSelect":
|
|
@:// @column.ColumnComment
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
@:});
|
|
}
|
|
@:
|
|
}
|
|
@:}
|
|
}
|
|
@:
|
|
@if(Model.ParsJnpfKeyConstList.Count>0)
|
|
{
|
|
@:var resData = inlineEditorList.ToObject<List<Dictionary<string, object>>>(CommonConst.options);
|
|
@foreach (var jnpfKeyConst in Model.ParsJnpfKeyConstList)
|
|
{
|
|
@:resData = await _controlParsing.GetParsDataList(resData,"@(@jnpfKeyConst[1])","@(@jnpfKeyConst[0])",_userManager.TenantId);
|
|
}
|
|
|
|
@:inlineEditorList = resData.ToObject<List<@(@Model.ClassName)InlineEditorOutput>>(CommonConst.options);
|
|
}
|
|
@:return PageResult<@(@Model.ClassName)InlineEditorOutput>.SqlSugarPageResult(new SqlSugarPagedList<@(@Model.ClassName)InlineEditorOutput>
|
|
@:{
|
|
@:pagination = data.pagination,
|
|
@:list = inlineEditorList
|
|
@:});
|
|
@:}
|
|
break;
|
|
case "noPage":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 获取@(@Model.BusName)无分页列表.
|
|
@:/// </summary>
|
|
@:/// <param name="input">请求参数.</param>
|
|
@:/// <returns></returns>
|
|
@if(@item.IsInterface)
|
|
{
|
|
@:[HttpPost("List")]
|
|
@:public async Task<dynamic> GetNoPagingList([FromBody] @(@Model.ClassName)ListQueryInput input)
|
|
}else{
|
|
@:private async Task<dynamic> GetNoPagingList(@(@Model.ClassName)ListQueryInput input)
|
|
}
|
|
@:{
|
|
@if(Model.UseDataPermission)
|
|
{
|
|
@:var authorizeWhere = new List<IConditionalModel>();
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:var @(table.LowerClassName)AuthorizeWhere = new List<IConditionalModel>();
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:var @(table.LowerClassName)AuthorizeWhere = new List<IConditionalModel>();
|
|
}
|
|
@:
|
|
@:// 数据权限过滤
|
|
@:if (_userManager.User.IsAdministrator == 0)
|
|
@:{
|
|
@:var allAuthorizeWhere = await _userManager.GetCodeGenAuthorizeModuleResource<@(@Model.ClassName)ListOutput>(input.menuId, "@(@Model.OriginalPrimaryKey)", _userManager.UserOrigin.Equals("pc") ? @(@Model.PcUseDataPermission) : @(@Model.AppUseDataPermission));
|
|
@:authorizeWhere = allAuthorizeWhere.Find(it => it.FieldRule == 0)?.conditionalModel;
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:@(table.LowerClassName)AuthorizeWhere = allAuthorizeWhere.Find(it => it.FieldRule == 1 && it.TableName.Equals("@(table.OriginalTableName)"))?.conditionalModel;
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:@(table.LowerClassName)AuthorizeWhere = allAuthorizeWhere.Find(it => it.FieldRule == 2 && it.TableName.Equals("@(table.OriginalTableName)"))?.conditionalModel;
|
|
}
|
|
@:}
|
|
@:
|
|
}
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
@:
|
|
}
|
|
@if(Model.HasSuperQuery)
|
|
{
|
|
@:var entityInfo = @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").EntityMaintenance.GetEntityInfo<@(@Model.ClassName)Entity>();
|
|
@:input.sidx = CodeGenHelper.GetSortRealField(input.sidx, string.Empty, entityInfo, 0);
|
|
@:var superQuery = SuperQueryHelper.GetSuperQueryInput(input.superQueryJson, string.Empty, entityInfo, 0, false);
|
|
@:List<IConditionalModel> mainConditionalModel = SuperQueryHelper.GetSuperQueryJson(superQuery);
|
|
@:
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:entityInfo = @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").EntityMaintenance.GetEntityInfo<@(@table.ClassName)Entity>();
|
|
@:superQuery = SuperQueryHelper.GetSuperQueryInput(input.superQueryJson, entityInfo.DbTableName, entityInfo, 2, false);
|
|
@:List<IConditionalModel> @(@table.LowerClassName)ConditionalModel = SuperQueryHelper.GetSuperQueryJson(superQuery);
|
|
@:
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:entityInfo = @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").EntityMaintenance.GetEntityInfo<@(@table.ClassName)Entity>();
|
|
@:superQuery = SuperQueryHelper.GetSuperQueryInput(input.superQueryJson, "@(@table.ControlModel)-", entityInfo, 1, false);
|
|
@:List<IConditionalModel> @(@table.LowerClassName)ConditionalModel = SuperQueryHelper.GetSuperQueryJson(superQuery);
|
|
@:
|
|
}
|
|
}
|
|
@foreach(var table in Model.TableField)
|
|
{
|
|
@*是查询条件*@
|
|
@if(table.QueryWhether)
|
|
{
|
|
@{var parameterName = string.Empty;var parameterValue = string.Empty;}
|
|
@switch(table.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @table.TableName + "_jnpf_" + @table.LowerColumnName;}
|
|
@{parameterValue = @table.QueryType == 1 ? "auxiliary" + @table.ColumnName + "_" + @table.TableNo : "Auxiliary" + @table.ColumnName + "_" + @table.TableNo;}
|
|
break;
|
|
default:
|
|
@{parameterName = @table.LowerColumnName;}
|
|
@{parameterValue = @table.QueryType == 1 ? table.LowerColumnName : table.ColumnName;}
|
|
break;
|
|
}
|
|
@switch(table.QueryType)
|
|
{
|
|
case 1:
|
|
@switch(table.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:var @(parameterValue) = input.@(parameterName)?.Split(',').ToList().Last();
|
|
break;
|
|
default:
|
|
@if(table.IsMultiple)
|
|
{
|
|
@:var @(parameterValue) = input.@(parameterName)?.Split(',').ToList().Last();
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
case 3:
|
|
@switch(table.jnpfKey)
|
|
{
|
|
case "time":
|
|
@:List<string> query@(parameterValue) = input.@(parameterName)?.Split(',').ToObject<List<string>>();
|
|
@:var start@(parameterValue) = query@(parameterValue)?.First();
|
|
@:var end@(parameterValue) = query@(parameterValue)?.Last();
|
|
break;
|
|
case "numInput":
|
|
case "calculate":
|
|
@:List<object> query@(parameterValue) = input.@(parameterName)?.Split(',').ToObject<List<object>>();
|
|
@:var start@(parameterValue) = query@(parameterValue)?.First().ParseToDecimal() == 0 ? decimal.MinValue : query@(parameterValue)?.First().ParseToDecimal();
|
|
@:var end@(parameterValue) = query@(parameterValue)?.Last().ParseToDecimal() == 0 ? decimal.MaxValue : query@(parameterValue)?.Last().ParseToDecimal();
|
|
break;
|
|
default:
|
|
@:List<DateTime> query@(parameterValue) = input.@(parameterName)?.Split(',').ToObject<List<DateTime>>();
|
|
@:DateTime? start@(parameterValue) = query@(parameterValue)?.First();
|
|
@:DateTime? end@(parameterValue) = query@(parameterValue)?.Last();
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@*是查询条件*@
|
|
@if(table.IsQueryWhether)
|
|
{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@switch(column.QueryType)
|
|
{
|
|
case 1:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:var @(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToList().Last();
|
|
break;
|
|
default:
|
|
@if(column.IsMultiple)
|
|
{
|
|
@:var @(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToList().Last();
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
case 3:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "time":
|
|
@:List<string> query@(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToObject<List<string>>();
|
|
@:var start@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.First();
|
|
@:var end@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.Last();
|
|
break;
|
|
case "numInput":
|
|
case "calculate":
|
|
@:List<object> query@(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToObject<List<object>>();
|
|
@:var start@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.First().ParseToDecimal() == 0 ? decimal.MinValue : query@(@table.ControlModel + @column.ColumnName)?.First().ParseToDecimal();
|
|
@:var end@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.Last().ParseToDecimal() == 0 ? decimal.MaxValue : query@(@table.ControlModel + @column.ColumnName)?.Last().ParseToDecimal();
|
|
break;
|
|
default:
|
|
@:List<DateTime> query@(@table.ControlModel + @column.ColumnName) = input.@(@table.ControlModel + "_" + @column.LowerColumnName)?.Split(',').ToObject<List<DateTime>>();
|
|
@:DateTime? start@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.First();
|
|
@:DateTime? end@(@table.ControlModel + @column.ColumnName) = query@(@table.ControlModel + @column.ColumnName)?.Last();
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@{tableNo = Model.AuxiliayTableRelations.Count; }
|
|
@:var list = await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + @Model.ClassName + "Entity>()" : "_repository.AsQueryable()")
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.Includes(x => x.@(@table.LowerClassName))
|
|
}
|
|
@foreach (var table in Model.TableRelations)
|
|
{
|
|
if(table.IsQueryWhether || table.IsShowField)
|
|
{
|
|
@:.Includes(x => x.@(@table.LowerClassName)List
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@*查询方式*@
|
|
@switch(column.QueryType)
|
|
{
|
|
@*查询方式为等于*@
|
|
case 1:
|
|
@*多选控件*@
|
|
@if(column.IsMultiple)
|
|
{
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName)))
|
|
}else{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName)))
|
|
break;
|
|
case "checkbox":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName)))
|
|
break;
|
|
case "usersSelect":
|
|
@:.Where(_controlParsing.GetUsersSelectQueryWhere("@(column.OriginalColumnName)", input.@(@table.ControlModel + "_" + @column.LowerColumnName), @(column.IsMultiple.ToString().ToLower())))
|
|
break;
|
|
default:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Equals(input.@(@table.ControlModel + "_" + @column.LowerColumnName)))
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
@*查询类型为模糊查询*@
|
|
case 2:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName)))
|
|
break;
|
|
@*查询类型为范围查询*@
|
|
case 3:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "time":
|
|
case "numInput":
|
|
case "calculate":
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => SqlFunc.Between(it.@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName), end@(@table.ControlModel + @column.ColumnName)))
|
|
break;
|
|
default:
|
|
@if(column.IsDateTime)
|
|
{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => SqlFunc.Between(it.@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss")))
|
|
}else{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => SqlFunc.Between(it.@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 00:00:00"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 23:59:59")))
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
@if(Model.HasSuperQuery)
|
|
{
|
|
@:.Where(@(@table.LowerClassName)ConditionalModel)
|
|
}
|
|
@if(table.IsShowField)
|
|
{
|
|
@:.Select(it => new @(@table.ClassName)Entity()
|
|
@:{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
if(column.IsShow)
|
|
{
|
|
@:@column.ColumnName = it.@column.ColumnName,
|
|
}
|
|
}
|
|
@:})
|
|
}
|
|
@:.ToList())
|
|
}
|
|
}
|
|
@*循环查询条件*@
|
|
@foreach(var field in Model.TableField)
|
|
{
|
|
@*是否查询条件*@
|
|
@switch(field.QueryWhether)
|
|
{
|
|
case true:
|
|
@{var parameterName = string.Empty;var parameterValue = string.Empty;var queryParameter = string.Empty;}
|
|
@switch(field.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @field.TableName + "_jnpf_" + @field.LowerColumnName;}
|
|
@{parameterValue = @field.QueryType == 1 ? "auxiliary" + @field.ColumnName + "_" + @field.TableNo : "Auxiliary" + @field.ColumnName + "_" + @field.TableNo;}
|
|
@{queryParameter = @field.LowerClassName + "." + @field.ColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @field.LowerColumnName;}
|
|
@{parameterValue = @field.QueryType == 1 ? field.LowerColumnName : field.ColumnName;}
|
|
@{queryParameter = @field.ColumnName;}
|
|
break;
|
|
}
|
|
@*查询方式*@
|
|
@switch(field.QueryType)
|
|
{
|
|
@*查询方式为等于*@
|
|
case 1:
|
|
@*多选控件*@
|
|
@if(field.IsMultiple)
|
|
{
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(@(parameterValue)))
|
|
}else{
|
|
@switch(field.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(@(parameterValue)))
|
|
break;
|
|
case "checkbox":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(input.@(parameterName)))
|
|
break;
|
|
case "usersSelect":
|
|
@:.Where(_controlParsing.GetUsersSelectQueryWhere("@(field.OriginalColumnName)", input.@(parameterName), @(field.IsMultiple.ToString().ToLower())))
|
|
break;
|
|
default:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Equals(input.@(parameterName)))
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
@*查询类型为模糊查询*@
|
|
case 2:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(parameterName)), it => it.@(queryParameter).Contains(input.@(parameterName)))
|
|
break;
|
|
@*查询类型为范围查询*@
|
|
case 3:
|
|
@switch(field.jnpfKey)
|
|
{
|
|
case "time":
|
|
case "numInput":
|
|
case "calculate":
|
|
@:.WhereIF(query@(parameterValue) != null, it => SqlFunc.Between(it.@(queryParameter), start@(parameterValue), end@(parameterValue)))
|
|
break;
|
|
default:
|
|
@if(field.IsDateTime)
|
|
{
|
|
@:.WhereIF(query@(parameterValue) != null, it => SqlFunc.Between(it.@(queryParameter), start@(parameterValue).ParseToDateTime("yyyy-MM-dd HH:mm:ss"), end@(parameterValue).ParseToDateTime("yyyy-MM-dd HH:mm:ss")))
|
|
}else{
|
|
@:.WhereIF(query@(parameterValue) != null, it => SqlFunc.Between(it.@(queryParameter), start@(parameterValue).ParseToDateTime("yyyy-MM-dd 00:00:00"), end@(parameterValue).ParseToDateTime("yyyy-MM-dd 23:59:59")))
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
@*子表循环查询条件*@
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@*是否查询条件*@
|
|
@if(table.IsQueryWhether)
|
|
{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@*查询方式*@
|
|
@switch(column.QueryType)
|
|
{
|
|
@*查询方式为等于*@
|
|
case 1:
|
|
@*多选控件*@
|
|
@if(column.IsMultiple)
|
|
{
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName))))
|
|
}else{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "cascader":
|
|
case "address":
|
|
case "comSelect":
|
|
case "currOrganize":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(@(@table.ControlModel + @column.ColumnName))))
|
|
break;
|
|
case "checkbox":
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName))))
|
|
break;
|
|
case "usersSelect":
|
|
@:.Where(_controlParsing.GetUsersSelectQueryWhere("@(column.OriginalColumnName)", input.@(@table.ControlModel + "_" + @column.LowerColumnName), @(column.IsMultiple.ToString().ToLower())))
|
|
break;
|
|
default:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Equals(input.@(@table.ControlModel + "_" + @column.LowerColumnName))))
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
@*查询类型为模糊查询*@
|
|
case 2:
|
|
@:.WhereIF(!string.IsNullOrEmpty(input.@(@table.ControlModel + "_" + @column.LowerColumnName)), it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => @(@table.LowerClassName).@(@column.ColumnName).Contains(input.@(@table.ControlModel + "_" + @column.LowerColumnName))))
|
|
break;
|
|
@*查询类型为范围查询*@
|
|
case 3:
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "time":
|
|
case "numInput":
|
|
case "calculate":
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => SqlFunc.Between(@(@table.LowerClassName).@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName), end@(@table.ControlModel + @column.ColumnName))))
|
|
break;
|
|
default:
|
|
@if(column.IsDateTime)
|
|
{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) =>SqlFunc.Between(@(@table.LowerClassName).@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd HH:mm:ss"))))
|
|
}else{
|
|
@:.WhereIF(query@(@table.ControlModel + @column.ColumnName) != null, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName) => SqlFunc.Between(@(@table.LowerClassName).@(@column.ColumnName), start@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 00:00:00"), end@(@table.ControlModel + @column.ColumnName).ParseToDateTime("yyyy-MM-dd 23:59:59"))))
|
|
}
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@*数据权限*@
|
|
@if(Model.UseDataPermission)
|
|
{
|
|
@:.Where(authorizeWhere)
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.WhereIF(@(table.LowerClassName)AuthorizeWhere?.Count > 0, it => SqlFunc.Exists(it.@(@table.LowerClassName).@(@table.TableField), @(table.LowerClassName)AuthorizeWhere))
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:.WhereIF(@(table.LowerClassName)AuthorizeWhere?.Count > 0, it => it.@(@table.LowerClassName)List.Any(@(table.LowerClassName)AuthorizeWhere))
|
|
}
|
|
}
|
|
@if(Model.HasSuperQuery)
|
|
{
|
|
@:.Where(mainConditionalModel)
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:.WhereIF(@(@table.LowerClassName)ConditionalModel.Count > 0, it => SqlFunc.Exists(it.@(@table.LowerClassName).@(@table.TableField), @(@table.LowerClassName)ConditionalModel))
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@:.WhereIF(@(@table.LowerClassName)ConditionalModel.Count > 0, it => it.@(@table.LowerClassName)List.Any(@(@table.LowerClassName)ConditionalModel))
|
|
}
|
|
}
|
|
@:.OrderByIF(string.IsNullOrEmpty(input.sidx), it => it.@(@Model.PrimaryKey)).OrderByIF(!string.IsNullOrEmpty(input.sidx), input.sidx + " " + input.sort)
|
|
@:.ToListAsync(it => new @(@Model.ClassName)ListOutput
|
|
@:{
|
|
@*循环展示字段*@
|
|
@foreach (var column in Model.TableField){
|
|
@if (column.PrimaryKey){
|
|
@:@(@column.LowerColumnName) = it.@column.ColumnName,
|
|
}else if(column.IsShow){
|
|
@{var parameterName = string.Empty;var parameterValue = string.Empty;}
|
|
@switch(column.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @column.TableName + "_jnpf_" + @column.LowerColumnName;}
|
|
@{parameterValue = @column.LowerClassName + "." + @column.ColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @column.LowerColumnName;}
|
|
@{parameterValue = @column.ColumnName;}
|
|
break;
|
|
}
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "date":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue) == null ? null : it.@(parameterValue).Value.ToString("@(column.Format)"),
|
|
break;
|
|
case "modifyTime":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue) == null ? null : it.@(parameterValue).Value.ToString("yyyy-MM-dd HH:mm"),
|
|
break;
|
|
case "createTime":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue).Value.ToString("yyyy-MM-dd HH:mm"),
|
|
break;
|
|
case "switch":
|
|
@:@(parameterName) = it.@(parameterValue),
|
|
@:@(parameterName)_name = it.@(parameterValue) == 0 ? "@(@column.InactiveTxt)" : "@(@column.ActiveTxt)",
|
|
break;
|
|
case "comInput":
|
|
case "billRule":
|
|
case "textarea":
|
|
case "time":
|
|
case "popupSelect":
|
|
case "relationForm":
|
|
case "numInput":
|
|
@:@(parameterName) = it.@parameterValue,
|
|
@:@(parameterName)_name = it.@parameterValue,
|
|
break;
|
|
default:
|
|
@:@(parameterName) = it.@parameterValue,
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@if(Model.ConcurrencyLock)
|
|
{
|
|
@:version = it.Version,
|
|
}
|
|
@foreach(var table in Model.TableRelations)
|
|
{
|
|
@if(table.IsShowField)
|
|
{
|
|
@:@table.ControlModel = it.@(table.LowerClassName)List.Adapt<List<@(table.ClassName)ListOutput>>(),
|
|
}
|
|
}
|
|
@:});
|
|
@:
|
|
@:var inlineEditorList = list.Adapt<List<@(@Model.ClassName)InlineEditorOutput>>();
|
|
@:@if(Model.IsConversion)
|
|
{
|
|
@:
|
|
@:await _repository.AsSugarClient().ThenMapperAsync(inlineEditorList, async item =>
|
|
@:{
|
|
@foreach (var column in Model.TableField)
|
|
{
|
|
@{var dataCount = column.StaticData != null ? column.StaticData.Count : 0;}
|
|
@if(column.IsShow && column.IsConversion)
|
|
{
|
|
@{var parameterName = string.Empty;var dataParameter = string.Empty;}
|
|
@switch(column.IsAuxiliary)
|
|
{
|
|
case true:
|
|
@{parameterName = "jnpf_" + @column.TableName + "_jnpf_" + @column.LowerColumnName;}
|
|
@{dataParameter = @column.LowerClassName + @column.ColumnName;}
|
|
break;
|
|
default:
|
|
@{parameterName = @column.LowerColumnName;}
|
|
@{dataParameter = @column.LowerColumnName;}
|
|
break;
|
|
}
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "modifyUser":
|
|
case "createUser":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName)_name = @(dataParameter)Data != null ? string.Format("{0}/{1}", @(dataParameter)Data.RealName, @(dataParameter)Data.Account) : null;
|
|
@:
|
|
break;
|
|
case "currOrganize":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName)_name = @(dataParameter)Data != null ? @(dataParameter)Data.FullName : null;
|
|
@:
|
|
break;
|
|
case "currPosition":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(u => u.Id.Equals(item.@(parameterName)));
|
|
@:item.@(parameterName)_name = @(dataParameter)Data != null ? @(dataParameter)Data.FullName : null;
|
|
@:
|
|
break;
|
|
case "select":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => item.@(parameterName).Equals(it.id))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:item.@(parameterName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.Id.Equals(item.@(parameterName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
break;
|
|
case "enCode":
|
|
@:item.@(parameterName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.EnCode.Equals(item.@(parameterName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
break;
|
|
}
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
}
|
|
@:}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
}else{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
}
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "checkbox":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
case "dictionary":
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
}
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "radio":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "dictionary":
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.Id.Equals(item.@(parameterName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
case "enCode":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.EnCode.Equals(item.@(parameterName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
}
|
|
@:}
|
|
break;
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => item.@(parameterName).Equals(it.id))?.fullName;
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data .Find(it => it.id.Equals(item.@(parameterName)))?.fullName);
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "cascader":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(s => s.fullName)));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
}
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
break;
|
|
}
|
|
@:}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
}else{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(a => a.fullName)));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
}
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "comSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "depSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "posSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<PositionEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "userSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.RealName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<UserEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.RealName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "roleSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<RoleEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<RoleEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "groupSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<GroupEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName))))?.FullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<GroupEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "treeSelect":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(dataParameter)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.Id.Equals(item.@(parameterName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
case "enCode":
|
|
@:item.@(parameterName)_name = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.EnCode.Equals(item.@(parameterName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
case "enCode":
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.EnCode) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
break;
|
|
}
|
|
@:}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "address":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName).Contains(a.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:item.@(parameterName)_name = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "popupTableSelect":
|
|
@:// @column.ColumnComment
|
|
@:var @(dataParameter)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:item.@(parameterName)_name = @(dataParameter)Data.Find(it => it.id.Equals(item.@(parameterName)))?.fullName;
|
|
}else{
|
|
@:if(item.@(parameterName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = item.@(parameterName).ToObject<List<string>>();
|
|
@:item.@(parameterName)_name = string.Join(",", @(dataParameter)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
@:});
|
|
}
|
|
@if(Model.IsChildIndexShow)
|
|
{
|
|
@:
|
|
@:foreach (var item in inlineEditorList)
|
|
@:{
|
|
@foreach (var table in Model.TableRelations)
|
|
{
|
|
@if(table.IsConversion && table.IsShowField)
|
|
{
|
|
@:await _repository.AsSugarClient().ThenMapperAsync(item.@table.ControlModel, async @(@table.LowerClassName) =>
|
|
@:{
|
|
@foreach(var column in table.ChilderColumnConfigList)
|
|
{
|
|
@{var dataCount = column.StaticData != null ? column.StaticData.Count : 0;}
|
|
@if(column.IsShow && column.IsConversion)
|
|
{
|
|
@switch(column.jnpfKey)
|
|
{
|
|
case "switch":
|
|
@:// @column.ColumnComment
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@table.LowerClassName).@(@column.LowerColumnName) == "0" ? "@(@column.InactiveTxt)" : "@(@column.ActiveTxt)";
|
|
break;
|
|
case "select":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => @(@table.LowerClassName).@(@column.LowerColumnName).Equals(it.id))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(it => it.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.fullName;
|
|
@:}
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "checkbox":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "");
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "radio":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "dictionary":
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(dic => dic.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && dic.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
@:}
|
|
break;
|
|
}
|
|
break;
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => @(@table.LowerClassName).@(@column.LowerColumnName).Equals(it.id))?.fullName;
|
|
@:}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data .Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName);
|
|
@:}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "cascader":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@: var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(s => s.fullName)));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(it => @(@column.LowerColumnName).Contains(it.EnCode) && it.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("@(@column.Separator)", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName).Contains(it.id)).Select(a => a.fullName)));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "comSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName).Contains(it.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "depSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<OrganizeEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<OrganizeEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "posSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<PositionEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<PositionEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "userSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<UserEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.RealName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<UserEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.RealName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "roleSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<RoleEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<RoleEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "groupSelect":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<GroupEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName))))?.FullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<GroupEntity>().Where(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "treeSelect":
|
|
@:// @column.ColumnComment
|
|
@switch(column.ControlsDataType)
|
|
{
|
|
case "static":
|
|
@:var @(@column.LowerColumnName)Data = "[@foreach(var data in column.StaticData){@("{\\\"id\\\":\\\"" + @data.id + "\\\",\\\"fullName\\\":\\\""+ @data.fullName + "\\\"}")@(dataCount == 1 ? "" : ",")dataCount--;}]".ToObject<List<StaticDataModel>>();
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(s => s.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
case "dictionary":
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.Id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
case "enCode":
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = (await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().FirstAsync(a => a.EnCode.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")))?.FullName;
|
|
break;
|
|
}
|
|
}else{
|
|
@switch(column.Value)
|
|
{
|
|
case "id":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
case "enCode":
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", await _repository.AsSugarClient().Queryable<DictionaryDataEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.EnCode) && a.DictionaryTypeId.Equals("@(@column.propsUrl)")).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case "dynamic":
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
break;
|
|
}
|
|
@:
|
|
break;
|
|
case "address":
|
|
@:// @column.ColumnComment
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(a.Id)).Select(a => a.FullName).ToListAsync());
|
|
@:}
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<List<string>>>();
|
|
@:var @(@column.LowerColumnName)Excessive = new List<string>();
|
|
@:foreach (var @(@column.LowerColumnName) in @(@column.LowerColumnName + @column.upperJnpfKey))
|
|
@:{
|
|
@:@(@column.LowerColumnName)Excessive.Add(string.Join("/", await _repository.AsSugarClient().Queryable<ProvinceEntity>().Where(a => @(@column.LowerColumnName).Contains(a.Id)).Select(a => a.FullName).ToListAsync()));
|
|
@:}
|
|
@:
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Excessive);
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
case "popupTableSelect":
|
|
@:// @column.ColumnComment
|
|
@:var @(@column.LowerColumnName)Data = await _dataInterfaceService.GetDynamicList("@(@column.propsUrl)", "@(@column.Value)", "@(@column.Label)", "@(@column.Children)");
|
|
@if(!column.IsMultiple)
|
|
{
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = @(@column.LowerColumnName)Data.Find(it => it.id.Equals(@(@table.LowerClassName).@(@column.LowerColumnName)))?.fullName;
|
|
}else{
|
|
@:if(@(@table.LowerClassName).@(@column.LowerColumnName) != null)
|
|
@:{
|
|
@:var @(@column.LowerColumnName + @column.upperJnpfKey) = @(@table.LowerClassName).@(@column.LowerColumnName).ToObject<List<string>>();
|
|
@:@(@table.LowerClassName).@(@column.LowerColumnName) = string.Join(",", @(@column.LowerColumnName)Data.FindAll(it => @(@column.LowerColumnName + @column.upperJnpfKey).Contains(it.id)).Select(a => a.fullName));
|
|
@:}
|
|
}
|
|
@:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
@:});
|
|
}
|
|
@:
|
|
}
|
|
@:}
|
|
}
|
|
@:
|
|
@if(Model.ParsJnpfKeyConstList.Count>0)
|
|
{
|
|
@:var resData = inlineEditorList.ToObject<List<Dictionary<string, object>>>(CommonConst.options);
|
|
@foreach (var jnpfKeyConst in Model.ParsJnpfKeyConstList)
|
|
{
|
|
@:resData = await _controlParsing.GetParsDataList(resData,"@(@jnpfKeyConst[1])","@(@jnpfKeyConst[0])",_userManager.TenantId);
|
|
}
|
|
|
|
@:inlineEditorList = resData.ToObject<List<@(@Model.ClassName)InlineEditorOutput>>(CommonConst.options);
|
|
}
|
|
@:return inlineEditorList;
|
|
@:}
|
|
break;
|
|
@*导出*@
|
|
case "download":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 导出@(@Model.BusName).
|
|
@:/// </summary>
|
|
@:/// <param name="input">请求参数.</param>
|
|
@:/// <returns></returns>
|
|
@:[HttpGet("Actions/Export")]
|
|
@:public async Task<dynamic> Export([FromQuery] @(@Model.ClassName)ListQueryInput input)
|
|
@:{
|
|
@:var exportData = new List<@(@Model.ClassName)InlineEditorOutput>();
|
|
@:if (input.dataType == 0)
|
|
@:exportData = Clay.Object(await GetList(input)).Solidify<PageResult<@(@Model.ClassName)InlineEditorOutput>>().list;
|
|
@:else
|
|
@:exportData = await GetNoPagingList(input);
|
|
@:List<ParamsModel> paramList = "[@(@Model.ExportField)]".ToList<ParamsModel>();
|
|
@:var excelName="@(@Model.FullName)";
|
|
@:_cacheManager.Set(excelName + ".xls", string.Empty);
|
|
@:return CodeGenExportDataHelper.GetDataExport(excelName, input.selectKey,_userManager.UserId, exportData.ToObject<List<Dictionary<string, object>>>(), paramList,@((Model.IndexDataType == 3).ToString().ToLower()), true);
|
|
@:}
|
|
break;
|
|
@*批量删除*@
|
|
case "batchRemove":
|
|
@:
|
|
@:/// <summary>
|
|
@:/// 批量删除@(@Model.BusName).
|
|
@:/// </summary>
|
|
@:/// <param name="ids">主键数组.</param>
|
|
@:/// <returns></returns>
|
|
@:[HttpPost("batchRemove")]
|
|
@:[UnitOfWork]
|
|
@:public async Task BatchRemove([FromBody] List<@(Model.PrimaryKeyPolicy == 1 ? "string" : "long")> ids)
|
|
@:{
|
|
@*跨库*@
|
|
@if(Model.DbLinkId != "0")
|
|
{
|
|
@:var dbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(it => it.Id.Equals("@(@Model.DbLinkId)"));
|
|
@:_sqlSugarClient = _dataBaseManager.ChangeDataBase(dbLink);
|
|
}
|
|
@:var entitys = await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Queryable<" + @Model.ClassName + "Entity>()" : "_repository.AsQueryable()").In(it => it.@(@Model.PrimaryKey), ids).ToListAsync();
|
|
@:if (entitys.Count > 0)
|
|
@:{
|
|
@:// 批量删除@(@Model.BusName)
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient.Deleteable<" + @Model.ClassName + "Entity>()" : "_repository.AsDeleteable()").In(it => it.@(@Model.PrimaryKey),ids).ExecuteCommandAsync();
|
|
@:
|
|
@foreach(var table in Model.AuxiliayTableRelations)
|
|
{
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Deleteable<@(@table.ClassName)Entity>().In(it => it.@(@table.TableField), entitys.Select(it=> it.@(@table.RelationField))).ExecuteCommandAsync();
|
|
@:
|
|
}
|
|
@foreach(var table in Model.TableRelations){
|
|
@:// 清空@(@table.TableComment)表数据
|
|
@:await @(Model.DbLinkId != "0" ? "_sqlSugarClient" : "_repository.AsSugarClient()").Deleteable<@(@table.ClassName)Entity>().In(u => u.@(@table.TableField), entitys.Select(s => s.@(@table.RelationField)).ToArray()).ExecuteCommandAsync();
|
|
@:
|
|
}
|
|
@:}
|
|
@:}
|
|
break;
|
|
}
|
|
}
|
|
} |