public Program() { ICommand _command = new Command(); ICheckCommand _checkCommand = new CheckCommand(_command); ISlot _slot = new Slot(); IParkingLotRepository _parkingRepository = new ParkingLotRepository(); ICheckParkingLotCreated checkParkingLotCreated = new CheckParkingLotCreated(_parkingRepository); ICommandExecutorSelector createParkingLot = new CreateParkingLot(_checkCommand, _slot, checkParkingLotCreated, _parkingRepository); IValidateVeicleDetails _validateVeicleDetails = new ValidateVeicleDetails(); IParkingVehicle _parkingVehicle = new ParkingVehicle(); IParkSuccessMessage _parkSuccessMessage = new ParkSuccessMessage(); ICommandExecutorSelector park = new Park(_checkCommand, _validateVeicleDetails, _parkingVehicle, _parkingRepository, _parkSuccessMessage); ISlotToEmpty _slotToEmpty = new SlotToEmpty(); IMaxSlotIndex _maxSlotIndex = new MaxSlotIndex(); IValidateSlotNumberToEmpty _validateSlotNumberToEmpty = new ValidateSlotNumberToEmpty(_parkingRepository, _maxSlotIndex); ILeaveSuccessMessage _leaveSuccessMessage = new LeaveSuccessMessage(); ICommandExecutorSelector leave = new Leave(_checkCommand, _slotToEmpty, _validateSlotNumberToEmpty, _parkingRepository, _leaveSuccessMessage); IStatusOutput _statusOutput = new StatusOutput(); ICommandExecutorSelector status = new Status(_parkingRepository, _statusOutput); IVehicleColor _vehicleColor = new VehicleColor(); IVehicleByColor _vehicleByColor = new VehicleByColor(); IVehicleByColorSuccessMessage _vehicleByColorSuccessMessage = new VehicleByColorSuccessMessage(); ICommandExecutorSelector regNoByColor = new RegistrationNumbersForCarsWithColour(_checkCommand, _vehicleColor, _parkingRepository, _vehicleByColor, _vehicleByColorSuccessMessage); ISlotByColor _slotByColor = new SlotByColor(); ISlotByColorMessage _slotByColorMessage = new SlotByColorMessage(); ICommandExecutorSelector slotNoByColor = new SlotNumbersForCarsWithColour(_checkCommand, _vehicleColor, _parkingRepository, _slotByColor, _slotByColorMessage); IVehicleRegistrationNumber _vehicleRegistrationNumber = new VehicleRegistrationNumber(); ISlotByRegistrationNumber _slotByRegistrationNumber = new SlotByRegistrationNumber(); ICommandExecutorSelector slotByRegistration = new SlotNumberForRegistrationNumber(_checkCommand, _vehicleRegistrationNumber, _parkingRepository, _slotByRegistrationNumber); ICommandExecutorSelector[] _selectors = { createParkingLot, park, leave, status, regNoByColor, slotNoByColor, slotByRegistration }; _provider = new CommandExecutorProvider(_selectors); }
public MainWindow() { if (Instance != null) { // I know, this "single-instance" thing is hardly ideal. I might come back to it. throw new InvalidOperationException("Only one instance of this class should be created"); } Instance = this; InitializeComponent(); OutputLog debug = LogView.Supplier.Start( "MainWindow_Output", "Debug", ViewSupplier.Category_Main); ILogEventSink output = new Output(new OutputLogWriter(debug)); Logs.AddSink(output); ILogEventSink status = new StatusOutput(StatusView, this); Logs.AddSink(status); FileView.FileOpened += OnOpenFile; SetupViewHiding(ScreenView, ScreenTab, OutputTabs); SetupViewHiding(MemoryView, MemoryTab, InfoTabs); foreach (FileOpenedEventArgs item in FileView.EnumerateOpenedFiles()) { OnOpenFile(FileView, item); } }
public async Task <ActionResult> ViewSummary() { try { var authResult = await _unifiedAuth.AuthenticateUser(Request.HttpContext); var tokenStatus = authResult.Item3; switch (tokenStatus) { case TokenHelper.TokenStatus.Valid: { var account = authResult.Item2; var accountId = account.Id; HttpClient client = new HttpClient() { BaseAddress = new Uri(_portfolioPerformanceApiBaseUrl) }; var byteArray = Encoding.ASCII.GetBytes($"{_internalServiceAuthUsername}:{_internalServiceAuthPassword}"); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray)); var response = await client.GetStringAsync($"PerformanceReport/GetCurrentPerformance/{accountId}"); var responseJson = JsonConvert.DeserializeObject <PortfolioPerformanceReport>(response); return(Ok(responseJson)); } case TokenHelper.TokenStatus.Expired: { StatusOutput status = new StatusOutput() { message = StatusMessages.ExpiredTokenMessage }; return(Ok(status)); } default: { StatusOutput status = new StatusOutput() { message = StatusMessages.InvalidTokenMessage }; return(Ok(status)); } } } catch (Exception e) { Log.Fatal(e, $"{nameof(ViewSummary)}"); return(StatusCode(500)); } }
/// <summary> /// Display the status given. /// </summary> /// <param name="status">Status message.</param> private void DispalyStatus(string status) { StatusOutput += status + "\n"; if (StatusOutput.Length > 500) { StatusOutput = StatusOutput.Substring(StatusOutput.Length - 500); } }
public async Task <ActionResult> ViewBalance() { try { var authResult = await _unifiedAuth.AuthenticateUser(Request.HttpContext); var tokenStatus = authResult.Item3; switch (tokenStatus) { case TokenHelper.TokenStatus.Valid: { var account = authResult.Item2; AccountBalanceOutput output = new AccountBalanceOutput() { AccountId = account.Id, AccountBalance = account.Balance }; return(Ok(output)); } case TokenHelper.TokenStatus.Expired: { StatusOutput status = new StatusOutput() { message = StatusMessages.ExpiredTokenMessage }; return(Ok(status)); } default: { StatusOutput status = new StatusOutput() { message = StatusMessages.InvalidTokenMessage }; return(Ok(status)); } } } catch (Exception e) { Log.Fatal(e, $"{nameof(ViewBalance)}"); return(StatusCode(500)); } }
public async Task <ActionResult> ViewTransactions() { try { var authResult = await _unifiedAuth.AuthenticateUser(Request.HttpContext); var tokenStatus = authResult.Item3; switch (tokenStatus) { case TokenHelper.TokenStatus.Valid: { var account = authResult.Item2; var transactions = await _context.Transactions.Where(x => x.AccountId == account.Id).ToListAsync(); var orders = transactions.Join(_context.Orders, transactions1 => transactions1.TransactionId, orders1 => orders1.TransactionID, (transactions1, orders1) => orders1).ToList(); return(Ok(orders)); } case TokenHelper.TokenStatus.Expired: { StatusOutput status = new StatusOutput() { message = StatusMessages.ExpiredTokenMessage }; return(Ok(status)); } default: { StatusOutput status = new StatusOutput() { message = StatusMessages.InvalidTokenMessage }; return(Ok(status)); } } } catch (Exception e) { Log.Fatal(e, $"{nameof(ViewTransactions)}"); return(StatusCode(500)); } }
private bool SwitchStoryboard(string path) { try { var info = BeatmapFolderInfo.Parse(path); StatusOutput.ChangeText($"正在切换{Path.GetFileName(info.osb_file_path)}..."); StoryboardPlayerHelper.PlayStoryboard(info); StatusOutput.ChangeText($""); } catch (Exception e) { logger.LogError($"无法切换SB:原因 {e.Message}"); return(false); } return(true); }
public async Task <StatusOutput> AlterarStatus(StatusInput statusInput, CancellationToken cancellationToken) { return(await Task.Run(() => { StatusOutput statusOutput = new StatusOutput(); statusOutput.Pedido = statusInput.Pedido; Pedido pedido = PedidoRepository.GetById(statusInput.Pedido); if (pedido == null) { pedido = new Pedido(); } pedido.AlterarStatus(statusInput.Status, statusInput.ItensAprovados, statusInput.ValorAprovado); statusOutput.Status = pedido.GetStatusDetalhado(); return statusOutput; }, cancellationToken)); }
private Task DownloadBeatmap(int beatmap_setid) { return(Task.Run(() => { WebClient client = new WebClient(); var file_name = $"{beatmap_setid}.osz"; StatusOutput.ChangeText($"正在下载{beatmap_setid}..."); client.DownloadFile(new Uri($"https://mikirasora.moe/api/osu/dl_map?beatmap_setid={beatmap_setid}&api=98D037CD"), file_name); using (ZipArchive archive = ZipFile.Open(file_name, ZipArchiveMode.Update)) { var output_path = Path.Combine(Setting.Instance.StoryboardFolders, $"{beatmap_setid}"); Directory.CreateDirectory(output_path); archive.ExtractToDirectory(output_path); } })); }
public BookwormForm() { InitializeComponent(); LockMode.Active = true; BookwormForm.FormInstance = this; Hotkeys = new Hotkeys(Bot, this); StatusOutput = new StatusOutput(this); Hotkeys.LoadHotkeys(); bLoadAndParseDictionary_Click(this, EventArgs.Empty); this.cbDatabase.SelectedIndex = 1; Bot.Database.SwitchDatabase(this.cbDatabase.SelectedItem.ToString()); Bot.Vocabulary.LoadGrimmDictionaryAsync(); GarbageCollector.StartCollectingInBackground(); foreach (Screenpart screenpart in (Screenpart[])Enum.GetValues(typeof(Screenpart))) { this.lbScreenparts.Items.Add(screenpart); } Task.Run((Action)CaptureAndBot); // LoadTilePositions(); }
private async void SwitchStoryboard(int beatmap_setid) { var path = Directory.EnumerateDirectories(Setting.Instance.StoryboardFolders, $"{beatmap_setid}*").FirstOrDefault(); if (string.IsNullOrWhiteSpace(path)) { try { await DownloadBeatmap(beatmap_setid); path = Directory.EnumerateDirectories(Setting.Instance.StoryboardFolders, $"{beatmap_setid}*").FirstOrDefault(); } catch (Exception e) { StatusOutput.ChangeText($"下载{beatmap_setid}失败!{e.Message}", 5000); } } if (!SwitchStoryboard(path)) { RequestSwitch(); } }
public async Task <ActionResult <Users> > RegisterUser(LoginInput input) { try { if (!_context.Users.Any(x => x.Username == input.username)) { DataSyncManager dataSyncManager = new DataSyncManager(_syncDbConnectionString); byte[] salt = new byte[128 / 8]; using (var rng = RandomNumberGenerator.Create()) { rng.GetBytes(salt); } Users newUser = new Users() { Username = input.username, Password = PasswordHashHelper.GetHash(input.password, salt), Salt = salt, EnvironmentId = RDSEnums.EnvironmentId.ProductionPrimary }; _context.Users.Add(newUser); await _context.SaveChangesAsync(); Users createdUser = await _context.Users.FirstOrDefaultAsync(x => x.Username == input.username); Tokens newToken = new Tokens() { UserID = createdUser.Id, Token = TokenHelper.GenerateToken(input.username, TokenHelper.TokenType.Standard), EnvironmentId = RDSEnums.EnvironmentId.ProductionPrimary }; Accounts newAccount = new Accounts() { UserID = createdUser.Id, Balance = 1000000.99, EnvironmentId = RDSEnums.EnvironmentId.ProductionPrimary }; _context.Tokens.Add(newToken); _context.Accounts.Add(newAccount); await _context.SaveChangesAsync(); if (_dataSyncEnabled) { Users replicatedUser = new Users() { Username = newUser.Username, Password = newUser.Password, Salt = newUser.Salt, EnvironmentId = RDSEnums.EnvironmentId.ProductionSecondary }; await dataSyncManager.SyncNewUser(replicatedUser, newToken.Token); } StatusOutput output = new StatusOutput() { message = StatusMessages.UserCreatedMessage }; return(Ok(output)); } else { StatusOutput output = new StatusOutput() { message = StatusMessages.UserExistsMessage }; return(Ok(output)); } } catch (Exception e) { Log.Fatal(e, $"{nameof(RegisterUser)}"); return(StatusCode(500)); } }