Пример #1
0
        private void PassOrdersLeft()
        {
            Excel.Range range  = monthlyExcelFile.ordersRange;
            int         length = ExcelUtil.GetLastRow(monthlyExcelFile.ordersRange.Worksheet);

            for (int row = 2; row < length; row++)
            {
                if (IsAnyCellContainsValue(range, row))
                {
                    OrderUtil.CheckOrderDesc(monthlyExcelFile.ordersRange, row);

                    ErrorUtil.IsInvoiceNumberOk(monthlyExcelFile.ordersRange, row, ColumnsOrder.InvoiceNumber);

                    ErrorUtil.CheckRecordType(monthlyExcelFile.ordersRange, row, RecordType.order);

                    OrderUtil.CheckReceivedAmount(monthlyExcelFile.ordersRange, row);

                    OrderUtil.CheckOrderNumber(monthlyExcelFile.ordersRange, row);
                }
            }
        }
Пример #2
0
        private bool AddOrder(int row)
        {
            if (!OrderUtil.CheckOrderDesc(monthlyExcelFile.ordersRange, row))
            {
                return(false);
            }
            Order order = new Order();

            if (ErrorUtil.IsInvoiceNumberOk(monthlyExcelFile.ordersRange, row, ColumnsOrder.InvoiceNumber))
            {
                order.InvoiceNumber = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.InvoiceNumber);
            }
            else
            {
                return(false);
            }

            if (ErrorUtil.CheckRecordType(monthlyExcelFile.ordersRange, row, RecordType.order))
            {
                order.RecordType = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.RecordType);
            }

            if (OrderUtil.CheckReceivedAmount(monthlyExcelFile.ordersRange, row))
            {
                order.ReceivedAmount = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.RecivedAmount);
            }

            if (OrderUtil.CheckOrderNumber(monthlyExcelFile.ordersRange, row))
            {
                order.OrderNumber = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.OrderNumber);
            }
            order.StoreNumber                = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.StoreNumber);
            order.Date                       = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.Date);
            order.EnteranceStampNum          = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.EnteranceStampNum);
            order.Discount                   = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.Discount);
            order.DiscountPrecent            = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.DiscountPrecent);
            order.SaleDiscount               = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.SaleDiscount);
            order.SaleDiscountPrecent        = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.SaleDiscountPrecent);
            order.DistrbutionDiscount        = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.DistrbutionDiscount);
            order.DistrbutionDiscountPrecent = ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.DistrbutionDiscountPrecent);

            Excel.Range cell = monthlyExcelFile.linesRange.Find(order.InvoiceNumber.TrimStart());
            int         cellRow;

            int nextsRow = 1;

            if (cell != null)
            {
                cellRow = cell.Row;

                if (ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.OrderDesc).TrimStart()
                    == ExcelUtil.GetStringValue(monthlyExcelFile.linesRange, cell.Row, ColumnsLines.OrderDesc).TrimStart())
                {
                    AddLine(order, cell.Row);
                }
                cell     = monthlyExcelFile.linesRange.Find(order.InvoiceNumber.TrimStart());
                nextsRow = cell.Row;
                while (cellRow != nextsRow)
                {
                    cell = monthlyExcelFile.linesRange.FindNext(cell);
                    if (cell != null)
                    {
                        nextsRow = cell.Row;
                        if (ExcelUtil.GetStringValue(monthlyExcelFile.ordersRange, row, ColumnsOrder.OrderDesc).TrimStart()
                            == ExcelUtil.GetStringValue(monthlyExcelFile.linesRange, cell.Row, ColumnsLines.OrderDesc).TrimStart())
                        {
                            AddLine(order, cell.Row);
                        }
                    }
                }
            }
            if (order.Lines.Count < 1)
            {
                ErrorUtil.FinallizeErrorAndAdd(new Error {
                    Issue = "לא נמצאו שורות להזמנה"
                }, row: 1, column: 1, range: monthlyExcelFile.linesRange);
                return(false);
            }

            Invoice.GetInstance().AddOrder(order);
            recordsToBeDeleted.Add(new RecordToBeDeleted {
                Record = row, Sheet = Sheets.OrdersSheetNumber
            });
            return(true);
        }