Exemple #1
0
        public async Task <EquipmentType> GetByName(string name)
        {
            await using HospitalCalendarDbContext context = ContextFactory.CreateDbContext();

            return(await context.EquipmentTypes
                   .Where(e => e.Name == name)
                   .Where(e => e.IsActive)
                   .FirstOrDefaultAsync());
        }
Exemple #2
0
 public async Task <List <EquipmentType> > GetAllByRoom(Room room)
 {
     await using HospitalCalendarDbContext context = ContextFactory.CreateDbContext();
     return(context.Rooms
            .Include(r => r.Equipment)
            .ThenInclude(e => e.EquipmentType)
            .First(r => r.IsActive && room.ID == r.ID)
            .Equipment
            .Select(e => e.EquipmentType)
            .GroupBy(et => et.Name)
            .Select(g => g.First())
            .ToList());
 }
Exemple #3
0
        public new async Task <bool> Delete(Guid id)
        {
            await using HospitalCalendarDbContext context = ContextFactory.CreateDbContext();
            var equipmentType = await Get(id);

            equipmentType.IsActive = false;

            await context.EquipmentItems
            .Include(ei => ei.EquipmentType)
            .Where(ei => ei.EquipmentType.Name == equipmentType.Name)
            .ForEachAsync(async ei =>
            {
                ei.IsActive = false;
                await _equipmentItemService.Update(ei);
            });

            await Update(equipmentType);

            return(true);
        }