protected override GetItemListRD ProcessRequest(APIRequest <GetItemListRP> pRequest) { GetItemListRP rp = pRequest.Parameters; GetItemListRD rd = new GetItemListRD(); PanicbuyingEventBLL panicbuyingEventBll = new PanicbuyingEventBLL(CurrentUserInfo); List <KJEventItemInfo> eventItemInfoList = panicbuyingEventBll.GetKJEventWithItemList(pRequest.CustomerID); rd.ItemList = eventItemInfoList.AsEnumerable().Where(n => n.EventId == rp.EventId).Select(n => new EventItem() { ItemId = n.ItemId, ItemName = n.ItemName, ImageUrl = n.ImageUrl, ImageUrlThumb = string.IsNullOrEmpty(n.ImageUrl) ? "" : GetImageUrl(n.ImageUrl, "_120"), ImageUrlMiddle = string.IsNullOrEmpty(n.ImageUrl) ? "" : GetImageUrl(n.ImageUrl, "_240"), ImageUrlBig = string.IsNullOrEmpty(n.ImageUrl) ? "" : GetImageUrl(n.ImageUrl, "_480"), Price = n.MinPrice, BasePrice = n.MinBasePrice, Qty = n.Qty - n.SoldQty, PromotePersonCount = n.PromotePersonCount }).ToList(); return(rd); }
protected override EventListRD ProcessRequest(APIRequest <EventListRP> pRequest) { EventListRP rp = pRequest.Parameters; EventListRD rd = new EventListRD(); PanicbuyingEventBLL panicbuyingEventBll = new PanicbuyingEventBLL(CurrentUserInfo); List <PanicbuyingEventEntity> panicbuyingEventEntityList = panicbuyingEventBll.QueryByEntity(new PanicbuyingEventEntity() { EventTypeId = rp.EventTypeId, CustomerID = pRequest.CustomerID }, null).ToList(); if (panicbuyingEventEntityList.Count > 0) { var ResultList = panicbuyingEventEntityList.Where(t => t.EndTime >= DateTime.Now && t.EventStatus == 20).ToList(); if (ResultList.Count > 0) { List <KJEventItemInfo> eventItemInfoList = panicbuyingEventBll.GetKJEventWithItemList(pRequest.CustomerID); rd.EventList = ResultList.Select(t => new EventInfo() { EventId = t.EventId.ToString(), BeginTime = t.BeginTime == null ? "" : t.BeginTime.ToString("yyyy-MM-dd HH:mm:ss"), EndTime = t.EndTime == null ? "" : t.EndTime.ToString("yyyy-MM-dd HH:mm:ss"), Seconds = 0,//Convert.ToInt64(t.EndTime.Subtract(DateTime.Now).TotalSeconds) >= 0 ? Convert.ToInt64(t.EndTime.Subtract(DateTime.Now).TotalSeconds) : 0, Status = t.BeginTime > DateTime.Now ? 1 : t.EndTime < DateTime.Now ? 2 : 0, EventItemList = eventItemInfoList.AsEnumerable().Where(n => n.EventId == t.EventId.ToString()).Select(n => new EventItem() { ItemId = n.ItemId, ItemName = n.ItemName, ImageUrl = n.ImageUrl, ImageUrlThumb = string.IsNullOrEmpty(n.ImageUrl) ? "" : GetImageUrl(n.ImageUrl, "_120"), ImageUrlMiddle = string.IsNullOrEmpty(n.ImageUrl) ? "" : GetImageUrl(n.ImageUrl, "_240"), ImageUrlBig = string.IsNullOrEmpty(n.ImageUrl) ? "" : GetImageUrl(n.ImageUrl, "_480"), Price = n.MinPrice, BasePrice = n.MinBasePrice, Qty = n.Qty - n.SoldQty, PromotePersonCount = n.PromotePersonCount }).ToList(), }).ToList(); foreach (var item in rd.EventList) { var BeginTime = Convert.ToDateTime(item.BeginTime); var EndTime = Convert.ToDateTime(item.EndTime); if (BeginTime > DateTime.Now) { item.Seconds = Convert.ToInt64(BeginTime.Subtract(DateTime.Now).TotalSeconds) >= 0 ? Convert.ToInt64(BeginTime.Subtract(DateTime.Now).TotalSeconds) : 0; } else { item.Seconds = Convert.ToInt64(EndTime.Subtract(DateTime.Now).TotalSeconds) >= 0 ? Convert.ToInt64(EndTime.Subtract(DateTime.Now).TotalSeconds) : 0; } } rd.EventList = rd.EventList.OrderBy(t => t.Status).ThenBy(t => t.Seconds).ToList(); } else { rd.IsAllEnd = 1; } } return(rd); }