using Newtonsoft.Json.Linq; using OI.Metrology.Shared.DataModels; using System.Data; using System.Transactions; namespace OI.Metrology.Shared.Models.Stateless; public interface IMetrologyRepository { ToolType GetToolTypeByID(int id); TransactionScope StartTransaction(); IEnumerable GetToolTypes(); ToolType GetToolTypeByName(string name); DataTable GetData(int toolTypeId, long headerId); void PurgeExistingData(int toolTypeId, string title); DataSet GetOIExportData(int toolTypeId, long headerid); Guid GetHeaderAttachmentID(int toolTypeId, long headerId); IEnumerable GetAwaitingDisposition(); string GetHeaderInsertDate(int toolTypeId, long headerId); Guid GetDataAttachmentIDByTitle(int toolTypeId, string title); Guid GetHeaderAttachmentIDByTitle(int toolTypeId, string title); int UpdateReviewDate(int toolTypeId, long headerId, bool clearDate); IEnumerable GetToolTypeMetadataByToolTypeID(int id); string GetDataInsertDate(int toolTypeId, long headerId, string title); void SetHeaderDirName(string tableName, long headerId, string dateDir); DataTable ExportData(string spName, DateTime startTime, DateTime endTime); string GetAttachmentInsertDateByGUID(string tableName, Guid attachmentId); void SetHeaderAttachmentID(int toolTypeId, long headerId, string attachmentId); void SetDataDirName(string tableName, long headerId, string title, string dateDir); IEnumerable> GetHeaderFields(int toolTypeId, long headerid); void SetDataAttachmentID(int toolTypeId, long headerId, string title, string attachmentId); HeaderCommon[] GetHeaderTitles(int? toolTypeId, int? pageNo, int? pageSize, out long totalRecords); long InsertToolDataJSON(JToken jsonbody, long headerId, List metaData, string tableName); DataTable GetHeaders(int toolTypeId, string? startTime, string? endTime, int? pageNo, int? pageSize, long? headerid, out long totalRecords); }