public void ShouldCheckEqualutyWithConent(string value1, string value2, bool expectedResult) { //Given var firstTableContent = new TableContent("Team Members Table") .AddRow( new [] { new FieldContent("Name", "Eric"), new FieldContent("Role", "Program Manager") }) .AddRow( new [] { new FieldContent("Name", "Bob"), new FieldContent("Role", value1) }); var secondTableContent = new TableContent("Team Members Table") .AddRow( new [] { new FieldContent("Name", "Eric"), new FieldContent("Role", "Program Manager") }) .AddRow( new [] { new FieldContent("Name", "Bob"), new FieldContent("Role", value2) }); //When var result = firstTableContent.Equals(secondTableContent); //Then result.Should().Be(expectedResult); }
private Content GetContent(List <ProjectReport> template, ApplicationUser user) { DateTime dateTime = DateTime.Now; var studentsTable = new TableContent("table"); for (int i = 0; i < template.Count; i++) { studentsTable.AddRow(new FieldContent("employeeProjectName", template[i].Project.Name)); for (int j = 0; j < template[i].Modules.Count; j++) { studentsTable .AddRow( new FieldContent("employeeCount", j.ToString()), new FieldContent("employeeModule", template[i].Modules[j].Module.Name), new FieldContent("employeeProject", j.ToString()), new FieldContent("employeeDate", j.ToString()), new FieldContent("employeeCause", j.ToString()), new FieldContent("employeeNote", j.ToString())); } } var valuesToFill = new Content( new FieldContent("reportName", "Отчет о выполненных задачах"), new FieldContent("reportDate", "За период с 01" + dateTime.Month.ToString() + dateTime.Year.ToString() + "по" + dateTime.Day.ToString() + dateTime.Year.ToString()), new FieldContent("employeePosition", user.Position.Name), new FieldContent("employeeQualification", user.QualificationLevel.Name), new FieldContent("date", DateTime.Now.Date.ToString()), studentsTable, new FieldContent("employeePositionTwo", user.Position.Name), new FieldContent("employeeName", user.UserName)); return(valuesToFill); }
/// <summary> /// Add table to canvas /// </summary> /// <param name="viewModel">Viewmodel of table</param> private void AddTableElement(TableViewModel viewModel) { var content = new TableContent(viewModel); var owner = Window.GetWindow(this) as MainWindow; content.AddNewRow += owner.AddNewRowHandler; content.EditSelectedRow += owner.EditRowHandler; content.RenameTable += owner.RenameTableHandler; content.RemoveSelectedRow += owner.RemoveRowHandler; content.DropTable += owner.DropTableHandler; content.UpdatePrimaryKeyConstraint += owner.UpdatePrimaryKeyConstraintHandler; RoutedEventHandler loadedEventHandler = null; loadedEventHandler = (sender, args) => { MeasureToFit(content); DesignerCanvas.SetZIndex(content, DesignerCanvas.TableUnselectedZIndex); DesignerCanvas.SetTop(content, viewModel.Top); DesignerCanvas.SetLeft(content, viewModel.Left); content.Height = content.ActualHeight + 30; content.Width = content.ActualWidth + 30; viewModel.Height = content.Height; viewModel.Width = content.Width; viewModel.OnTableLoaded(content); content.Loaded -= loadedEventHandler; }; content.Loaded += loadedEventHandler; ModelDesignerCanvas.Children.Add(content); }
public void ReportAboutCurrentDirectory(DirectoryInfoModel directory) { if (directory is null) { return; } string now = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss"); string pathResultedReport = Path.Combine( Directory.GetCurrentDirectory(), "Reports", "Report-Dir-" + now + ".docx"); CopyTemlateToResultDir("Dir", pathResultedReport); List <TableRowContent> rows = GetDrivesInfoRows(directory.FullName); var valuesToFill = new Content( new FieldContent("dateTime", now), new FieldContent("ShortName", directory.Name), new FieldContent("FullName", directory.FullName), new FieldContent("CreationDate", directory.Created.ToString()), new FieldContent("LastModifiedDate", directory.LastModyfied.ToString()), TableContent.Create("TableDisks", rows) ); ListContent listItems = new ListContent("AttributesList"); listItems = GetAttributes(directory.Attributes, listItems); valuesToFill.Lists.Add(listItems); SetValuesToFile(pathResultedReport, valuesToFill); }
public void TableContentFluentConstructorWithNameAndRows_FillsNameAndRows() { var tableContent = TableContent.Create("Name", new TableRowContent(), new TableRowContent()); Assert.AreEqual(2, tableContent.Rows.Count()); Assert.AreEqual("Name", tableContent.Name); }
private TableContent GetRequestInfosTableContent() { var rows = (IList <RequestApplicantInfoRecord>)TemplateFieldValueFactory .Create(TemplateFieldName.RequestInfosOfDocument_Complex).Get(Parameters); var tableContent = new TableContent(nameof(RequestApplicantInfoRecord)); if (rows.Any()) { foreach (var row in rows) { tableContent.AddRow( new FieldContent(nameof(RequestApplicantInfoRecord.RequestNum), row.RequestNum), new FieldContent(nameof(RequestApplicantInfoRecord.PatentName), row.PatentName), new FieldContent(nameof(RequestApplicantInfoRecord.DeclarantShortInfo), row.DeclarantShortInfo) ); } } else { tableContent.AddRow( new FieldContent(nameof(RequestApplicantInfoRecord.RequestNum), string.Empty), new FieldContent(nameof(RequestApplicantInfoRecord.PatentName), string.Empty), new FieldContent(nameof(RequestApplicantInfoRecord.DeclarantShortInfo), string.Empty) ); } return(tableContent); }
private void buttonSave_Click(object sender, EventArgs e) { TableContent table = new TableContent("Extingushers"); for (int i = 0; i < dataGridViewResult.RowCount - 1; i++) { table.AddRow(///TODO CORRECT CELLS new FieldContent("Number", dataGridViewResult.Rows[i].Cells[3].Value.ToString()), new FieldContent("Mark", dataGridViewResult.Rows[i].Cells[6].Value.ToString()), new FieldContent("Concentration", dataGridViewResult.Rows[i].Cells[9].Value.ToString()), new FieldContent("Expired", dataGridViewResult.Rows[i].Cells[dataGridViewResult.ColumnCount - 1].Value.ToString()) ); } File.Delete("OutputDocument.docx"); File.Copy("InputTemplate.docx", "OutputDocument.docx"); var valuesToFill = new Content( new FieldContent("Report date", DateTime.Now.ToString()), table); using (var outputDocument = new TemplateProcessor("OutputDocument.docx") .SetRemoveContentControls(true)) { outputDocument.FillContent(valuesToFill); outputDocument.SaveChanges(); } }
/// <summary> /// Helper method for update of table position /// </summary> /// <param name="table">Table</param> private void UpdateTablePosition(TableContent table) { int step = 100; var grid = CreateMinifiedGridForPathFindingSync(ViewModel, step); var finder = new FreeRectangleFinder(grid); var rect = GetTableRectangles(new[] { table.TableViewModel }, step).Select(s => { var t = s.Y / step; var l = s.X / step; var r = s.Right / step; var b = s.Bottom / step; return(new Rectangle(l, t, r - l, b - t)); }).FirstOrDefault(); var res = finder.FindFreeRectangle(rect); if (res.HasValue) { var realPoint = res.Value.FromMinified(step); table.TableViewModel.Top = realPoint.Y; table.TableViewModel.Left = realPoint.X; DesignerCanvas.SetTop(table, realPoint.Y); DesignerCanvas.SetLeft(table, realPoint.X); } }
/// <summary> /// 使用自定义标签页,标签模型自行管理 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="content"></param> /// <param name="dat"></param> /// <param name="callback"></param> public void AddContent(TableContent table) { if (curContent != null) { curContent.Content.activeSelf = false; if (curContent.Back != null) { curContent.Back.activeSelf = false; } } table.Item.SetParent(Items); table.Item.baseEvent.Click = ItemClick; table.Item.baseEvent.PointerEntry = ItemPointEntry; table.Item.baseEvent.PointerLeave = ItemPointLeave; table.Content.SetParent(Content); curContent = table; curContent.Content.activeSelf = true; if (curContent.Back != null) { curContent.Back.activeSelf = true; } contents.Add(table); if (panel != null) { panel.IsChanged = true; } }
static void GenFile() { var templateFileName = "template.docx"; var tableContent = new TableContent("row"); tableContent.AddRow(new FieldContent("subject", "數學"), new FieldContent("score", "90")); tableContent.AddRow(new FieldContent("subject", "物理"), new FieldContent("score", "80")); var listContent = new ListContent("Team Members List") .AddItem( new FieldContent("Name", "Eric"), new FieldContent("Role", "Program Manager")) .AddItem( new FieldContent("Name", "Bob"), new FieldContent("Role", "Developer")); var nestLiest = new ListContent("NestedList") .AddItem(new ListItemContent("Role", "Program Manager") .AddNestedItem(new FieldContent("Name", "Eric")) .AddNestedItem(new FieldContent("Name", "Ann"))) .AddItem(new ListItemContent("Role", "Developer") .AddNestedItem(new FieldContent("Name", "Bob")) .AddNestedItem(new FieldContent("Name", "Richard"))); var imageContent = new ImageContent("Image", File.ReadAllBytes("cat.jpg")); var valuesToFill = new Content(new FieldContent("name", "王大明"), new FieldContent("avg", "85"), tableContent, listContent, nestLiest, imageContent); using var file = new FileStream(templateFileName, FileMode.Open, FileAccess.Read); using var outputFileStream = new FileStream("output.docx", FileMode.OpenOrCreate, FileAccess.ReadWrite); file.CopyTo(outputFileStream); using var ouputDocument = new TemplateProcessor(outputFileStream).SetRemoveContentControls(true); ouputDocument.FillContent(valuesToFill); ouputDocument.SaveChanges(); }
public void TableContentConstructorWithNameAndEnumerable_FillsNameAndRows() { var tableContent = new TableContent("Name", new List<TableRowContent>()); Assert.IsNotNull(tableContent.Rows); Assert.AreEqual("Name", tableContent.Name); }
public void TableContentConstructorWithNameAndRows_FillsNameAndRows() { var tableContent = new TableContent("Name", new TableRowContent(), new TableRowContent()); Assert.AreEqual(2, tableContent.Rows.Count()); Assert.AreEqual("Name", tableContent.Name); }
public void TableContentFluentConstructorWithNameAndEnumerable_FillsNameAndRows() { var tableContent = TableContent.Create("Name", new List <TableRowContent>()); Assert.IsNotNull(tableContent.Rows); Assert.AreEqual("Name", tableContent.Name); }
public void AddTable(TableContent table) { table.eventCall.Click = ItemClick; table.eventCall.PointerEntry = ItemPointEntry; table.eventCall.PointerLeave = ItemPointLeave; table.Label.SetParent(Head); table.Content.SetParent(Content); }
/// <summary> /// 释放某个标签和其内容,其对象会被回收 /// </summary> /// <param name="table"></param> public void ReleseContent(TableContent table) { contents.Remove(table); table.Content.SetParent(null); table.Item.SetParent(null); ModelManagerUI.RecycleElement(table.Content); ModelManagerUI.RecycleElement(table.Item); }
public void TableAddRowFluent_AddsRow() { var tableContent = TableContent.Create("Name") .AddRow(new FieldContent()); Assert.AreEqual(1, tableContent.Rows.Count()); Assert.AreEqual("Name", tableContent.Name); }
public Dictionary <string, string> AddRow() { var row = new Dictionary <string, string>(); TableContent.Add(row); return(row); }
public object SaveChartToFile([FromQuery] string fileName) { byte[] chart = Convert.FromBase64String(StaticData.DataChart); string filePath = Path.ChangeExtension(fileName + " отчет с графиком", ".docx"); System.IO.File.Copy("TemplatesReportsWord/ChartReportTemplate.docx", filePath); using (FileStream fstream = System.IO.File.Open(filePath, FileMode.Open)) { List <IContentItem> fieldContents = new List <IContentItem>(); ListContent listContent = new ListContent("systems"); ListItemContent contentItems; TableContent tableContent; List <FieldContent> rows = new List <FieldContent>(); int number; foreach (var calculation in StaticData.ChartCalculation.calculations) { number = 1; tableContent = TableContent.Create("systemsMembers"); foreach (var value in calculation.values) { rows.Clear(); rows.Add(new FieldContent("number", number.ToString() + ".")); rows.Add(new FieldContent("parameterX", value.X.ToString())); rows.Add(new FieldContent("parameterY", value.Y.ToString())); tableContent.AddRow(rows.ToArray()); number++; } contentItems = new ListItemContent("system", calculation.nameSystem); contentItems.AddTable(tableContent); listContent.AddItem(contentItems); } fieldContents.Add(listContent); fieldContents.Add(new FieldContent("nameParameterX", StaticData.ChartCalculation.parameterNameX)); fieldContents.Add(new FieldContent("nameParameterY", StaticData.ChartCalculation.parameterNameY)); fieldContents.Add(new ImageContent("chart", chart)); using (var outputDocument = new TemplateProcessor(fstream).SetRemoveContentControls(true)) { outputDocument.FillContent(new Content(fieldContents.ToArray())); outputDocument.SaveChanges(); } } var memory = new MemoryStream(); using (var stream = new FileStream(filePath, FileMode.Open)) { stream.CopyTo(memory); } System.IO.File.Delete(filePath); memory.Position = 0; return(File(memory, MimeTypesMap.GetMimeType(filePath), filePath)); }
public void AddTable( ) { TableEditor = new TableEditorViewModel(_provider, null); TableEditor.TableEdited += Update; if (TableContent != null) { TableContent.Dispose( ); } TableContent = new TableContentViewModel(_provider, null); }
public void EqualsTest_CompareWithNull_NotEquals() { var firstTableContent = new TableContent("Team Members Table") .AddRow( new FieldContent("Name", "Bob"), new FieldContent("Role", "Developer")); Assert.IsFalse(firstTableContent.Equals(null)); }
protected override Content GetContent() { var cardsTable = new TableContent("CardsTable"); foreach (var card in _cards) { cardsTable.AddRow(new FieldContent("SideOne:Text", card.SideOne.Text), new FieldContent("SideTwo:Text", card.SideTwo.Text)); } return(new Content(cardsTable)); }
private static Content PrepareProposalContent(ExcelFile excelFile, bool changeTemplateHeader) { var listTable = new List <TableContent>(); var listFieldContent = new List <FieldContent>(); foreach (var workSheet in excelFile.Content) { switch (workSheet.Type) { case WorkSheetTypeEnum.Table: var tableContent = new TableContent(workSheet.Name); if (tableContent.Rows == null && changeTemplateHeader) { var arrayHeaderRow = new FieldContent[workSheet.HeaderRow.Cells.Count]; for (int column = 0; column < workSheet.HeaderRow.Cells.Count; column++) { arrayHeaderRow[column] = new FieldContent(workSheet.HeaderRow.Cells[column], workSheet.HeaderRow.Cells[column]); } tableContent.AddRow(arrayHeaderRow); } foreach (var row in workSheet.Rows) { var arrayRowField = new FieldContent[row.Cells.Count]; for (int column = 0; column < row.Cells.Count; column++) { arrayRowField[column] = new FieldContent(workSheet.HeaderRow.Cells[column], row.Cells[column]); } tableContent.AddRow(arrayRowField); } listTable.Add(tableContent); break; case WorkSheetTypeEnum.Field: foreach (var row in workSheet.Rows) { listFieldContent.Add(new FieldContent(row.Cells.FirstOrDefault(), row.Cells.LastOrDefault())); } break; default: break; } } return(new Content { Tables = listTable, Fields = listFieldContent }); }
public static TableContent AddTableActions(string tablePlaceholderName, List <Dictionary <string, Func <string> > > list) { var temp = new TableContent(tablePlaceholderName); foreach (var dict in list) { var items = AddSimpleActions(dict).ToArray(); temp = temp.AddRow(items); } return(temp); }
/// <summary> /// Ensure bounds /// </summary> /// <param name="content">Item on canvas</param> private void MeasureToFit(TableContent content) { if (content.ActualWidth + content.TableViewModel.Left >= ModelDesignerCanvas.ActualWidth) { content.TableViewModel.Left = ModelDesignerCanvas.ActualWidth - content.ActualWidth - 10; } if (content.ActualHeight + content.TableViewModel.Top >= ModelDesignerCanvas.ActualHeight) { content.TableViewModel.Top = ModelDesignerCanvas.ActualHeight - content.ActualHeight - 10; } }
private void btnReportAllEmployees_Click(object sender, EventArgs e) { string mainDate = getMainDate(); DataTable employees = database.getEmployeesForReport(); TableContent tableEvent = new TableContent("Team Members"); int length = employees.Rows.Count; foreach (DataRow dtRow in employees.Rows) { string personalNumber = dtRow["personal_number"].ToString(); string name = dtRow["name"].ToString(); string surname = dtRow["surname"].ToString(); //string patronymic = dtRow["patronymic"].ToString(); string positionName = dtRow["positionName"].ToString(); string departmentName = dtRow["departmentName"].ToString(); tableEvent.AddRow( new FieldContent("personalNumber", personalNumber), new FieldContent("Full Name", surname + " " + name), new FieldContent("Role", positionName), new FieldContent("department", departmentName) ); } string employeeWord = GetDeclension(length, "сотрудник", "сотрудника", "сотрудников"); var valuesToFill = new TemplateEngine.Docx.Content( tableEvent, new FieldContent("Report date", mainDate), new FieldContent("Count", length.ToString() + " " + employeeWord) ); string destinationFolderPath = @"D:\Documents\Отчеты о составе команды"; string templatePath = @"D:\Documents Templates\Отчет о сотрудниках.docx"; string newFilePath = @"D:\Documents\Отчеты о составе команды\Отчет о составе команды от " + mainDate + ".docx"; if (!Directory.Exists(destinationFolderPath)) { Directory.CreateDirectory(destinationFolderPath); } File.Delete(newFilePath); File.Copy(templatePath, newFilePath); using (var outputDocument = new TemplateProcessor(newFilePath) .SetRemoveContentControls(true)) { outputDocument.FillContent(valuesToFill); outputDocument.SaveChanges(); } Process.Start(newFilePath); }
private TableContent CreateAssessmentByDisciplinesTable3(AssessmentByDiscipline[] assessmentByDisciplines) { var tableContent = new TableContent("AssessmentByDisciplines"); foreach (var assessmentByDiscipline in assessmentByDisciplines.Where(ass => ass.ControlType == ControlType.StateExam)) { tableContent.AddRow( new FieldContent("NameOfStateExam", assessmentByDiscipline.NameOfDiscipline), new FieldContent("Assessment3", typeof(Assessment).GetField(assessmentByDiscipline.Assessment.ToString()).GetCustomAttribute <NameEnumValueAttribute>().NameEnumValue.ToLower())); } return(tableContent); }
public void MakeReport(string reportFileName, string sourceDirectoryName, ICreateReportOptions options) { var di = new DirectoryInfo(sourceDirectoryName); if (!di.Exists) { throw new DirectoryNotFoundException(sourceDirectoryName); } var fi = new FileInfo(reportFileName); if (fi.Exists) { fi.Delete(); } File.Copy(reportTemplate, reportFileName); var tableContent = new TableContent("Files"); foreach (var fileInfo in di.GetFiles()) { tableContent.AddRow( new FieldContent("FileName", fileInfo.Name), new FieldContent("FileSize", fileInfo.Length.ToString())); } var valuesToFill = new Content( new FieldContent("DirectoryName", di.Name), new FieldContent("DirectoryPath", di.Parent.FullName), tableContent ); using (var outputDocument = new TemplateProcessor(reportFileName) .SetRemoveContentControls(true)) { outputDocument.FillContent(valuesToFill); outputDocument.SaveChanges(); } if (options.OpenAfterCreate) { ProcessStartInfo info = new ProcessStartInfo() { FileName = reportFileName, UseShellExecute = true }; Process.Start(info); } }
public void LoadData() { using (StreamReader stream = new StreamReader(jsonPath)) { string json = stream.ReadToEnd(); content = JsonUtility.FromJson <TableContent>(json); } if (content != null) { CleanGridLayout(); ShowDataOnUI(); } }
private TableContent CreateAssessmentByDisciplinesTable2(AssessmentByDiscipline[] assessmentByDisciplines, DisciplineExtendedProxy[] disciplines) { var tableContent = new TableContent("AssessmentByDisciplines"); foreach (var assessmentByDiscipline in assessmentByDisciplines.Where(ass => ass.ControlType == ControlType.Practice)) { tableContent.AddRow( new FieldContent("NameOfPractice", assessmentByDiscipline.NameOfDiscipline), new FieldContent("ClassHours2", GetClassHours(assessmentByDiscipline, disciplines).ToString()), new FieldContent("Assessment2", typeof(Assessment).GetField(assessmentByDiscipline.Assessment.ToString()).GetCustomAttribute <NameEnumValueAttribute>().NameEnumValue.ToLower())); } return(tableContent); }
public void ShowContent(TableContent content) { if (curContent != null) { curContent.Content.activeSelf = false; curContent.Back.activeSelf = false; } curContent = content; curContent.Content.activeSelf = true; if (curContent.Back != null) { curContent.Back.GetComponent <ImageElement>().color = SelectColor; curContent.Back.activeSelf = true; } }
protected virtual TableContent GenerateExamsContent(IEnumerable <ExamInfo> exams) { var examsData = new TableContent("ExamsData"); foreach (var exam in exams) { examsData.AddRow( new FieldContent("FullName", exam.Discipline?.FullName ?? ""), new FieldContent("Mark", exam.Mark.ToString()), new FieldContent("Date", exam.Date?.ToShortDateString() ?? "") ); } return(examsData); }
//-------------------------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------------------------- public ParserResult <TTargetClass> Parse(string[] arguments, string delimiter) { _tableContent = new TableContent(); var result = CreateTableContent(arguments); if (result.IsSucceeded == false) { return(result); } result = CreateInstance(arguments, delimiter); return(result); }
public void EqualsTest_ValuesAreEqual_Equals() { var firstTableContent = new TableContent("Team Members Table") .AddRow( new FieldContent("Name", "Eric"), new FieldContent("Role", "Program Manager")) .AddRow( new FieldContent("Name", "Bob"), new FieldContent("Role", "Developer")); var secondTableContent = new TableContent("Team Members Table") .AddRow( new FieldContent("Name", "Eric"), new FieldContent("Role", "Program Manager")) .AddRow( new FieldContent("Name", "Bob"), new FieldContent("Role", "Developer")); Assert.IsTrue(firstTableContent.Equals(secondTableContent)); }
public void TableContentConstrictorWithName_FillsName() { var tableContent = new TableContent("Name"); Assert.AreEqual("Name", tableContent.Name); }
internal static void AddHasTitleProperty(TypeUsageInfo ihastitle, EntityInfo entity, TableContent tableContent) { var prop = new PropertyInfo("EntityTitle", new FieldInfo("EntityTitle", (typeof(string)).ToUsageInfo()), new PropertyInvokerInfo(string.Format("return {0}.ToString();", tableContent.TitleFieldName)), null); prop.ExplicitInterface = ihastitle; entity.AddProperty(prop); }