Exemplo n.º 1
0
        public static void ShowWndPrintLabels(IOrderLabel order)
        {
            try
            {
                logger.Debug("ShowWndPrintLabels");
                if (order == null)
                {
                    ShowAlert("Нет выделенного заказа для печати"); return;
                }
                if ((order.DishPackagesForLab == null) || (order.DishPackagesForLab.Count() == 0))
                {
                    ShowAlert("Нет блюд в заказе для печати"); return;
                }
                //var vm = new PrintLabelsViewModel(order);
                var vm = new AddLabelsViewModel(order)
                {
                    Header = $"Печать наклеек заказ {order.Id}"
                };
                //var ctrl = new CtrlPrintLabels();
                var ctrl = new ctrlItemLabels();
                ctrl.DataContext = vm;

                MainClass.ShowUC(ctrl);
            }
            catch (Exception e)
            {
                logger.Error($"ShowWndChangeOrderStatus {e.Message}");
            }
        }
Exemplo n.º 2
0
 public LabelPapersVisualViewModel(IOrderLabel order)
 {
     Order = order;
     PapersInit();
     PrintCommand = new DelegateCommand((_) =>
     {
         PrintWinPrinter();
     });
 }
Exemplo n.º 3
0
        static public bool PrintOrderToGoToKitchen(IOrderLabel order, out List <string> resDescr, List <IDishPackageLabel> deletedDishes = null)
        {
            logger.Debug($"PrintOrderToGoToKitchen Order: {order?.Id}");

            bool res = true;

            resDescr = new List <string>();
            List <FiscalCheckVisualString> strs;

            if (deletedDishes == null)
            {
                strs = GetFStrings(order, 0);
            }
            else
            {
                strs = GetFStringsForDelete(order, deletedDishes);
            }



            if (!PrintDoc2(strs, 1, Properties.Settings.Default.HotColdPrinterName))
            {
                resDescr.Add("Ошибка при печати на принтере горячих блюд");
                res = false;
            }
            if (!PrintDoc2(strs, 1, Properties.Settings.Default.HotColdPrinterName))
            {
                resDescr.Add("Ошибка при печати на принтере горячих блюд");
                res = false;
            }
            if (!PrintDoc2(strs, 1, Properties.Settings.Default.HotColdPrinterName))
            {
                resDescr.Add("Ошибка при печати на принтере горячих блюд");
                res = false;
            }

            if (!PrintDoc2(strs, 1, Properties.Settings.Default.ConditerPrinterName))
            {
                resDescr.Add("Ошибка при печати на принтере кондитера");
                res = false;
            }
            if (!PrintDoc2(strs, 1, Properties.Settings.Default.UpackPrinterName))
            {
                resDescr.Add("Ошибка при печати на принтере упаковки");
                res = false;
            }

            logger.Debug($"ToGo PrintOrderToGoToKitchen Order: {order?.Id} end");
            return(res);
        }
        public AddLabelsViewModel(IOrderLabel order)
        {
            CurentOrder = order;
            DishPackages = new FullyObservableCollection<IDishPackageLabel>();
            foreach (var dp in order.DishPackagesForLab)
            {
                dp.PrintLabel = DataExtension.DataCatalogsSingleton.Instance.ItemLabelsInfo.Where(a => a.ParenItemId == dp.DishId).Count() > 0;
                dp.LabelSeriesCount = dp.LabelsCount;
                DishPackages.Add(dp);

            }


            order.PropertyChanged += Order_PropertyChanged;
            OrderDish = DishPackages.First();
            AllDishGridVis = Visibility.Collapsed;
            OrderDishGridVis = Visibility.Visible;
            Init();
        }
