namespace HStation.CAL.LocalClient { /// /// /// public class XhsPhartGraph : IXhsPhartGraph { private readonly HStation.Service.XhsPhartGraph _service = new(); #region Query /// /// 获取所有 /// public async Task> GetAll() { return await Task.Factory.StartNew(() => { var list = _service.GetAll(); var vm_list = list?.Select(x => new XhsPhartGraphDto(x)).ToList(); return vm_list; }); } /// /// 通过 ID 获取 /// public async Task GetByID(long ID) { return await Task.Factory.StartNew(() => { var model = _service.GetByID(ID); return model == null ? null : new XhsPhartGraphDto(model); }); } /// /// 通过 ID 获取 /// public async Task> GetByIds(List Ids) { return await Task.Factory.StartNew(() => { var list = _service.GetByIds(Ids); var vm_list = list?.Select(x => new XhsPhartGraphDto(x)).ToList(); return vm_list; }); } /// /// 通过 DiagramID 获取 /// public async Task> GetByDiagramID(long DiagramID) { return await Task.Factory.StartNew(() => { var list = _service.GetByDiagramID(DiagramID); var vmList = list?.Select(x => new XhsPhartGraphDto(x)).ToList(); return vmList; }); } /// /// 通过 DiagramIds 获取 /// public async Task> GetByDiagramIds(List DiagramIds) { return await Task.Factory.StartNew(() => { var list = _service.GetByDiagramIds(DiagramIds); var vmList = list?.Select(x => new XhsPhartGraphDto(x)).ToList(); return vmList; }); } #endregion #region Insert /// /// 添加一条 /// public async Task Insert(AddXhsPhartGraphInput input) { return await Task.Factory.StartNew(() => { var diagram = new Service.XhsPhartDiagram().GetByID(input.DiagramID); if (diagram == null) { throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D001, $"DiagramID:{input.DiagramID} 数据不存在"); } var model = input.Adapt(); var id = _service.Insert(model); return id; }); } /// /// 批量插入 /// public async Task Inserts(List inputList) { return await Task.Factory.StartNew(() => { return false; }); } /// /// 大批量插入 /// public async Task BulkInserts(List inputList) { return await Task.Factory.StartNew(() => { return false; }); } #endregion #region Update /// /// 更新一条 /// public async Task Update(UpdateXhsPhartGraphInput 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 diagram = new Service.XhsPhartDiagram().GetByID(input.DiagramID); if (diagram == null) { throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D001, $"DiagramID:{input.DiagramID} 数据不存在"); } var rhs = new Model.XhsPhartGraph(model); input.Adapt(rhs); var bol = _service.Update(rhs); return bol; }); } /// /// 批量更新 /// public async Task Updates(List inputList) { return await Task.Factory.StartNew(() => { var service_diagram = new Lazy(() => new Service.XhsPhartDiagram()); var rhsList = new List(); foreach (var input in inputList) { var model = _service.GetByID(input.ID); if (model == null) { throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D001, $"ID:{input.ID} 数据不存在"); } var diagram = service_diagram.Value.GetByID(input.DiagramID); if (diagram == null) { throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D001, $"DiagramID:{input.DiagramID} 数据不存在"); } var rhs = new Model.XhsPhartGraph(model); input.Adapt(rhs); rhsList.Add(rhs); } var bol = _service.Updates(rhsList); return bol; }); } /// /// 大批量更新 /// public async Task BulkUpdates(List inputList) { return await Task.Factory.StartNew(() => { return false; }); } /// /// 更新排序码 /// public async Task UpdateSortCode(long ID, int SortCode) { return await Task.Factory.StartNew(() => { return _service.UpdateSortCode(ID, SortCode); }); } /// /// 更新排序 /// public async Task UpdateSorter(List inputList) { return await Task.Factory.StartNew(() => { var list = inputList.Select(x => x.Adapt()).ToList(); var bol = _service.UpdateSorter(list); return bol; }); } /// /// 更新 Paras /// public async Task UpdateParas(long ID, Dictionary Paras) { return await Task.Factory.StartNew(() => { return _service.UpdateParas(ID, Paras); }); } /// /// 更新 Flags /// public async Task UpdateFlags(long ID, List Flags) { return await Task.Factory.StartNew(() => { return _service.UpdateFlags(ID, Flags); }); } /// /// 更新 DispParas /// public async Task UpdateDispParas(long ID, string DispParas) { return await Task.Factory.StartNew(() => { return _service.UpdateDispParas(ID, DispParas); }); } /// /// 更新 ExtraParas /// public async Task UpdateExtraParas(long ID, string ExtraParas) { return await Task.Factory.StartNew(() => { return _service.UpdateExtraParas(ID, ExtraParas); }); } /// /// 更新 GraphParas /// public async Task UpdateGraphParas(long ID, string GeometryInfo) { return await Task.Factory.StartNew(() => { var bol = _service.UpdateGraphParas(ID, GeometryInfo); return bol; }); } /// /// 更新 GraphInfo /// public async Task UpdateGraphInfo(long ID, string GraphInfo) { return await Task.Factory.StartNew(() => { var bol = _service.UpdateGraphInfo(ID, GraphInfo); return bol; }); } /// /// 更新 GeometryParas /// public async Task UpdateGeometryParas(long ID, string GeometryParas) { return await Task.Factory.StartNew(() => { var bol = _service.UpdateGeometryParas(ID, GeometryParas); return bol; }); } /// /// 更新 GeometryInfo /// public async Task UpdateGeometryInfo(long ID, string GeometryInfo) { return await Task.Factory.StartNew(() => { var bol = _service.UpdateGeometryInfo(ID, GeometryInfo); return bol; }); } #endregion #region Delete /// /// 通过 ID 删除 /// public async Task DeleteByID(long ID) { return await Task.Factory.StartNew(() => { var bol = _service.DeleteByID(ID, out string msg); if (!bol) { throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D999, msg); } return true; }); } /// /// 通过 DiagramID 删除 /// public async Task DeleteByDiagramID(long DiagramID) { return await Task.Factory.StartNew(() => { var bol = _service.DeleteByDiagramID(DiagramID, out string Msg); if (!bol) { throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D999, Msg); } return bol; }); } /// /// 通过 Ids 删除 /// public async Task DeleteByIds(List Ids) { return await Task.Factory.StartNew(() => { return false; }); } /// /// 删除全部 /// /// public async Task DeleteAll() { return await Task.Factory.StartNew(() => { return false; }); } #endregion } }