Ejemplo n.º 1
0
        public async Task <ProductShowViewModel> GetWithRelatedData(Guid id)
        {
            Product product = await _repository.Products.GetWithRelatedData(id);

            product.Bids.OrderByDescending(i => i.BidPrice);
            product.Bids.Take(10);

            List <string> img = new List <string>();

            foreach (var image in product.Image)
            {
                img.Add(image.ImgPath);
            }

            List <BidFrontEnd> bids = new List <BidFrontEnd>();

            foreach (var Bid in product.Bids)
            {
                BidFrontEnd bid = new BidFrontEnd
                {
                    BidPrice    = Bid.BidPrice,
                    BidTime     = DateTime.Now,
                    UserId      = new Guid(Bid.ApplicationUser.Id),
                    UserName    = Bid.ApplicationUser.UserName,
                    userAddress = Bid.ApplicationUser.User.Address,
                    userImage   = Bid.ApplicationUser.User.Image,
                    ProductId   = product.Id
                };
                bids.Add(bid);
            }

            ProductShowViewModel model = new ProductShowViewModel
            {
                posterId           = new Guid(product.ApplicationUserId),
                userId             = new Guid(product.ApplicationUser.Id),
                userName           = product.ApplicationUser.UserName,
                userAddress        = product.ApplicationUser.User.Address,
                userImage          = product.ApplicationUser.User.Image,
                userPhone          = product.ApplicationUser.User.Phone,
                StartDateTime      = product.StartDateTime.Value,
                EndDateTime        = product.EndDateTime.Value,
                ProductName        = product.ProductName,
                ProductDescription = product.ProductDescription,
                Quantity           = product.Quantity,
                BasePrice          = product.BasePrice,
                ContactInfo        = product.ContactInfo,
                CategoryId         = product.Category.Id,
                CategoryName       = product.Category.CategoryName,
                CityId             = product.City.Id,
                CityName           = product.City.CityName,
                Image = img.ToList(),
                Bids  = bids.ToList()
            };

            return(model);
        }
Ejemplo n.º 2
0
        public async Task <BidFrontEnd> BidForProductView(Guid id)
        {
            var entity = await _repository.Bid.BidForProductView(id);

            BidFrontEnd bid = new BidFrontEnd
            {
                BidPrice    = entity.BidPrice,
                BidTime     = entity.BidTime,
                UserId      = new Guid(entity.ApplicationUserId),
                UserName    = entity.ApplicationUser.UserName,
                userAddress = entity.ApplicationUser.User.Address,
                ProductId   = entity.ProductId.Value
            };

            return(bid);
        }