Exemplo n.º 5
0
        public static bool DeleteSalesInvoice(IOrderLabel order)
        {
            if (order == null)
            {
                return(false);
            }
            TStoreHouse sh = null;

            order.IsSHSent = false;
            try
            {
                logger.Debug($"DeleteSalesInvoice Oreder {order.Id}");
                sh = ConnectSH();
                if (sh == null)
                {
                    return(false);
                }



                var prefix    = Properties.Settings.Default.SHDocPrefix + DBProvider.TestStr + (order is OrderToGo ? "ToGo" : "");
                var prefixAnn = prefix + "_Annul";

                TExpenceDocument d = new TExpenceDocument()
                {
                    Prefix = prefixAnn,
                    DocNum = (int)order.Id,
                    Date   = order.DeliveryDate,
                    Type   = 1
                };


                logger.Debug($"sh.ExpenceDocumentDelete anul DocNum: {d.DocNum}; Prefix: {d.Prefix}; Date: {d.Date}");
                sh.ExpenceDocumentDelete(d, out int errCodet, out string errt);
                d.Prefix = prefix;


                logger.Debug($"sh.ExpenceDocumentDelete DocNum: {d.DocNum}; Prefix: {d.Prefix}; Date: {d.Date}");
                bool res = sh.ExpenceDocumentDelete(d, out int errCode, out string err);
                logger.Debug($"DeleteSalesInvoice {res}; err: {err}");
                if (errCode == -100)
                {
                    logger.Debug($"(errCode == -100) ok;");
                    res = true;
                }
                order.IsSHSent = res;
                return(res);
            }
            catch (Exception e)
            {
                logger.Error($"DeleteSalesInvoice error. Mess: {e.Message}");
                return(false);
            }
            finally
            {
                if (sh != null)
                {
                    try { sh.CloseConection(); } catch { }
                }
            }
        }
Exemplo n.º 6
0
        public static bool CreateSalesInvoiceSyncSale(IOrderLabel order, List <IDishPackageLabel> dishes, int docNum, int catExp, int ridPlace, string prefix, string comment, out string ErrMesssage)
        {
            try
            {
                ErrMesssage = "";
                //TStoreHouse sh = null;
                logger.Debug($"CreateSalesInvoice Order {order.Id}");
                //sh = ConnectSH();
                //if (sh == null) return false;
                TExpenceDocument d = new TExpenceDocument()
                {
                    Prefix           = prefix,
                    DocNum           = docNum,
                    RidPlace         = ridPlace,
                    CatExpence       = catExp,
                    Date             = order.DeliveryDate,
                    Coment           = comment,
                    ListItemDocument = new List <TItemDocument>()
                };


                logger.Debug($"TExpenceDocument create Prefix: {d.Prefix}; DocNum:{d.DocNum}; RidPlace:{d.RidPlace}; CatExpence:{d.CatExpence}; Date:{d.Date}; Coment:{d.Coment};");
                if (dishes != null)
                {
                    decimal DPSumm = 0;
                    foreach (var dp in dishes.Where(a => a.Amount != 0))
                    {
                        decimal dSumm = dp.TotalPrice * (1 - order.DiscountPercent / 100) * dp.Amount;
                        if (!dp.Deleted)
                        {
                            if (dp == dishes.Last())
                            {
                                dSumm = (order.OrderDishesSumm * (1 - order.DiscountPercent / 100) - DPSumm);
                            }
                            else
                            {
                                DPSumm += dSumm;
                            }
                        }
                        TItemDocument itm = new TItemDocument()
                        {
                            Quantity = (double)dp.Amount,
                            Rid      = (int)dp.Dish.SHIdNewBase,
                            Price    = (double)dSumm//* 1000
                        };
                        logger.Debug($"TExpenceDocument create itm {dp.Dish.Name}; Price:  {itm.Price}; Quantity: {itm.Quantity}; Rid:{itm.Rid} ");
                        d.ListItemDocument.Add(itm);
                    }
                    if (!dishes.FirstOrDefault().Deleted)
                    {
                        if (order is OrderToGo orderToGo)
                        {
                            if (orderToGo.DeliveryPrice > 0)
                            {
                                TItemDocument itm = new TItemDocument()
                                {
                                    Quantity = 1,
                                    Rid      = 3632, // Доставка
                                    Price    = (double)orderToGo.DeliveryPrice
                                };
                                logger.Debug($"TExpenceDocument create itm delev Quantity: {itm.Quantity}; Rid:{itm.Rid}");
                                d.ListItemDocument.Add(itm);
                            }
                        }

                        if (order is OrderFlight orderFlight)
                        {
                            if (orderFlight.ExtraChargeSumm > 0)
                            {
                                TItemDocument itm = new TItemDocument()
                                {
                                    Quantity = 1,
                                    Rid      = 3631, // Надбавка
                                    Price    = (double)orderFlight.ExtraChargeSumm
                                };
                                logger.Debug($"TExpenceDocument create ExtraChargeSumm Quantity: {itm.Quantity}; Rid:{itm.Rid}");
                                d.ListItemDocument.Add(itm);
                            }
                        }
                    }
                }
                d.Type = 1;
                string err     = "";
                int    errCode = 0;
                bool   res     = sh.ExpenceDocumentCreate(d, out errCode, out err);
                //bool res = err.ToLower() == "ok";
                if (res)
                {
                    logger.Debug($"CreateSalesToGoInvoice Ok");
                }
                else
                {
                    logger.Debug($"CreateSalesToGoInvoice error Number {order.Id}  err: {err}");
                }

                return(res);
            }
            catch (Exception e)
            {
                ErrMesssage = $"Ошибка создания расходной накладной {Environment.NewLine + e.Message}";
                logger.Error($"CreateSalesInvoice Oreder {order.Id}. Mess: {e.Message}");
                return(false);
            }
            finally
            {
                /*
                 * if (sh != null)
                 * {
                 *  try
                 *  {
                 *      sh.CloseConection();
                 *
                 *  }
                 *  catch (Exception ee) { logger.Error($"CreateSalesInvoice error CloseConection Mess: {ee.Message}"); }
                 *
                 * }
                 */
            }
        }
