Ejemplo n.º 1
0
        public List <ItemModelview> GetMyTrade(string username)
        {
            var ImageStorerepo = new ImageStoreService();
            var Itemrepo       = new ItemService();
            List <ItemModelview> lstItemModelview = new List <ItemModelview>();
            var lstimgId = ImageStorerepo.GetAll().FindAll(x => x.UserName.Equals(username)).Select(w => w.imgId);

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

            foreach (var item in lstimgId)
            {
                string x = item.Substring(0, item.Length - 1);
                if (!lstItemref.Contains(x))
                {
                    lstItemref.Add(x);
                }
            }
            foreach (var item in lstItemref)
            {
                var           _item          = Itemrepo.GetById(item);
                ItemModelview _ItemModelview = new ItemModelview
                {
                    ItemName        = _item.ItemName,
                    ItemPrice       = _item.ItemPrice,
                    ItemDescription = _item.ItemDescription,
                    ItemRef         = _item.ItemRef,
                    src             = ImageStorerepo.GetById(item + "0").imgByte
                };
                lstItemModelview.Add(_ItemModelview);
            }
            return(lstItemModelview);
        }
Ejemplo n.º 2
0
 public List <ImageStoreModelView> GetAllImage()
 {
     using (var ImageStorerepo = new ImageStoreService())
     {
         return(ImageStorerepo.GetAll().Select(model => new ImageStoreModelView()
         {
             imgId = model.imgId,
             imgByte = model.imgByte,
             UserName = model.UserName,
             date = model.date,
             ItemName = model.ItemName
         }).ToList());
     }
 }
Ejemplo n.º 3
0
 public void DeleteAllImage(string id)
 {
     using (var repo = new ImageStoreService())
     {
         var items = repo.GetAll();
         foreach (var item in items)
         {
             string newId = item.imgId.Substring(0, item.imgId.Length - 1);
             if (newId.Equals(id))
             {
                 var itemToDelete = repo.GetById(item.imgId);
                 repo.Delete(itemToDelete);
             }
         }
     }
 }
Ejemplo n.º 4
0
        public List <string> GetItemRef(string UserName)
        {
            var ImageStorerepo = new ImageStoreService();
            var Itemrepo       = new ItemService();
            List <ItemModelview> lstItemModelview = new List <ItemModelview>();
            var lstimgId = ImageStorerepo.GetAll().FindAll(x => x.UserName.Equals(UserName)).Select(w => w.imgId);

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

            foreach (var item in lstimgId)
            {
                string x = item.Substring(0, item.Length - 1);
                if (!lstItemref.Contains(x))
                {
                    lstItemref.Add(x);
                }
            }
            return(lstItemref);
        }
Ejemplo n.º 5
0
        public void PostEdit(ItemModelview model)
        {
            using (var repo = new ImageStoreService())
            {
                // Find all item with the same reference number
                var ImageStore = repo.GetAll().Where(x => x.imgId.Substring(0, x.imgId.Length - 1).Equals(model.ItemRef)).ToList();
                //from website
                if (model.ImageFile != null)
                {
                    //check the number of picture
                    int NumberOfItem = model.ImageFile.Count();
                    if (ImageStore.Count() > NumberOfItem)
                    {
                        //will delete the remaining of ImageStore
                        int count = 0;

                        byte[] imgbyte = null;
                        //update item with new details
                        foreach (var item in ImageStore)
                        {
                            BinaryReader reader = new BinaryReader(model.ImageFile[count].InputStream);
                            imgbyte       = reader.ReadBytes(model.ImageFile[count].ContentLength);
                            item.ItemName = model.ItemName;
                            item.imgByte  = imgbyte;
                            repo.Update(item);
                            count++;
                        }

                        //delete the remainig
                        for (int i = model.ImageFile.Count() + 1; i < ImageStore.Count(); i++)
                        {
                            var ItemToDelete = ImageStore[i];
                            repo.Delete(ItemToDelete);
                        }
                    }
                    else
                    {
                        // will add the remaing of model.ImageFile
                    }
                }
                //from app
                else
                {
                    for (int i = 0; i < model.Lstsrc.Count(); i++)
                    {
                        var itemToUpdate = ImageStore[i];
                        itemToUpdate.ItemName = model.ItemName;
                        itemToUpdate.imgByte  = model.Lstsrc[i];
                        repo.Update(itemToUpdate);
                    }

                    // Delete the remaining item
                    //1 bcz they will be only one pic from app and
                    //the number of img in imageStore must not be one
                    if (model.Lstsrc.Count() == 1 && ImageStore.Count() > 1)
                    {
                        for (int i = 1; i < ImageStore.Count(); i++)
                        {
                            var ItemToDelete = ImageStore[i];
                            repo.Delete(ItemToDelete);
                        }
                    }
                }
            }
        }