public List <SliderModelView> GetAllImageForEachUser() { var Itemrepo = new ItemService(); List <SliderModelView> ListItem = new List <SliderModelView>(); string id = ""; string status = ""; foreach (var item in GetAllImage()) { id = item.imgId.Substring(0, item.imgId.Length - 1); status = Itemrepo.GetById(id).status; if (!ListItem.Select(x => x.id).Contains(id) && status != "Sold") { var _SliderModelView = new SliderModelView(); _SliderModelView.id = id; _SliderModelView.title = item.ItemName; _SliderModelView.description = Itemrepo.GetById(id).ItemDescription; _SliderModelView.Name = item.UserName; _SliderModelView.price = Itemrepo.GetById(id).ItemPrice; var base64 = Convert.ToBase64String(item.imgByte); _SliderModelView.src = String.Format("data:image/gif;base64,{0}", base64); ListItem.Add(_SliderModelView); } } return(ListItem); }
//Find the newly item added in the database public List <SliderModelView> GetImageForEachUser() { //Get the UserName from Imagestore table who have an item var users = GetAllImage().Select(x => x.UserName).Distinct(); List <SliderModelView> lst = new List <SliderModelView>(); string itemref = ""; string status = ""; var Itemrepo = new ItemService(); foreach (var user in users) { if (user != null) { // find all item for a particular user var items = GetAllImage().Where(x => x.UserName.Equals(user)).ToList(); // find all item that are not sold foreach (var x in items) { status = Itemrepo.GetById(x.imgId.Substring(0, x.imgId.Length - 1)).status; if (status == "Sold") { items.Remove(x); } } double[] post = new double[items.Count()]; int count = 0; //check the date of the item foreach (var x in items) { TimeSpan diff = DateTime.Now.Subtract(x.date); post[count] = Math.Round(Double.Parse(diff.TotalHours.ToString()), 1); count++; } //find the smallest double small = post[0]; int position = 0; for (int i = 1; i < post.Count(); i++) { if (post[i] < small) { small = post[i]; position = i; } } var item = items[position].imgByte; var base64 = Convert.ToBase64String(item); var imgSrc = String.Format("data:image/gif;base64,{0}", base64); SliderModelView sl = new SliderModelView(); sl.src = imgSrc; sl.title = items[position].ItemName; //take the description from item table via itemref sl.id = itemref = items[position].imgId.Substring(0, items[position].imgId.Length - 1); sl.description = Itemrepo.GetAll().Find(model => model.ItemRef.Equals(itemref)).ItemDescription; sl.Name = user; lst.Add(sl); } } if (lst.Count <= 5) { return(lst); } else { return(lst.Take(5).ToList()); } }