private NLPExcelExportModel WriteIntentionExcel(List <Intention> intentions) { int RowCount = 0; NLPExcelExportModel excelExportModel = new NLPExcelExportModel(); excelExportModel.SheetName = "Intentions"; excelExportModel.Columns = new string[3]; excelExportModel.Columns[0] = "ID"; excelExportModel.Columns[1] = "Intention Name"; excelExportModel.Columns[2] = "Updated At"; List <Intention> filteredIntentions = intentions.Where(x => x.IsDeleted == false).ToList(); excelExportModel.SheetValues = new string[filteredIntentions.Count, excelExportModel.Columns.Length]; foreach (var intent in filteredIntentions) { excelExportModel.SheetValues[RowCount, 0] = intent.Id; excelExportModel.SheetValues[RowCount, 1] = intent.Name; excelExportModel.SheetValues[RowCount, 2] = intent.StorageDate.GetValueOrDefault().ToString("dd/MM/yyyy hh:mm:ss"); RowCount++; } return(excelExportModel); }
private NLPExcelExportModel WriteEntitiesExcel(List <Entity> entities) { int RowCount = 0; int TotalEntitiesValue = 0; NLPExcelExportModel excelExportModel = new NLPExcelExportModel(); excelExportModel.SheetName = "Entities"; excelExportModel.Columns = new string[4]; excelExportModel.Columns[0] = "ID"; excelExportModel.Columns[1] = "Entity Name"; excelExportModel.Columns[2] = "Value Name"; excelExportModel.Columns[3] = "Synonymous"; List <Entity> filteredEntities = entities.Where(x => x.IsDeleted == false).ToList(); filteredEntities.ForEach(delegate(Entity entity) { EntityValues[] questions = entity.Values; if (questions == null) { TotalEntitiesValue = TotalEntitiesValue + 1; } else { TotalEntitiesValue = TotalEntitiesValue + questions.Length; } }); excelExportModel.SheetValues = new string[TotalEntitiesValue, excelExportModel.Columns.Length]; foreach (var entity in filteredEntities) { if (entity.Values == null) { excelExportModel.SheetValues[RowCount, 0] = entity.Id; excelExportModel.SheetValues[RowCount, 1] = entity.Name; excelExportModel.SheetValues[RowCount, 2] = string.Empty; excelExportModel.SheetValues[RowCount, 3] = string.Empty; RowCount++; continue; } foreach (var item in entity.Values) { excelExportModel.SheetValues[RowCount, 0] = entity.Id; excelExportModel.SheetValues[RowCount, 1] = entity.Name; excelExportModel.SheetValues[RowCount, 2] = item.Name; excelExportModel.SheetValues[RowCount, 3] = string.Join(";", item.Synonymous); RowCount++; } } return(excelExportModel); }
private NLPExcelExportModel WriteQuestionsExcel(List <Intention> intentions) { int RowCount = 0; int TotalQuestions = 0; NLPExcelExportModel excelExportModel = new NLPExcelExportModel(); excelExportModel.SheetName = "Questions"; excelExportModel.Columns = new string[2]; excelExportModel.Columns[0] = "Intention Name"; excelExportModel.Columns[1] = "Question"; List <Intention> filteredIntentions = intentions.Where(x => x.IsDeleted == false).ToList(); filteredIntentions.ForEach(delegate(Intention intent) { Question[] questions = intent.Questions; if (questions == null) { TotalQuestions = TotalQuestions + 1; } else { TotalQuestions = TotalQuestions + questions.Length; } }); excelExportModel.SheetValues = new string[TotalQuestions, excelExportModel.Columns.Length]; foreach (var intent in filteredIntentions) { if (intent.Questions == null) { excelExportModel.SheetValues[RowCount, 0] = intent.Name; excelExportModel.SheetValues[RowCount, 1] = string.Empty; RowCount++; continue; } foreach (var question in intent.Questions) { excelExportModel.SheetValues[RowCount, 0] = intent.Name; excelExportModel.SheetValues[RowCount, 1] = question.Text; RowCount++; } } return(excelExportModel); }