using YY.Admin.Core.Entity; namespace YY.Admin.Core.Services; public interface ISupplierService { Task PageAsync(int pageNo, int pageSize, string? supplierCode = null, string? supplierName = null, string? supplierShortName = null, string? erpCode = null, string? status = null, CancellationToken ct = default); Task GetByIdAsync(string id, CancellationToken ct = default); Task AddAsync(MesXslSupplier supplier, CancellationToken ct = default); Task EditAsync(MesXslSupplier supplier, CancellationToken ct = default); Task DeleteAsync(string id, CancellationToken ct = default); Task UpdateStatusAsync(string id, string status, CancellationToken ct = default); /// /// 重连后将离线期间的本地改动推送到后端,并检测冲突。 /// Task PushPendingOnReconnectAsync(CancellationToken ct = default); } public record SupplierPageResult(List Records, long Total, int PageNo, int PageSize); public record PushPendingResult(int PushedCount, int ConflictCount, int NewRecordsPushed);