Example #1
0
        public IActionResult StoreLogo([FromBody] StoreInfoViewModel model)
        {
            var webRoot            = _env.WebRootPath;
            var PathWithFolderName = System.IO.Path.Combine(webRoot, "StoreLogo");

            //model.Logo = model.Logo.Split(',')[1];
            if (string.IsNullOrWhiteSpace(model.Logo))
            {
                return(Content("file not selected"));
            }


            var result = _storeManager.SaveStoreLogo(model);

            if (result.Status)
            {
                string Logo64Base = model.Logo.Replace("\r", "").Replace("\n", "");
                byte[] imageBytes = Convert.FromBase64String(Logo64Base);

                MemoryStream ms    = new MemoryStream(imageBytes);
                Image        image = Image.FromStream(ms);
                image.Save(PathWithFolderName + "//" + model.LogoName);
                return(Ok(result));
            }
            else
            {
                return(StatusCode(404, result));
            }
        }
        public IActionResult EditStore(StoreInfoViewModel storeToEdit)
        {
            StoreInfoViewModel editedStore = _logic.EditStore(storeToEdit);

            if (editedStore == null)
            {
                ModelState.AddModelError("Failure", "Store does not exist");
                return(View("Edit", editedStore));
            }
            return(View("Details", editedStore));
        }
        /// <summary>
        /// Converts a store into a storeinfoviewmodel
        /// </summary>
        /// <param name="store">Store we wnat to convert</param>
        /// <returns>Updated storeinfoviewmodel</returns>
        public StoreInfoViewModel ConvertStoreToStoreInfoViewModel(StoreLocation store)
        {
            StoreInfoViewModel storeInfoViewModel = new StoreInfoViewModel()
            {
                StoreLocationId      = store.StoreLocationId,
                StoreLocationName    = store.StoreLocationName,
                StoreLocationAddress = store.StoreLocationAddress,
                Inventory            = store.Inventory
            };

            return(storeInfoViewModel);
        }
        public IActionResult Edit(Guid id)
        {
            StoreInfoViewModel storeToEdit = _logic.GetStoreById(id);

            if (storeToEdit == null)
            {
                ModelState.AddModelError("Failure", "Store does not exist");
                return(View(storeToEdit));
            }

            return(View(storeToEdit));
        }
        public IActionResult CreateNewStore(StoreInfoViewModel createNewStore)
        {
            StoreInfoViewModel storeCreated = _logic.CreateStore(createNewStore);

            if (storeCreated == null)
            {
                ModelState.AddModelError("Failure", "Store name already exists");
                return(View("CreateStore"));
            }

            return(RedirectToAction("Index"));
        }
Example #6
0
        /// <summary>
        /// Grabs a store info view model and edits a store based on whats inputted
        /// </summary>
        /// <param name="storeToEdit">The store info view model we are editing</param>
        /// <returns>An edited store info view model</returns>
        public StoreInfoViewModel EditStore(StoreInfoViewModel storeToEdit)
        {
            StoreLocation store = _repo.GetStoreById(storeToEdit.StoreLocationId);

            store.StoreLocationName    = storeToEdit.StoreLocationName;
            store.StoreLocationAddress = storeToEdit.StoreLocationAddress;

            StoreLocation editedStore = _repo.EditStore(store);

            StoreInfoViewModel editedStoreIfoViewModel = _mapper.ConvertStoreToStoreInfoViewModel(editedStore);

            return(editedStoreIfoViewModel);
        }
Example #7
0
        /// <summary>
        /// Gets store from database by a store id
        /// </summary>
        /// <param name="id">Store location id</param>
        /// <returns>Store view model that was found by the id</returns>
        public StoreInfoViewModel GetStoreById(Guid id)
        {
            StoreLocation storeToEdit = _repo.GetStoreById(id);

            if (storeToEdit == null)
            {
                return(null);
            }

            StoreInfoViewModel storeViewToEdit = _mapper.ConvertStoreToStoreInfoViewModel(storeToEdit);

            return(storeViewToEdit);
        }
Example #8
0
        /// <summary>
        /// 各館資訊
        /// </summary>
        /// <returns></returns>
        //[CommonAuthorize]
        public ActionResult StoreInfo()
        {
            try
            {
                //驗證授權:一般會員及訪客
                //RoleAuthManager roleAuth = new RoleAuthManager();
                var pass = roleAuth.UserGuestAuth();
                if (pass == 0)
                {
                    ViewBag.UserName = roleAuth.UserName();
                }
                else if (pass == 1)
                {
                    ViewBag.UserName = roleAuth.UserName();
                    ViewBag.RoleName = "User";
                }
                else if (pass == 2)
                {
                    ViewBag.RoleName = "Admin";
                    ViewBag.UserName = roleAuth.UserName();
                    TempData["Msg"]  = "無權限瀏覽該網頁,請登入會員或以訪客身分瀏覽,謝謝!";
                    return(RedirectToAction("Login", "Home"));
                }

                StoreOperation storeOp  = new StoreOperation();
                var            AllStore = storeOp.Get();//取得所有館別

                List <StoreInfoViewModel> stores = new List <StoreInfoViewModel>();

                foreach (var item in AllStore)
                {
                    StoreInfoViewModel storeVModel = new StoreInfoViewModel();
                    storeVModel.Name          = item.Name;
                    storeVModel.Address       = item.Address;
                    storeVModel.Tel           = item.Tel;
                    storeVModel.Service       = item.ServiceInfo;
                    storeVModel.Parking       = item.ParkingInfo;
                    storeVModel.MemberInCount = item.AccessLimit;

                    stores.Add(storeVModel);
                }

                return(View(stores));
            }
            catch (Exception ex)
            {
                TempData["Msg"] = ex.ToString();
                return(View());
            }
        }
