private void PrintCreditNoteFromTicketPleaseWait() { string error = ""; var number = BusinessPropsHelper.GenerateNextCreditNoteNumber(); var checkSum = new PasswordGenerator().Generate(4, 4, true); var result = TransactionQueueHelper.TryDepositByTicketMoneyOnHub(BusinessPropsHelper.GetNextTransactionId(), StationRepository.GetUid(ChangeTracker.CurrentUser), CurrentTicket.ticketNbr, CurrentTicket.checkSum, number, checkSum, ref error); if (!result) { ShowError(error); } else { var sucess = PrinterHandler.PrintCreditNote(CurrentTicket.wonAmount, number, checkSum, false, DateTime.MinValue, DateTime.MinValue); if (!sucess) { GetMoneyFromCreditNote(new CreditNoteWS() { amount = CurrentTicket.wonAmount, number = number, code = checkSum }); ShowError(TranslationProvider.Translate(MultistringTags.UNABLE_TO_PRINT_CREDITNOTE) + "\r\n" + TranslationProvider.Translate(MultistringTags.SHOP_FORM_CREDITNOTE) + ": " + number + " " + checkSum); } } Log.Error(error, new Exception(error)); CurrentTicket = WsdlRepository.LoadTicket(CurrentTicket.ticketNbr, CurrentTicket.checkSum, StationRepository.StationNumber, SelectedLanguage, SelectedLanguage, true); ReloadTicket(CurrentTicket); }
private void Refresh(bool obj) { try { var ticket = WsdlRepository.LoadTicket(CurrentTicket.ticketNbr, CurrentTicket.checkSum, StationRepository.StationNumber, SelectedLanguage, SelectedLanguage, true); ReloadTicket(ticket); } catch (FaultException <HubServiceException> ex) { if (ex.Detail.code == 220) { ShowError(TranslationProvider.Translate(MultistringTags.SHOP_FORM_TICKET_NOT_FOUND)); } else if (ex.Detail.code == 1791) { ShowError(TranslationProvider.Translate(MultistringTags.TERMINAL_TICKET_INVALIDFRANCHISOR)); } else { ShowError(TranslationProvider.Translate(MultistringTags.TERMINAL_TICKET_INVALIDLOCATION)); } } catch (Exception) { ShowError(TranslationProvider.Translate(MultistringTags.SERVER_ERROR)); } }
private void OnShowTicket(TicketView ticketView) { WaitOverlayProvider.ShowWaitOverlay(); try { CurrentTicket = WsdlRepository.LoadTicket(ticketView.Number, ticketView.CheckSum, StationRepository.StationNumber, SelectedLanguage, SelectedLanguage, true); MyRegionManager.NavigateUsingViewModel <TicketDetailsViewModel>(RegionNames.UserProfileContentRegion); } catch (System.ServiceModel.FaultException <HubServiceException> exception) { ShowError(exception.Detail.message); } }
private void PleaseWaitLoadTicket(bool redirect) { if (ChangeTracker.LoadedTicketcheckSum.Length < BarCodeConverter.TicketCodeLen || ChangeTracker.LoadedTicket.Length < BarCodeConverter.TicketNumLen) { return; } DetailsEnabled = false; try { if (ChangeTracker.LoadedTicketType == BarCodeConverter.BarcodeType.CREDIT_NOTE) { Mediator.SendMessage(new Tuple <string, string>(TicketNumber, TicketCode), MsgTag.AddMoneyFromCreditNote); return; } CurrentTicket = WsdlRepository.LoadTicket(ChangeTracker.LoadedTicket, ChangeTracker.LoadedTicketcheckSum, StationRepository.StationNumber, SelectedLanguage, SelectedLanguage, true); if (CurrentTicket != null) { long id = 1; string result = "1"; try { result = WsdlRepository.GetAccountByTicket(ChangeTracker.LoadedTicket); } catch (Exception) { result = "1"; } long.TryParse(result, out id); if ((ChangeTracker.CurrentUser != null && (id == ChangeTracker.CurrentUser.AccountId || id == 1)) || !StationRepository.AuthorizedTicketScanning) { ChangeTracker.LoadedTicketType = BarCodeConverter.BarcodeType.TICKET; } else { ShowError(TranslationProvider.Translate(MultistringTags.THIS_TICKET_DOES_NOT_BELONG_TO_YOU).ToString()); return; } } if (ChangeTracker.LoadedTicketType == BarCodeConverter.BarcodeType.STORED_TICKET) { Mediator.SendMessage("", MsgTag.OpenStoredTicket); return; } if (CurrentTicket == null && ChangeTracker.LoadedTicketType == BarCodeConverter.BarcodeType.TICKET) { ShowError(TranslationProvider.Translate(MultistringTags.SHOP_FORM_TICKET_NOT_FOUND).ToString()); } else { DetailsEnabled = true; if (redirect) { MyRegionManager.NavigateUsingViewModel <TicketDetailsViewModel>(RegionNames.ContentRegion); } } } catch (FaultException <HubServiceException> ex) { if (ex.Detail.code == 220) { ShowError(TranslationProvider.Translate(MultistringTags.SHOP_FORM_TICKET_NOT_FOUND).ToString()); } else if (ex.Detail.code == 1791) { ShowError(TranslationProvider.Translate(MultistringTags.TERMINAL_TICKET_INVALIDFRANCHISOR).ToString()); } else if (ex.Detail.code == 1001) { ShowError(TranslationProvider.Translate(MultistringTags.ANONYMOUS_BETTING_IS_DISABLED).ToString()); } else { ShowError(TranslationProvider.Translate(MultistringTags.TERMINAL_TICKET_INVALIDLOCATION).ToString()); } } catch (Exception) { ShowError(TranslationProvider.Translate(MultistringTags.SERVER_ERROR).ToString()); } }
private void OnShowTicket(TicketView ticketView) { try { CurrentTicket = WsdlRepository.LoadTicket(ticketView.Number, ticketView.CheckSum, StationRepository.StationNumber, SelectedLanguage, SelectedLanguage, true); var a = new TicketDetailsViewModel(); a.OnNavigationCompleted(); BalanceOperations = a.BalanceOperations; if (CurrentTicket != null) { OnPropertyChanged("PendingApprovalVisibility"); ShowSuperBonus = CurrentTicket.superBonus > 1; SuperBonusValue = CurrentTicket.superBonusValue; ShowManipulationFee = CurrentTicket.manipulationFee > 0; ManipulationFee = CurrentTicket.manipulationFee; ManipulationFeeValue = CurrentTicket.manipulationFeeValue; Stake = CurrentTicket != null ? CurrentTicket.stake : 0; Station = CurrentTicket.ticketNbr.Substring(0, 4); TicketNumber = CurrentTicket.ticketNbr; Date = CurrentTicket.acceptedTime; ShowStakePerRow = ""; SuperBonusPercent = (CurrentTicket.superBonus - 1) * 100; if (CurrentTicket.bets != null) { long prevBankGroupID = -1; int bankCount = 0; int multiWayCount = 0; foreach (TipWS tip in CurrentTicket.bets[0].tips2BetMulti) { if (tip.bankGroupID != prevBankGroupID && !tip.bank) { multiWayCount++; prevBankGroupID = tip.bankGroupID; } if (tip.bank) { bankCount++; } } StakePerRow = CurrentTicket.stake / CurrentTicket.bets[0].rows; switch (CurrentTicket.bets[0].betType) { case Bet.BET_TYPE_COMBI: BetType = TranslationProvider.Translate(MultistringTags.Multiple); break; case Bet.BET_TYPE_COMBIPATH: BetType = TranslationProvider.Translate(MultistringTags.Multiple_and_Ways); ShowStakePerRow = "1"; break; case Bet.BET_TYPE_SINGLE: BetType = TranslationProvider.Translate(MultistringTags.SINGLES); break; case Bet.BET_TYPE_SYSTEM: BetType = TranslationProvider.Translate(MultistringTags.Full_Cover) + " " + CurrentTicket.bets[0].systemX + "/" + CurrentTicket.bets[0].systemY; if (bankCount > 0) { BetType += "+" + bankCount + "B"; } ShowStakePerRow = "1"; break; case Bet.BET_TYPE_SYSTEMPATH: string sTmp = TranslationProvider.Translate(MultistringTags.TERMINAL_PRINT_SYSTEM) + " " + CurrentTicket.bets[0].systemX + "/" + CurrentTicket.bets[0].systemY; if (bankCount > 0) { sTmp += "+" + bankCount + "B"; } if (multiWayCount > 0) { sTmp += "+" + multiWayCount + "W"; } BetType = sTmp; ShowStakePerRow = "1"; break; } PossibleWinning = CurrentTicket.bets[0].maxWin; } Paid = CurrentTicket.paid ? TranslationProvider.Translate(MultistringTags.terminal_yes) : TranslationProvider.Translate(MultistringTags.terminal_no); //PaidAt = CurrentTicket.Paid ? CurrentTicket.PaidTime.ToShortDateString() : "-"; PaidAt = CurrentTicket.paid ? String.Format("{0:dd.MM.yyyy HH:mm}", CurrentTicket.paidTime) : "-"; PaymentAmount = CurrentTicket.wonAmount; //if (CurrentTicket.bets != null) // BalanceOperations = LoadOdds(new ObservableCollection<BetWS>(CurrentTicket.bets)); //string[] tabColor = GetTabColor(); //TabForecolor = tabColor[0]; //TabBgcolor = tabColor[1]; OnPropertyChanged("ShowTranferToAccountButton"); OnPropertyChanged("ShowCreditNoteButton"); OnPropertyChanged("TransferMoneyString"); } } catch (System.ServiceModel.FaultException <HubServiceException> exception) { ShowError(exception.Detail.message); } //CurrentTicket = WsdlRepository.LoadTicket(ticketView.Number, ticketView.CheckSum, StationRepository.StationNumber, SelectedLanguage, SelectedLanguage, true); // MyRegionManager.NavigateUsingViewModel<TicketDetailsViewModel>(RegionNames.UserProfileContentRegion); }