Exemplo n.º 7
0
        //public static bool CreateSalesInvoiceSync(OrderFlight order, out string ErrMesssage)
        //{

        //    ErrMesssage = "";
        //    if (order == null) return false;
        //    if (order.OrderStatus == OrderStatus.Cancelled || order.OrderStatus==OrderStatus.InWork)
        //    {
        //        return DeleteSalesInvoice(order);
        //    }



        //    TStoreHouse sh = null;
        //    order.IsSHSent = false;
        //    try
        //    {
        //        logger.Debug($"CreateSalesInvoice Order {order.Id}");
        //        sh = ConnectSH();
        //        if (sh == null) return false;

        //        if (order.AirCompany.SHId == 0)
        //        {
        //            var addAirRes = AddAirCompany(order.AirCompany, out ErrMesssage);
        //            if (!addAirRes)
        //            {
        //                return false;
        //            }
        //        }


        //        TExpenceDocument d = new TExpenceDocument()
        //        {
        //            Prefix = Properties.Settings.Default.SHDocPrefix,
        //            DocNum = (int)order.Id,
        //            RidPlace = Properties.Settings.Default.SHRidPlace,
        //            CatExpence = (int)order.AirCompany.SHId,
        //            Date = order.DeliveryDate,
        //            Coment = $"{order.DeliveryPlace?.Name} {order.FlightNumber} {order.DeliveryDate.ToString("HH:mm")} ",
        //            ListItemDocument = new List<TItemDocument>()
        //        };

        //        if (DBProvider.SharAirs.Contains(order.AirCompany.Id))
        //        {
        //            d.RidPlace = Properties.Settings.Default.SHRidPlaceSVO;
        //            d.Coment = "SVO" + d.Coment;
        //        }

        //        if (order.ContactPerson != null) { d.Coment += order.ContactPerson.FullSearchData; }
        //        logger.Debug($"TExpenceDocument create Prefix: {d.Prefix}; DocNum:{d.DocNum}; RidPlace:{d.RidPlace}; CatExpence:{d.CatExpence}; Date:{d.Date}; Coment:{d.Coment};");
        //        if (order.DishPackages != null)
        //        {
        //            decimal DPSumm = 0;
        //            foreach (var dp in order.DishPackages)
        //            {

        //                if (dp.Dish.SHIdNewBase == 0)
        //                {
        //                    logger.Debug($"dp.Dish.SHIdNewBase == 0");
        //                    int catId = 0;
        //                    if (!AddNewDishToFly(dp.Dish, out ErrMesssage, out catId))
        //                    {
        //                        logger.Debug($"TExpenceDocument create AddNewDishToFly error return false");
        //                        return false;
        //                    }
        //                }

        //                decimal discDownPecent = (order.OrderSumm == 0) ? 0 : order.OrderTotalSumm / order.OrderSumm;
        //                if (order.DiscountSumm == 0) { discDownPecent = 1; }
        //                decimal dSumm = dp.TotalPrice * (discDownPecent) * dp.Amount;
        //                if (dp == order.DishPackages.Last())
        //                {
        //                    dSumm = (order.OrderTotalSumm - DPSumm);
        //                }
        //                else
        //                {
        //                    DPSumm += dSumm;
        //                }
        //                TItemDocument itm = new TItemDocument()
        //                {
        //                    Quantity = (double)dp.Amount,
        //                    Rid = (int)dp.Dish.SHIdNewBase,
        //                    Price = (double)dSumm//* 1000
        //                };
        //                logger.Debug($"TExpenceDocument create itm {dp.DishName}; Price:  {itm.Price}; Quantity: {itm.Quantity}; Rid:{itm.Rid} ");
        //                d.ListItemDocument.Add(itm);
        //            }
        //        }
        //        d.Type = 1;
        //        string err = "";
        //        int errCode = 0;
        //        bool res = sh.ExpenceDocumentCreate(d, out errCode, out ErrMesssage);



        //        if (res)
        //        {
        //            logger.Debug($"CreateSalesToFlyInvoice Ok");

        //        }
        //        else
        //        {
        //            logger.Debug($"CreateSalesToFlyInvoice error Number {order.Id}  err: {ErrMesssage}");
        //        }

        //        order.IsSHSent = res;
        //        return res;

        //    }
        //    catch (Exception e)
        //    {
        //        ErrMesssage = $"Ошибка создания расходной накладной {Environment.NewLine + e.Message}";
        //        logger.Error($"CreateSalesInvoice Oreder {order.Id}. Mess: {e.Message}");
        //        return false;
        //    }
        //    finally
        //    {

        //        if (sh != null)
        //        {
        //            try
        //            {
        //                sh.CloseConection();

        //            }
        //            catch (Exception ee) { logger.Error($"CreateSalesInvoice error CloseConection Mess: {ee.Message}"); }

        //        }

        //    }
        //}

        /*
         *
         * public static bool ShSendCheck(IOrderLabel order, out string ErrMesssage)
         * {
         * ErrMesssage = "";
         * var prefix = Properties.Settings.Default.SHDocPrefix + DBProvider.TestStr + (order is OrderToGo ? "ToGo" : "");
         * var prefixAnn = prefix + "_Annul";
         * TExpenceDocument d = new TExpenceDocument()
         * {
         *  Prefix = prefix,
         *  DocNum = (int)order.Id,
         *  Date = order.DeliveryDate,
         *  Type = 1
         * };
         * TStoreHouse sh = null;
         * sh = ConnectSH();
         * if (sh == null) return false;
         * //sh.ExpenceDocumentCheck(d,)
         *  bool res = sh.ExpenceDocumentCheck(d, out int errCode, out string err);
         * logger.Debug($"DeleteSalesInvoice {res}; err: {err}");
         * if (errCode == -100)
         * {
         *  logger.Debug($"(errCode == -100) ok;");
         *  res = true;
         * }
         * }
         */

        public static bool CreateSalesInvoiceSync(IOrderLabel order, out string ErrMesssage)
        {
            ErrMesssage = "";

            if (order == null)
            {
                return(false);
            }

            try
            {
                DeleteSalesInvoice(order);
                if (order.OrderStatus == OrderStatus.Cancelled)
                {
                    order.IsSHSent = true;
                }
                if (order.OrderStatus == OrderStatus.Cancelled || order.OrderStatus == OrderStatus.InWork)
                {
                    return(true);
                }


                order.IsSHSent = false;

                TStoreHouse sh = null;
                sh = ConnectSH();
                if (sh == null)
                {
                    return(false);
                }



                foreach (var dp in order.DishPackagesForLab.Where(a => a.Dish.SHIdNewBase == 0))
                {
                    if (order is OrderFlight)
                    {
                        if (!AddNewDishToFly(dp.Dish, out ErrMesssage, out int catId))
                        {
                            logger.Debug($"TExpenceDocument create AddNewDishToFly error return false");
                            return(false);
                        }
                    }
                    else
                    {
                        if (!AddNewDishToGo(dp.Dish, out ErrMesssage, out int catId))
                        {
                            logger.Debug($"TExpenceDocument create AddNewDishToFly error return false");
                            return(false);
                        }
                    }
                }
                var prefix   = Properties.Settings.Default.SHDocPrefix + DBProvider.TestStr;
                var docNum   = (int)order.Id;
                var ridPlace = 0;
                var comment  = "";
                var catExp   = 0;
                if (order is OrderFlight orderFlight)
                {
                    //prefix += "ToFly";
                    ridPlace = Properties.Settings.Default.SHRidPlace;
                    comment  = $"{orderFlight.DeliveryPlace?.Name} {orderFlight.FlightNumber} {orderFlight.DeliveryDate.ToString("HH:mm")} ";
                    catExp   = (int)orderFlight.AirCompany.SHId;
                    if (DBProvider.SharAirs.Contains(orderFlight.AirCompany.Id))
                    {
                        ridPlace = Properties.Settings.Default.SHRidPlaceSVO;
                        comment  = "SVO " + comment;
                    }

                    if (orderFlight.AirCompany.SHId == 0)
                    {
                        var addAirRes = AddAirCompany(orderFlight.AirCompany, out ErrMesssage);
                        if (!addAirRes)
                        {
                            return(false);
                        }
                    }
                }
                else if (order is OrderToGo orderToGo)
                {
                    if (orderToGo.PaymentType != null && orderToGo.PaymentType.SHId == 0)
                    {
                        var addPRes = AddToGoPayment(orderToGo.PaymentType, out ErrMesssage);
                        if (!addPRes)
                        {
                            return(false);
                        }
                    }

                    prefix  += "ToGo";
                    ridPlace = Properties.Settings.Default.SHRidPlaceToGo;
                    catExp   = (int)(orderToGo.PaymentType?.SHId ?? Properties.Settings.Default.SHToGoNotPaymentCatId); //: (int)orderToGo.PaymentType.SHId
                    comment  = orderToGo.OrderComment == null ? "" : orderToGo.OrderComment + (orderToGo.CommentKitchen ?? "");
                }
                bool res = true;

                if (order.DishPackagesNoSpis.Any())
                {
                    res         &= CreateSalesInvoiceSyncSale(order, order.DishPackagesNoSpis.ToList(), docNum, catExp, ridPlace, prefix, comment, out string ErrMesssage2);
                    ErrMesssage += ErrMesssage2 + Environment.NewLine;
                }
                if (order.DishPackagesSpis.Where(a => a.DeletedStatus == 1).Any())
                {
                    foreach (var p in order.DishPackagesSpis.Where(a => a.DeletedStatus == 1).Select(x => x.SpisPaymentId).Distinct())
                    {
                        prefix += "_Annul";
                        catExp  = (int)DataExtension.DataCatalogsSingleton.Instance.GetPayment(p)?.SHId;

                        res         &= CreateSalesInvoiceSyncSale(order, order.DishPackagesSpis.Where(x => x.SpisPaymentId == p).ToList(), docNum, catExp, ridPlace, prefix, comment, out string ErrMesg);
                        ErrMesssage += ErrMesg + Environment.NewLine;
                    }
                }

                order.IsSHSent = res;
                return(res);
            }
            catch (Exception e)
            {
                ErrMesssage = $"Ошибка создания расходной накладной {Environment.NewLine + e.Message}";
                logger.Error($"CreateSalesInvoice Oreder {order.Id}. Mess: {e.Message}");
                return(false);
            }
            finally
            {
                if (sh != null)
                {
                    try
                    {
                        sh.CloseConection();
                    }
                    catch (Exception ee) { logger.Error($"CreateSalesInvoice error CloseConection Mess: {ee.Message}"); }
                }
            }
        }
 public LabelPageViewModel(IOrderLabel _order, Dish _d)
 {
     order = _order;
     d     = _d;
 }
