コード例 #1
0
        public ItemDetailResponse GetDetailById(long itemId)
        {
            ItemDetailResponse response     = new ItemDetailResponse();
            TbItemEntity       tbItemEntity = _itemRepository.GetById(itemId);

            Mapper.Bind <TbItemEntity, ItemDetailResponse> ();
            response               = Mapper.Map <ItemDetailResponse> (tbItemEntity);
            response.Covers        = _itemImageRepository.List(new ItemImageFindQuerySpec(tbItemEntity.Id))?.Select(y => y.ImageSource).ToList();
            response.ShopResponses = new List <ShopResponse>();
            var shops = _itemShopRelatedRepository.List(new ItemShopFindQuery(tbItemEntity.Id))?.Select(x => x.ShopId).ToList();

            foreach (var shopId in shops)
            {
                TbShopEntity tbShopEntity = _shopRepository.GetById(shopId);
                Mapper.Bind <TbShopEntity, ShopResponse>();
                var shopResponse = Mapper.Map <ShopResponse>(tbShopEntity);
                response.ShopResponses.Add(shopResponse);
            }

            response.SkuResponse = new List <ItemSkuResponse>();
            var defaultSku = _itemSkuRepository.List(new ItemSkuFindQuerySpec(itemId, null))?.ToList();

            Mapper.Bind <List <TbItemSkuEntity>, List <ItemSkuResponse> >();
            response.SkuResponse = Mapper.Map <List <ItemSkuResponse> >(defaultSku);

            ////赋值
            response.OriPrice   = defaultSku?.Where(x => x.IsDefault)?.FirstOrDefault().OriPrice;
            response.DisPrice   = defaultSku?.Where(x => x.IsDefault)?.FirstOrDefault().DisPrice;
            response.Cashback   = defaultSku?.Where(x => x.IsDefault)?.FirstOrDefault().Cashback;
            response.SaleCount  = defaultSku?.Where(x => x.IsDefault)?.FirstOrDefault().SaleCount;
            response.StockCount = defaultSku?.Where(x => x.IsDefault)?.FirstOrDefault().StockCount;

            return(response);
        }
コード例 #2
0
        public ActionResult ItemDetail(string itemNumber)
        {
            //
            TrackingItems      items    = (TrackingItems)Session["TrackData"];
            ItemDetailResponse response = new ItemDetailResponse();

            foreach (TrackingItem item in items)
            {
                if (item.ItemNumber == itemNumber)
                {
                    response.Store = item.StoreName + ", " + item.StoreAddress1 + ", " + item.StoreAddress2 + ", " + item.StoreCity + ", " + item.StoreState + " " + item.StoreZip;
                    response.Item  = item;
                    break;
                }
            }
            return(View(response));
        }
コード例 #3
0
        public ItemDetailResponse GetItem(int itemId)
        {
            // get the item from the db
            using (var db = new DataClasses1DataContext())
            {
                var item = db.Items.FirstOrDefault(x => x.ItemId == itemId);
                if (item != null)
                {
                    // security check
                    var user = this.GetUser();
                    if (item.UserId != user.UserId)
                    {
                        throw new UnauthorizedAccessException();
                    }
                }
                ItemDetailResponse itemDetail = new ItemDetailResponse(item, db.Groups.ToList());

                // convert and return the item
                return(itemDetail);
            }
        }