public ActionResult Details(ItemDetailsViewModel model)
        {
            var item = this.itemService.GetById(model.Id);

            //Verify if asset is from user organisation
            if (!this.IsMegaAdmin())
            {
                if (item.OrganisationId != this.userService.GetUserOrganisationId(this.User.Identity.GetUserId()))
                {
                    return(Redirect("/Home/NotAuthorized"));
                }
            }

            var viewModel = new ItemDetailsViewModel
            {
                Brand             = item.Brand,
                DateOfManufacture = item.DateOfManufacture.Date,
                Id               = item.Id,
                ItemModel        = item.Model,
                Price            = item.Price.Value,
                Producer         = item.Producer,
                Quantity         = item.Quantity,
                RotatingItem     = item.RotatingItem,
                OrganisationName = item.Organisation.Name,
                Status           = item.Status,
                Currency         = item.Price.Currency.Code
            };

            return(View(viewModel));
        }
Пример #2
0
        public ActionResult Details(int?id, int?page)
        {
            if (id == null)
            {
                return(BadRequest());
            }

            if (page == null || page < 1)
            {
                page = 1;
            }

            int reviewsCount = this.reviewService.TotalByItem(id.Value);
            int userId       = User.Identity.GetUserId <int>();

            ItemDetailsViewModel model = new ItemDetailsViewModel
            {
                CurrentPage    = page.Value,
                EntriesPerPage = ReviewsPerPage,
                TotalEntries   = reviewsCount,
                Item           = this.itemService.Details(id.Value),
                Reviews        = this.reviewService.ByItem(id.Value, page.Value, ReviewsPerPage, userId)
            };

            if (model.Item == null)
            {
                return(BadRequest());
            }

            return(View(model));
        }
Пример #3
0
        public IActionResult Details(long id, string type, string screenshot = null)
        {
            var             userId     = this.User.FindFirst(ClaimTypes.NameIdentifier)?.Value;
            List <ItemUser> joinList   = _db.ItemUser.Where(join => join.UserId == userId).Include(join => join.Item).ToList();
            List <long>     userApiIds = new List <long>();

            foreach (ItemUser join in joinList)
            {
                userApiIds.Add(join.Item.ApiId);
            }
            ItemDetailsViewModel model = new ItemDetailsViewModel();

            model.ApiIds = userApiIds;
            if (type == "game")
            {
                RawgIdRoot result = Rawg.GetGameById(id);
                model.GameDetails = result;
                model.ScreenShot  = screenshot;
            }
            else if (type == "movie")
            {
                TmdbMovieRoot result = Tmdb.GetMovieById(id);
                model.MovieDetails = result;
            }
            else if (type == "tv")
            {
                TmdbTvRoot result = Tmdb.GetTvById(id);
                model.TvDetails = result;
            }
            return(View(model));
        }
Пример #4
0
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            int id = (int)e.Parameter;

            DataContext = new ItemDetailsViewModel(id);
            base.OnNavigatedTo(e);
        }
Пример #5
0
        // GET: Items/Details/5
        public async Task <IActionResult> Details(int?id, int?wishListItemId, int?giftListItemId)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var item = await _context.Items
                       .Include(i => i.Creator)
                       .FirstOrDefaultAsync(m => m.ItemId == id);

            if (item == null)
            {
                return(NotFound());
            }

            var viewModel = new ItemDetailsViewModel
            {
                Item = item
            };

            if (wishListItemId != null)
            {
                viewModel.WishListItemId = wishListItemId;
                viewModel.WishListItem   = await _context.WishListItems.FindAsync(wishListItemId);
            }
            if (giftListItemId != null)
            {
                viewModel.GiftListItemId = giftListItemId;
                viewModel.GiftListItem   = await _context.GiftListItems.FindAsync(giftListItemId);
            }
            return(View(viewModel));
        }