Exemplo n.º 9
0
        static List <FiscalCheckVisualString> GetFStrings(IOrderLabel order, int grId)
        {
            logger.Debug($"GetFStrings Order: {order?.Id}");

            var res = new List <FiscalCheckVisualString>();

            res.Add(new FiscalCheckVisualString("   ", true, true));
            if (order is OrderToGo)
            {
                res.Add(new FiscalCheckVisualString($"Заказ ToGo № {order.Id}", true, true));

                if (order.DishPackagesForLab.Any(a => a.Printed))
                {
                    res.Add(new FiscalCheckVisualString($"Дополнение", true, false));
                }
            }

            if (order is OrderFlight)
            {
                res.Add(new FiscalCheckVisualString($"Заказ ToFly № {order.Id}", true, true));
                if (order.DishPackagesForLab.Any(a => a.Printed))
                {
                    res.Add(new FiscalCheckVisualString($"Дополнение", true, false));
                }
            }

            if (order is OrderFlight)
            {
                res.Add(new FiscalCheckVisualString(order.ReadyTime.ToString("HH:mm dd/MM/yy"), true, false));
            }
            else
            {
                res.Add(new FiscalCheckVisualString(order.DeliveryDate.ToString("HH:mm dd/MM/yy"), true, false));
            }
            res.Add(new FiscalCheckVisualString("   ", true, false));



            if (order is OrderToGo)
            {
                var ordTG = (OrderToGo)order;
                if (ordTG.MarketingChannel != null)
                {
                    res.Add(new FiscalCheckVisualString($"Канал продаж:", true));
                    res.Add(new FiscalCheckVisualString(ordTG.MarketingChannel.Name, false));
                }
            }

            if (!(order is OrderFlight) && order.CommentKitchen != null && order.CommentKitchen.Trim().Length > 0)
            {
                res.Add(new FiscalCheckVisualString($"Комментарий к заказу", true));
                res.Add(new FiscalCheckVisualString(order.CommentKitchen, false));
            }
            res.Add(new FiscalCheckVisualString("   ", true, true));

            if (grId == 0)
            {
                foreach (var dp in order.DishPackagesForLab.Where(a => !a.Printed))
                {
                    res.Add(new FiscalCheckVisualString(dp.Dish.Name, dp.Amount.ToString("0.#"), false));

                    if (!(order is OrderFlight))
                    {
                        if (dp.Comment != null && dp.Comment.Trim() != "")
                        {
                            res.Add(new FiscalCheckVisualString($"   {dp.Comment}", false));
                        }
                    }
                }
                res.Add(new FiscalCheckVisualString("   ", true, true));
                res.Add(new FiscalCheckVisualString("   ", true, true));
                res.Add(new FiscalCheckVisualString("___________________________", true, false));

                logger.Debug($"GetFStrings Order: {order?.Id} Return:");
                foreach (var f in res)
                {
                    logger.Debug(f.strLeft + " " + f.strRight);
                }
                logger.Debug($"GetFStrings Order: {order?.Id} Return end:");
                return(res);
            }
            return(null);
        }
