Ejemplo n.º 1
0
        public Task AddBookToShelf([FromBody] AddBookToShelfRequest request)
        {
            //return _bookService.AddBookToShelf(request, UserId);
            #region tmp ki lesz veve
            return(_bookService.AddBookToShelf(request, request.UserIdentifier));

            #endregion
        }
Ejemplo n.º 2
0
        public async Task AddBookToShelf(AddBookToShelfRequest request, string userIdentifier)
        {
            var entity = _mapper.Map <UserBook>(request);

            entity.UserIdentifier = userIdentifier;

            var alreadyAdded = await _context.UserBooks.AsNoTracking().AnyAsync(ub => ub.BookId == request.BookId && ub.UserIdentifier == userIdentifier);

            if (alreadyAdded)
            {
                throw new HbrException("Ez a könyv már hozzá van adva ennek a polcához!");
            }

            await _context.UserBooks.AddAsync(entity);

            await _context.SaveChangesAsync();
        }
Ejemplo n.º 3
0
        private async void OnClick(object sender, EventArgs e)
        {
            var config = new ConfirmConfig
            {
                CancelText = "Mégse",
                OkText     = "Igen",
                Title      = "Könyv felvétele",
                Message    = "Felveszi ezt a könyvet a személyet polcára?"
            };
            var result = await UserDialogs.Instance.ConfirmAsync(config);

            if (!result)
            {
                return;
            }

            using (var client = new HttpClient())
            {
                var dialog   = UserDialogs.Instance.Loading("Loading");
                var view     = (View)sender;
                var position = RecyclerView.GetChildAdapterPosition(view);
                var book     = Adapter.QueryResult[position];

                var request = new AddBookToShelfRequest
                {
                    BookId   = book.BookId,
                    Progress = 1,
                    #region tmp ki lesz veve
                    UserIdentifier = HbrApplication.UserIdentifier,
                    #endregion
                };
                await client.PostAsJsonAsync("https://hbr.azurewebsites.net/api/book/addbooktoshelf", request);

                Database.Instance.AddElement(book);

                Adapter.QueryResult.RemoveAt(position);
                Adapter.NotifyDataSetChanged();
                dialog.Dispose();
            }
        }