コード例 #1
0
        public async Task <IActionResult> CreateStoreUser(RegisterStoreViewModel model, string returnUrl = null)
        {
            ViewData["ReturnUrl"] = returnUrl;
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = model.Email, Email = model.Email, Name = model.Name, AdminId = GetCurrentUserId().Result
                };
                if (string.IsNullOrWhiteSpace(model.id))
                {
                    var result = await _manager.StoreUserRegister(model, GetCurrentUserId().Result);

                    if (result.Succeeded)
                    {
                        _logger.LogInformation("User created a new account with password.");

                        //var code = await _userManager.GenerateEmailConfirmationTokenAsync(user);
                        // var callbackUrl = Url.EmailConfirmationLink(user.Id, code, Request.Scheme);
                        // await _emailSender.SendEmailConfirmationAsync(model.Email, callbackUrl);

                        var role  = _roleManager.Roles.Where(e => e.Name == "Store").FirstOrDefault();
                        var user1 = _userManager.Users.Where(e => e.Email == model.Email).FirstOrDefault();
                        await _userManager.AddToRoleAsync(user1, role.Name);

                        //await _signInManager.SignInAsync(user, isPersistent: false);
                        _logger.LogInformation("User created a new account with password.");
                        //return Redirect("/UserMangement/Index");
                        return(RedirectToAction(nameof(UserManagementController.ManageStore), "UserManagement"));
                    }
                    AddErrors(result);
                }
                else
                {
                    var storeUser = _userManager.Users.Where(e => e.Id == model.id).FirstOrDefault();
                    storeUser.Name     = model.Name;
                    storeUser.Email    = model.Email;
                    storeUser.UserName = model.Email;
                    var code = await _userManager.GeneratePasswordResetTokenAsync(storeUser);

                    var result = await _userManager.UpdateAsync(storeUser);

                    if (result.Succeeded)
                    {
                        var changePResult = await _userManager.ResetPasswordAsync(storeUser, code, model.Password);

                        if (changePResult.Succeeded)
                        {
                            return(RedirectToAction(nameof(UserManagementController.ManageStore), "UserManagement"));
                        }
                        AddErrors(result);
                    }
                    AddErrors(result);
                }
                //AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
コード例 #2
0
        public async Task <IdentityResult> StoreUserRegister(RegisterStoreViewModel model, string AdminId)
        {
            var user = new ApplicationUser {
                UserName = model.Email, Email = model.Email, Name = model.Name, AdminId = AdminId
            };
            var result = await _userManager.CreateAsync(user, model.Password);

            return(result);
        }
コード例 #3
0
        public IActionResult EditStore(string id)
        {
            var storeUser = _userManager.Users.Where(e => e.Id == id).FirstOrDefault();
            RegisterStoreViewModel model = new RegisterStoreViewModel();

            model.id    = storeUser.Id;
            model.Name  = storeUser.Name;
            model.Email = storeUser.Email;
            //  usr.LockoutEnabled = Suspend;
            return(View("_EditStore", model));
        }
コード例 #4
0
        public async Task <IActionResult> GoUpdateStoreInformation(string storeId)
        {
            Guid storeid = Guid.Parse(storeId);

            var storeWorkHours = await WorkHourDataStore.GetStoreWorkHours(storeId);

            SelectedStore.CurrentStore.WorkHours = storeWorkHours.ToList();
            var registerStoreViewModel = new RegisterStoreViewModel(SelectedStore.CurrentStore);

            return(View(registerStoreViewModel));
        }
