public override async Task <OperationsResponse> GetOperationsToResolve(Empty request, ServerCallContext context) { var operations = await _validationRepository.GetResolutionRequiredAsync(); var result = new OperationsResponse(); foreach (var operation in operations) { var riskOperation = new RiskOperation { Id = operation.Operation.Id.ToString(), ClientId = operation.Operation.UserId.ToString(), Type = operation.Operation.Type.ToString(), BlockchainType = operation.Operation.BlockchainType, AssetId = operation.Operation.BlockchainAssetId, FromAddress = operation.Operation.FromAddress, ToAddress = operation.Operation.ToAddress, Amount = operation.Operation.Amount.ToString(CultureInfo.InvariantCulture), Risk = new Risk { Violations = operation.Risk.Violations, Level = operation.Risk.Level.ToString() } }; result.Operations.Add(riskOperation); } return(result); }
} // функция загрузки private async void Registration(object sender, RoutedEventArgs e) { _login = Login.Text; string password = Password.Password; string confirmPassword = ConfirmPassword.Password; string badgeError = (string)Application.Current.Resources["NotifyErrorBadgeEN"]; string messagePM = (string)Application.Current.Resources["NotifyPasswordsMismatchEN"]; string messageUE = (string)Application.Current.Resources["NotifyUserExistsEN"]; string messageSE = (string)Application.Current.Resources["NotifyServerErrorEN"]; string messageEF = (string)Application.Current.Resources["NotifyEmptyFieldsEN"]; if (Properties.Settings.Default.DefaultLanguage.Equals(new CultureInfo("ru-RU"))) { badgeError = (string)Application.Current.Resources["NotifyErrorBadgeRU"]; messagePM = (string)Application.Current.Resources["NotifyPasswordsMismatchRU"]; messageUE = (string)Application.Current.Resources["NotifyUserExistsRU"]; messageSE = (string)Application.Current.Resources["NotifyServerErrorRU"]; messageEF = (string)Application.Current.Resources["NotifyEmptyFieldsRU"]; } if (password != confirmPassword) { Manager.CreateMessage() .Accent("#8b0000") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messagePM) .Dismiss().WithDelay(2500) .Queue(); Password.Password = ConfirmPassword.Password = ""; Password.Focus(); return; } if (_login != "" && password != "") { Loading(true); string hashedPassword = BCrypt.Net.BCrypt.HashPassword(password, 10); OperationsResponse response = await UserOperations.CreateUser(_login, hashedPassword); Loading(false); switch (response) { case OperationsResponse.Ok: _userid = await UserOperations.GetUserId(_login); response = await AccountOperations.CreateAccount(_userid, "New user", "undefined"); response = await PermissionsOperations.AddPermission(_userid); RegistrationPanel.Visibility = Visibility.Collapsed; CreateAccountPanel.Visibility = Visibility.Visible; break; case OperationsResponse.UserExists: Manager.CreateMessage() .Accent("#8b0000") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageUE) .Dismiss().WithDelay(2500) .Queue(); break; case OperationsResponse.ServerError: Manager.CreateMessage() .Accent("#8b0000") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageSE) .Dismiss().WithDelay(2500) .Queue(); break; } } else { Manager.CreateMessage() .Accent("DeepSkyBlue") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageEF) .Dismiss().WithDelay(2500) .Queue(); } } // функция регистрации
} // функция регистрации private async void CreateAccount(object sender, RoutedEventArgs e) { string name = Name.Text != "" ? Name.Text : "New user"; string email = Email.Text; string badgeError = (string)Application.Current.Resources["NotifyErrorBadgeEN"]; string messageUE = (string)Application.Current.Resources["NotifyUncorrectEmailEN"]; string messageSE = (string)Application.Current.Resources["NotifyServerErrorEN"]; if (Properties.Settings.Default.DefaultLanguage.Equals(new CultureInfo("ru-RU"))) { badgeError = (string)Application.Current.Resources["NotifyErrorBadgeRU"]; messageUE = (string)Application.Current.Resources["NotifyUncorrectEmailRU"]; messageSE = (string)Application.Current.Resources["NotifyServerErrorRU"]; } if (!ValidateEmail(email)) { Manager.CreateMessage() .Accent("#8b0000") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageUE) .Dismiss().WithDelay(2500) .Queue(); Email.Text = ""; Email.Focus(); return; } Loading(true); Account _account = await AccountOperations.GetAccountById(_userid); _account.Name = name; _account.Email = email; OperationsResponse response = await AccountOperations.Update(_account); switch (response) { case OperationsResponse.Ok: MainWindow mainWindow = new MainWindow(); // creating MainWindow // creating ViewModel for MainWindow MainWindowViewModel vm = new MainWindowViewModel(_login); mainWindow.DataContext = vm; mainWindow.WindowStartupLocation = WindowStartupLocation.CenterScreen; mainWindow.Show(); Window.GetWindow(this)?.Close(); // close auth modal window break; case OperationsResponse.ServerError: Manager.CreateMessage() .Accent("#8b0000") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageSE) .Dismiss().WithDelay(2500) .Queue(); break; } Loading(false); } // функция создания аккаунта
} // ограничение private async void Authorization(object sender, RoutedEventArgs e) { string login = Login.Text; string password = Password.Password; string badgeError = (string)Application.Current.Resources["NotifyErrorBadgeEN"]; string messageUC = (string)Application.Current.Resources["NotifyUncorrectCredentialsEN"]; string messageSE = (string)Application.Current.Resources["NotifyServerErrorEN"]; string messageEF = (string)Application.Current.Resources["NotifyEmptyFieldsEN"]; if (Properties.Settings.Default.DefaultLanguage.Equals(new CultureInfo("ru-RU"))) { badgeError = (string)Application.Current.Resources["NotifyErrorBadgeRU"]; messageUC = (string)Application.Current.Resources["NotifyUncorrectCredentialsRU"]; messageSE = (string)Application.Current.Resources["NotifyServerErrorRU"]; messageEF = (string)Application.Current.Resources["NotifyEmptyFieldsRU"]; } if (login != "" && password != "") { Loading(true); OperationsResponse response = await UserOperations.CheckAuthorization(login, password); Loading(false); switch (response) { case OperationsResponse.Ok: MainWindow mainWindow = new MainWindow(); // creating MainWindow // creating ViewModel for MainWindow MainWindowViewModel vm = new MainWindowViewModel(login); mainWindow.DataContext = vm; mainWindow.WindowStartupLocation = WindowStartupLocation.CenterScreen; mainWindow.Show(); Window.GetWindow(this)?.Close(); // close auth modal window break; case OperationsResponse.UserNotExists: Manager.CreateMessage() .Accent("DeepSkyBlue") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageUC) .Dismiss().WithDelay(2500) .Queue(); break; case OperationsResponse.ServerError: Manager.CreateMessage() .Accent("#8b0000") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageSE) .Dismiss().WithDelay(2500) .Queue(); break; } } else { Manager.CreateMessage() .Accent("DeepSkyBlue") .Animates(true) .AnimationInDuration(0.55) .AnimationOutDuration(0.55) .Background("#333") .HasBadge(badgeError) .HasMessage(messageEF) .Dismiss().WithDelay(2500) .Queue(); } } // функция авторизации