Esempio n. 1
0
        GetSectionTranslation(ExcelWorksheet sheet)
        {
            IDataResult <Dictionary <ITranslationEntity, List <ITranslationEntity> > > dataResult =
                new DataResult <Dictionary <ITranslationEntity, List <ITranslationEntity> > >();
            List <IRowItem> rowItems = new List <IRowItem>();

            for (int j = sheet.Dimension.Start.Row + 1; j <= sheet.Dimension.End.Row; j++)
            {
                IDataResult <IRowItem> rowParserResult =
                    _parserSection.RowParser(sheet, j, _excelConfiguration);

                if (!string.IsNullOrEmpty(rowParserResult.Message))
                {
                    IRowItemError error = new RowItemError();
                    error.ColumnItems   = rowParserResult.Data.ColumnItems;
                    dataResult.Message += MessageHolder.GetErrorMessage
                                              (MessageType.NotPageSection);
                    dataResult.Message += rowParserResult.Message +
                                          MessageHolder.GetErrorMessage(MessageType.NewLine);

                    error.RowNmomer = j;
                    dataResult      = _dataNormalization.NormaliseTransliteSection(rowItems);
                    //dataResult.Success = false;

                    return(dataResult);
                }

                rowItems.Add(rowParserResult.Data);
            }

            IDataResult <Dictionary <ITranslationEntity, List <ITranslationEntity> > > sectiomNormResult =
                _dataNormalization.NormaliseTransliteSection(rowItems);

            if (!sectiomNormResult.Success)
            {
                dataResult.Message += MessageHolder.GetErrorMessage
                                          (MessageType.NotPageSection);
                dataResult.Message += sectiomNormResult.Message;
                dataResult.Success  = false;

                return(dataResult);
            }

            dataResult.Data    = sectiomNormResult.Data;
            dataResult.Success = true;

            return(dataResult);
        }
Esempio n. 2
0
        public IDataResult <IRowItem> RowParser
            (ExcelWorksheet excelWorksheet, int row, ExcelConfiguration excelConfiguration)
        {
            IDataResult <IRowItem> dataResult =
                new DataResult <IRowItem>()
            {
                Success = false
            };
            IRowItem      rowItem = new RowItem();
            IRowItemError error   = new RowItemError();

            List <IColumnItem> columnItems = new List <IColumnItem>();
            List <IDataResult <IColumnItem> > errorColumnItems = new List <IDataResult <IColumnItem> >();
            int start = excelWorksheet.Dimension.Start.Column;
            int end   = excelWorksheet.Dimension.Columns;

            for (int j = start; j < end; j++)
            {
                IExcelWorksheetEntity tmpEntity = new ExcelWorksheetEntity();
                tmpEntity.CellNo = j;
                tmpEntity.RowNo  = row;
                //
                IExcelWorksheetEntity titleEntity = new ExcelWorksheetEntity();
                titleEntity.RowNo          = excelConfiguration.DataRowIndex.Title;
                titleEntity.CellNo         = j;
                titleEntity.ExcelWorksheet = excelWorksheet;

                IDataResult <string> nametitleResilt = _readExcelData.GetValue(titleEntity);

                if (!nametitleResilt.Success)
                {
                    break;
                }
                tmpEntity.ExcelWorksheet = excelWorksheet;

                IDataResult <IColumnItem> getDataResult =
                    ColumnParser(tmpEntity, excelConfiguration);

                dataResult.Message += getDataResult.Message;

                if (getDataResult.Success)
                {
                    if (!string.IsNullOrEmpty(getDataResult.Message))
                    {
                        getDataResult.Success = false;
                        errorColumnItems.Add(getDataResult);
                    }
                    else
                    {
                        columnItems.Add(getDataResult.Data);
                    }
                }
                else
                {
                    errorColumnItems.Add(getDataResult);
                }
            }
            error.ListColums  = errorColumnItems;
            error.ColumnItems = columnItems;
            if (errorColumnItems.Any())
            {
                dataResult.Data    = error;
                dataResult.Success = false;

                return(dataResult);
            }

            rowItem.ColumnItems = columnItems;
            dataResult.Data     = rowItem;
            dataResult.Success  = true;

            return(dataResult);
        }