Пример #1
0
        private void InsertBucketListItem(Shared.dto.BucketListItem bucketListItem, string userName)
        {
            var user = this.context.User
                       .Where(x => x.UserName == userName)
                       .FirstOrDefault();

            if (user == null)
            {
                throw new RecordDoesNotExistException("InsertBucketListItem - User does not exist. UserName: " + userName);
            }

            var bucketListItemToSave = new models.BucketListItem
            {
                ListItemName = bucketListItem.Name,
                Created      = bucketListItem.Created.ToUniversalTime(),
                Category     = bucketListItem.Category,
                Achieved     = bucketListItem.Achieved,
                Latitude     = bucketListItem.Latitude,
                Longitude    = bucketListItem.Longitude
            };

            this.context.BucketListItem.Add(bucketListItemToSave);
            this.context.SaveChanges();

            var bucketListItemUser = new models.BucketListUser
            {
                BucketListItemId = bucketListItemToSave.BucketListItemId,
                UserId           = user.UserId
            };

            this.context.BucketListUser.Add(bucketListItemUser);
            this.context.SaveChanges();
        }
Пример #2
0
        public IList <Shared.dto.BucketListItem> GetBucketList(string userName)
        {
            var dbBucketListItems = from bli in this.context.BucketListItem
                                    join blu in this.context.BucketListUser on bli.BucketListItemId equals blu.BucketListItemId
                                    join u in this.context.User on blu.UserId equals u.UserId
                                    where u.UserName == userName
                                    select bli;

            var bucketListItems = new List <Shared.dto.BucketListItem>();

            foreach (var dbBucketListItem in dbBucketListItems)
            {
                var bucketListItem = new Shared.dto.BucketListItem
                {
                    Name     = dbBucketListItem.ListItemName.Trim(),
                    Created  = dbBucketListItem.Created.Value.ToLocalTime(),
                    Category = dbBucketListItem.Category,
                    Achieved = dbBucketListItem.Achieved.HasValue
                                    ? dbBucketListItem.Achieved.Value : false,
                    Id        = dbBucketListItem.BucketListItemId,
                    Latitude  = dbBucketListItem.Latitude.HasValue ? (decimal)dbBucketListItem.Latitude : (decimal)0,
                    Longitude = dbBucketListItem.Longitude.HasValue ? (decimal)dbBucketListItem.Longitude : (decimal)0
                };

                bucketListItems.Add(bucketListItem);
            }

            return(bucketListItems);
        }
Пример #3
0
        protected dto.BucketListItem GetBucketListItem(string name = "I am a bucket list item")
        {
            var bucketListItem = new dto.BucketListItem
            {
                Name      = name,
                Created   = DateTime.Now,
                Category  = Enums.BucketListItemTypes.Hot.ToString(),
                Achieved  = false,
                Latitude  = (decimal)81.12,
                Longitude = (decimal)41.34
            };

            return(bucketListItem);
        }
Пример #4
0
        public void UpsertBucketListItem(Shared.dto.BucketListItem bucketListItem, string userName)
        {
            var existingBucketListItem = this.context.BucketListItem
                                         .Where(x => x.BucketListItemId == bucketListItem.Id)
                                         .FirstOrDefault();

            if (existingBucketListItem != null)
            {
                UpdateBucketListItem(existingBucketListItem, bucketListItem);
            }
            else
            {
                InsertBucketListItem(bucketListItem, userName);
            }
        }
Пример #5
0
        private void UpdateBucketListItem
        (
            models.BucketListItem existingBucketListItem,
            Shared.dto.BucketListItem bucketListItem
        )
        {
            existingBucketListItem.ListItemName = bucketListItem.Name;
            existingBucketListItem.Created      = bucketListItem.Created.ToUniversalTime();
            existingBucketListItem.Category     = bucketListItem.Category;
            existingBucketListItem.Achieved     = bucketListItem.Achieved;
            existingBucketListItem.Latitude     = bucketListItem.Latitude;
            existingBucketListItem.Longitude    = bucketListItem.Longitude;

            this.context.Update(existingBucketListItem);
            this.context.SaveChanges();
        }