コード例 #1
0
 public UserController(UserManager <ExtendedUser> userManager, IOptionsSnapshot <JwtSettings> jwtSettings, ImageStoreService imageStoreService, AppDbContext appDbContext)
 {
     _userManager       = userManager;
     _jwtSettings       = jwtSettings.Value;
     _imageStoreService = imageStoreService;
     _appDbContext      = appDbContext;
 }
コード例 #2
0
        public List <ItemWithImageModelView> GetAllItemWithImage()
        {
            List <ItemWithImageModelView> lst = new List <ItemWithImageModelView>();
            ItemWithImageModelView        _ItemWithImageModelView = new ItemWithImageModelView();
            string Itemref;

            using (var ImageStorerepo = new ImageStoreService())
            {
                foreach (var item in GetAllItems())
                {
                    //find item ref of the item in imagestore table
                    Itemref = item.ItemRef + "0";

                    //  _ItemWithImageModelView.imgByte = ImageStorerepo.GetAll().Find(img => img.imgId.Equals(Itemref)).imgByte;
                    _ItemWithImageModelView.ItemName        = item.ItemName;
                    _ItemWithImageModelView.ItemPrice       = item.ItemPrice;
                    _ItemWithImageModelView.ItemDescription = item.ItemDescription;
                    _ItemWithImageModelView.ItemRef         = item.ItemRef;

                    //add to the list
                    lst.Add(_ItemWithImageModelView);
                }
                return(lst);
            }
        }
コード例 #3
0
        public ItemModelview DetailsItemApp(string id)
        {
            var           ImageStorerepo = new ImageStoreService();
            List <byte[]> lst            = new List <byte[]>();

            using (var Itemrepo = new ItemService())
            {
                string        itemid         = id + "0";
                ItemModelview _ItemModelview = new ItemModelview();

                if (!id.Equals(string.Empty))
                {
                    //find the item in item table
                    var item = Itemrepo.GetAll().Find(x => x.ItemRef.Equals(id));
                    _ItemModelview.ItemName  = item.ItemName;
                    _ItemModelview.ItemPrice = item.ItemPrice;
                    //find client username in the storeImage table
                    _ItemModelview.UserName        = ImageStorerepo.GetById(itemid).UserName;
                    _ItemModelview.ItemDescription = item.ItemDescription;
                    _ItemModelview.ItemRef         = id;
                    _ItemModelview.date            = ImageStorerepo.GetById(itemid).date;
                    foreach (var img in GetAllImage())
                    {
                        if (img.imgId.Substring(0, img.imgId.Length - 1).Equals(id))
                        {
                            lst.Add(img.imgByte);
                        }
                    }
                    _ItemModelview.Lstsrc = lst;
                }
                return(_ItemModelview);
            }
        }
コード例 #4
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);
        }
コード例 #5
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());
     }
 }
コード例 #6
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);
             }
         }
     }
 }
コード例 #7
0
ファイル: BetBusiness.cs プロジェクト: leumaskabiena/TradeApi
        public List <BetModelView> MyNotUpdateBet(string Username)
        {
            List <BetModelView> lst = new List <BetModelView>();
            var repo = new ImageStoreService();

            foreach (var item in GetAllNotUpdateBet())
            {
                // find the owner of the item

                string refe     = item.itemref.Substring(item.itemref.IndexOf('-') + 1) + "0";
                string username = repo.GetById(refe).UserName;
                if (username.Equals(Username))
                {
                    lst.Add(item);
                }
            }
            return(lst);
        }
コード例 #8
0
ファイル: BetBusiness.cs プロジェクト: leumaskabiena/TradeApi
        public int NumberOfBet(string Username)
        {
            int count = 0;
            var repo  = new ImageStoreService();

            foreach (var item in GetAllNotUpdateBet())
            {
                // find the owener of the item

                string refe     = item.itemref.Substring(item.itemref.IndexOf('-') + 1) + "0";
                string username = repo.GetById(refe).UserName;
                if (username.Equals(Username))
                {
                    count++;
                }
            }
            return(count);
        }
コード例 #9
0
ファイル: BetBusiness.cs プロジェクト: leumaskabiena/TradeApi
        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);
        }
コード例 #10
0
 public void CreateImageForItem(ItemModelview model)
 {
     using (var ImageStorerepo = new ImageStoreService())
     {
         int count = 0;
         // from the website
         if (model.ImageFile != null)
         {
             foreach (var file in model.ImageFile)
             {
                 byte[]       imgbyte = null;
                 BinaryReader reader  = new BinaryReader(file.InputStream);
                 imgbyte = reader.ReadBytes(file.ContentLength);
                 ImageStore img = new ImageStore
                 {
                     imgId    = model.ItemRef + count,
                     UserName = model.UserName,
                     ItemName = model.ItemName,
                     date     = DateTime.Now,
                     imgByte  = imgbyte
                 };
                 ImageStorerepo.Insert(img);
                 count++;
             }
         }
         // from app
         else
         {
             ImageStore img = new ImageStore
             {
                 imgId    = model.ItemRef + count,
                 UserName = model.UserName,
                 ItemName = model.ItemName,
                 date     = DateTime.Now,
                 imgByte  = model.src
             };
             ImageStorerepo.Insert(img);
         }
     }
 }
コード例 #11
0
        public ItemModelview DetailsItem(string id)
        {
            var ImageStorerepo = new ImageStoreService();

            using (var Itemrepo = new ItemService())
            {
                string        itemid         = id + "0";
                ItemModelview _ItemModelview = new ItemModelview();
                if (!id.Equals(""))
                {
                    //find the item in item table
                    var item = Itemrepo.GetAll().Find(x => x.ItemRef.Equals(id));
                    _ItemModelview.ItemName  = item.ItemName;
                    _ItemModelview.ItemPrice = item.ItemPrice;
                    //find client username in the storeImage table
                    _ItemModelview.UserName        = ImageStorerepo.GetById(itemid).UserName;
                    _ItemModelview.ItemDescription = item.ItemDescription;
                    _ItemModelview.ItemRef         = id;
                }
                return(_ItemModelview);
            }
        }
コード例 #12
0
 public UploadController(ImageStoreService imageStore)
 {
     _imageStore = imageStore;
 }
コード例 #13
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);
                        }
                    }
                }
            }
        }
コード例 #14
0
 public ViewController(IConfiguration config, ImageStoreService imageStore)
 {
     _config     = config;
     _imageStore = imageStore;
 }
コード例 #15
0
 public SqlItemRepository(AppDbContext appDbContext, ImageStoreService imageStoreService)
 {
     _appDbContext      = appDbContext;
     _imageStoreService = imageStoreService;
 }