Example #1
0
        public FormattedPlanSheetBuilder(string sheetName, ExportPlanRequest exportPlanRequest)
            : base(sheetName)
        {
            _exportPlanRequest = exportPlanRequest;
            _viewMode          = exportPlanRequest.ViewMode;

            _chartData = JsonConvert.DeserializeObject <ChartData>(exportPlanRequest.Chart.Version.JsonData,
                                                                   new JsonSerializerSettings
            {
                StringEscapeHandling =
                    StringEscapeHandling.EscapeHtml,
                NullValueHandling     = NullValueHandling.Ignore,
                MissingMemberHandling =
                    MissingMemberHandling.Ignore
            });

            if (_chartData.Columns == null)
            {
                throw new ApplicationException("Please re-save plan before export");
            }

            _columnsHelper = new ColumnsHelper(_viewMode, _chartData.Columns);

            _planRows = new Dictionary <int, RowDefinition>();
        }
Example #2
0
 public FormulasPainter(ExcelWorksheet worksheet,
                        int columnsOffset,
                        FormattedPlanViewMode viewMode,
                        Dictionary <int, CurrencyModel> currencies,
                        Dictionary <DateTime, int> columnsLookup,
                        Dictionary <int, RowDefinition> planRows)
 {
     _worksheet     = worksheet;
     _columnsOffset = columnsOffset;
     _viewMode      = viewMode;
     _currencies    = currencies;
     _columnsLookup = columnsLookup;
     _planRows      = planRows;
 }
        public ColumnsHelper(FormattedPlanViewMode viewMode, HeaderColumns columns)
        {
            _viewMode = viewMode;

            switch (_viewMode)
            {
            case FormattedPlanViewMode.Daily:
                _columns = columns.Daily;
                break;

            case FormattedPlanViewMode.Weekly:
                _columns = columns.Weekly;
                break;

            case FormattedPlanViewMode.Monthly:
                throw new NotSupportedException("Monthly view is not supported");
            }
        }
        public void DrawPictures(List <Picture> pictures, FormattedPlanViewMode viewMode)
        {
            if (!pictures.Any())
            {
                return;
            }

            var imagesLookup = DownloadAllImages(pictures);

            foreach (var picture in pictures)
            {
                try
                {
                    DrawPicture(picture, imagesLookup);
                }
                catch
                {
                    // ignored
                }
            }
        }
Example #5
0
            public SubtotalCellAddress(string key, int columnsOffset, FormattedPlanViewMode viewMode)
            {
                var rawAddress = key.Split(FLIGHTS_ADDRESS_SEPARATOR);

                switch (viewMode)
                {
                case FormattedPlanViewMode.Daily:
                    IsSubtotalCellAddress = rawAddress[0] == DAILY_ADDRESS_MARKER;
                    break;

                case FormattedPlanViewMode.Weekly:
                    IsSubtotalCellAddress = rawAddress[0] == WEEKLY_ADDRESS_MARKER;
                    break;
                }

                if (!IsSubtotalCellAddress)
                {
                    return;
                }

                RowIndex    = int.Parse(rawAddress[1]) + 1;
                ColumnIndex = int.Parse(rawAddress[2]) + columnsOffset;
            }