_SiteGridPartial.cshtml 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. @model IEnumerable<GreenTree.Nachtragsmanagement.Web.Models.Site.SiteDataModel>
  2. @using GreenTree.Nachtragsmanagement.Web.Extensions
  3. @{
  4. var userContext = GreenTree.Nachtragsmanagement.Core.CommonHelper.UserContext();
  5. }
  6. @Html.DevExpress().GridView(Html.SiteGridViewSettings()).Bind(Model).GetHtml()
  7. @*@Html.DevExpress().GridView(s =>
  8. {
  9. s.Name = "devGridViewSite";
  10. s.KeyFieldName = "Id";
  11. s.CallbackRouteValues = new { Controller = "Site", Action = "PartialSites" };
  12. s.Width = Unit.Percentage(100);
  13. s.Settings.ShowFilterRow = true;
  14. s.Settings.ShowFilterRowMenu = true;
  15. s.Settings.ShowFooter = true;
  16. s.Settings.ShowGroupPanel = true;
  17. s.Settings.AutoFilterCondition = AutoFilterCondition.Contains;
  18. s.Settings.VerticalScrollBarMode = ScrollBarMode.Auto;
  19. s.Settings.VerticalScrollableHeight = (ViewData["ScrollHeight"] == null || (int)ViewData["ScrollHeight"] == -1) ? 400 : (int)ViewData["ScrollHeight"];
  20. s.Toolbars.Add(t =>
  21. {
  22. var refreshItem = t.Items.Add(GridViewToolbarCommand.Refresh);
  23. refreshItem.Text = "Aktualisieren";
  24. var expandItem = t.Items.Add(GridViewToolbarCommand.FullExpand);
  25. expandItem.Text = "Alle aufklappen";
  26. var collapseItem = t.Items.Add(GridViewToolbarCommand.FullCollapse);
  27. collapseItem.Text = "Alle einklappen";
  28. var filterItem = t.Items.Add(GridViewToolbarCommand.ClearFilter);
  29. filterItem.Text = "Filter entfernen";
  30. t.Items.Add(i =>
  31. {
  32. i.Text = "Exportieren nach";
  33. i.Image.IconID = IconID.ActionsDownload16x16office2013;
  34. i.BeginGroup = true;
  35. i.Items.Add(exportitem =>
  36. {
  37. exportitem.Name = "Pdf";
  38. exportitem.Text = "PDF";
  39. exportitem.Image.IconID = IconID.ExportExporttopdf16x16office2013;
  40. });
  41. i.Items.Add(exportitem =>
  42. {
  43. exportitem.Name = "Xlsx";
  44. exportitem.Text = "XLSX";
  45. exportitem.Image.IconID = IconID.ExportExporttoxlsx16x16office2013;
  46. });
  47. i.Items.Add(exportitem =>
  48. {
  49. exportitem.Name = "Xls";
  50. exportitem.Text = "XLS";
  51. exportitem.Image.IconID = IconID.ExportExporttoxls16x16office2013;
  52. });
  53. });
  54. });
  55. if (userContext.CurrentUser.HasFunction("Site-Sites-Edit"))
  56. {
  57. s.Columns.Add(column =>
  58. {
  59. column.Caption = "#";
  60. column.SetDataItemTemplateContent(c =>
  61. {
  62. ViewContext.Writer.Write(
  63. "<a href=\"#\" onclick=\"editSite(" + DataBinder.Eval(c.DataItem, "Id") + ")\">Bearbeiten</a>&nbsp;" +
  64. "<a href=\"#\" onclick=\"confirmDelete(" + DataBinder.Eval(c.DataItem, "Id") + ")\">Löschen</a>"
  65. );
  66. });
  67. column.SetHeaderTemplateContent(c =>
  68. {
  69. ViewContext.Writer.Write(
  70. "<a href=\"#\" onclick=\"editSite(-1)\">Neu</a>&nbsp;");
  71. });
  72. column.Settings.AllowDragDrop = DefaultBoolean.False;
  73. column.Settings.AllowSort = DefaultBoolean.False;
  74. column.Width = new Unit(150, UnitType.Pixel);
  75. });
  76. }
  77. s.Columns.Add(column =>
  78. {
  79. column.Caption = "Kostenstelle";
  80. column.FieldName = "CustomNumber";
  81. column.MinWidth = 100;
  82. column.Width = new Unit(10, UnitType.Percentage);
  83. });
  84. s.Columns.Add(column =>
  85. {
  86. column.Caption = "Bauvorhaben";
  87. column.FieldName = "Description";
  88. column.Width = new Unit(13, UnitType.Percentage);
  89. });
  90. s.Columns.Add(column =>
  91. {
  92. column.Caption = "Start";
  93. column.FieldName = "Start";
  94. column.PropertiesEdit.DisplayFormatString = "dd.MM.yyyy";
  95. column.MinWidth = 110;
  96. column.Width = new Unit(8, UnitType.Percentage);
  97. });
  98. s.Columns.Add(column =>
  99. {
  100. column.Caption = "Ende";
  101. column.FieldName = "End";
  102. column.PropertiesEdit.DisplayFormatString = "dd.MM.yyyy";
  103. column.MinWidth = 110;
  104. column.Width = new Unit(8, UnitType.Percentage);
  105. });
  106. s.Columns.Add(column =>
  107. {
  108. column.Caption = "VA";
  109. column.FieldName = "DeviationDescription";
  110. column.MinWidth = 150;
  111. column.Width = new Unit(12, UnitType.Percentage);
  112. });
  113. s.Columns.Add(column =>
  114. {
  115. column.Caption = "VA-Summe";
  116. column.FieldName = "DeviationValue";
  117. column.PropertiesEdit.DisplayFormatString = "c2";
  118. column.MinWidth = 120;
  119. column.Width = new Unit(10, UnitType.Percentage);
  120. });
  121. s.Columns.Add(column =>
  122. {
  123. column.Caption = "Nachträge";
  124. column.FieldName = "AppendixDescription";
  125. column.Width = new Unit(10, UnitType.Percentage);
  126. });
  127. s.Columns.Add(column =>
  128. {
  129. column.Caption = "Mitarbeiter";
  130. column.FieldName = "UserDescription";
  131. column.MinWidth = 150;
  132. column.Width = new Unit(20, UnitType.Percentage);
  133. });
  134. s.TotalSummary.Add(DevExpress.Data.SummaryItemType.Sum, "DeviationValue");
  135. s.GroupSummary.Add(DevExpress.Data.SummaryItemType.Sum, "DeviationValue");
  136. s.ClientLayout = (sender, e) =>
  137. {
  138. if (e.LayoutMode == ClientLayoutMode.Loading)
  139. {
  140. if (Session["SiteGridState"] != null)
  141. e.LayoutData = (string)Session["SiteGridState"];
  142. }
  143. else
  144. Session["SiteGridState"] = e.LayoutData;
  145. };
  146. s.ClientSideEvents.BeginCallback = "function (s, e) { e.customArgs['scrollHeight'] = [ gridScrollHeight ]; }";
  147. s.ClientSideEvents.ToolbarItemClick = "function (s, e) { onToolbarItemClick(s, e); }";
  148. s.Styles.AlternatingRow.BackColor = System.Drawing.Color.FromArgb(247, 247, 247);
  149. }).Bind(Model).GetHtml()*@