public IHttpActionResult PostDealLogItem(DealLogItem logItemToAdd)
        {
            var userId = this.User.Identity.GetUserId();
            var user   = _genRepo.Query <ApplicationUser>().Where(a => a.Id == userId).FirstOrDefault();

            if (userId == null)
            {
                return(Unauthorized());
            }

            var fullName = user.FirstName + " " + user.LastName;

            if (ModelState.IsValid)
            {
                if (logItemToAdd.Id == 0)
                {
                    logItemToAdd.UserId      = userId;
                    logItemToAdd.CreatedOn   = DateTime.Now;
                    logItemToAdd.SubmittedBy = fullName;
                    _genRepo.Add <DealLogItem>(logItemToAdd);
                    _genRepo.SaveChanges();
                    return(Ok(logItemToAdd));
                }
                else
                {
                    DealLogItem logItemBeingEditted = _genRepo.Find <DealLogItem>(logItemToAdd.Id);
                    if (logItemBeingEditted.SubmittedBy != fullName)
                    {
                        return(Unauthorized());
                    }
                    logItemBeingEditted.Type      = logItemToAdd.Type;
                    logItemBeingEditted.StartTime = logItemToAdd.StartTime;
                    logItemBeingEditted.EndTime   = logItemToAdd.EndTime;
                    logItemBeingEditted.Content   = logItemToAdd.Content;
                    logItemBeingEditted.ContactId = logItemToAdd.ContactId;
                    logItemBeingEditted.DealId    = logItemToAdd.DealId;

                    _genRepo.SaveChanges();
                    return(Ok(logItemToAdd));
                }
            }
            return(BadRequest(ModelState));
        }
        public IHttpActionResult PostDealLogItem(DealLogItem logItemToAdd)
        {
            var userId = this.User.Identity.GetUserId();
            var user = _genRepo.Query<ApplicationUser>().Where(a => a.Id == userId).FirstOrDefault();

            if (userId == null)
            {
                return Unauthorized();
            }

            var fullName = user.FirstName + " " + user.LastName;

            if (ModelState.IsValid)
            {
                if (logItemToAdd.Id == 0)
                {
                    logItemToAdd.UserId = userId;
                    logItemToAdd.CreatedOn = DateTime.Now;
                    logItemToAdd.SubmittedBy = fullName;
                    _genRepo.Add<DealLogItem>(logItemToAdd);
                    _genRepo.SaveChanges();
                    return Ok(logItemToAdd);
                }
                else
                {
                    DealLogItem logItemBeingEditted = _genRepo.Find<DealLogItem>(logItemToAdd.Id);
                    if (logItemBeingEditted.SubmittedBy != fullName)
                    {
                        return Unauthorized();
                    }
                    logItemBeingEditted.Type = logItemToAdd.Type;
                    logItemBeingEditted.StartTime = logItemToAdd.StartTime;
                    logItemBeingEditted.EndTime = logItemToAdd.EndTime;
                    logItemBeingEditted.Content = logItemToAdd.Content;
                    logItemBeingEditted.ContactId = logItemToAdd.ContactId;
                    logItemBeingEditted.DealId = logItemToAdd.DealId;

                    _genRepo.SaveChanges();
                    return Ok(logItemToAdd);
                }
            }
            return BadRequest(ModelState);
        }