コード例 #5
0
        public IActionResult RegisterStore([FromBody] RegisterStoreViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            // create user
            var user = new User
            {
                FirstName = viewModel.FirstName,
                LastName  = viewModel.LastName,
                Username  = viewModel.Username
            };

            try
            {
                user = _userRepository.Create(user, viewModel.Password);
            }
            catch (AuthenticationException e)
            {
                return(BadRequest(new { message = e.Message }));
            }

            // create store
            var store = new Store
            {
                Name        = viewModel.StoreName,
                Description = viewModel.StoreDescription
            };

            try
            {
                _storeRepository.Create(store, viewModel.CategoryId, viewModel.Image, viewModel.FileName,
                                        user.UserId);
                return(Ok(user));
            }
            catch (StoreException e)
            {
                return(BadRequest(new { message = e.Message }));
            }
        }
コード例 #6
0
 public IActionResult CreateStoreUser(string id)
 {
     if (string.IsNullOrWhiteSpace(id))
     {
         return(View(new RegisterStoreViewModel()));
     }
     else
     {
         // var  model = new RegisterStoreViewModel();
         var storeUser = _userManager.Users.Where(e => e.Id == id).FirstOrDefault();
         RegisterStoreViewModel model = new RegisterStoreViewModel();
         model.id    = storeUser.Id;
         model.Name  = storeUser.Name;
         model.Email = storeUser.Email;
         return(View(model));
     }
     //  usr.LockoutEnabled = Suspend;
     //   return View("_EditStore", model);
     //  return View(new RegisterStoreViewModel());
 }
コード例 #7
0
 public RegisterStorePage()
 {
     InitializeComponent();
     BindingContext = new RegisterStoreViewModel();
 }
コード例 #8
0
        public async Task <IActionResult> FirstRegisterStore(RegisterStoreViewModel registerStoreViewModel)
        {
            if (!(registerStoreViewModel.StoreLicence == Guid.Empty))
            {
                var LicenseValid = storeLicenseDataStore.StoreLicenseExists(registerStoreViewModel.StoreLicence);

                if (LicenseValid)
                {
                    if (registerStoreViewModel.File != null)
                    {
                        var ImgToBty     = ConvertToBytes(registerStoreViewModel.File);
                        var StoreId      = Guid.NewGuid();
                        var listWorkHour = new List <WorkHour>();

                        var MondayWH = new WorkHour()
                        {
                            WorkHourId = Guid.NewGuid(),
                            Day        = DayOfWeek.Monday.ToString(),
                            OpenTime   = registerStoreViewModel.MOpenTime,
                            CloseTime  = registerStoreViewModel.MCloseTime
                        };
                        var TuesdayWH = new WorkHour()
                        {
                            WorkHourId = Guid.NewGuid(),
                            Day        = DayOfWeek.Tuesday.ToString(),
                            OpenTime   = registerStoreViewModel.TOpenTime,
                            CloseTime  = registerStoreViewModel.TCloseTime
                        };
                        var WednesdayWH = new WorkHour()
                        {
                            WorkHourId = Guid.NewGuid(),
                            Day        = DayOfWeek.Wednesday.ToString(),
                            OpenTime   = registerStoreViewModel.WOpenTime,
                            CloseTime  = registerStoreViewModel.WCloseTime
                        };
                        var ThuerdayWH = new WorkHour()
                        {
                            WorkHourId = Guid.NewGuid(),
                            Day        = DayOfWeek.Thursday.ToString(),
                            OpenTime   = registerStoreViewModel.ThOpenTime,
                            CloseTime  = registerStoreViewModel.ThCloseTime
                        };
                        var FridayWH = new WorkHour()
                        {
                            WorkHourId = Guid.NewGuid(),
                            Day        = DayOfWeek.Friday.ToString(),
                            OpenTime   = registerStoreViewModel.FOpenTime,
                            CloseTime  = registerStoreViewModel.FCloseTime
                        };
                        var SaturdayWH = new WorkHour()
                        {
                            WorkHourId = Guid.NewGuid(),
                            Day        = DayOfWeek.Saturday.ToString(),
                            OpenTime   = registerStoreViewModel.SOpenTime,
                            CloseTime  = registerStoreViewModel.SCloseTime
                        };
                        var SundayWH = new WorkHour()
                        {
                            WorkHourId = Guid.NewGuid(),
                            Day        = DayOfWeek.Sunday.ToString(),
                            OpenTime   = registerStoreViewModel.SuOpenTime,
                            CloseTime  = registerStoreViewModel.SuCloseTime
                        };

                        listWorkHour.Add(MondayWH);
                        listWorkHour.Add(TuesdayWH);
                        listWorkHour.Add(WednesdayWH);
                        listWorkHour.Add(ThuerdayWH);
                        listWorkHour.Add(FridayWH);
                        listWorkHour.Add(SaturdayWH);
                        listWorkHour.Add(SundayWH);

                        var newStore = new Store()
                        {
                            StoreId = StoreId,
                            /////////////////////////CHANGE Dev///////////////////////
                            StoreName              = registerStoreViewModel.StoreName,
                            WorkHours              = listWorkHour,
                            StoreImage             = ImgToBty,
                            StoreRegisterLicenseId = registerStoreViewModel.StoreLicence,
                            UserId           = LogUser.LoginUser.UserId,
                            StoreType        = registerStoreViewModel.SelectedStoreType,
                            StoreDescription = registerStoreViewModel.StoreDescription,
                            SKKey            = registerStoreViewModel.StripeSecretKey,
                            PBKey            = registerStoreViewModel.StripePublicKey
                        };

                        var newStoreAddedResult = await StoreDataStore.AddItemAsync(newStore);

                        var result = userDataStore.CheckUserCredential(LogUser.LoginUser.UserLogin.Username, LogUser.LoginUser.UserLogin.Password);
                        LogUser.LoginUser = result;

                        if (newStoreAddedResult)
                        {
                            return(RedirectToAction("HomeStore", new { StoreId = newStore.StoreId }));
                        }
                        else
                        {
                            return(View());
                        }
                    }
                    else
                    {
                        return(View());
                    }
                }
                else
                {
                    ViewBag.LicenseError = "License is not valid.";
                    return(View());
                }
            }
            else
            {
                return(View());
            }
        }