Пример #6
0
        public async Task <IActionResult> Details(string id)
        {
            var itemFromDb = await this.itemService.GetById(id);


            if (itemFromDb == null)
            {
                return(this.Redirect(ErrorRoute));
            }

            var auctionHouseFromDb = await this.auctionHouseService.GetById(itemFromDb.AuctionHouseId);

            var firstItemBidFromDb = itemFromDb.Bids.FirstOrDefault();

            if (firstItemBidFromDb == null)
            {
                ItemDetailsViewModel itemWithNoBids = new ItemDetailsViewModel
                {
                    Id            = itemFromDb.Id,
                    Name          = itemFromDb.Name,
                    Description   = itemFromDb.Description,
                    StartingPrice = itemFromDb.StartingPrice,
                    BuyOutPrice   = itemFromDb.BuyOutPrice,
                    StartTime     = itemFromDb.StartTime,
                    EndTime       = itemFromDb.EndTime,
                    Picture       = itemFromDb.Picture,
                    AuctionHouse  = new ItemDetailsAuctionHouseViewModel
                    {
                        Id      = auctionHouseFromDb.Id,
                        Name    = auctionHouseFromDb.Name,
                        Address = auctionHouseFromDb.Address
                    }
                };

                return(this.View(itemWithNoBids));
            }

            ItemDetailsViewModel item = new ItemDetailsViewModel
            {
                Id            = itemFromDb.Id,
                Name          = itemFromDb.Name,
                Description   = itemFromDb.Description,
                StartingPrice = itemFromDb.StartingPrice,
                BuyOutPrice   = itemFromDb.BuyOutPrice,
                StartTime     = itemFromDb.StartTime,
                EndTime       = itemFromDb.EndTime,
                Picture       = itemFromDb.Picture,
                HighestBid    = itemFromDb.Bids
                                .Max(x => x.Amount)
                                .ToString("F2"),
                AuctionHouse = new ItemDetailsAuctionHouseViewModel
                {
                    Id      = auctionHouseFromDb.Id,
                    Name    = auctionHouseFromDb.Name,
                    Address = auctionHouseFromDb.Address
                }
            };

            return(this.View(item));
        }
Пример #7
0
        public IActionResult NewBid(ItemDetailsViewModel model, int itemId)
        {
            var  CurrentUserId  = _userManager.GetUserId(User);
            var  CurrentUserOjb = _userManager.Users.Where(user => user.Id == CurrentUserId).SingleOrDefault();
            var  CurItem        = _context.ApplicationItem.Where(itm => itm.ItemId == itemId).SingleOrDefault();
            var  Auction        = _context.ApplicationAuction.Where(itm => itm.ItemId == itemId).SingleOrDefault();
            bool canBid         = true;

            if (CurrentUserOjb.Wallet < model.newBid)
            {
                TempData["Error1"] = "Your Wallet's Ballence is to low to make that Bid.";
                canBid             = false;
            }
            if (model.newBid < Auction.HightestBidInt)
            {
                TempData["Error2"] = "Someone is currently out Bidding you. \n Please place a higher bid.";
                canBid             = false;
            }
            if (canBid == true)
            {
                Auction.HightestBidInt = model.newBid;
                Auction.HighestBidder  = CurrentUserId;
                _context.SaveChanges();
            }

            return(Redirect($"/Item/{itemId}"));
        }
        public async Task <IActionResult> ItemDetails(Guid itemId)
        {
            ShopItem item = _repository.GetItem(itemId);

            ItemDetailsViewModel itemDetailsViewModel = new ItemDetailsViewModel(item.Id, item.Name, item.Price, item.Description);

            return(View(itemDetailsViewModel));
        }
Пример #9
0
        public IActionResult ItemDetails(int id) //LAB 24
        {
            var viewModel = new ItemDetailsViewModel();

            viewModel.ItemToShow = GetItemWhereIDIsFirst(id);

            return(View(viewModel));
        }
Пример #10
0
 public ItemDetailsPage(ItemModel itemModel)
 {
     InitializeComponent();
     Title          = itemModel.DisplayName;
     BindingContext = new ItemDetailsViewModel()
     {
         ItemToUpdate = itemModel, Id = itemModel.Id.ToString(), DisplayName = itemModel.DisplayName
     };
 }
        public ItemDetailsViewModel BuildItemDetailsViewModel(int categoryId, int itemId)
        {
            var itemDetailsViewModel = new ItemDetailsViewModel();

            itemDetailsViewModel.TopMenu     = GetCategoryMenu(categoryId);
            itemDetailsViewModel.ItemDetails = _itemSummaryService.GetItemDetails(itemId);

            return(itemDetailsViewModel);
        }
