public override void Execute()
        {
            NormalListData  pageData  = (NormalListData)ViewBag.PageData;
            ObjectListModel listModel = (ObjectListModel)Model;

            WriteLiteral("\r\n");

            DefineSection("DefaultHeader", () => {
                WriteLiteral("\r\n");


                if (pageData.Header != null)
                {
                    Write(RenderRazorOutputData(pageData.Header, Model));
                }
                else
                {
                    WriteLiteral("        <h1>");

                    Write(ViewBag.Title);

                    WriteLiteral("</h1>\r\n");
                }
            });

            DefineSection("DefaultFooter", () => {
                WriteLiteral("\r\n");

                WriteLiteral("    ");

                Write(RenderRazorOutputData(pageData.Footer, Model));

                WriteLiteral("\r\n");
            });

            DefineSection("DefaultListButton", () => {
                WriteLiteral("\r\n");


                if (BootcssUtil.HasListButtons(listModel) || pageData.ShowExportExcel)
                {
                    WriteLiteral("        <div");

                    WriteLiteral(" class=\"panel panel-info\"");

                    WriteLiteral(">\r\n            <div");

                    WriteLiteral(" class=\"panel-body\"");

                    WriteLiteral(">\r\n");


                    if (BootcssUtil.HasListButtons(listModel))
                    {
                        Write(BootcssUtil.CreateListButtons(listModel));
                    }

                    WriteLiteral("                ");

                    if (pageData.ShowExportExcel)
                    {
                        Write(BootcssUtil.CreateExcelButton());
                    }

                    WriteLiteral("            </div>\r\n        </div>\r\n");
                }
            });

            WriteLiteral("<!DOCTYPE html>\r\n<html>\r\n<head>\r\n    <title>");

            Write(ViewBag.Title);

            WriteLiteral("</title>\r\n    <meta");

            WriteLiteral(" http-equiv=\"X-UA-Compatible\"");

            WriteLiteral(" content=\"IE=edge\"");

            WriteLiteral(" />\r\n    <meta");

            WriteLiteral(" http-equiv=\"Content-Type\"");

            WriteLiteral(" content=\"text/html; charset=utf-8\"");

            WriteLiteral(" />\r\n    <meta");

            WriteLiteral(" name=\"viewport\"");

            WriteLiteral(" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable" +
                         "=0;\"");

            WriteLiteral(" />\r\n");

            WriteLiteral("    ");

            Write(RenderLayoutPartial("../bin/css.cshtml", null));

            WriteLiteral("\r\n    <link");

            WriteLiteral(" rel=\"stylesheet\"");

            WriteLiteral(" type=\"text/css\"");

            WriteAttribute("href", Tuple.Create(" href=\"", 1533), Tuple.Create("\"", 1596)
                           , Tuple.Create(Tuple.Create("", 1540), Tuple.Create <System.Object, System.Int32>("toolkitcss/v5/commonM/datalist.css".AppVirutalPath()
                                                                                                             , 1540), false)
                           );

            WriteLiteral(" />\r\n");

            WriteLiteral("    ");

            Write(ViewBag.Script.CreateUserCss());

            WriteLiteral("\r\n</head>\r\n<body");

            WriteAttribute("id", Tuple.Create(" id=\"", 1653), Tuple.Create("\"", 1706)
                           , Tuple.Create(Tuple.Create("", 1658), Tuple.Create <System.Object, System.Int32>(HtmlUtil.GetDynamicPageId(listModel.CallerInfo)
                                                                                                             , 1658), false)
                           );

            WriteLiteral(" class=\"tk-dataPage\"");

            WriteLiteral(" data-webpath=\"");

            Write(HtmlUtil.AppVirtualPath);

            WriteLiteral("\"");

            WriteLiteral(" data-dialog-height=\"");

            Write(pageData.DialogHeight);

            WriteLiteral("\"");

            WriteLiteral(">\r\n    <div");

            WriteLiteral(" class=\"container-fluid\"");

            WriteLiteral(">\r\n");


            if (pageData.ShowTitle)
            {
                Write(RenderSectionOrDefault("Header", "DefaultHeader"));
            }



            WriteLiteral("        <div");

            WriteLiteral(" class=\"tk-datalist\"");

            WriteLiteral(">\r\n");


            if (pageData.OperatorPosition != OperatorPosition.None)
            {
                Write(RenderSectionOrDefault("ListButtons", "DefaultListButton"));
            }

            WriteLiteral("            <div");

            WriteLiteral(" id=\"listData\"");

            WriteLiteral(">\r\n");

            WriteLiteral("                ");

            Write(RenderSectionIfDefined("Main", "listmain.cshtml", Model));

            WriteLiteral("\r\n            </div>\r\n        </div>\r\n");

            WriteLiteral("        ");

            Write(RenderSectionOrDefault("Footer", "DefaultFooter"));

            WriteLiteral("\r\n    </div>\r\n");

            WriteLiteral("    ");

            Write(RenderLayoutPartial("../bin/js.cshtml", null));

            WriteLiteral("\r\n    <script");

            WriteLiteral(" type=\"text/javascript\"");

            WriteAttribute("src", Tuple.Create(" src=\"", 2542), Tuple.Create("\"", 2622)
                           , Tuple.Create(Tuple.Create("", 2548), Tuple.Create <System.Object, System.Int32>("toolkitjs/v5/toolkit/coreT/toolkit.normallist.js?v=1".AppVirutalPath()
                                                                                                             , 2548), false)
                           );

            WriteLiteral("> </script>\r\n");

            WriteLiteral("    ");

            Write(ViewBag.Script.CreateUserJavaScript());

            WriteLiteral("\r\n</body>\r\n</html>\r\n");
        }
