예제 #1
0
        public async Task <IActionResult> GetBasicByCategory(Guid id)
        {
            try
            {
                var data = _context.Set <Item>().Include(x => x.ItemCategory)
                           .Where(x => x.ItemCategoryID == id && x.IsEnable == true).ToList();
                var json = new JsonResult(data.Select(x => new ItemBasicModel()
                {
                    ID                 = x.ID,
                    Name               = x.Name,
                    ShortDescription   = x.ShortDescription,
                    ItemCategory       = x.ItemCategory?.Name,
                    Price              = x.Price,
                    CashBack           = x.CashBack,
                    Quantity           = x.Quantity,
                    ItemCategoryID     = x.ItemCategoryID,
                    ThumbnailImagePath = x.ThumbnailImagePath,
                    AccountID          = x.AccountID,
                    IsEnable           = x.IsEnable,
                    DaysToBeAvilable   = x.DaysToBeAvailable
                }));

                #region Add Open View History
                var clickContext = _context as IClickHistoryContext;
                if (clickContext != null)
                {
                    var cat       = _context.Set <ItemCategory>().FirstOrDefault(x => x.ID == id)?.Name;
                    var clickView = clickContext.OpenViewHistories.FirstOrDefault(x =>
                                                                                  x.View == NavaraView.Item.ToString() &&
                                                                                  x.Date.GetValueOrDefault().Date == DateTime.Now.Date &&
                                                                                  x.Remark == cat);
                    if (clickView == null)
                    {
                        clickView = new OpenViewHistory()
                        {
                            ClickTime = 0,
                            View      = NavaraView.Item.ToString(),
                            Date      = DateTime.Now.Date,
                            Remark    = cat
                        };
                        clickContext.OpenViewHistories.Add(clickView);
                    }
                    clickView.ClickTime++;
                    clickContext.SubmitAsync();
                }
                #endregion

                return(json);
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }
        }
예제 #2
0
 public async Task <IActionResult> GetBasic()
 {
     try
     {
         var data = _context.Set <Offer>().Include(x => x.Item).ToList();
         var json = new JsonResult(data.Select(x => new OfferBasicModel()
         {
             ID                 = x.ID,
             Title              = x.Title,
             ItemName           = x.Item?.Name,
             ThumbnailImagePath = x.ThumbnailImagePath,
             ShortDescription   = x.ShortDescription,
             OfferType          = x.OfferType,
             Discount           = x.Discount,
             UnitNetPrice       = x.Price ?? ((x.Item?.Price ?? 0) - ((x.Item?.Price ?? 0) * (x.Discount ?? 0) / 100.0)),
             UnitPrice          = x.Item?.Price
         }));
         #region Add Open View History
         var clickContext = _context as IClickHistoryContext;
         if (clickContext != null)
         {
             var clickView = clickContext.OpenViewHistories.FirstOrDefault(x =>
                                                                           x.View == NavaraView.Offer.ToString() &&
                                                                           x.Date.GetValueOrDefault().Date == DateTime.Now.Date);
             if (clickView == null)
             {
                 clickView = new OpenViewHistory()
                 {
                     ClickTime = 0,
                     View      = NavaraView.Offer.ToString(),
                     Date      = DateTime.Now.Date
                 };
                 clickContext.OpenViewHistories.Add(clickView);
             }
             clickView.ClickTime++;
             clickContext.SubmitAsync();
         }
         #endregion
         return(json);
     }
     catch (Exception ex)
     {
         return(BadRequest());
     }
 }
 public override async Task <IActionResult> Get()
 {
     try
     {
         var data = _context.Set <ItemCategory>()?.Where(s => !s.Name.Contains("Used Items")).ToList();
         var json = new JsonResult(data.Select(x => new ViewModels.ItemCategoryModel()
         {
             ID          = x.ID,
             Name        = x.Name,
             Name2       = x.Name2,
             Description = x.Description,
             ImagePath   = x.ImagePath
         }));
         #region Add Open View History
         var clickContext = _context as IClickHistoryContext;
         if (clickContext != null)
         {
             var clickView = clickContext.OpenViewHistories.FirstOrDefault(x =>
                                                                           x.View == NavaraView.Categories.ToString() &&
                                                                           x.Date.GetValueOrDefault().Date == DateTime.Now.Date);
             if (clickView == null)
             {
                 clickView = new OpenViewHistory()
                 {
                     ClickTime = 0,
                     View      = NavaraView.Categories.ToString(),
                     Date      = DateTime.Now.Date
                 };
                 clickContext.OpenViewHistories.Add(clickView);
             }
             clickView.ClickTime++;
             clickContext.SubmitAsync();
         }
         #endregion
         return(json);
     }
     catch (Exception ex)
     {
         return(BadRequest());
     }
 }