async void Handle_ItemTapped(object sender, Xamarin.Forms.ItemTappedEventArgs e) { string recordId = ((ListItems)e.Item).Id; if (Ultis.Settings.App == "asolute.Mobile.AILSBUS") { try { if (history.Count != 0) { var recordContent = history.FirstOrDefault(item => item.Id == recordId); if (recordContent != null) { if (connectedPrinter == false) { bool x = await DependencyService.Get <IBthService>().connectBTDevice("00:15:0E:E6:25:23"); if (!x) { Device.BeginInvokeOnMainThread(() => { DisplayAlert("Error", "Unable connect", "OK"); }); } else { connectedPrinter = true; } } System.IO.MemoryStream buffer = new System.IO.MemoryStream(512); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, false, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); foreach (clsCaptionValue summaryList in recordContent.Summary) { string detail = ""; detail = (summaryList.Caption == "") ? summaryList.Value : summaryList.Caption + " : " + summaryList.Value; WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(detail + "\r\n\r\n")); } WriteMemoryStream(buffer, WoosimPageMode.print()); DependencyService.Get <IBthService>().WriteComm(buffer.ToArray()); } } } catch (Exception error) { await DisplayAlert("Error", error.Message, "OK"); } } }
async void PrintTotal(object sender, System.EventArgs e) { print.IsVisible = true; try { if (connectedPrinter == false) { bool x = await DependencyService.Get <IBthService>().connectBTDevice("00:15:0E:E6:25:23"); if (!x) { Device.BeginInvokeOnMainThread(async() => { await DisplayAlert("Error", "Unable connect", "OK"); }); } else { connectedPrinter = true; } } System.IO.MemoryStream buffer = new System.IO.MemoryStream(512); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("PERAK TRANSIT BERHAD\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Date & Time:\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(DateTime.UtcNow.ToString("dd/MM/yyyy h:mm:ss tt") + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Driver:\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(Ultis.Settings.SessionUserItem.UserName + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Bus Reg No.:\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(Ultis.Settings.SessionUserItem.TruckId + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Total Ticket Sold:\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(50 + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Settlement Amount:\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("RM52.60" + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimPageMode.print()); DependencyService.Get <IBthService>().WriteComm(buffer.ToArray()); } catch (Exception ex) { await DisplayAlert("Error", ex.Message, "OK"); } print.IsVisible = false; }
async void PrintBusTicket(object sender, System.EventArgs e) { print.IsVisible = true; string ticketType = ""; SoldTicket ticket = new SoldTicket(); var ticketButton = sender as SfButton; switch (ticketButton.StyleId) { case "btnPublic": ticket.TicketType = TicketTypeConst.Public; ticketType = btnPublic.Text; break; case "btnStudent": ticket.TicketType = TicketTypeConst.Student; ticketType = btnStudent.Text; break; } if (Ultis.Settings.StartEndStatus == "End") { ticket.TrxTime = DateTime.Now; ticket.TruckId = Ultis.Settings.SessionUserItem.TruckId; ticket.DriverId = Ultis.Settings.SessionUserItem.DriverId; ticket.TripId = Ultis.Settings.TripRecordID; ticket.RouteId = "T30B"; ticket.StopId = route.StopId; ticket.PaymentType = PaymentType.Cash; ticket.Amount = ticketRate; ticket.Uploaded = false; ticket.SerialNumber = "T30B-" + DateTime.Now.ToString("yyyyMMddHHmmssfff"); ticket.From = fromEntry.Text; ticket.To = toEntry.Text; App.Database.SaveTicketTransaction(ticket); try { /* TicketTemplate test = new TicketTemplate(); * * if(App.myPrinter!= null) * { * test.PrintLineMode(ticket); * } * else * { * await Navigation.PushAsync(new ZebraPrinterList()); * }*/ if (connectedPrinter == false) { bool x = await DependencyService.Get <IBthService>().connectBTDevice("00:15:0E:E6:25:23"); //bool x = await DependencyService.Get<IBthService>().connectBTDevice("84:25:3F:1F:82:75"); if (!x) { Device.BeginInvokeOnMainThread(async() => { await DisplayAlert("Error", "Unable connect", "OK"); }); } else { connectedPrinter = true; } } System.IO.MemoryStream buffer = new System.IO.MemoryStream(512); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("PERAK TRANSIT BERHAD\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(DateTime.UtcNow.ToString("dd/MM/yyyy h:mm:ss tt") + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(lblPrice.Text + " " + ticketType + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(fromEntry.Text + " ---> " + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(toEntry.Text + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("T30B-" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("NO BAS : " + Ultis.Settings.SessionUserItem.TruckId + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("NO Pemandu : " + Ultis.Settings.SessionUserItem.DriverId + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Pemandu : " + Ultis.Settings.SessionUserItem.UserName + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("KOD LALUAN : T30B" + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Pembayaran : Cash" + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("Perak Transit Info : +6012-4500806" + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); WriteMemoryStream(buffer, Encoding.ASCII.GetBytes("SIMPAN TICKET UNTUK PEMERIKSAAN." + "\r\n\r\n")); WriteMemoryStream(buffer, WoosimPageMode.print()); DependencyService.Get <IBthService>().WriteComm(buffer.ToArray()); } catch (Exception ex) { await DisplayAlert("Error", ex.Message, "OK"); } } else { await DisplayAlert("Error", "Please start trip before generate ticket", "OK"); } print.IsVisible = false; }
async void PrintConsigmentNote() { print.IsVisible = true; var content = await CommonFunction.CallWebService(0, null, Ultis.Settings.SessionBaseURI, ControllerUtil.getConsigmentNoteURL(Ultis.Settings.SessionCurrentJobId), this); clsResponse response = JsonConvert.DeserializeObject <clsResponse>(content); if (response.IsGood) { if (response.Result.Count != 0) { try { if (connectedPrinter == false) { bool x = await DependencyService.Get <IBthService>().connectBTDevice("00:15:0E:E6:25:23"); if (!x) { Device.BeginInvokeOnMainThread(() => { DisplayAlert("Error", "Unable connect", "OK"); }); } else { connectedPrinter = true; } } System.IO.MemoryStream buffer = new System.IO.MemoryStream(512); string detail = ""; int detailCount = 0; foreach (string details in response.Result) { detailCount++; if (details.Contains("<H>")) { detail = details.Replace("<H>", ""); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH02, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT02, false)); } else if (details.Contains("<B>")) { detail = details.Replace("<B>", ""); WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, true, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); } else { detail = details; WriteMemoryStream(buffer, WoosimCmd.setTextStyle(0, false, (int)WoosimCmd.TEXTWIDTH.TEXTWIDTH01, (int)WoosimCmd.TEXTHEIGHT.TEXTHEIGHT01, false)); } if (detailCount == response.Result.Count) { detail = detail + "\r\n\r\n"; } else { detail = detail + "\r\n"; } WriteMemoryStream(buffer, Encoding.ASCII.GetBytes(detail)); } WriteMemoryStream(buffer, WoosimPageMode.print()); DependencyService.Get <IBthService>().WriteComm(buffer.ToArray()); } catch (Exception error) { await DisplayAlert("Error", error.Message, "OK"); } } } else { await DisplayAlert("Json Error", response.Message, "OK"); } print.IsVisible = false; }