update 字典结构更改. 扩展值可编辑为json
This commit is contained in:
@@ -3989,6 +3989,36 @@
|
||||
子节点集合
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Ewide.Core.Service.DictTreeNode.Id">
|
||||
<summary>
|
||||
Id
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Ewide.Core.Service.DictTreeNode.ParentId">
|
||||
<summary>
|
||||
父Id
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Ewide.Core.Service.DictTreeNode.Title">
|
||||
<summary>
|
||||
名称
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Ewide.Core.Service.DictTreeNode.Value">
|
||||
<summary>
|
||||
值
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Ewide.Core.Service.DictTreeNode.Weight">
|
||||
<summary>
|
||||
排序,越小优先级越高
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Ewide.Core.Service.DictTreeNode.Children">
|
||||
<summary>
|
||||
子节点
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Ewide.Core.Service.DictTypeInput">
|
||||
<summary>
|
||||
字典类型参数
|
||||
@@ -4086,11 +4116,11 @@
|
||||
<param name="input"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:Ewide.Core.Service.SysDictDataService.DeleteDictDataBatch(System.Collections.Generic.List{System.String})">
|
||||
<member name="M:Ewide.Core.Service.SysDictDataService.DeleteDictDataBatch(System.String[])">
|
||||
<summary>
|
||||
删除字典值 id数组传入
|
||||
</summary>
|
||||
<param name="idList"></param>
|
||||
<param name="ids"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:Ewide.Core.Service.SysDictDataService.UpdateDictData(Ewide.Core.Service.UpdateDictDataInput)">
|
||||
|
||||
@@ -57,4 +57,52 @@ namespace Ewide.Core.Service
|
||||
Children = (List<DictTreeOutput>)children;
|
||||
}
|
||||
}
|
||||
|
||||
public class DictTreeNode : ITreeNode
|
||||
{
|
||||
/// <summary>
|
||||
/// Id
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 父Id
|
||||
/// </summary>
|
||||
public string ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 名称
|
||||
/// </summary>
|
||||
public string Title { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 值
|
||||
/// </summary>
|
||||
public string Value { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序,越小优先级越高
|
||||
/// </summary>
|
||||
public int Weight { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 子节点
|
||||
/// </summary>
|
||||
public List<DictTreeNode> Children { get; set; } = new List<DictTreeNode>();
|
||||
|
||||
public string GetId()
|
||||
{
|
||||
return Id;
|
||||
}
|
||||
|
||||
public string GetPid()
|
||||
{
|
||||
return ParentId;
|
||||
}
|
||||
|
||||
public void SetChildren(IList children)
|
||||
{
|
||||
Children = (List<DictTreeNode>)children;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ namespace Ewide.Core.Service
|
||||
/// </summary>
|
||||
public class DictTypeInput : PageInputBase
|
||||
{
|
||||
public string Pid { get; set; }
|
||||
/// <summary>
|
||||
/// 名称
|
||||
/// </summary>
|
||||
@@ -17,6 +18,8 @@ namespace Ewide.Core.Service
|
||||
/// </summary>
|
||||
public virtual string Code { get; set; }
|
||||
|
||||
public int Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
|
||||
@@ -14,6 +14,7 @@ namespace Ewide.Core.Service
|
||||
Task<dynamic> GetDictDataListByDictTypeId(string dictTypeId);
|
||||
Task<dynamic> GetDictDataListByDictTypeIds(SysDictType[] dictTypes);
|
||||
Task<dynamic> QueryDictDataPageList([FromQuery] DictDataInput input);
|
||||
Task DeleteDictDataBatch(string[] Ids);
|
||||
Task UpdateDictData(UpdateDictDataInput input);
|
||||
}
|
||||
}
|
||||
@@ -9,7 +9,7 @@ namespace Ewide.Core.Service
|
||||
Task AddDictType(AddDictTypeInput input);
|
||||
Task ChangeDictTypeStatus(UpdateDictTypeInput input);
|
||||
Task DeleteDictType(DeleteDictTypeInput input);
|
||||
Task<List<DictTreeOutput>> GetDictTree();
|
||||
Task<List<DictTreeNode>> GetDictTree();
|
||||
Task<dynamic> GetDictType([FromQuery] QueryDictTypeInfoInput input);
|
||||
Task<dynamic> GetDictTypeDropDown([FromQuery] DropDownDictTypeInput input);
|
||||
Task<dynamic> GetDictTypeDropDowns([FromQuery] DropDownDictTypesInput input);
|
||||
|
||||
@@ -95,12 +95,12 @@ namespace Ewide.Core.Service
|
||||
/// <summary>
|
||||
/// 删除字典值 id数组传入
|
||||
/// </summary>
|
||||
/// <param name="idList"></param>
|
||||
/// <param name="ids"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("/sysDictData/deleteBatch")]
|
||||
public async Task DeleteDictDataBatch(List<string> idList)
|
||||
public async Task DeleteDictDataBatch([FromBody] string[] ids)
|
||||
{
|
||||
var dictDataList = await _sysDictDataRep.Where(s => idList.Contains(s.Id)).ToListAsync();
|
||||
var dictDataList = await _sysDictDataRep.Where(s => ids.Contains(s.Id)).ToListAsync();
|
||||
if (dictDataList.Count == 0) throw Oops.Oh(ErrorCode.D3004);
|
||||
dictDataList.ForEach(s =>
|
||||
{
|
||||
|
||||
@@ -40,9 +40,13 @@ namespace Ewide.Core.Service
|
||||
{
|
||||
var code = !string.IsNullOrEmpty(input.Code?.Trim());
|
||||
var name = !string.IsNullOrEmpty(input.Name?.Trim());
|
||||
var pId = !string.IsNullOrEmpty(input.Pid?.Trim());
|
||||
var type = input.Type > 0;
|
||||
var dictTypes = await _sysDictTypeRep.DetachedEntities
|
||||
.Where(pId, u => EF.Functions.Like(u.Pids, $"%[{input.Pid.Trim()}]%") || u.Id == input.Pid.Trim())
|
||||
.Where((code, u => EF.Functions.Like(u.Code, $"%{input.Code.Trim()}%")),
|
||||
(name, u => EF.Functions.Like(u.Name, $"%{input.Name.Trim()}%")))
|
||||
.Where(type, u => input.Type == 1 ? string.IsNullOrEmpty(u.Code) : !string.IsNullOrEmpty(u.Code))
|
||||
.Where(u => u.Status != CommonStatus.DELETED).OrderBy(u => u.Sort)
|
||||
//.ToPagedListAsync(input.PageNo, input.PageSize);
|
||||
.ToPageData(input);
|
||||
@@ -176,18 +180,18 @@ namespace Ewide.Core.Service
|
||||
/// <returns></returns>
|
||||
[AllowAnonymous]
|
||||
[HttpGet("/sysDictType/tree")]
|
||||
public async Task<List<DictTreeOutput>> GetDictTree()
|
||||
public async Task<List<DictTreeNode>> GetDictTree()
|
||||
{
|
||||
var DictTypeList = await _sysDictTypeRep.AsQueryable().ToListAsync();
|
||||
return new TreeBuildUtil<DictTreeOutput>().DoTreeBuild(DictTypeList.Select(u => new DictTreeOutput
|
||||
{
|
||||
Name=u.Name,
|
||||
Code = u.Code,
|
||||
Pid=u.Pid,
|
||||
Id=u.Id,
|
||||
Remark=u.Remark,
|
||||
Sort =u.Sort
|
||||
}).OrderBy(s => s.Sort).ToList());
|
||||
var DictTypeList = await _sysDictTypeRep.AsQueryable().Where(p => string.IsNullOrEmpty(p.Code)).ToListAsync();
|
||||
return new TreeBuildUtil<DictTreeNode>().DoTreeBuild(DictTypeList
|
||||
.OrderBy(s => s.Sort)
|
||||
.Select(u => new DictTreeNode
|
||||
{
|
||||
Title = u.Name,
|
||||
ParentId = u.Pid,
|
||||
Id = u.Id,
|
||||
Value = u.Id
|
||||
}).ToList());
|
||||
}
|
||||
/// <summary>
|
||||
/// 创建Pids格式
|
||||
|
||||
Reference in New Issue
Block a user