/
valzem
/
MatControl
Обзор
Документация
Войти
/
valzem
/
MatControl
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/MatControl.Data/Repositories/EmployeeRepository.cs
59 строк
1 KB
MatControl Dev
Бизнес-правила и целостность данных: списание только с МОЛ, возврат МЗ по сумме выдач, детерминированный выбор МОЛ, лимит количества МЗ, свободные ОС для МОЛ; состояние 'К списанию'; инструкция, AGENTS.md, скиллы и задачи обновлены (78 тестов)
09 авг 2026, 07:22
09 авг 2026, 07:22
6b6ae74
Код
Авторство
О чём код?
using MatControl.Domain; using Microsoft.EntityFrameworkCore; namespace MatControl.Data.Repositories; public class EmployeeRepository : IEmployeeRepository { private readonly MatControlDbContext _context; public EmployeeRepository(MatControlDbContext context) { _context = context; } public async Task<Employee?> GetByIdAsync(int id) { return await _context.Employees.FindAsync(id); } public async Task<List<Employee>> GetAllAsync() { return await _context.Employees.OrderBy(e => e.FullName).ToListAsync(); } public async Task<Employee?> GetResponsibleAsync() { return await _context.Employees .Where(e => e.IsResponsible) .OrderBy(e => e.FullName) .FirstOrDefaultAsync(); } public async Task<List<Employee>> GetAllResponsibleAsync() { return await _context.Employees.Where(e => e.IsResponsible).OrderBy(e => e.FullName).ToListAsync(); } public async Task AddAsync(Employee employee) { await _context.Employees.AddAsync(employee); } public Task UpdateAsync(Employee employee) { _context.Employees.Update(employee); return Task.CompletedTask; } public Task DeleteAsync(Employee employee) { _context.Employees.Remove(employee); return Task.CompletedTask; } public async Task<bool> SaveAsync() { return await _context.SaveChangesAsync() >= 0; } }