using System.Collections.Generic; using System.Threading.Tasks; using DMS.Core.Models; namespace DMS.Infrastructure.Interfaces { public interface IVarDataRepository { Task GetByIdAsync(int id); Task GetByIdAsync(int id, ITransaction db); Task> GetAllAsync(); Task> GetAllAsync(ITransaction db); Task> GetByVariableTableIdAsync(int varTableId); Task> GetByVariableTableIdAsync(int varTableId, ITransaction db); Task AddAsync(Variable variable); Task AddAsync(Variable variable, ITransaction db); Task AddAsync(IEnumerable variableDatas); Task AddAsync(IEnumerable variableDatas, ITransaction db); Task UpdateAsync(Variable variable); Task UpdateAsync(Variable variable, ITransaction db); Task UpdateAsync(List variableDatas); Task UpdateAsync(List variableDatas, ITransaction db); Task DeleteAsync(Variable variable); Task DeleteAsync(Variable variable, ITransaction db); Task DeleteAsync(IEnumerable variableDatas); Task AddMqttToVariablesAsync(IEnumerable variableMqttList); } }