using System.Collections.Generic; using System.Data.Common; using System.Threading; using System.Threading.Tasks; using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; using GB5Shared.QueryExecutor; using GB5Shared.ResponseStandard; using MMDAL.DTO.MTR; namespace MMDAL.CustomCode.MTR { public interface IMtrDAL { // ── Reads — return typed DTOs; never serialized strings ──────────── Task GetMtr(int mtrId, LoginDTO loginDTO, CancellationToken ct); Task> GetMtrList(string? searchText, int partyId, int itemId, byte reportStatus, int pageOffset, int pageSize, LoginDTO loginDTO, CancellationToken ct); Task GetSelectListMtr(CriteriaDTO criteriaDTO, LoginDTO loginDTO); // ── Writes — accept DbTransaction from BLL; return Result ── Task> SaveMtr(MtrReportDTO mtrDTO, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); Task> UpdateMtr(MtrReportDTO mtrDTO, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); Task> DeleteMtr(int mtrId, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); } }