namespace HStation.CAL.LocalClient
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public class XhsPhartDiagramExtensions : IXhsPhartDiagramExtensions
|
{
|
|
private readonly HStation.Service.XhsPhartDiagram _service = new();
|
|
#region Query
|
|
/// <summary>
|
/// 获取所有
|
/// </summary>
|
public async Task<List<XhsPhartDiagramExGraphListDto>> GetAll()
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
var list = _service.GetAll();
|
if (list == null || list.Count < 1)
|
{
|
return default;
|
}
|
var all_graph_list = new Service.XhsPhartGraph().GetAll();
|
var vm_list = new List<XhsPhartDiagramExGraphListDto>();
|
foreach (var item in list)
|
{
|
var graph_list = all_graph_list?.Where(x => x.DiagramID == item.ID).ToList();
|
var vm = new XhsPhartDiagramExGraphListDto(item, graph_list);
|
vm_list.Add(vm);
|
}
|
return vm_list;
|
});
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
public async Task<XhsPhartDiagramExGraphListDto> GetByID(long ID)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
var model = _service.GetByID(ID);
|
if (model == null)
|
{
|
return default;
|
}
|
var graph_list = new Service.XhsPhartGraph().GetByDiagramID(model.ID);
|
var vm = new XhsPhartDiagramExGraphListDto(model, graph_list);
|
return vm;
|
});
|
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
public async Task<List<XhsPhartDiagramExGraphListDto>> GetByIds(List<long> Ids)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
var list = _service.GetByIds(Ids);
|
if (list == null || list.Count < 1)
|
{
|
return default;
|
}
|
var all_graph_list = new Service.XhsPhartGraph().GetByDiagramIds(Ids);
|
var vm_list = new List<XhsPhartDiagramExGraphListDto>();
|
foreach (var item in list)
|
{
|
var graphList = all_graph_list?.Where(x => x.DiagramID == item.ID).ToList();
|
var vm = new XhsPhartDiagramExGraphListDto(item, graphList);
|
vm_list.Add(vm);
|
}
|
return vm_list;
|
});
|
}
|
|
#endregion
|
|
#region Insert
|
|
/// <summary>
|
/// 添加一条
|
/// </summary>
|
public async Task<long> Insert(AddXhsPhartDiagramExGraphListInput input)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
if (!string.IsNullOrEmpty(input.TagName))
|
{
|
if (_service.IsExistTagName(input.TagName))
|
{
|
throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.V001, $"TagName:{input.TagName}", "标记已存在");
|
}
|
}
|
var model = input.Adapt<AddXhsPhartDiagramInput, Model.XhsPhartDiagram>();
|
var graphList = input.GraphList?.Select(x => x.Adapt<AddXhsPhartGraphInput, Model.XhsPhartGraph>()).ToList();
|
var id = _service.InsertEx(model, graphList);
|
return id;
|
});
|
}
|
|
/// <summary>
|
/// 批量插入
|
/// </summary>
|
public async Task<bool> Inserts(List<AddXhsPhartDiagramExGraphListInput> inputList)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
return false;
|
});
|
}
|
|
|
/// <summary>
|
/// 大批量插入
|
/// </summary>
|
public async Task<bool> BulkInserts(List<AddXhsPhartDiagramExGraphListInput> inputList)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
return false;
|
});
|
}
|
|
#endregion
|
|
#region Update
|
|
/// <summary>
|
/// 更新一条
|
/// </summary>
|
public async Task<bool> Update(UpdateXhsPhartDiagramExGraphListInput input)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
var model = _service.GetByID(input.ID);
|
if (model == null)
|
{
|
throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D001, $"ID:{input.ID} 数据不存在");
|
}
|
var model_rhs = new Model.XhsPhartDiagram(model);
|
input.Adapt(model_rhs);
|
|
List<Model.XhsPhartGraph> ex_rhs_list = null;
|
if (input.GraphList != null && input.GraphList.Count > 0)
|
{
|
var service_ex = new Service.XhsPhartGraph();
|
ex_rhs_list = new List<Model.XhsPhartGraph>();
|
foreach (var graph in input.GraphList)
|
{
|
var ex_model = service_ex.GetByID(graph.ID);
|
if (ex_model == null)
|
{
|
throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D001, $"GraphID:{graph.ID} 数据不存在");
|
}
|
if (graph.DiagramID != input.ID)
|
{
|
throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.V001, $"Graph-DiagramID:{graph.DiagramID} 数据不正确");
|
}
|
var ex_rhs = new Model.XhsPhartGraph(ex_model);
|
graph.Adapt(ex_rhs);
|
ex_rhs_list.Add(ex_rhs);
|
}
|
}
|
var bol = _service.UpdateEx(model_rhs, ex_rhs_list);
|
return bol;
|
});
|
}
|
|
/// <summary>
|
/// 批量更新
|
/// </summary>
|
public async Task<bool> Updates(List<UpdateXhsPhartDiagramExGraphListInput> inputList)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
return false;
|
});
|
}
|
|
|
/// <summary>
|
/// 大批量更新
|
/// </summary>
|
public async Task<bool> BulkUpdates(List<UpdateXhsPhartDiagramExGraphListInput> inputList)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
return false;
|
});
|
}
|
|
#endregion
|
|
#region Delete
|
|
/// <summary>
|
/// 通过 ID 删除(同时删除图形)
|
/// </summary>
|
public async Task<bool> DeleteByID(long ID)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
var bol = _service.DeleteExByID(ID, out string msg);
|
if (!bol)
|
{
|
throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D999, msg);
|
}
|
return true;
|
});
|
}
|
|
/// <summary>
|
/// 通过 Ids 删除
|
/// </summary>
|
public async Task<bool> DeleteByIds(List<long> Ids)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
return false;
|
});
|
}
|
|
/// <summary>
|
/// 删除全部
|
/// </summary>
|
/// <returns></returns>
|
public async Task<bool> DeleteAll()
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
return false;
|
});
|
}
|
|
#endregion
|
}
|
}
|