Beispiel #1
0
        public Session GetActiveSession()
        {
            SessionDO session = dbContext.Sessions
                                .Include(tempSession => tempSession.Orders)
                                .ThenInclude(order => order.User)
                                .Include(tempSession => tempSession.SessionStore)
                                .ThenInclude(sessstore => sessstore.Store)
                                .ThenInclude(store => store.Menu)
                                .FirstOrDefault(s => s.IsActive == true);

            if (session != null)
            {
                var activeSession = mapper.MapData <Session, SessionDO>(session);

                foreach (var sStore in session.SessionStore)
                {
                    activeSession.Stores.Add(mapper.MapData <Store, StoreDO>(sStore.Store));
                }

                return(activeSession);
            }
            else
            {
                throw new SessionNotFoundException();
            }
        }
        private SessionDO ConvertSessionToSessionDO(Session session, SessionDO result)
        {
            if (result == null)
            {
                result = new SessionDO();
            }

            result.Id           = session.Id;
            result.IsActive     = session.IsActive;
            result.Orders       = currentMapper.Map <List <OrderDO> >(session.Orders);
            result.StartTime    = session.StartTime;
            result.SessionStore = session.Stores.Select(store => new SessionStoreDO()
            {
                Session = result,
                Store   = currentMapper.Map <StoreDO>(store)
            }).ToList();
            return(result);
        }