Example #9
0
        public ActionResult Index(StoreInfoViewModel model)
        {
            try
            {
                var PathWithFolderName = System.IO.Path.Combine(webRootPath, "StoreLogo");
                model.Logo = model.Logo.Split(',')[1];
                if (string.IsNullOrWhiteSpace(model.Logo))
                {
                    return(Content("file not selected"));
                }

                // var listContacts = new List<Contacts>();
                //string fileExtension = Path.GetExtension(ImgName).ToLower();
                //var directoryPath = Path.Combine(
                //            Directory.GetCurrentDirectory(), "Uploads");
                //var fullPath = Path.Combine(
                //            Directory.GetCurrentDirectory(), "Uploads", ImgName);

                //if (!Directory.Exists(directoryPath))
                //{
                //    Directory.CreateDirectory(directoryPath);
                //}
                //string imageName = ImgName;

                //set the image path
                // string imgPath = Path.Combine(fullPath, imageName);
                var result = _storeManager.SaveStoreLogo(model);
                if (result.Status)
                {
                    byte[] imageBytes = Convert.FromBase64String(model.Logo);

                    MemoryStream ms    = new MemoryStream(imageBytes);
                    Image        image = Image.FromStream(ms);
                    image.Save(PathWithFolderName + "//" + model.LogoName);
                    return(RedirectToAction("index"));
                }
                else
                {
                    return(View());
                }
            }
            catch (Exception ex)
            {
                return(View("Error", new ErrorViewModel {
                    RequestId = ex.Message
                }));
            }
        }
Example #10
0
        public IActionResult Index()
        {
            //var user = GetCurrentUserId().Result;
            var test = _storeManager.WebStoreLogo(GetCurrentUserId().Result);

            //var test = _storeManager.StoreLogo(GetCurrentUserId().Result);
            if (test.Status)
            {
                ViewData["Url"] = System.IO.Path.Combine(webRootPath, "StoreLogo") + "\\";
                return(View(test.Data));
            }
            else
            {
                var model = new StoreInfoViewModel();
                model.StoreId = GetCurrentUserId().Result;
                return(View(model));
            }
        }
Example #11
0
        /// <summary>
        /// Creates a new store if one by that name does not already exist
        /// </summary>
        /// <param name="createdStore">New store info view model</param>
        /// <returns>Store info view model of the new store</returns>
        public StoreInfoViewModel CreateStore(StoreInfoViewModel createdStore)
        {
            StoreLocation store = new StoreLocation()
            {
                StoreLocationName    = createdStore.StoreLocationName,
                StoreLocationAddress = createdStore.StoreLocationAddress
            };

            // if null????
            StoreLocation newStore = _repo.CreateStore(store);

            if (newStore == null)
            {
                return(null);
            }

            StoreInfoViewModel newStoreViewModel = _mapper.ConvertStoreToStoreInfoViewModel(newStore);

            return(newStoreViewModel);
        }
Example #12
0
        public ResponseModel <StoreInfoViewModel> SaveStoreLogo(StoreInfoViewModel _model)
        {
            ResponseModel <StoreInfoViewModel> response = new ResponseModel <StoreInfoViewModel>();

            try
            {
                var model = acmContext.StoreInfo.Where(e => e.StoreId == _model.StoreId).FirstOrDefault();
                if (model != null)
                {
                    model.Logo = _model.LogoName;
                    // model.LogoId = _model.LogoId;
                    model.StoreId = _model.StoreId;

                    acmContext.SaveChanges();

                    // response.Data = list;
                    response.Status  = true;
                    response.Message = "success";
                }
                else
                {
                    StoreInfo storeModel = new StoreInfo();
                    storeModel.Logo = _model.LogoName;
                    //storeModel.LogoId = model.LogoId;
                    storeModel.StoreId = _model.StoreId;
                    acmContext.Add(storeModel);
                    acmContext.SaveChanges();
                    response.Data    = null;
                    response.Message = "success";
                    response.Status  = true;
                }
            }
            catch (Exception ex)
            {
                response.Data    = null;
                response.Status  = false;
                response.Message = ex.Message;
            }

            return(response);
        }