コード例 #9
0
        public async Task <IActionResult> RegisterStore(RegisterStoreViewModel registerStoreViewModel)
        {
            if (!(registerStoreViewModel.StoreLicence == Guid.Empty))
            {
                var LicenseValid = storeLicenseDataStore.StoreLicenseExists(registerStoreViewModel.StoreLicence);

                if (LicenseValid)
                {
                    var licenseIsInUsed = await storeLicenseDataStore.IsLicenseInUsed(registerStoreViewModel.StoreLicence.ToString());

                    if (!licenseIsInUsed)
                    {
                        if (registerStoreViewModel.File != null)
                        {
                            var ImgToBty     = ConvertToBytes(registerStoreViewModel.File);
                            var StoreId      = Guid.NewGuid();
                            var listWorkHour = new List <WorkHour>();

                            var MondayWH = new WorkHour()
                            {
                                WorkHourId = Guid.NewGuid(),
                                Day        = DayOfWeek.Monday.ToString(),
                                OpenTime   = registerStoreViewModel.MOpenTime,
                                CloseTime  = registerStoreViewModel.MCloseTime
                            };
                            var TuesdayWH = new WorkHour()
                            {
                                WorkHourId = Guid.NewGuid(),
                                Day        = DayOfWeek.Tuesday.ToString(),
                                OpenTime   = registerStoreViewModel.TOpenTime,
                                CloseTime  = registerStoreViewModel.TCloseTime
                            };
                            var WednesdayWH = new WorkHour()
                            {
                                WorkHourId = Guid.NewGuid(),
                                Day        = DayOfWeek.Wednesday.ToString(),
                                OpenTime   = registerStoreViewModel.WOpenTime,
                                CloseTime  = registerStoreViewModel.WCloseTime
                            };
                            var ThuerdayWH = new WorkHour()
                            {
                                WorkHourId = Guid.NewGuid(),
                                Day        = DayOfWeek.Thursday.ToString(),
                                OpenTime   = registerStoreViewModel.ThOpenTime,
                                CloseTime  = registerStoreViewModel.ThCloseTime
                            };
                            var FridayWH = new WorkHour()
                            {
                                WorkHourId = Guid.NewGuid(),
                                Day        = DayOfWeek.Friday.ToString(),
                                OpenTime   = registerStoreViewModel.FOpenTime,
                                CloseTime  = registerStoreViewModel.FCloseTime
                            };
                            var SaturdayWH = new WorkHour()
                            {
                                WorkHourId = Guid.NewGuid(),
                                Day        = DayOfWeek.Saturday.ToString(),
                                OpenTime   = registerStoreViewModel.SOpenTime,
                                CloseTime  = registerStoreViewModel.SCloseTime
                            };
                            var SundayWH = new WorkHour()
                            {
                                WorkHourId = Guid.NewGuid(),
                                Day        = DayOfWeek.Sunday.ToString(),
                                OpenTime   = registerStoreViewModel.SuOpenTime,
                                CloseTime  = registerStoreViewModel.SuCloseTime
                            };

                            listWorkHour.Add(MondayWH);
                            listWorkHour.Add(TuesdayWH);
                            listWorkHour.Add(WednesdayWH);
                            listWorkHour.Add(ThuerdayWH);
                            listWorkHour.Add(FridayWH);
                            listWorkHour.Add(SaturdayWH);
                            listWorkHour.Add(SundayWH);

                            var newStore = new Store()
                            {
                                StoreId = StoreId,
                                /////////////////////////CHANGE Dev///////////////////////
                                StoreName              = registerStoreViewModel.StoreName,
                                WorkHours              = listWorkHour,
                                StoreImage             = ImgToBty,
                                StoreRegisterLicenseId = registerStoreViewModel.StoreLicence,
                                UserId           = LogUser.LoginUser.UserId,
                                StoreType        = registerStoreViewModel.SelectedStoreType,
                                StoreDescription = registerStoreViewModel.StoreDescription,
                                SKKey            = registerStoreViewModel.StripeSecretKey,
                                PBKey            = registerStoreViewModel.StripePublicKey,
                                StoreLicenceId   = registerStoreViewModel.StoreLicence
                            };

                            var newStoreAddedResult = await StoreDataStore.AddItemAsync(newStore);

                            var result = userDataStore.CheckUserCredential(LogUser.LoginUser.UserLogin.Username, LogUser.LoginUser.UserLogin.Password);

                            LogUser.LoginUser = result;

                            LogUser.LoginUser.Stores = LogUser.LoginUser.Stores.Where(s => s.IsDisable == false).ToList();

                            if (LogUser.Token == null)
                            {
                                LogUser.UsersConnected = new UsersConnected()
                                {
                                    HubConnectionID = LogUser.ComunicationService.hubConnection.ConnectionId,
                                    UserID          = result.UserId
                                };

                                var hub_connection_result = await userConnectedDataStore.AddItemAsync(LogUser.UsersConnected);

                                LogUser.Token = userDataStore.LoginCredential(LogUser.LoginUser.UserLogin.Username, LogUser.LoginUser.UserLogin.Password);
                            }

                            if (newStoreAddedResult)
                            {
                                var licenseUpdated = await storeLicenseDataStore.UpdateLicenceInCode(registerStoreViewModel.StoreLicence);

                                if (licenseUpdated)
                                {
                                    return(RedirectToAction("HomeStore", new { StoreId = newStore.StoreId }));
                                }
                                else
                                {
                                    return(View());
                                }
                            }
                            else
                            {
                                return(View());
                            }
                        }
                        else
                        {
                            return(View());
                        }
                    }
                    else
                    {
                        ViewBag.LicenseError = "License is in used.";
                        return(View());
                    }
                }
                else
                {
                    ViewBag.LicenseError = "License is not valid.";
                    return(View());
                }
            }
            else
            {
                return(View());
            }
        }