Пример #12
0
        public ActionResult Details(string itemMatch)
        {
            // stock items
            var itemDetails = (
                from s in db.StockItems
                where s.StockItemName == itemMatch
                select s.StockItemID).FirstOrDefault();

            StockItem stockitem = db.StockItems.Find((int)itemDetails);

            // supplier details
            var supDetails = (
                from s in db.StockItems
                join sp in db.Suppliers
                on s.SupplierID equals sp.SupplierID
                where s.StockItemName == itemMatch
                select sp.SupplierID).FirstOrDefault();

            Supplier supplier = db.Suppliers.Find((int)supDetails);

            // person details
            var personDetails = (
                from s in db.StockItems
                join sp in db.Suppliers
                on s.SupplierID equals sp.SupplierID
                where s.StockItemName == itemMatch
                join p in db.People
                on sp.PrimaryContactPersonID equals p.PersonID
                select p.PersonID).FirstOrDefault();

            Person person = db.People.Find((int)personDetails);

            // order details
            IQueryable <int> orderDetails = (
                from s in db.StockItems
                join i in db.InvoiceLines
                on s.StockItemID equals i.StockItemID
                where s.StockItemName == itemMatch
                select i.Quantity);

            double count = 0;

            foreach (var quant in orderDetails)
            {
                count += quant;
            }

            InvoiceLine invoiceLine = new InvoiceLine {
                Quantity = Convert.ToInt32(count)
            };

            ItemDetailsViewModel viewModel = new ItemDetailsViewModel(stockitem, supplier, person, invoiceLine);


            return(View(viewModel));
        }
Пример #13
0
        public IActionResult ItemDetails(ItemDetailsViewModel model, int itemId)
        {
            var CurrentAuction = _context.ApplicationAuction.Where(auction => auction.ItemId == itemId).SingleOrDefault();

            model.AuctionItem  = _context.ApplicationItem.Where(itm => itm.ItemId == itemId).Include(n => n.CreatedBy).SingleOrDefault();
            model.AuctionEvent = CurrentAuction;
            model.MonieBags    = _userManager.Users.Where(user => user.Id == CurrentAuction.HighestBidder).SingleOrDefault().UserName;

            return(View(model));
        }
Пример #14
0
        public void DescriptionProperty_ReturnsModelsName_AfterPassingAnItemIntoTheViewModel()
        {
            var expectedDescription = "Some long description .......................";
            var viewModel           = new ItemDetailsViewModel();

            viewModel.SetItem(new Item(description: expectedDescription));

            var description = viewModel.Description;

            Assert.AreEqual(expectedDescription, description);
        }
Пример #15
0
        public void IDProperty_ReturnsModelsID_AfterPassingAnItemIntoTheViewModel()
        {
            var expectedNumber = 123;
            var viewModel      = new ItemDetailsViewModel();

            viewModel.SetItem(new Item(id: expectedNumber));

            var number = viewModel.ID;

            Assert.AreEqual(expectedNumber.ToString(), number);
        }
Пример #16
0
        public void NameProperty_ReturnsModelsName_AfterPassingAnItemIntoTheViewModel()
        {
            var expectedName = "John";
            var viewModel    = new ItemDetailsViewModel();

            viewModel.SetItem(new Item(name: expectedName));

            var name = viewModel.Name;

            Assert.AreEqual(expectedName, name);
        }
Пример #17
0
        public ItemDetailsViewModel GetAllItems()
        {
            var items = context.Items;
            ItemDetailsViewModel model = new ItemDetailsViewModel()
            {
                Items     = items,
                PageTitle = "Charges"
            };


            return(model);
        }
