using System.Data.Common; using GB5Shared.DTO.Framework.Login; using GB5Shared.QueryExecutor; using GB5Shared.ResponseStandard; using MMDAL.DTO.PartLevel; using static GB5Shared.QueryExecutor.QueryExecutor; namespace MMDAL.CustomCode.PartLevel { public interface IPartDetailDAL { Task GetPartDetail(int partDetailId, LoginDTO loginDTO, CancellationToken ct); Task> GetPartDetailLineage(int rootPartDetailId, LoginDTO loginDTO, CancellationToken ct); Task> GetPartDetailList(PartDetailCriteriaDTO criteria, LoginDTO loginDTO, CancellationToken ct); Task SavePartDetail(PartDetailDTO dto, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); Task DeletePartDetailsByEntity(int entityTypeId, int entityId, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); Task UpdatePartDetailStatus(int partDetailId, short status, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); Task SyncPartDetailWIP(int partDetailId, decimal wipStock, decimal availableToWork, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); Task GetFirstPartDetailIdByEntity(int entityTypeId, int entityId, LoginDTO loginDTO, CancellationToken ct); Task UpdatePartDetailLineage(int entityTypeId, int entityId, int? parentPartDetailId, int rootPartDetailId, LoginDTO loginDTO, DbTransaction tx, CancellationToken ct); } }