Exemplo n.º 10
0
        static List <FiscalCheckVisualString> GetFStringsForDelete(IOrderLabel order, List <IDishPackageLabel> dishes)
        {
            if ((dishes == null) || (dishes.Count < 1))
            {
                return(null);
            }
            logger.Debug($"GetFStringsForDelete: {dishes.First().Dish?.Name}");

            var res = new List <FiscalCheckVisualString>();

            res.Add(new FiscalCheckVisualString("   ", true, true));

            if (order is OrderToGo)
            {
                res.Add(new FiscalCheckVisualString($"Заказ ToGo № {order.Id}", true, true));
                res.Add(new FiscalCheckVisualString($"УДАЛЕНИЕ ПОЗИЦИЙ!!!", true, false));
            }

            if (order is OrderFlight)
            {
                res.Add(new FiscalCheckVisualString($"Заказ ToFly № {order.Id}", true, true));
                res.Add(new FiscalCheckVisualString($"УДАЛЕНИЕ ПОЗИЦИЙ!!!", true, false));
            }

            if (order is OrderFlight)
            {
                res.Add(new FiscalCheckVisualString(order.ReadyTime.ToString("HH:mm dd/MM/yy"), true, false));
            }
            else
            {
                res.Add(new FiscalCheckVisualString(order.DeliveryDate.ToString("HH:mm dd/MM/yy"), true, false));
            }
            res.Add(new FiscalCheckVisualString("   ", true, false));



            if (order is OrderToGo)
            {
                var ordTG = (OrderToGo)order;
                if (ordTG.MarketingChannel != null)
                {
                    res.Add(new FiscalCheckVisualString($"Канал продаж:", true));
                    res.Add(new FiscalCheckVisualString(ordTG.MarketingChannel.Name, false));
                }
            }

            if (!(order is OrderFlight) && order.CommentKitchen != null && order.CommentKitchen.Trim().Length > 0)
            {
                res.Add(new FiscalCheckVisualString($"Комментарий к заказу", true));
                res.Add(new FiscalCheckVisualString(order.CommentKitchen, false));
            }
            res.Add(new FiscalCheckVisualString("   ", true, true));

            //  if (grId == 0)
            {
                foreach (var dp in dishes)
                {
                    res.Add(new FiscalCheckVisualString(dp.Dish.Name, dp.Amount.ToString("0.#"), false));
                    if (dp.DeletedStatus == 1)
                    {
                        res.Add(new FiscalCheckVisualString($"Удаление со списанием"));
                        res.Add(new FiscalCheckVisualString($"Причина: {dp.SpisPayment?.Name}"));
                    }
                    else
                    {
                        res.Add(new FiscalCheckVisualString($"Удаление без списания"));
                    }


                    if (!(order is OrderFlight))
                    {
                        if (dp.Comment != null && dp.Comment.Trim() != "")
                        {
                            res.Add(new FiscalCheckVisualString($"   {dp.Comment}", false));
                        }
                    }
                }
                res.Add(new FiscalCheckVisualString("   ", true, true));
                res.Add(new FiscalCheckVisualString("   ", true, true));
                res.Add(new FiscalCheckVisualString("___________________________", true, false));

                logger.Debug($"GetFStrings Order: {order?.Id} Return:");
                foreach (var f in res)
                {
                    logger.Debug(f.strLeft + " " + f.strRight);
                }
                logger.Debug($"GetFStrings Order: {order?.Id} Return end:");
                return(res);
            }
        }