Пример #18
0
        public void AllProperties_ReturnEmptyStrings_BeforePassingAnItemIntoTheViewModel()
        {
            var viewModel = new ItemDetailsViewModel();

            var number      = viewModel.ID;
            var name        = viewModel.Name;
            var description = viewModel.Description;

            Assert.IsEmpty(number);
            Assert.IsEmpty(name);
            Assert.IsEmpty(description);
        }
Пример #19
0
 public ActionResult RemoveUnits(ItemDetailsViewModel itemDetailsViewModel)
 {
     try
     {
         var item = new ItemsListView().GetItem(itemDetailsViewModel.Id);
         this.commandBus.Send(new RemoveUnitsCommand(item.Id, itemDetailsViewModel.Quantity));
         return(this.RedirectToAction("Index", "Home"));
     }
     catch (Exception ex)
     {
         return(this.RedirectToAction("Error", "Error", new ErrorViewModel(ex.Message)));
     }
 }
Пример #20
0
        public async void btnSubmitClick(object sender, EventArgs e)
        {
            ItemDetailsViewModel bindingContext = (ItemDetailsViewModel)BindingContext;

            btnSubmit.IsVisible   = false;
            btnCancel.IsVisible   = false;
            bindingContext.IsBusy = true;
            if (!bindingContext.DisplayName.Equals(bindingContext.ItemToUpdate.DisplayName))
            {
                bindingContext.ItemToUpdate = await StringListRepository.UpdateItem(new ItemModel { Id = Int32.Parse(bindingContext.Id), DisplayName = bindingContext.DisplayName });
            }
            await Navigation.PopAsync();
        }
        public async Task <ItemDetailsViewModel> GetItemDetailsDataAsync(int ItemId)
        {
            ItemDetailsViewModel itemDetails;

            using (FFTContext context = new FFTContext())
            {
                Item item = await context.Items.SingleAsync(m => m.ItemId == ItemId);

                itemDetails = new ItemDetailsViewModel
                {
                    ItemID                  = item.ItemId,
                    AcquiredViaCatch        = item.AcquiredViaCatch,
                    AcquiredViaInitialEquip = item.AcquiredViaInitialEquip,
                    AcquiredViaLocation     = item.AcquiredViaLocation,
                    AcquiredViaMode         = item.AcquiredViaMode,
                    AcquiredViaPoach        = item.AcquiredViaPoach,
                    AcquiredViaSteal        = item.AcquiredViaSteal,
                    AcquiredViaTreasureHunt = item.AcquiredViaTreasureHunt,
                    AttackPower             = item.AttackPower?.ToString("D3") ?? "0",
                    Cost              = item.Cost,
                    Description       = item.Description,
                    Element           = AttributeCalculatorService.GetElementSVGLocations(item.Element),
                    ElementAbsorbed   = AttributeCalculatorService.GetElementSVGLocations(item.ElementAbsorbed),
                    ElementBoosted    = AttributeCalculatorService.GetElementSVGLocations(item.ElementBoosted),
                    ElementHalved     = AttributeCalculatorService.GetElementSVGLocations(item.ElementHalved),
                    ElementNegated    = AttributeCalculatorService.GetElementSVGLocations(item.ElementNegated),
                    ElementWeakness   = AttributeCalculatorService.GetElementSVGLocations(item.ElementWeakness),
                    EquipStatusEffect = AttributeCalculatorService.GetEffectSVGLocations(item.EquipStatusEffect),
                    HitPercentage     = item.HitPercentage?.ToString("D2") ?? "0",
                    HitStatusEffect   = AttributeCalculatorService.GetEffectSVGLocations(item.HitStatusEffect),
                    HPBonus           = item.HPBonus?.ToString() ?? "0",
                    ImagePath         = (item.ItemCategory.EquipmentCategoryId == (int)Enums.EquipmentCategoriesList.Weapon ? @"/img/Item_Icons/Weapons/" : item.ItemCategory.EquipmentCategoryId > (int)Enums.EquipmentCategoriesList.Weapon &&
                                         item.ItemCategory.EquipmentCategoryId < (int)Enums.EquipmentCategoriesList.Accessory ? @"/img/Item_Icons/Armour/" : @"/img/Item_Icons/Accessories/") + item.IconFileName,
                    ImmuneStatusEffect = AttributeCalculatorService.GetEffectSVGLocations(item.ImmuneStatusEffect),
                    JumpBoost          = item.JumpBoost?.ToString() ?? "0",
                    MagicalEvade       = item.MagicalEvade?.ToString() ?? "0",
                    MagicAttackBoost   = item.MagicAttackBoost?.ToString() ?? "0",
                    MoveBoost          = item.MoveBoost?.ToString() ?? "0",
                    MPBonus            = item.MPBonus?.ToString() ?? "0",
                    Name = item.PspName,
                    PhysicalAttackBoost = item.PhysicalAttackBoost?.ToString() ?? "0",
                    PhysicalEvade       = item.PhysicalEvade?.ToString() ?? "0",
                    RemoveStatusEffect  = AttributeCalculatorService.GetEffectSVGLocations(item.RemoveStatusEffect),
                    SpeedBoost          = item.SpeedBoost?.ToString() ?? "0",
                    SpellEffect         = AttributeCalculatorService.GetEffectSVGLocations(item.SpellEffect),
                    ItemCategoryName    = item.ItemCategory.ItemCategoryName
                };
            }

            return(itemDetails);
        }