Exemplo n.º 2
0
        public override void Execute()
        {
            DataSet   dataSet   = (DataSet)Model;
            DataRow   countRow  = dataSet.GetRow("Count");
            string    tableName = ViewBag.MetaData.Table.TableName;
            DataTable dataTable = dataSet.Tables[tableName];
            string    url       = dataSet.GetFieldValue <string>("URL", "DSelfURL");
            string    condition = dataSet.GetFieldValue <string>("Sort", "SqlCon");
            IEnumerable <IFieldInfoEx> fields   = ViewBag.MetaData.Table.TableList;
            NormalListData             pageData = (NormalListData)ViewBag.PageData;
            DataRow sortRow   = dataSet.GetRow("Sort");
            int     sortField = sortRow.GetValue <int>("SortField");

            WriteLiteral("\r\n");

            DefineSection("DefaultListHeader", () => {
                WriteLiteral("\r\n    <tr>\r\n");


                if (pageData.OperatorPosition == OperatorPosition.Left)
                {
                    WriteLiteral("            <th");

                    WriteLiteral(" class=\"text-center text-nowrap\"");

                    WriteLiteral(">\r\n                <div>");

                    Write(pageData.OperationCaption);

                    WriteLiteral("</div>\r\n            </th>\r\n");
                }

                WriteLiteral("        ");


                int index = 0;

                WriteLiteral("\r\n");


                foreach (IFieldInfoEx field in fields)
                {
                    WriteLiteral("            <th ");

                    Write(CreateHeadAttrs(field, index++, sortField, sortRow));

                    WriteLiteral(">\r\n                <div>");

                    Write(field.DisplayName);

                    WriteLiteral("</div>\r\n            </th>\r\n");
                }

                WriteLiteral("        ");

                if (pageData.OperatorPosition == OperatorPosition.Right)
                {
                    WriteLiteral("            <th");

                    WriteLiteral(" class=\"text-center text-nowrap\"");

                    WriteLiteral(">\r\n                <div>");

                    Write(pageData.OperationCaption);

                    WriteLiteral("</div>\r\n            </th>\r\n");
                }

                WriteLiteral("    </tr>\r\n");
            });

            DefineSection("DefaultListWidth", () => {
                WriteLiteral("\r\n");


                if (pageData.OperatorPosition == OperatorPosition.Left)
                {
                    WriteLiteral("        <col ");

                    Write(OperatorWidth(pageData.OperatorWidth));

                    WriteLiteral(" />\r\n");
                }

                WriteLiteral("    ");


                int index = 0;

                WriteLiteral("\r\n");


                foreach (IFieldInfoEx field in fields)
                {
                    WriteLiteral("        <col ");

                    Write(CreateColAttrs(field, index++, sortField));

                    WriteLiteral(" />\r\n");
                }

                WriteLiteral("    ");

                if (pageData.OperatorPosition == OperatorPosition.Right)
                {
                    WriteLiteral("        <col ");

                    Write(OperatorWidth(pageData.OperatorWidth));

                    WriteLiteral(" />\r\n");
                }
            });

            DefineSection("DefaultTabSheet", () => {
                WriteLiteral("\r\n");


                if (BootcssUtil.HasTabSheet(dataSet))
                {
                    WriteLiteral("        <ul");

                    WriteAttribute("class", Tuple.Create(" class=\"", 3750), Tuple.Create("\"", 3835)
                                   , Tuple.Create(Tuple.Create("", 3758), Tuple.Create <System.Object, System.Int32>(HtmlUtil.MergeClass("nav", BootcssUtil.GetTabClass(pageData.TabDisplayType))
                                                                                                                     , 3758), false)
                                   );

                    WriteLiteral(" role=\"tablist\"");

                    WriteLiteral(">\r\n");

                    WriteLiteral("            ");

                    Write(BootcssUtil.CreateTabSheets(dataSet));

                    WriteLiteral("\r\n        </ul>\r\n");
                }
            });

            Write(RenderSectionOrDefault("TabSheet", "DefaultTabSheet"));

            WriteLiteral("\r\n<table");

            WriteAttribute("class", Tuple.Create(" class=\"", 3992), Tuple.Create("\"", 4078)
                           , Tuple.Create(Tuple.Create("", 4000), Tuple.Create <System.Object, System.Int32>(HtmlUtil.MergeClass("list-table table", pageData.Display.TableDisplayClass())
                                                                                                             , 4000), false)
                           );

            WriteLiteral(">\r\n    <colgroup>\r\n");

            WriteLiteral("        ");

            Write(RenderSectionOrDefault("ListWidth", "DefaultListWidth"));

            WriteLiteral("\r\n    </colgroup>\r\n");


            if (pageData.ShowListHeader)
            {
                WriteLiteral("        <thead>\r\n");

                WriteLiteral("            ");

                Write(RenderSectionOrDefault("ListHeader", "DefaultListHeader"));

                WriteLiteral("\r\n        </thead>\r\n");
            }

            WriteLiteral("    <tbody");

            WriteLiteral(" id=\"pageList\"");

            WriteLiteral(" data-totalcount=\"");

            Write(countRow.GetString("TotalCount"));

            WriteLiteral("\"");

            WriteLiteral(" data-totalpage=\"");

            Write(countRow.GetString("TotalPage"));

            WriteLiteral("\"");

            WriteLiteral(" data-sort=\"");

            Write(sortField);

            WriteLiteral("\"");

            WriteLiteral(" data-order=\"");

            Write(sortRow.GetString("Order"));

            WriteLiteral("\"");

            WriteLiteral(" data-page=\"");

            Write(countRow.GetString("CurrentPage"));

            WriteLiteral("\"");

            WriteLiteral(" data-url=\"");

            Write(url);

            WriteLiteral("\"");

            WriteLiteral(" data-condition=\"");

            Write(condition);

            WriteLiteral("\"");

            WriteLiteral(" data-tab=\"");

            Write(HtmlUtil.GetSelectedTab(dataSet));

            WriteLiteral("\"");

            WriteLiteral(" data-source=\"");

            Write(dataSet.GetFieldValue <string>("Info", "Source"));

            WriteLiteral("\"");

            WriteLiteral(">\r\n");


            if (dataTable != null)
            {
                foreach (DataRow row in dataTable.Rows)
                {
                    string rowString = @RenderRow(row);


                    if (rowString != null)
                    {
                        Write(rowString);
                    }
                    else
                    {
                        WriteLiteral("                    <tr>\r\n");


                        if (pageData.OperatorPosition == OperatorPosition.Left)
                        {
                            WriteLiteral("                            <td");

                            WriteLiteral(" class=\"text-nowrap text-center\"");

                            WriteLiteral(">");

                            Write(BootcssUtil.CreateRowOperators(dataSet, row));

                            WriteLiteral("</td>\r\n");
                        }
                        WriteLiteral("\r\n");


                        foreach (IFieldInfoEx field in fields)
                        {
                            Tk5FieldInfoEx fieldInfo   = field.Convert <Tk5FieldInfoEx>();
                            string         fieldString = @RenderFieldItem(row, fieldInfo);


                            if (fieldString == null)
                            {
                                WriteLiteral("                                <td>");

                                Write(fieldInfo.DisplayValue(row));

                                WriteLiteral("</td>\r\n");
                            }
                            else
                            {
                                Write(fieldString);
                            }
                        }
                        WriteLiteral("\r\n");


                        if (pageData.OperatorPosition == OperatorPosition.Right)
                        {
                            WriteLiteral("                            <td");

                            WriteLiteral(" class=\"text-nowrap text-center\"");

                            WriteLiteral(">");

                            Write(BootcssUtil.CreateRowOperators(dataSet, row));

                            WriteLiteral("</td>\r\n");
                        }
                        WriteLiteral("\r\n                    </tr>\r\n");
                    }
                }
            }

            WriteLiteral("    </tbody>\r\n</table>\r\n");

            if (countRow.GetValue <int>("TotalCount") == 0)
            {
                WriteLiteral("    <div");

                WriteLiteral(" class=\"p30\"");

                WriteLiteral(">");

                Write(pageData.NoDataCaption);

                WriteLiteral("</div>\r\n");
            }
            else
            {
                if (@pageData.ShowPage)
                {
                    Write(RenderLayoutPartial("pagenumber.cshtml", Model));
                }
            }
        }
