예제 #1
0
        /// <summary>
        /// Imprime el ticket de comida.
        /// </summary>
        ///  <history>
        /// [edgrodriguez] 15/07/2016 Created
        /// [vipacheco] 13/Agosto/2016 Modified -> se elimino el recorrido de todos los items del grid, por la seleccion actual.
        /// </history>
        private async void btnPrint_Click(object sender, RoutedEventArgs e)
        {
            MealTicket mtck  = grdMealTicket.SelectedItem as MealTicket;
            int        folio = 0;

            if (!int.TryParse(mtck.meFolios, out folio))
            {
                UIHelper.ShowMessage($"Could not print this meal ticket.\n{string.Join("\n", mtck.meFolios)}");; return;
            }
            var mT = await BRMealTicketFolios.GetMealTicket(mtck.meID, Convert.ToInt32(mtck.meFolios), $"{Context.User.User.peID} - {Context.User.User.peN}");

            if (mT != null)
            {
                StringHelper.Items        = new List <string>();
                LanguageHelper.IDLanguage = mT.gula;
                if (!string.IsNullOrEmpty(mT.raN))
                {
                    StringHelper.Items.Add(mT.raN.PadCenter());
                }
                StringHelper.Items.Add($"{((char)27)}{((char)97)}1");//Centrado
                StringHelper.Items.Add("PALACE ELITE");
                StringHelper.Items.Add("VALE POR 1 BUFFET");
                StringHelper.Items.Add(mT.myN);
                StringHelper.Items.Add("\r\n");
                StringHelper.Items.Add($"{((char)27)}{((char)97)}0");//Izquierda
                if (!string.IsNullOrEmpty(mT.REFERENCE))
                {
                    StringHelper.Items.Add(mT.REFERENCE);
                    StringHelper.Items.Add(mT.REFERENCENAME);
                }
                else
                {
                    StringHelper.Items.Add($"Guest ID: {mT.guID}");
                    StringHelper.Items.Add($"{LanguageHelper.GetMessage("msgLblNameMT")}: { mT.Name}");
                }
                StringHelper.Items.Add($"{LanguageHelper.GetMessage("msgLblAdults")}: {mT.meAdults} {LanguageHelper.GetMessage("msgLblMinors")}: {mT.meMinors}");
                StringHelper.Items.Add($"{LanguageHelper.GetMessage("msgLblDate")}: {mT.meD.ToShortDateString()}");
                StringHelper.Items.Add($"{LanguageHelper.GetMessage("msgLblAuthorizedBy")}: {mT.Authorized}");
                StringHelper.Items.Add($"SalesRoom: {mT.SalesRoomID} - {mT.SalesRoomName}");
                StringHelper.Items.Add($"\r\n");
                StringHelper.Items.Add($"{((char)27)}{((char)97)}2");//Derecha
                StringHelper.Items.Add($"Folio: {mT.meFolio}");
                StringHelper.Items.Add($"{((char)27)}{((char)97)}1");
                StringHelper.Items.Add($"{LanguageHelper.GetMessage("msgLblDate")}: {DateTime.Today.ToString("dd/MM/yyyy h:mm:ss tt")}");
                StringHelper.Items.Add("\r\n");
                StringHelper.Items.Add($"{((char)29)}VB{((char)1)}");
                if (PrinterHelper.SendStringToPrinter(StringHelper.ToTicketString()))
                {
                    mtck.mePrinted = true;
                    BRMealTickets.UpdateMealTicket(mtck);
                    grdMealTicket.Items.Refresh();
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Guarda la informacion proporcionada!
        /// </summary>
        /// <history>
        /// [vipacheco] 23/03/2016 Created
        /// </history>
        private void btnSave_Click(object sender, RoutedEventArgs e)
        {
            if (ValidateGeneral())
            {
                RateType       _rateType  = cboRateType.SelectedItem as RateType;
                MealTicketType _mealType  = cboType.SelectedItem as MealTicketType;
                PersonnelShort _personnel = cboCollaborator.SelectedItem as PersonnelShort;
                AgencyShort    _agency    = cboAgency.SelectedItem as AgencyShort;

                int    _meAdults        = Convert.ToInt32((txtAdults.Text == "") ? "0" : txtAdults.Text);
                int    _meMinors        = Convert.ToInt32((txtMinors.Text == "") ? "0" : txtMinors.Text);
                string _meTAdultsString = txtTAdults.Text.TrimStart('$');
                string _meTMinorsString = txtTMinors.Text.TrimStart('$');

                // Agrega un nuevo Meal Ticket
                if (_modeOpen == EnumMode.Add)
                {
                    // Obtenemos el folio a asignar
                    int folioNew = 1 + BRMealTicketFolios.GetMaxMealTicketFolio(Context.User.SalesRoom.srID, _mealType.myID, _rateType == null ? 1 : _rateType.raID);

                    _mealTicketCurrency = CreateMealTicket(_rateType, _mealType, _personnel, _agency, _meAdults, _meMinors, _meTAdultsString, _meTMinorsString, folioNew);

                    //Actualizamos el folio!
                    BRMealTicketFolios.UpdateMealTicketFolio(Context.User.SalesRoom.srID, _mealType.myID, _rateType == null ? 1 : _rateType.raID, $"{folioNew}");

                    //Guardamos el Meal Ticket Creado
                    BRMealTickets.InsertNewMealTicket(_mealTicketCurrency);
                }
                // Modo edicion
                else
                {
                    int folio = Convert.ToInt32(_mealTicketCurrency.meFolios);

                    // Creamos el Meal Ticket con el guestID
                    _mealTicketCurrency.meD            = dtpDate.Value.Value.Date;
                    _mealTicketCurrency.megu           = _mealTicketCurrency.megu != 0 ? _mealTicketCurrency.megu : frmMealTickets._guestID;
                    _mealTicketCurrency.meQty          = frmMealTickets._Qty;
                    _mealTicketCurrency.meType         = _mealType.myID;
                    _mealTicketCurrency.meAdults       = _meAdults;
                    _mealTicketCurrency.meMinors       = _meMinors;
                    _mealTicketCurrency.meFolios       = $"{folio}";
                    _mealTicketCurrency.meTAdults      = Convert.ToDecimal(_meTAdultsString);
                    _mealTicketCurrency.meTMinors      = Convert.ToDecimal(_meTMinorsString);
                    _mealTicketCurrency.meComments     = txtComments.Text;
                    _mealTicketCurrency.mesr           = Context.User.SalesRoom.srID;
                    _mealTicketCurrency.meCanc         = chkCancel.IsChecked.Value;
                    _mealTicketCurrency.mera           = frmMealTickets._guestID > 0 ? 1 : _rateType.raID;
                    _mealTicketCurrency.mepe           = cboCollaborator.IsVisible ? _personnel.peID : null;
                    _mealTicketCurrency.mePrinted      = chkPrinted.IsChecked.Value;
                    _mealTicketCurrency.meag           = cboAgency.IsVisible ? _agency.agID : null;
                    _mealTicketCurrency.merep          = txtRepresentative.IsVisible ? txtRepresentative.Text : null;
                    _mealTicketCurrency.meAuthorizedBy = Context.User.User.peID;

                    //Actualizamos el folio!
                    BRMealTicketFolios.UpdateMealTicketFolio(Context.User.SalesRoom.srID, _mealType.myID, _rateType.raID, _mealTicketCurrency.meFolios);

                    // Insertamos el nuevo Meal Ticket con el folio asignado
                    BRMealTickets.UpdateMealTicket(_mealTicketCurrency);
                }
                //Actualizamos el campo guMealTicket del Guest
                BRGuests.UpdateFieldguMealTicket(true, frmMealTickets._guestID);

                DialogResult = true;
                Close();
            }
        }