Пример #22
0
        public async Task <IActionResult> Item(int?id)
        {
            if (id == null)
            {
                return(BadRequest());
            }
            ItemDetailsDTO item = await _service.GetItemAsync((int)id);

            ItemDetailsViewModel model = _mapper.Map <ItemDetailsDTO, ItemDetailsViewModel> (item);

            model.Bids = model.Bids.OrderByDescending(o => o.BidAmount).ToList();

            return(View(model));
        }
Пример #23
0
        protected override void OnLoad(EventArgs e)
        {
            if (!this.DesignMode)
            {
                TranslateLabels();

                // Create a collection of pages
                this.pages = new List <OrderDetailsPage>(this.panelControl.Controls.Count);
                this.pages.Add(this.orderInformationPage);
                this.pages.Add(this.customerInformationPage);
                this.pages.Add(this.itemDetailsPage);
                this.pages.Add(this.deliveryInformationPage);
                this.pages.Add(this.paymentHistoryPage);
                this.pages.Add(this.cancellationChargePage);
                this.pages.Add(this.summaryPage);

                // Create a collection of view models
                pageViewModels               = new List <PageViewModel>();
                orderDetailsViewModel        = new OrderDetailsViewModel(this.transaction, this.mode);
                orderSummaryViewModel        = new OrderSummaryViewModel(this.transaction);
                customerInformationViewModel = new CustomerInformationViewModel(this.transaction);
                paymentHistoryViewModel      = new PaymentHistoryViewModel(this.transaction);
                itemDetailsViewModel         = new ItemDetailsViewModel(this.transaction);

                this.pageViewModels.Add(orderDetailsViewModel);
                this.pageViewModels.Add(orderSummaryViewModel);
                this.pageViewModels.Add(customerInformationViewModel);
                this.pageViewModels.Add(paymentHistoryViewModel);
                this.pageViewModels.Add(itemDetailsViewModel);

                // Listen to the property changed event on each view model
                this.pageViewModels.ForEach(vm => vm.PropertyChanged += new PropertyChangedEventHandler(OnPageViewModel_PropertyChanged));

                // Set on each page
                this.bindingSource.Add(orderDetailsViewModel);
                this.orderDetailsNavBar.SetViewModel(this.ViewModel);
                this.orderInformationPage.SetViewModel(this.ViewModel);
                this.itemDetailsPage.SetViewModel(itemDetailsViewModel);
                this.deliveryInformationPage.SetViewModel(this.ViewModel);
                this.customerInformationPage.SetViewModel(customerInformationViewModel);
                this.paymentHistoryPage.SetViewModel(paymentHistoryViewModel);
                this.cancellationChargePage.SetViewModel(this.ViewModel);
                this.summaryPage.SetViewModel(orderSummaryViewModel);

                this.ViewModel.SelectedPageIndex = GetStartPageIndex();
                this.ViewModel.SelectedPageTitle = this.pages[this.ViewModel.SelectedPageIndex].Text;
            }

            base.OnLoad(e);
        }
        public ActionResult GetItemDetailsPartial(int itemID)
        {
            using (FFTContext context = new FFTContext())
            {
                Item item = context.Items.Single(m => m.ItemID == itemID);
                ItemDetailsViewModel itemDetails = new ItemDetailsViewModel
                {
                    ItemID                  = item.ItemID,
                    AcquiredViaCatch        = item.AcquiredViaCatch,
                    AcquiredViaInitialEquip = item.AcquiredViaInitialEquip,
                    AcquiredViaLocation     = item.AcquiredViaLocation,
                    AcquiredViaMode         = item.AcquiredViaMode,
                    AcquiredViaPoach        = item.AcquiredViaPoach,
                    AcquiredViaSteal        = item.AcquiredViaSteal,
                    AcquiredViaTreasureHunt = item.AcquiredViaTreasureHunt,
                    AttackPower             = item.AttackPower?.ToString("D3") ?? "0",
                    Cost              = item.Cost,
                    Description       = item.Description,
                    Element           = AttributeCalculator.GetElementSVGLocations(item.Element),
                    ElementAbsorbed   = AttributeCalculator.GetElementSVGLocations(item.ElementAbsorbed),
                    ElementBoosted    = AttributeCalculator.GetElementSVGLocations(item.ElementBoosted),
                    ElementHalved     = AttributeCalculator.GetElementSVGLocations(item.ElementHalved),
                    ElementNegated    = AttributeCalculator.GetElementSVGLocations(item.ElementNegated),
                    ElementWeakness   = AttributeCalculator.GetElementSVGLocations(item.ElementWeakness),
                    EquipStatusEffect = AttributeCalculator.GetEffectSVGLocations(item.EquipStatusEffect),
                    HitPercentage     = item.HitPercentage?.ToString("D2") ?? "0",
                    HitStatusEffect   = AttributeCalculator.GetEffectSVGLocations(item.HitStatusEffect),
                    HPBonus           = item.HPBonus?.ToString() ?? "0",
                    ImagePath         = (item.ItemCategory.EquipmentCategoryID == (int)EquipmentCategoriesList.Weapon ? @"/Content/Images/Item_Icons/Weapons/" : item.ItemCategory.EquipmentCategoryID > (int)EquipmentCategoriesList.Weapon &&
                                         item.ItemCategory.EquipmentCategoryID < (int)EquipmentCategoriesList.Accessory ? @"/Content/Images/Item_Icons/Armour/" : @"/Content/Images/Item_Icons/Accessories/") + item.IconFileName,
                    ImmuneStatusEffect = AttributeCalculator.GetEffectSVGLocations(item.ImmuneStatusEffect),
                    JumpBoost          = item.JumpBoost?.ToString() ?? "0",
                    MagicalEvade       = item.MagicalEvade?.ToString() ?? "0",
                    MagicAttackBoost   = item.MagicAttackBoost?.ToString() ?? "0",
                    MoveBoost          = item.MoveBoost?.ToString() ?? "0",
                    MPBonus            = item.MPBonus?.ToString() ?? "0",
                    Name = item.PspName,
                    PhysicalAttackBoost = item.PhysicalAttackBoost?.ToString() ?? "0",
                    PhysicalEvade       = item.PhysicalEvade?.ToString() ?? "0",
                    RemoveStatusEffect  = AttributeCalculator.GetEffectSVGLocations(item.RemoveStatusEffect),
                    SpeedBoost          = item.SpeedBoost?.ToString() ?? "0",
                    SpellEffect         = AttributeCalculator.GetEffectSVGLocations(item.SpellEffect),
                    ItemCategoryName    = item.ItemCategory.ItemCategoryName
                };

                return(PartialView("~/Views/Home/_UnitItemDetailsPartial.cshtml", itemDetails));
            }
        }