コード例 #10
0
        public async Task <IActionResult> UpdateStore(RegisterStoreViewModel store)
        {
            var storeToUpdate = SelectedStore.CurrentStore;

            if (store.File != null)
            {
                storeToUpdate.StoreImage = ConvertToBytes(store.File);
            }

            if (SelectedStore.CurrentStore.StoreName != store.StoreName)
            {
                storeToUpdate.StoreName = store.StoreName;
            }

            if (SelectedStore.CurrentStore.StoreDescription != store.StoreDescription)
            {
                storeToUpdate.StoreName = store.StoreName;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Monday.ToString()).FirstOrDefault().OpenTime != store.MOpenTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Monday.ToString()).FirstOrDefault().OpenTime = store.MOpenTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Monday.ToString()).FirstOrDefault().CloseTime != store.MCloseTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Monday.ToString()).FirstOrDefault().OpenTime = store.MCloseTime;
            }


            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Tuesday.ToString()).FirstOrDefault().OpenTime != store.TOpenTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Tuesday.ToString()).FirstOrDefault().OpenTime = store.TOpenTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Tuesday.ToString()).FirstOrDefault().OpenTime != store.TCloseTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Tuesday.ToString()).FirstOrDefault().OpenTime = store.TCloseTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Wednesday.ToString()).FirstOrDefault().OpenTime != store.WOpenTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Wednesday.ToString()).FirstOrDefault().OpenTime = store.WOpenTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Wednesday.ToString()).FirstOrDefault().OpenTime != store.WCloseTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Wednesday.ToString()).FirstOrDefault().OpenTime = store.WCloseTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Thursday.ToString()).FirstOrDefault().OpenTime != store.ThOpenTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Thursday.ToString()).FirstOrDefault().OpenTime = store.ThOpenTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Thursday.ToString()).FirstOrDefault().OpenTime != store.ThCloseTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Thursday.ToString()).FirstOrDefault().OpenTime = store.ThCloseTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Friday.ToString()).FirstOrDefault().OpenTime != store.FOpenTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Friday.ToString()).FirstOrDefault().OpenTime = store.FOpenTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Friday.ToString()).FirstOrDefault().OpenTime != store.FCloseTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Friday.ToString()).FirstOrDefault().OpenTime = store.FCloseTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Saturday.ToString()).FirstOrDefault().OpenTime != store.SOpenTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Saturday.ToString()).FirstOrDefault().OpenTime = store.SOpenTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Saturday.ToString()).FirstOrDefault().OpenTime != store.SCloseTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Saturday.ToString()).FirstOrDefault().OpenTime = store.SCloseTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Sunday.ToString()).FirstOrDefault().OpenTime != store.SuOpenTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Sunday.ToString()).FirstOrDefault().OpenTime = store.SuOpenTime;
            }

            if (SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Sunday.ToString()).FirstOrDefault().OpenTime != store.SuCloseTime)
            {
                SelectedStore.CurrentStore.WorkHours.Where(wh => wh.Day == DayOfWeek.Sunday.ToString()).FirstOrDefault().OpenTime = store.SuCloseTime;
            }

            if (SelectedStore.CurrentStore.StoreType != store.SelectedStoreType)
            {
                SelectedStore.CurrentStore.StoreType = store.SelectedStoreType;
            }

            var storeUpdatedResult = await storeDataStore.UpdateItemAsync(SelectedStore.CurrentStore);


            if (storeUpdatedResult)
            {
                return(RedirectToAction("HomeStore", "Store", new { StoreId = SelectedStore.CurrentStore.StoreId }));
            }

            return(RedirectToAction("GoUpdateStoreInformation", new { storeId = SelectedStore.CurrentStore.StoreId }));

            ////Logid to update store

            //var storedUpdated = storeDataStore.UpdateItemAsync()

            //return View();
        }