public AuktionBudViewModel([NotNull] AuktionModel auktion,
                                   [NotNull, ItemNotNull] List <BudModel> bud)
        {
            AuktionID   = auktion.AuktionID;
            Titel       = auktion.Titel;
            Beskrivning = auktion.Beskrivning;
            StartDatum  = auktion.StartDatum;
            SlutDatum   = auktion.SlutDatum;
            Utropspris  = auktion.Utropspris ?? 0;
            SkapadAv    = auktion.SkapadAv;
            Gruppkod    = auktion.Gruppkod;

            Bids       = bud.Select(b => new BudViewModel(b)).ToList();
            MaxedPrice = Bids.Count == 0
                ? Utropspris : Bids.Max(b => b.Summa);

            HighestBid = Bids.FirstOrDefault();

            DateTime now = DateTime.Now;

            TimeUntilEnd            = SlutDatum - now;
            TimeUntilEndFormatted   = DateTimeHelpers.FormatRemainingTime(SlutDatum);
            TimeSinceStart          = now - StartDatum;
            TimeSinceStartFormatted = DateTimeHelpers.FormatRemainingTime(StartDatum);
            IsClosed = SlutDatum < now;
        }
Exemplo n.º 2
0
        public bool Matches(AuktionModel auktion)
        {
            bool isClosed = auktion.IsClosed();

            if (isClosed && !ShowClosed)
            {
                return(false);
            }
            if (!isClosed && !ShowOpen)
            {
                return(false);
            }

            if (!string.IsNullOrWhiteSpace(Query))
            {
                Query = Query.Trim();

                if (auktion.Titel.IndexOf(Query, StringComparison.CurrentCultureIgnoreCase) == -1 &&
                    auktion.Beskrivning.IndexOf(Query, StringComparison.CurrentCultureIgnoreCase) == -1)
                {
                    return(false);
                }
            }

            return(true);
        }