Пример #25
0
        public void ItemProperties_ReturnPreviousSetItem_AfterPassinInNull()
        {
            var expectedItem = new Item(
                id: 610,
                name: "Yggdrasil Leaf",
                description: "Leaf from the Yggdrasil tree which maintains the mortal coil. It can bring life to fallen characters.");
            var viewModel = new ItemDetailsViewModel();

            viewModel.SetItem(expectedItem);

            viewModel.SetItem(null);

            Assert.AreEqual(expectedItem.ID.ToString(), viewModel.ID);
            Assert.AreEqual(expectedItem.Name, viewModel.Name);
            Assert.AreEqual(expectedItem.Description, viewModel.Description);
        }
Пример #26
0
        public ViewResult  Details(int itemId)
        {
            Item item = _itemRepository.GetItemById(itemId);

            if (item == null)
            {
                Response.StatusCode = 404;
                return(View("ItemNotFound", itemId));
            }
            ItemDetailsViewModel itemDetailsViewModel = new ItemDetailsViewModel()
            {
                Item      = item,
                PageTitle = "Item Details"
            };

            return(View(itemDetailsViewModel));
        }
Пример #27
0
        public IActionResult Details(string id)
        {
            var serviceModel = _itemsService.GetById(id);

            var viewModel = new ItemDetailsViewModel
            {
                Description = serviceModel.Description,
                EndTime     = serviceModel.EndTime,
                Id          = serviceModel.Id,
                Price       = serviceModel.Price,
                StartTime   = serviceModel.StartTime,
                PicturePath = string.Concat("../../", serviceModel.PicturePath),
                ReturnUrl   = HttpContext.Request.Path.ToString(),
                Title       = serviceModel.Title
            };

            return(View(viewModel));
        }