Exemplo n.º 3
0
        public override void Execute()
        {
            IEnumerable <IFieldInfoEx> fields = ViewBag.MetaData.Table.TableList;
            var queryFields = (from field in fields
                               let tk5Field = (Tk5FieldInfoEx)field
                                              where tk5Field.ListDetail != null && tk5Field.ListDetail.Search
                                              select tk5Field).ToArray();
            DataSet        dataSet  = (DataSet)Model;
            DataRow        queryRow = dataSet.GetRow("_QueryData");
            string         json     = ViewBag.MetaData.Table.JsonFields;
            NormalListData pageData = (NormalListData)ViewBag.PageData;

            WriteLiteral("\r\n");

            if (queryFields.Length > 0)
            {
                WriteLiteral("    <nav");

                WriteLiteral(" class=\"navbar navbar-default\"");

                WriteLiteral(" role=\"navigation\"");

                WriteLiteral(">\r\n        <div");

                WriteLiteral(" class=\"container-fluid\"");

                WriteLiteral(">\r\n            <form");

                WriteLiteral(" class=\"navbar-form navbar-left tk-datasearch\"");

                WriteLiteral(" role=\"search\"");

                WriteLiteral(" id=\"QueryForm\"");

                WriteLiteral(" data-check=\"false\"");

                WriteLiteral(" data-post=\"");

                Write(StringUtil.EscapeHtmlAttribute(json));

                WriteLiteral("\"");

                WriteLiteral(">\r\n");


                foreach (Tk5FieldInfoEx field in queryFields)
                {
                    WriteLiteral("                    <div");

                    WriteLiteral(" class=\"form-group\"");

                    WriteLiteral(">\r\n                        <label");

                    WriteAttribute("for", Tuple.Create(" for=\"", 1216), Tuple.Create("\"", 1237)
                                   , Tuple.Create(Tuple.Create("", 1222), Tuple.Create <System.Object, System.Int32>(field.NickName
                                                                                                                     , 1222), false)
                                   );

                    WriteLiteral(">");

                    Write(field.DisplayName);

                    WriteLiteral("</label>\r\n                        <span");

                    WriteLiteral(" class=\"tk-control\"");

                    WriteLiteral(">\r\n");

                    WriteLiteral("                            ");

                    Write(field.SearchControl(queryRow, dataSet));

                    WriteLiteral("\r\n                        </span>\r\n");


                    if (field.ListDetail.Span)
                    {
                        WriteLiteral("                            <label>至</label>\r\n");

                        WriteLiteral("                            <span");

                        WriteLiteral(" class=\"tk-control\"");

                        WriteLiteral(">\r\n");

                        WriteLiteral("                                ");

                        Write(field.SearchControlEnd(queryRow, dataSet));

                        WriteLiteral("\r\n                            </span>\r\n");
                    }

                    WriteLiteral("                    </div>\r\n");
                }

                WriteLiteral("                ");

                Write(BootcssUtil.ShowSearchCheckBox(pageData.SearchCheckBox));

                WriteLiteral("\r\n                <button");

                WriteLiteral(" type=\"button\"");

                WriteLiteral(" class=\"btn btn-default btn-search\"");

                WriteLiteral(">查询</button>\r\n            </form>\r\n        </div>\r\n    </nav>\r\n");
            }
        }
