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()); } }
//Sign In Action public async Task <IActionResult> Index(LoginViewModel loginViewModel) { if (LoginInfoNotNullOrEmpty(loginViewModel)) { var result = userDataStore.CheckUserCredential(loginViewModel.Username, loginViewModel.Password); LogUser.Token = userDataStore.LoginCredential(loginViewModel.Username, loginViewModel.Password); if (result != null) { LogUser.ComunicationService = new ComunicationService(); Task.Run(async() => { await LogUser.ComunicationService.Connect(); }).Wait(); LogUser.LoginUser = result; LogUser.UsersConnected = new UsersConnected() { HubConnectionID = LogUser.ComunicationService.hubConnection.ConnectionId, UserID = result.UserId, IsDisable = false, ConnecteDate = DateTime.Now }; bool isConnectionWasModify = await userConnectedDataStore.ModifyOldConnections(LogUser.UsersConnected); var hub_connection_result = await userConnectedDataStore.AddItemAsync(LogUser.UsersConnected); var stores = new List <Store>(result.Stores.Where(s => s.IsDisable == false)); LogUser.LoginUser.Stores = stores; if (stores.Count() > 0) { SelectedStore.CurrentStore = stores[0]; } else { return(RedirectToAction("RegisterControl", "Store")); } return(RedirectToAction("HomeStore", "Store", new { StoreId = SelectedStore.CurrentStore.StoreId })); } else { ViewBag.ErrorMsg = "Error"; return(View()); } } else { return(View()); } }