Пример #28
0
        public async Task <IActionResult> Details(string id)
        {
            if (id == null)
            {
                throw new ApplicationException($"Passed ID parameter is absent.");
            }

            var item = await _itemService.FindAsync(id);

            if (item == null)
            {
                throw new ApplicationException($"Unable to find item with ID '{id}'.");
            }

            var model = new ItemDetailsViewModel(item);

            return(View(model));
        }
Пример #29
0
        protected override void ShowItemDetails(ItemDetailsViewModel viewModel)
        {
            Debug.Assert(NSThread.IsMain, "Navigation from second thread" + new StackTrace().GetFrame(1).GetMethod().Name);
            var selected = this.tabBarController.SelectedIndex == 0;

            if (!selected)
            {
                this.tabBarController.SelectedIndex = 0;
            }
            var navigationController = tabBarController.SelectedViewController as UINavigationController;

            if (this.PopToViewController(navigationController, typeof(BrowseItemDetailViewController), selected) == false)
            {
                navigationController.PopToRootViewController(false);
                var viewController = this.mainStoryboard.InstantiateViewController("BrowseItemDetailViewController") as BrowseItemDetailViewController;
                viewController.ViewModel = viewModel;
                navigationController.PushViewController(viewController, selected);
            }
        }
Пример #30
0
        public void NextMatch(int itemId, int take)
        {
            try
            {
                var items = GetAll(i => i.ItemId == itemId, "MatchedItem.Images", "MatchedItem.Attributes", "MatchedItem.User");
                if (items == null)
                {
                    throw new Exception(EResultMessage.DatabaseError.ToString());
                }
                if (items.Count == 0)
                {
                    throw new Exception(EResultMessage.NotFound.ToString());
                }

                var item   = items.OrderByDescending(i => i.Score).Skip(take).FirstOrDefault().MatchedItem;
                var result = new ItemDetailsViewModel
                {
                    Id           = item.Id,
                    Content      = item.Content,
                    CreationDate = item.CreationDate,
                    Type         = item.Type,
                    IsLost       = item.IsLost,
                    Attributes   = item.Attributes.ToDictionary(i => i.Key, i => i.Value),

                    Images = item.Images.Select(i => i.Image).ToList(),

                    User = new UserViewModel
                    {
                        Id          = item.Id,
                        Name        = item.User.Name,
                        Picture     = item.User.Picture,
                        Address     = item.User.Address,
                        PhoneNumber = item.User.PhoneNumber
                    },
                };
            }
            catch (Exception)
            {
                return;
            }
        }