Exemplo n.º 4
0
        public override void Execute()
        {
            NormalEditData pageData  = ViewBag.PageData;
            HtmlAttribute  attribute = pageData.DialogMode ? new HtmlAttribute("data-dialog-action", "close")
        : new HtmlAttribute("data-url", HtmlUtil.GetDynamicRetUrl(Model.CallerInfo));
            HtmlAttribute retAttr     = new HtmlAttribute("data-action", "return");
            bool          showCaption = pageData.ShowCaption;
            string        dataClass   = showCaption ? string.Empty : "class=\"nocaption\"";

            WriteLiteral("\r\n");

            DefineSection("DefaultButtons", () => {
                WriteLiteral("\r\n    <div");

                WriteLiteral(" class=\"text-center\"");

                WriteLiteral(">\r\n");

                WriteLiteral("        ");

                Write(BootcssUtil.Button(pageData.SaveButtonCaption, "btn-submit", BootcssButton.Primary, false));

                WriteLiteral("\r\n");

                WriteLiteral("        ");

                Write(BootcssUtil.Button(pageData.CancelCaption, "m10", BootcssButton.Default, false, attribute, retAttr));

                WriteLiteral("\r\n    </div>\r\n");
            });


            EditObjectModel       model        = Model as EditObjectModel;
            ObjectContainer       mainObject   = model.Object;// HtmlUtil.GetMainObject(Model, ViewBag);
            Tk5NormalTableData    table        = ViewBag.MetaData.Table;
            List <Tk5FieldInfoEx> hiddenFields = table.HiddenList;
            List <Tk5FieldInfoEx> normalFields = table.TableList;

            WriteLiteral("\r\n<form");

            WriteAttribute("action", Tuple.Create(" action=\"", 1510), Tuple.Create("\"", 1547)
                           , Tuple.Create(Tuple.Create("", 1519), Tuple.Create <System.Object, System.Int32>(ViewBag.PageData.FormAction
                                                                                                             , 1519), false)
                           );

            WriteLiteral(" method=\"POST\"");

            WriteLiteral(" id=\"PostForm\"");

            WriteLiteral(" class=\"tk-dataform form-horizontal p5 mb15\"");

            WriteLiteral(" role=\"form\"");

            WriteLiteral(" data-check=\"true\"");

            WriteLiteral(" data-post=\"");

            Write(GetJson(table));

            WriteLiteral("\"");

            WriteLiteral(">\r\n    <div");

            WriteAttribute("id", Tuple.Create(" id=\"", 1689), Tuple.Create("\"", 1710)
                           , Tuple.Create(Tuple.Create("", 1694), Tuple.Create <System.Object, System.Int32>(table.TableName
                                                                                                             , 1694), false)
                           );

            WriteAttribute("class", Tuple.Create(" class=\"", 1711), Tuple.Create("\"", 1806)
                           , Tuple.Create(Tuple.Create("", 1719), Tuple.Create <System.Object, System.Int32>(HtmlUtil.MergeClass("tk-datatable table-row", "column" + table.ColumnCount.ToString())
                                                                                                             , 1719), false)
                           );

            WriteLiteral(">\r\n        <div");

            WriteLiteral(" class=\"hide\"");

            WriteLiteral(">\r\n");


            foreach (Tk5FieldInfoEx field in hiddenFields)
            {
                Write(RenderHidden(mainObject, field, true));
            }

            WriteLiteral("        </div>\r\n        <div");

            WriteLiteral(" class=\"p10 w100p\"");

            WriteLiteral(">\r\n");


            foreach (Tk5FieldInfoEx field in normalFields)
            {
                string fieldString = RenderFieldItem(mainObject, field);


                if (fieldString != null)
                {
                    Write(fieldString);
                }
                else
                {
                    WriteLiteral("                <div");

                    WriteAttribute("class", Tuple.Create(" class=\"", 2399), Tuple.Create("\"", 2472)
                                   , Tuple.Create(Tuple.Create("", 2407), Tuple.Create <System.Object, System.Int32>(HtmlUtil.MergeClass("tk-column form-group", field.LayoutClass())
                                                                                                                     , 2407), false)
                                   );

                    WriteLiteral(">\r\n                    <dl ");

                    Write(dataClass);

                    WriteLiteral(">\r\n");


                    if (showCaption)
                    {
                        WriteLiteral("                            <dt>");

                        Write(field.DisplayName);

                        WriteLiteral("</dt>\r\n");
                    }

                    WriteLiteral("                        <dd>\r\n                            <span");

                    WriteLiteral(" class=\"tk-control\"");

                    WriteLiteral(">\r\n");

                    WriteLiteral("                                ");

                    Write(field.Control(mainObject, model.CodeTables, true));

                    WriteLiteral("\r\n                            </span>\r\n                        </dd>\r\n           " +
                                 "         </dl>\r\n                </div>\r\n");
                }
            }

            WriteLiteral("        </div>\r\n    </div>\r\n</form>\r\n");

            Write(RenderSectionOrDefault("ModuleButtons", "DefaultButtons"));

            WriteLiteral("\r\n");
        }