public Entry Transform(Entry entry)
 {
     return new Entry
     {
         LogBook = entry.LogBook,
         Id = entry.Id,
         OccurredOn = entry.OccurredOn.Add(this.FirstEntryOffset),
         Value = entry.Value * UnitsMultiplier
     };
 }
Exemple #2
0
        public void AddEntry(Entry e)
        {
            if (this.Entries == null)
                this.Entries = new List<Entry>();

            e.LogBook = this;
            e.Id = this.Entries.Count == 0 ? 1 : this.Entries.Max(x => x.Id) + 1;

            this.Entries.Add(e);

            DomainEvents.Raise(new EntryLoggedEvent(this, e));
        }
Exemple #3
0
        public void RemoveEntry(Entry e)
        {
            if (this.Entries == null)
                return;

            this.Entries.Remove(e);
        }
        // POST /Api/v1/LogBooks/33/Entries
        public HttpResponseMessage Post([FromUri]int? logBookId, EntryInput entryInput)
        {
            var logBook = base.RavenSession.Load<LogBook>(logBookId);

            if (logBook == null)
                return NotFound();

            if (logBook.IsOwnedBy(base.User.Identity.Name) == false)
                return Forbidden();

            var entry = new Entry();
            entryInput.MapToInstance(entry);
            logBook.AddEntry(entry);

            base.RavenSession.Store(logBook);

            var entryView = entry.MapTo<LogBookView.EntryView>();

            return Created(entryView);
        }