using GB5Shared.DTO.Framework.Login; using GB5Shared.QueryExecutor; using MMDAL.DTO.ScanTarget; using MMDAL.Query.ScanTarget; namespace MMDAL.CustomCode.ScanTarget; public class IndentDetailScanTargetDAL : IIndentDetailScanTargetDAL { private readonly IQueryExecutor _qe; public IndentDetailScanTargetDAL(IQueryExecutor qe) => _qe = qe; public async Task GetByIdAsync(int indentDetailId, LoginDTO login, CancellationToken ct) { var rows = await _qe.QueryAsync(login, IndentDetailScanTargetQB.GET_BY_ID, new { EntityId = indentDetailId, TenantId = login.ClientId }, cancellationToken: ct).ConfigureAwait(false); return rows.FirstOrDefault(); } public async Task> SearchAsync(string searchTerm, LoginDTO login, CancellationToken ct) => await _qe.QueryAsync(login, IndentDetailScanTargetQB.SEARCH, new { SearchTerm = searchTerm ?? string.Empty, TenantId = login.ClientId }, cancellationToken: ct).ConfigureAwait(false); }