public void PrintTickets() { try { App application = App.Current as App; Thread.CurrentThread.CurrentUICulture = application.CurrentUICulture; Thread.CurrentThread.CurrentCulture = application.CurrentCulture; this.Dispatcher.Invoke(new Action(() => { pbPrint.Value = _NoOfPrintedTickets; this.lblErrorMsg.Content = string.Empty; this.lblPrintedTicket.Content = _NoOfPrintedTickets; this.lblTotalTicket.Content = _NoOfTickets; pbPrint.Minimum = _NoOfPrintedTickets; pbPrint.Maximum = _NoOfTickets; }), System.Windows.Threading.DispatcherPriority.Normal); long lValue = 0; if (strValue != null && strValue != string.Empty) { lValue = Convert.ToInt64(strValue.GetSingleFromString() * 100); } else { lValue = 0; } this.Dispatcher.Invoke(new Action(() => { pbPrint.Value = _NoOfPrintedTickets; }), System.Windows.Threading.DispatcherPriority.Normal); Promotional objPromotional = new Promotional(); try { while ((_NoOfPrintedTickets < _NoOfTickets) && !_mreShutdown.WaitOne(1)) { if (_mreResume.WaitOne()) { if (_mreShutdown.WaitOne(10)) { LogManager.WriteLog("Print screen was closed. So exiting now.", LogManager.enumLogLevel.Info); return; } } this.Dispatcher.Invoke(new Action(() => { lblPrintedTicket.Content = _NoOfPrintedTickets.ToString(); lblTotalTicket.Content = _NoOfTickets.ToString(); }), System.Windows.Threading.DispatcherPriority.Normal); if (true) { string strBarcode; this.Dispatcher.Invoke(new Action(() => { pbPrint.Value = _NoOfPrintedTickets; }), System.Windows.Threading.DispatcherPriority.Normal); IssueTicketEntity issueTicketEntity = new IssueTicketEntity(); issueTicketEntity.Type = UIIssueTicketConstants.STANDARDTICKET; if (PromoTicketType == 1) { issueTicketEntity.TicketHeader = "PLAYABLE VOUCHER"; } else if (PromoTicketType == 0) { issueTicketEntity.TicketHeader = "CASHABLE PROMO VOUCHER"; } else { issueTicketEntity.TicketHeader = "CASH DESK VOUCHER"; } LogManager.WriteLog("Ticket Header : " + issueTicketEntity.TicketHeader, LogManager.enumLogLevel.Info); // issueTicketEntity.VoidDate = DateTime.Now.ToString();// (Convert.ToDateTime(this.ExpiryDate, new CultureInfo(ExtensionMethods.CurrentDateCulture))).ToString(); issueTicketEntity.VoidDate = (Convert.ToDateTime(this.ExpiryDate, new CultureInfo(ExtensionMethods.CurrentDateCulture))).ToString(); issueTicketEntity.dblValue = Convert.ToDouble(this.PromotionTicketAmount, new CultureInfo(ExtensionMethods.CurrentCurrenyCulture));; issueTicketEntity.lnglValue = long.Parse((this.PromotionTicketAmount * 100).ToString()); System.TimeSpan ts = (ExpiryDate).Subtract(DateTime.Now); issueTicketEntity.NumberOfDays = ts.Days; // issueTicketEntity.Date = DateTime.Now; string PrintedDateTime = string.Empty; //PrintedDateTime = (Convert.ToDateTime(System.DateTime.Now, new CultureInfo(ExtensionMethods.CurrentDateCulture))).ToString(); issueTicketEntity.Date = DateTime.Now;//Convert.ToDateTime(PrintedDateTime); PrintTicketErrorCodes PrintResult = objCashDeskOperator.IssueTicket(issueTicketEntity); strBarcode = issueTicketEntity.BarCode; this.Dispatcher.Invoke(new Action(() => { this.lblErrorMsg.Visibility = Visibility.Visible; this.pbPrint.Visibility = Visibility.Visible; this.lblPrintedTicket.Visibility = Visibility.Visible; this.lblTotalTicket.Visibility = Visibility.Visible; this.btnCancel.Visibility = Visibility.Visible; this.btnPause.Visibility = Visibility.Visible; switch (PrintResult) { case PrintTicketErrorCodes.OpenCOMPortFailure: { _FailureTickets++; // MessageBox.ShowBox("MessageID295", BMC_Icon.Warning); //Unable to open COM Port. Please check connectivity. lblErrorMsg.Content = "Unable to open COM Port. Please check connectivity"; return; } case PrintTicketErrorCodes.OutofPaper: { _FailureTickets++; // MessageBox.ShowBox("MessageID294", BMC_Icon.Warning); //out of Paper lblErrorMsg.Content = "Out of Paper"; return; } case PrintTicketErrorCodes.Success: { lblErrorMsg.Content = string.Empty; _SucceededTickets++; pbPrint.Value = _NoOfPrintedTickets; if (!String.IsNullOrEmpty(DisplayTicketPrintedSuccessMsg)) { if (DisplayTicketPrintedSuccessMsg.ToUpper().Trim() == "TRUE") { lblErrorMsg.Content = " Voucher printed successfully"; } } _NoOfPrintedTickets += 1; pbPrint.Value = _NoOfPrintedTickets; lblPrintedTicket.Content = _NoOfPrintedTickets.ToString(); int UpdateVoucherPromotionID = objPromotional.BUpdateVoucherPromotion(this.PromotionID, strBarcode); //Update PromotionalID in Voucher Table break; } case PrintTicketErrorCodes.eVoltErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr1", BMC_Icon.Error); lblErrorMsg.Content = "Voltage Error"; return; } case PrintTicketErrorCodes.eHeadErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr2", BMC_Icon.Error); lblErrorMsg.Content = " Printer Head Error"; return; } case PrintTicketErrorCodes.ePaperOut: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr3", BMC_Icon.Error); lblErrorMsg.Content = "Out of Paper"; return; } case PrintTicketErrorCodes.ePlatenUP: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr4", BMC_Icon.Error); lblErrorMsg.Content = "Platen Up"; return; } case PrintTicketErrorCodes.eSysErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr5", BMC_Icon.Error); lblErrorMsg.Content = "System Error"; return; } case PrintTicketErrorCodes.eBusy: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr6", BMC_Icon.Error); lblErrorMsg.Content = "Printer is Busy"; return; } case PrintTicketErrorCodes.eJobMemOF: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr7", BMC_Icon.Error); lblErrorMsg.Content = "Job Memory off"; return; } case PrintTicketErrorCodes.eBufOF: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr8", BMC_Icon.Error); lblErrorMsg.Content = "Buffer off"; return; } case PrintTicketErrorCodes.eLibLoadErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr9", BMC_Icon.Error); lblErrorMsg.Content = "Library Load Error"; return; } case PrintTicketErrorCodes.ePRDataErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr10", BMC_Icon.Error); lblErrorMsg.Content = "Printer Data Error"; return; } case PrintTicketErrorCodes.eLibRefErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr11", BMC_Icon.Error); lblErrorMsg.Content = "Library Reference Error"; return; } case PrintTicketErrorCodes.eTempErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr12", BMC_Icon.Error); lblErrorMsg.Content = "Temp Error"; return; } case PrintTicketErrorCodes.eMissingSupplyIndex: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr13", BMC_Icon.Error); lblErrorMsg.Content = "Supply Index is Missing"; return; } case PrintTicketErrorCodes.eFlashProgErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr14", BMC_Icon.Error); lblErrorMsg.Content = "Flash Program Error"; return; } case PrintTicketErrorCodes.ePaperInChute: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr15", BMC_Icon.Error); lblErrorMsg.Content = "Paper in Chute"; return; } case PrintTicketErrorCodes.ePrintLibCorr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr16", BMC_Icon.Error); lblErrorMsg.Content = "Print library is corrupted."; return; } case PrintTicketErrorCodes.eCmdErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr17", BMC_Icon.Error); lblErrorMsg.Content = "Command Error"; return; } case PrintTicketErrorCodes.ePaperLow: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr18", BMC_Icon.Error); lblErrorMsg.Content = "Paper low."; return; } case PrintTicketErrorCodes.ePaperJam: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr19", BMC_Icon.Error); lblErrorMsg.Content = "Paper jammed."; return; } case PrintTicketErrorCodes.eCurrentErr: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr20", BMC_Icon.Error); lblErrorMsg.Content = "Current Error"; return; } case PrintTicketErrorCodes.eJournalPrint: { _FailureTickets++; // MessageBox.ShowBox("MsgPromErr21", BMC_Icon.Error); lblErrorMsg.Content = "Journal Print Error"; return; } default: { _FailureTickets++; // MessageBox.ShowBox("MessageID102", BMC_Icon.Warning); lblErrorMsg.Content = "Unable to Print Voucher"; return; } } }), System.Windows.Threading.DispatcherPriority.Normal); this.Dispatcher.Invoke(new Action(() => { this.lblPrintedTicket.Content = _NoOfPrintedTickets.ToString(); this.lblTotalTicket.Content = _NoOfTickets.ToString(); UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(pbPrint.SetValue); }), System.Windows.Threading.DispatcherPriority.Normal); this.Dispatcher.Invoke(new Action(() => { btnCancel.IsEnabled = true; }), System.Windows.Threading.DispatcherPriority.Normal); System.Threading.Thread.Sleep(1000); } PromoTickAmt = Convert.ToDouble(_PromotionTicketAmount); PromCount = Convert.ToInt32(_NoOfTickets); double TotalAmoount = PromCount * PromoTickAmt; if (_NoOfPrintedTickets == _NoOfTickets) { int UpdateVoucherPrintSuccess = objPromotional.MarkPromotionalTicketsAsValid(this.PromotionID, 1); this.Dispatcher.Invoke(new Action(() => { this.lblErrorMsg.Content = string.Empty; pbPrint.Value = _NoOfPrintedTickets; MessageBox.ShowBox("MessageID435", BMC_Icon.Information); }), System.Windows.Threading.DispatcherPriority.Normal); AuditViewerBusiness.InsertAuditData(new Audit.Transport.Audit_History { AuditModuleName = ModuleName.Promotion, Audit_Screen_Name = "Promo Print", Audit_Desc = "Promo Name: " + PromoName + "; TicketAmount: " + _PromotionTicketAmount.ToString() + "; Number of Tickets: " + PromCount.ToString() + "; Total Promotion Amount: " + TotalAmoount.ToString() + "; Expiry Date: " + ExpiryDate, AuditOperationType = OperationType.ADD, Audit_New_Vl = PromoName }); this.Dispatcher.Invoke(new Action(() => { IsPrintedCompleted = true; }), System.Windows.Threading.DispatcherPriority.Normal); } } } catch (Exception ex) { ExceptionManager.Publish(ex); LogManager.WriteLog("Promotional Print Tickets : " + ex.Message, LogManager.enumLogLevel.Error); } finally { } } catch (Exception ex) { ExceptionManager.Publish(ex); } }
private void btnIssue_Click(object sender, RoutedEventArgs e) { long lValue = 0; try { txt = (TextBox)this.ucValueCalc.txtDisplay; strValue = Convert.ToString(txt.Text); btnIssue.IsEnabled = false; if (strValue != null && strValue != string.Empty) { lValue = Convert.ToInt64(strValue.GetSingleFromString() * 100); } else { lValue = 0; } if (lValue <= 0) { MessageBox.ShowBox("MessageID101"); return; } if (!string.IsNullOrEmpty(Settings.IssueTicketMaxValue)) { long lSettingValue = Convert.ToInt64(Settings.IssueTicketMaxValue.GetSingleFromString() * 100); if (lValue > lSettingValue) { string sMessage = Application.Current.FindResource("MessageID247") as string; //MessageBox.ShowBox(sMessage, BMC_Icon.Error, true); MessageBox.ShowBox(sMessage + ": " + ExtensionMethods.GetUniversalCurrencyFormat(Convert.ToInt64(Settings.IssueTicketMaxValue.GetSingleFromString())), BMC_Icon.Error, true); return; } } if ((lValue <= 99999999) && (lValue > 0)) { issueTicketEntity.lnglValue = lValue; issueTicketEntity.Type = UIIssueTicketConstants.STANDARDTICKET; issueTicketEntity.dblValue = Convert.ToDouble(strValue, new CultureInfo(ExtensionMethods.CurrentCurrenyCulture)); issueTicketEntity.Date = DateTime.Now; PrintTicketErrorCodes PrintResult = objCashDeskOperator.IssueTicket(issueTicketEntity); switch (PrintResult) { case PrintTicketErrorCodes.OpenCOMPortFailure: { MessageBox.ShowBox("MessageID295", BMC_Icon.Warning); //Unable to open COM Port. Please check connectivity. ClearValues(); Audit("Unable to open COM Port"); return; } case PrintTicketErrorCodes.OutofPaper: { MessageBox.ShowBox("MessageID294", BMC_Icon.Warning); //out of Paper ClearValues(); Audit("Printer Out of Paper."); return; } case PrintTicketErrorCodes.Success: { //Calling Audit Method Audit.Transport.Audit_History AH = new Audit.Transport.Audit_History(); //Populate required Values AH.AuditModuleName = ModuleName.Voucher; AH.Audit_Screen_Name = "Vouchers|PrintVoucher"; AH.Audit_Desc = "Voucher Printed Value-" + strValue; AH.AuditOperationType = OperationType.ADD; AH.Audit_Field = "Voucher Number"; AH.Audit_New_Vl = issueTicketEntity.BarCode; ClearValues(); MessageBox.ShowBox("MessageID103", BMC_Icon.Information); AuditViewerBusiness.InsertAuditData(AH); break; } case PrintTicketErrorCodes.eVoltErr: { MessageBox.ShowBox("Voltage Error", BMC_Icon.Error); ClearValues(); Audit("Voltage Error"); return; } case PrintTicketErrorCodes.eHeadErr: { MessageBox.ShowBox("Printer Head Error", BMC_Icon.Error); ClearValues(); Audit("Printer Head Error"); return; } case PrintTicketErrorCodes.ePaperOut: { MessageBox.ShowBox("Out of Paper", BMC_Icon.Error); ClearValues(); Audit("Out of Paper"); return; } case PrintTicketErrorCodes.ePlatenUP: { MessageBox.ShowBox("Platen Up", BMC_Icon.Error); ClearValues(); Audit("Platen Up"); return; } case PrintTicketErrorCodes.eSysErr: { MessageBox.ShowBox("System Error", BMC_Icon.Error); ClearValues(); Audit("System Error"); return; } case PrintTicketErrorCodes.eBusy: { MessageBox.ShowBox("Printer is Busy", BMC_Icon.Error); ClearValues(); Audit("Printer is Busy"); return; } case PrintTicketErrorCodes.eJobMemOF: { MessageBox.ShowBox("Job Memory off", BMC_Icon.Error); ClearValues(); Audit("Job Memory off"); return; } case PrintTicketErrorCodes.eBufOF: { MessageBox.ShowBox("Buffer off", BMC_Icon.Error); ClearValues(); Audit("Buffer off"); return; } case PrintTicketErrorCodes.eLibLoadErr: { MessageBox.ShowBox("Library Load Error", BMC_Icon.Error); ClearValues(); Audit("Library Load Error"); return; } case PrintTicketErrorCodes.ePRDataErr: { MessageBox.ShowBox("Printer Data Error", BMC_Icon.Error); ClearValues(); Audit("Printer Data Error"); return; } case PrintTicketErrorCodes.eLibRefErr: { MessageBox.ShowBox("Library Reference Error", BMC_Icon.Error); ClearValues(); Audit("Library Reference Error"); return; } case PrintTicketErrorCodes.eTempErr: { MessageBox.ShowBox("Temp Error", BMC_Icon.Error); ClearValues(); Audit("Temp Error"); return; } case PrintTicketErrorCodes.eMissingSupplyIndex: { MessageBox.ShowBox("Supply Index is Missing", BMC_Icon.Error); ClearValues(); Audit("Supply Index is Missing"); return; } case PrintTicketErrorCodes.eFlashProgErr: { MessageBox.ShowBox("Flash Program Error", BMC_Icon.Error); ClearValues(); Audit("Flash Program Error"); return; } case PrintTicketErrorCodes.ePaperInChute: { MessageBox.ShowBox("Paper in Chute", BMC_Icon.Error); ClearValues(); Audit("Paper in Chute"); return; } case PrintTicketErrorCodes.ePrintLibCorr: { MessageBox.ShowBox("Print library is corrupted.", BMC_Icon.Error); ClearValues(); Audit("Print library is corrupted."); return; } case PrintTicketErrorCodes.eCmdErr: { MessageBox.ShowBox("Command Error", BMC_Icon.Error); ClearValues(); Audit("Command Error"); return; } case PrintTicketErrorCodes.ePaperLow: { MessageBox.ShowBox("Paper low.", BMC_Icon.Error); ClearValues(); Audit("Paper low."); return; } case PrintTicketErrorCodes.ePaperJam: { MessageBox.ShowBox("Paper jammed.", BMC_Icon.Error); ClearValues(); Audit("Paper jammed."); return; } case PrintTicketErrorCodes.eCurrentErr: { MessageBox.ShowBox("Current Error", BMC_Icon.Error); ClearValues(); Audit("Current Error"); return; } case PrintTicketErrorCodes.eJournalPrint: { MessageBox.ShowBox("Journal Print Error", BMC_Icon.Error); ClearValues(); Audit("Journal Print Error"); return; } default: { MessageBox.ShowBox("MessageID102", BMC_Icon.Warning); ClearValues(); Audit("Unable to Print Voucher."); return; } } } else { MessageBox.ShowBox("MessageID104", BMC_Icon.Warning); return; } } catch (Exception ex) { this.ucValueCalc.ClearValues(); this.ucValueCalc.ValueText = ExtensionMethods.GetCurrencyDecimalDelimiter() + "00"; this.ucValueCalc.s_UnformattedText = ""; ExceptionManager.Publish(ex); } finally { btnIssue.IsEnabled = true; } }