using Distribution.Data; using Microsoft.EntityFrameworkCore; namespace Distribution.Features.SysConfig; public class SysConfigRepository(AppDBContext context) : ISysConfigRepository { public async Task GetByKeyAsync(string key) => await context.SysConfigs.FindAsync(key); public async Task> GetAllAsync() => await context.SysConfigs.OrderBy(c => c.Key).ToListAsync(); public async Task UpsertAsync(Models.SysConfig entity) { var existing = await context.SysConfigs.FindAsync(entity.Key); if (existing is null) { await context.SysConfigs.AddAsync(entity); } else { existing.Value = entity.Value; existing.UpdatedAt = entity.UpdatedAt; existing.UpdatedBy = entity.UpdatedBy; context.SysConfigs.Update(existing); } } }