public async Task <StoreOpenDayDto[]> UpdateOpenDayAsync(int branchId, StoreOpenDayDto[] dtoArr) { var storeBranchE = await Repository.GetAsync(branchId) ?? throw new EntityNotFoundException(); var openDayEs = await AsyncExecuter.ToListAsync(StoreOpenDayRepository.Where(e => e.StoreBranchID == branchId)); foreach (var entity in openDayEs) { var dto = dtoArr.SingleOrDefault(e => e.DayOfWeek == entity.DayOfWeek); if (dto == null) { await StoreOpenDayRepository.DeleteAsync(entity, autoSave : true); } else { entity.OpeningTime = dto.OpeningTime; entity.ClosingTime = dto.ClosingTime; await StoreOpenDayRepository.UpdateAsync(entity, autoSave : true); } } foreach (var dto in dtoArr) { var entity = openDayEs.SingleOrDefault(e => e.DayOfWeek == dto.DayOfWeek); if (entity == null) { var cEntity = ObjectMapper.Map <StoreOpenDayDto, StoreOpenDayEntity>(dto); await StoreOpenDayRepository.InsertAsync(cEntity, autoSave : true); } } openDayEs = await AsyncExecuter.ToListAsync(StoreOpenDayRepository.Where(e => e.StoreBranchID == branchId)); return(ObjectMapper.Map <StoreOpenDayEntity[], StoreOpenDayDto[]>(openDayEs.ToArray())); }
public async Task <StoreOpenDayDto[]> GetAllOpenDayAsync(int branchId) { var itemsQ = await AsyncExecuter.ToListAsync(StoreOpenDayRepository.Where(e => e.StoreBranchID == branchId)); return(ObjectMapper.Map <StoreOpenDayEntity[], StoreOpenDayDto[]>(itemsQ.ToArray())); }