using DbAPI.Connections;
using DTS.Common.Interface.Database;
using System;
using DTS.Common.Classes.LabratoryDetails;
using DTS.Common.Interface.TestMetaData;
namespace DbAPI.LabratoryDetails
{
///
/// LabratoryDetails related functions (GetLabratoryDetails, )
///
public interface ILabratoryDetails
{
///
/// Inserts a new record in the LabratoryDetails table
///
///
///
///
/// The Id of the new record in the LabratoryDetails table
/// Error string returned, possibly from sp_LabratoryDetailsUpdate
/// 0 (ERROR_SUCCESS) on success, all other values are error codes
ulong LabratoryDetailsInsert(IUserDbRecord user,
IConnectionDetails connection,
LabratoryDetailsDbRecord labratoryDetailsDbRecord,
out int newId,
out string errorString);
///
/// Updates an existing record in the LabratoryDetails table
///
///
///
///
/// Error string returned, possibly from sp_LabratoryDetailsUpdate
/// 0 (ERROR_SUCCESS) on success, all other values are error codes
ulong LabratoryDetailsUpdate(IUserDbRecord user,
IConnectionDetails connection,
LabratoryDetailsDbRecord labratoryDetailsDbRecord,
out string errorString);
///
/// Updates an existing record or Inserts a new record in the LabratoryDetails table
///
///
///
///
/// Error string returned, possibly from sp_LabratoryDetailsUpdate
/// 0 (ERROR_SUCCESS) on success, all other values are error codes
ulong LabratoryDetailsUpdateInsert(IUserDbRecord user,
IConnectionDetails connection,
LabratoryDetailsDbRecord labratoryDetailsDbRecord,
out string errorString);
///
/// retrieves all laboratory details matching search criteria
///
///
///
/// Name in the LabratoryDetails table
/// null, or records found
/// 0 (ERROR_SUCCESS) on success, all other values are error codes
ulong LabratoryDetailsGet(IUserDbRecord user,
IConnectionDetails connection,
string name,
out ILabratoryDetailsDbRecord[] labratoryDetailsDbRecords);
///
/// Deletes an entry in the LabratoryDetails table
///
///
///
/// Name in the LabratoryDetails table
/// Error string returned, possibly from sp_LabratoryDetailsDelete
/// 0 (ERROR_SUCCESS) on success, all other values are error codes
ulong LabratoryDetailsDelete(IUserDbRecord user,
IConnectionDetails connection,
string name,
out string errorString);
}
}