Ejemplo n.º 1
0
        public static string CreateDeleteMethod()
        {
            var deleteModel = PageCache.GetCmd("删除");

            if (deleteModel != null)
            {
                StringBuilder deleteContent = new StringBuilder();
                deleteContent.AppendFormat(@"string deleteSql = string.Format(""delete from {0} ", PageCache.TableName);
                deleteContent.AppendFormat(" where {0} in ({{0}})\", idStr);", PageCache.KeyId);

                string template = @"
        public bool Delete{0}(List<string> list)
        {{
            var array = (from f in list
                        select ""'"" + f + ""'"").ToArray();
            string idStr = string.Join("","", array);
			{1}
            using (IDbConnection sqlcn = ConnectionFactory.{2})
            {{
                return sqlcn.Execute(deleteSql) > 0;
            }}
        }}
";
                return(string.Format(template,
                                     PageCache.TableName,
                                     deleteContent.ToString(),
                                     PageCache.DatabaseName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 2
0
        private static string CreateDeleteData()
        {
            StringBuilder batContent  = new StringBuilder();
            var           deleteModel = PageCache.GetCmd("删除");

            if (deleteModel != null)
            {
                batContent.Append("            ids = HttpUtility.UrlDecode(ids);\r\n");
                batContent.Append("            List<string> idList = ids.Split(new char[]{','}, StringSplitOptions.RemoveEmptyEntries).ToList();\r\n");

                string template = @"
        [HttpPost]
        public ActionResult delete(string ids)
        {{
{0}
            {1} dal = new {1}();
            dal.Delete{2}(idList);

            return new ContentResult() {{ Content = ""0"" }};
        }}
";

                return(string.Format(template,
                                     batContent.ToString(),
                                     PageCache.TableName_DAL,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 3
0
        private static string CreateDataGrid()
        {
            // singleselect=""true""
            var showModel = PageCache.GetCmd("主显示");

            if (showModel != null)
            {
                string template = @"
    <table id=""dg"" class=""easyui-datagrid"" style=""width: 1200px; height: auto"" url="""" pagination=""true"" 
         title=""{0}"" fitcolumns=""true"">
        <thead>
            <tr>
{1}
            </tr>
        </thead>
    </table>";

                StringBuilder tbodyContent = new StringBuilder();
                tbodyContent.AppendFormat("\t\t\t\t<th data-options=\"field:'{0}',checkbox:true\"></th>\r\n", PageCache.KeyId); //  style=\"display: none;\"

                foreach (var item in showModel.AttrList)
                {
                    string attribute = item.AttrName;
                    tbodyContent.AppendFormat("\t\t\t\t<th data-options=\"field:'{0}',width:120,align:'center'\">{1}</th>\r\n", attribute, item.TitleName);
                }

                return(string.Format(template, PageCache.TiTle, tbodyContent.ToString()));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 4
0
        private static string CreateDeleteData()
        {
            StringBuilder batContent  = new StringBuilder();
            var           deleteModel = PageCache.GetCmd("删除");

            if (deleteModel != null)
            {
                batContent.AppendFormat("            string ids = HttpUtility.UrlDecode(Request[\"ids\"]);\r\n", PageCache.KeyId, PageCache.KeyId);
                batContent.Append("            List<string> idList = ids.Split(new char[]{','}, StringSplitOptions.RemoveEmptyEntries).ToList();\r\n");

                string template = @"
        private void DeleteData()
        {{
{0}
            {1} dal = new {1}();
            dal.Delete{2}(idList);

            Response.Write(""0"");
        }}
";

                return(string.Format(template,
                                     batContent.ToString(),
                                     PageCache.TableName_DAL,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
        private static string CreateAddData()
        {
            StringBuilder addContent  = new StringBuilder();
            StringBuilder createModel = new StringBuilder();
            var           addModel    = PageCache.GetCmd("添加");

            if (addModel != null)
            {
                foreach (var item in addModel.AttrList)
                {
                    string attribute      = item.AttrName;
                    string eval_attribute = item.ColName;
                    if (item.DbType.ToLower() == "datetime" ||
                        item.DbType.ToLower() == "date" ||
                        item.DbType.ToLower() == "int" ||
                        item.DbType.ToLower() == "tinyint")
                    {
                        addContent.AppendFormat("\t\t\tstring {0}Str = HttpUtility.UrlDecode(Request[\"txtAdd{0}\"]);\r\n", attribute);
                        if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            addContent.AppendFormat("\t\t\tDateTime {0} = DateTime.MinValue;\r\n", attribute);
                            addContent.AppendFormat("\t\t\tDateTime.TryParse({0}Str, out {0});\r\n", attribute);
                        }
                        else
                        {
                            addContent.AppendFormat("\t\t\tint {0} = 0;;\r\n", attribute);
                            addContent.AppendFormat("\t\t\tint.TryParse({0}Str, out {0});\r\n", attribute);
                        }

                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType(attribute, item.DbType));
                    }
                    else
                    {
                        addContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(Request[\"txtAdd{1}\"]);\r\n", attribute, attribute);
                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType(attribute, item.DbType));
                    }
                }

                string template = @"
        private void AddData()
        {{
{0}
            {1} model = new {1}();
{2}
            {3} dal = new {3}();
            dal.Add{4}(model);

            Response.Write(""0"");
        }}
";

                return(string.Format(template, addContent.ToString(), PageCache.TableName_Model, createModel.ToString(), PageCache.TableName_DAL, PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
        public static string CreateBatEditMethod()
        {
            var batEditModel = PageCache.GetCmd("批量编辑");

            if (batEditModel != null)
            {
                StringBuilder updateContent = new StringBuilder(@"string updateSql = string.Format(""update ");
                updateContent.AppendFormat(" {0} set ", PageCache.TableName);
                StringBuilder updateParamsContent = new StringBuilder("List<SqlParameter> listParams = new List<SqlParameter>();\r\n");

                int index = 0;
                foreach (var item in batEditModel.AttrList)
                {
                    string attribute = item.ColName;
                    if (index == 0)
                    {
                        updateContent.AppendFormat("{0}=@{0}", attribute);
                    }
                    else
                    {
                        updateContent.AppendFormat(",{0}=@{0}", attribute);
                    }

                    updateParamsContent.AppendFormat("\t\t\tlistParams.Add(new SqlParameter(\"@{0}\", {1}) {{ Value = model.{0} }});\r\n", attribute, item.DbType.ToMsSqlDbType());
                    index++;
                }

                updateContent.Append(" where ");
                updateContent.AppendFormat(" {0} in ({{0}})\", idStr);", PageCache.KeyId);
                updateParamsContent.AppendFormat("\t\t\tlistParams.Add(new SqlParameter(\"@{0}\", {1}) {{ Value = model.{2} }});\r\n", PageCache.KeyId, PageCache.KeyId_DbType.ToMsSqlDbType(), PageCache.KeyId);

                string template = @"
        public bool BatUpdate{4}(List<string> list, {0} model)
        {{
            var array = (from f in list
                        select ""'"" + f + ""'"").ToArray();
            string idStr = string.Join("","", array);
			{1}
            {2}
            using (SqlConnection sqlcn = ConnectionFactory.{3})
            {{
                return SqlHelper.ExecuteNonQuery(sqlcn, CommandType.Text, updateSql, listParams.ToArray()) > 0;
            }}
        }}
";
                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     updateContent.ToString(),
                                     updateParamsContent.ToString(),
                                     PageCache.DatabaseName,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
        public static string CreateAddMethod()
        {
            var addModel = PageCache.GetCmd("添加");

            if (addModel != null)
            {
                StringBuilder addContent       = new StringBuilder();
                StringBuilder valueContent     = new StringBuilder(") values (");
                StringBuilder addparamsContent = new StringBuilder("List<SqlParameter> listParams = new List<SqlParameter>();\r\n");
                addContent.AppendFormat("string insertSql = \"insert into {0}(", PageCache.TableName);
                int index = 0;
                foreach (var item in addModel.AttrList)
                {
                    string attribute = item.ColName;
                    if (index == 0)
                    {
                        addContent.Append(attribute);
                        valueContent.Append("@" + attribute);
                    }
                    else
                    {
                        addContent.Append(" ," + attribute);
                        valueContent.Append(" ,@" + attribute);
                    }

                    addparamsContent.AppendFormat("\t\t\tlistParams.Add(new SqlParameter(\"@{0}\", {1}) {{ Value = model.{0} }});\r\n", attribute, item.DbType.ToMsSqlDbType());

                    index++;
                }

                addContent.Append(valueContent.ToString() + ")\";");
                string template = @"
        public bool Add{4}({0} model)
        {{
			{1}
            {2}
            using (SqlConnection sqlcn = ConnectionFactory.{3})
            {{
                return SqlHelper.ExecuteNonQuery(sqlcn, CommandType.Text, insertSql, listParams.ToArray()) > 0;
            }}
        }}
";

                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     addContent.ToString(),
                                     addparamsContent.ToString(),
                                     PageCache.DatabaseName,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 8
0
        public static string CreateEditMethod()
        {
            var editModel = PageCache.GetCmd("编辑");

            if (editModel != null)
            {
                StringBuilder updateContent = new StringBuilder("string updateSql = \"update ");
                updateContent.AppendFormat(" {0} set ", PageCache.TableName);
                StringBuilder updateParamsContent = new StringBuilder("List<MySqlParameter> listParams = new List<MySqlParameter>();\r\n");

                int index = 0;
                foreach (var item in editModel.AttrList)
                {
                    string attribute = item.ColName;
                    if (index == 0)
                    {
                        updateContent.AppendFormat("{0}=@{0}", attribute);
                    }
                    else
                    {
                        updateContent.AppendFormat(",{0}=@{0}", attribute);
                    }

                    updateParamsContent.AppendFormat("\t\t\tlistParams.Add(new MySqlParameter(\"@{0}\", {1}) {{ Value = model.{0} }});\r\n", attribute, item.DbType.ToMySqlDbType());
                    index++;
                }

                updateContent.Append(" where ");
                updateContent.AppendFormat(" {0}=@{0} \";", PageCache.KeyId);
                updateParamsContent.AppendFormat("\t\t\tlistParams.Add(new MySqlParameter(\"@{0}\", {1}) {{ Value = model.{2} }});\r\n", PageCache.KeyId, PageCache.KeyId_DbType.ToMySqlDbType(), PageCache.KeyId);

                string template = @"
        public bool Update{4}({0} model)
        {{
			{1}
            {2}
            using (MySqlConnection sqlcn = ConnectionFactory.{3})
            {{
                return MySqlHelper2.ExecuteNonQuery(sqlcn, CommandType.Text, updateSql, listParams.ToArray()) > 0;
            }}
        }}
";
                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     updateContent.ToString(),
                                     updateParamsContent.ToString(),
                                     PageCache.DatabaseName,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 9
0
        public static string CreateBatEditMethod()
        {
            var batEditModel = PageCache.GetCmd("批量编辑");

            if (batEditModel != null)
            {
                StringBuilder updateContent = new StringBuilder(@"string updateSql = string.Format(""update ");
                updateContent.AppendFormat(" {0} set ", PageCache.TableName);

                int index = 0;
                foreach (var item in batEditModel.AttrList)
                {
                    string attribute = item.ColName;
                    if (index == 0)
                    {
                        updateContent.AppendFormat("{0}=@{0}", attribute);
                    }
                    else
                    {
                        updateContent.AppendFormat(",{0}=@{0}", attribute);
                    }

                    index++;
                }

                updateContent.Append(" where ");
                updateContent.AppendFormat(" {0} in ({{0}})\", idStr);", PageCache.KeyId);

                string template = @"
        public bool BatUpdate{3}(List<string> list, {0} model)
        {{
            var array = (from f in list
                        select ""'"" + f + ""'"").ToArray();
            string idStr = string.Join("","", array);
			{1}
            using (IDbConnection sqlcn = ConnectionFactory.{2})
            {{
                return  sqlcn.Execute(updateSql, model) > 0;
            }}
        }}
";
                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     updateContent.ToString(),
                                     PageCache.DatabaseName,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 10
0
        public static string CreateAddMethod()
        {
            var addModel = PageCache.GetCmd("添加");

            if (addModel != null)
            {
                StringBuilder addContent   = new StringBuilder();
                StringBuilder valueContent = new StringBuilder(") values (");
                addContent.AppendFormat("string insertSql = \"insert into {0}(", PageCache.TableName);
                int index = 0;
                foreach (var item in addModel.AttrList)
                {
                    string attribute = item.ColName;
                    if (index == 0)
                    {
                        addContent.Append(attribute);
                        valueContent.Append("@" + attribute);
                    }
                    else
                    {
                        addContent.Append(" ," + attribute);
                        valueContent.Append(" ,@" + attribute);
                    }

                    index++;
                }

                addContent.Append(valueContent.ToString() + ")\";");
                string template = @"
        public bool Add{3}({0} model)
        {{
			{1}
            using (IDbConnection sqlcn = ConnectionFactory.{2})
            {{
                return sqlcn.Execute(insertSql, model) > 0;
            }}
        }}
";

                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     addContent.ToString(),
                                     PageCache.DatabaseName,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 11
0
        public static string CreateEditMethod()
        {
            var editModel = PageCache.GetCmd("编辑");

            if (editModel != null)
            {
                StringBuilder updateContent = new StringBuilder("string updateSql = \"update ");
                updateContent.AppendFormat(" {0} set ", PageCache.TableName);
                int index = 0;
                foreach (var item in editModel.AttrList)
                {
                    string attribute = item.ColName;
                    if (index == 0)
                    {
                        updateContent.AppendFormat("{0}=@{0}", attribute);
                    }
                    else
                    {
                        updateContent.AppendFormat(",{0}=@{0}", attribute);
                    }

                    index++;
                }

                updateContent.Append(" where ");
                updateContent.AppendFormat(" {0}=@{0} \";", PageCache.KeyId);

                string template = @"
        public bool Update{3}({0} model)
        {{
			{1}
            using (IDbConnection sqlcn = ConnectionFactory.{2})
            {{
                return sqlcn.Execute(updateSql, model) > 0;
            }}
        }}
";
                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     updateContent.ToString(),
                                     PageCache.DatabaseName,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 12
0
        private static string CreateCmdToolBar()
        {
            StringBuilder toolBarContent = new StringBuilder(@"
<div id=""toolbar"">
");

            if (PageCache.GetCmd("添加") != null)
            {
                toolBarContent.Append(@"<a href=""javascript:void(0)"" class=""easyui-linkbutton"" iconcls=""icon-add"" plain=""true"" onclick=""newModel()"">新增</a>");
            }

            if (PageCache.GetCmd("编辑") != null)
            {
                toolBarContent.Append(@"<a href=""javascript:void(0)"" class=""easyui-linkbutton"" iconcls=""icon-edit"" plain=""true"" onclick=""editModel()"">编辑</a>");
            }

            if (PageCache.GetCmd("批量编辑") != null)
            {
                toolBarContent.Append(@"<a href=""javascript:void(0)"" class=""easyui-linkbutton"" iconcls=""icon-edit"" plain=""true"" onclick=""batEditModel()"">批量编辑</a>");
            }

            if (PageCache.GetCmd("删除") != null)
            {
                toolBarContent.Append(@"<a href=""javascript:void(0)"" class=""easyui-linkbutton"" iconcls=""icon-remove"" plain=""true"" onclick=""destroyModel()"">删除</a>");
            }

            if (PageCache.GetCmd("批量删除") != null)
            {
                toolBarContent.Append(@"<a href=""javascript:void(0)"" class=""easyui-linkbutton"" iconcls=""icon-remove"" plain=""true"" onclick=""destroyBatModel()"">删除</a>");
            }

            if (PageCache.GetCmd("导出全部") != null)
            {
                toolBarContent.Append(@"<a href=""javascript:void(0)"" class=""easyui-linkbutton"" iconcls=""icon-remove"" plain=""true"" onclick=""exportAll()"">导出全部</a>");
            }

            if (PageCache.GetCmd("导出选中") != null)
            {
                toolBarContent.Append(@"<a href=""javascript:void(0)"" class=""easyui-linkbutton"" iconcls=""icon-remove"" plain=""true"" onclick=""selectExport()"">导出选中</a>");
            }

            toolBarContent.Append(@"
</div>");

            return(toolBarContent.ToString());
        }
Ejemplo n.º 13
0
        private static string CreateSearchContent()
        {
            string        template      = @"
    <div class=""demo-info"" style=""margin-bottom: 10px"">
        <div class=""demo-tip icon-tip"">
            &nbsp;</div>
        <div>{0}</div>
    </div>
";
            StringBuilder searchContent = new StringBuilder();
            var           cmdInfo       = PageCache.GetCmd("主显示");

            if (cmdInfo != null)
            {
                foreach (var attr in cmdInfo.AttrList)
                {
                    searchContent.AppendFormat("&nbsp;&nbsp;<label for=\"txtSearch{0}\">{1}:</label><input type=\"text\" id=\"txtSearch{0}\" />", attr.AttrName, attr.TitleName);
                }

                searchContent.Append("&nbsp;&nbsp;<input type=\"button\" id=\"btnsearch\" value=\"查询\" />");
            }

            return(string.Format(template, searchContent.ToString()));
        }
Ejemplo n.º 14
0
        private static string CreateLoadData()
        {
            string        template         = @"
        private void LoadData()
        {{
            int page = Convert.ToInt32(Request.Form[""page""]);
            int pageSize = Convert.ToInt32(Request.Form[""pageSize""]);
{0}
            {1} dal = new {1}();
            var list = dal.QueryList({2}page, pageSize);
{4}
            int itemCount = dal.QueryListCount({3});
            int pageCount = (int)Math.Ceiling((double)itemCount / (double)pageSize);
			JavaScriptSerializer js = new JavaScriptSerializer();
            var str = js.Serialize(new {{ PageCount = pageCount, ItemCount = itemCount, Data = list }});
            Response.Write(str);
        }}
";
            StringBuilder searchContent    = new StringBuilder();
            StringBuilder searchStrContent = new StringBuilder();
            var           showModel        = PageCache.GetCmd("主显示");

            if (showModel != null)
            {
                foreach (var item in showModel.AttrList)
                {
                    string attribute = item.AttrName;
                    if (item.DbType.ToLower() == "datetime" ||
                        item.DbType.ToLower() == "date" ||
                        item.DbType.ToLower() == "int" ||
                        item.DbType.ToLower() == "bigint" ||
                        item.DbType.ToLower() == "tinyint")
                    {
                        searchContent.AppendFormat("\t\t\tstring {0}Str = HttpUtility.UrlDecode(Request[\"txtSearch{0}\"]);\r\n", attribute);
                        if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            searchContent.AppendFormat("\t\t\tDateTime {0} = DateTime.MinValue;\r\n", attribute);
                            searchContent.AppendFormat("\t\t\tDateTime.TryParse({0}Str, out {0});\r\n", attribute);
                        }
                        else
                        {
                            searchContent.AppendFormat("\t\t\tint {0} = 0;\r\n", attribute);
                            searchContent.AppendFormat("\t\t\tif(!int.TryParse({0}Str, out {0}))\r\n", attribute);
                            searchContent.Append("\t\t\t{\r\n");
                            searchContent.AppendFormat("\t\t\t\t{0} = -1;\r\n", attribute);
                            searchContent.Append("\t\t\t}\r\n");
                        }
                    }
                    else
                    {
                        searchContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(Request[\"txtSearch{0}\"]);\r\n", attribute);
                    }

                    searchStrContent.AppendFormat(" {0},", attribute);
                }

                StringBuilder encodeContent = new StringBuilder();
                foreach (var item in showModel.AttrList)
                {
                    if (item.Style.FieldName == "Html编码")
                    {
                        string attribute = item.ColName;
                        encodeContent.AppendLine(string.Format("\t\t\tlist.ForEach(p => p.{0} = HttpUtility.HtmlEncode(p.{0}));", attribute));
                    }
                }

                // 移除最后的逗号
                string searchStrCount = searchStrContent.Length > 0 ? searchStrContent.ToString().Substring(0, searchStrContent.Length - 1) : searchStrContent.ToString();
                return(string.Format(template,
                                     searchContent.ToString(),
                                     PageCache.TableName_DAL,
                                     searchStrContent.ToString(),
                                     searchStrCount,
                                     encodeContent.ToString()));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 15
0
        private static string CreateJsLoad()
        {
            StringBuilder content  = new StringBuilder();
            string        template = @"
    <script type=""text/javascript"">
        $(function () {
            var pager = $('#dg').datagrid('getPager');
            $('#dg').datagrid('getPager').pagination({
                pageSize: 10, //每页显示的记录条数,默认为10    
                pageList: [10, 15, 20, 25], //可以设置每页记录条数的列表 
                onSelectPage: function (pageNumber, pageSize) {
                    var opts = $('#dg').datagrid('options');
                    opts.pageNumber = pageNumber;
                    opts.pageSize = pageSize;
                    pager.pagination('refresh', {
                        pageNumber: pageNumber,
                        pageSize: pageSize
                    });

                    LoadData(pageNumber, pageSize); //每次更换页面时触发更改   
                },
                onBeforeRefresh: function (pageNumber, pageSize) {
                    // 好像已经被执行过了,这里就不需要了
                    LoadData(pageNumber, pageSize); //每次更换页面时触发更改  
                },
                displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录'
            });
        });

        function LoadData(page_Number, page_Size) {
            if (page_Number == undefined && page_Size == undefined) {
                page_Number = $('#dg').datagrid('getPager').data(""pagination"").options.pageNumber;   //pageNumber为datagrid的当前页码
                page_Size = $('#dg').datagrid('getPager').data(""pagination"").options.pageSize;       //pageSize为datagrid的每页记录条数
            } else {
                $('#dg').datagrid('options').pageNumber = page_Number;   //pageNumber为datagrid的当前页码
                $('#dg').datagrid('options').pageSize = page_Size;       //pageSize为datagrid的每页记录条数
            }
";

            content.Append(template);

            int           index           = 0;
            StringBuilder coditionContent = new StringBuilder();
            StringBuilder pagePost        = new StringBuilder();
            var           showModel       = PageCache.GetCmd("主显示");

            if (showModel != null)
            {
                foreach (var item in showModel.AttrList)
                {
                    string attribute = item.AttrName;

                    // 找到一个
                    coditionContent.AppendFormat("\t\t\tvar txtSearch{0} = $(\"#txtSearch{0}\").val();\r\n", attribute);

                    // var pagePost = "&xxx=" + xxx + "&yyy=" +yyy;
                    if (index == 0)
                    {
                        pagePost.AppendFormat("\t\t\tvar pageData = \"&txtSearch{0}=\" + txtSearch{0}", attribute);
                    }
                    else
                    {
                        pagePost.AppendFormat("+ \"&txtSearch{0}=\" + txtSearch{0}", attribute);
                    }

                    index++;
                }

                pagePost.Append(";");
                content.Append(coditionContent.ToString());
                content.Append(pagePost);

                if (showModel.AttrList.Count == 0)
                {
                    content.Append("\t\t\tvar pageData = \"\";\r\n");
                }

                template = string.Format(@"
            var postData = ""page="" + page_Number + ""&pageSize="" + page_Size + pageData;
            $(""#dg>tbody"").empty();
            $.ajax({{
                type: ""POST"",
                url: ""{0}.aspx?type=load&t="" + new Date().getTime(),
                data: postData,
                success: function (msg) {{
                    var data = eval(""("" + msg + "")"");
                    $('#dg').datagrid('loadData', data.Data);
                    $('#dg').datagrid('getPager').pagination({{
                        //更新pagination的导航列表各参数  
                        total: data.ItemCount, //总数
                        pageSize: page_Size, //行数  
                        pageNumber: page_Number//页数  
                    }});
                }}
            }});
        }}

        $(document).ready(function () {{
            // $(""#dg"").datagrid(""hideColumn"", ""{1}"");
            // 不注释会造成翻页不响应 onSelectPage
            // $(""#dg"").datagrid({{ ""checkOnSelect"": true }});
            // $(""#dg"").datagrid({{ ""selectOnCheck"": false }});
            LoadData(1, 10);

            if ($(""#btnsearch"") != null || $(""#btnsearch"") != undefined) {{
                $(""#btnsearch"").click(function () {{
                    LoadData();
                }});
            }}
        }});
    </script>
", PageCache.TableName_UI,
                                         PageCache.KeyId);

                content.Append(template);

                return(content.ToString());
            }
            else
            {
                return("");
            }
        }
Ejemplo n.º 16
0
        private static string CreateJsOperation()
        {
            StringBuilder content = new StringBuilder(@"
    <script type=""text/javascript"">");

            #region edit
            var editModel = PageCache.GetCmd("编辑");
            if (editModel != null)
            {
                StringBuilder editSubmitContent = new StringBuilder();
                editSubmitContent.AppendFormat("\t\t\tvar txtEdit{0} = $(\"#txtEdit{0}\").val();\r\n", PageCache.KeyId);
                StringBuilder postDataContent = new StringBuilder("var postData = ");
                postDataContent.AppendFormat("\"txtEdit{0}=\" + encodeURI(txtEdit{0}) ", PageCache.KeyId);
                int index = 0;

                StringBuilder editContent = new StringBuilder();
                editContent.AppendFormat(@"                    $(""#txtEdit{0}"").val(row.{0});", PageCache.KeyId);
                foreach (var item in editModel.AttrList)
                {
                    string attribute = item.AttrName;
                    editContent.AppendFormat(@"
                    $(""#txtEdit{0}"").textbox(""setValue"", row.{0});", attribute);
                    editSubmitContent.AppendFormat("\t\t\tvar txtEdit{0} = $(\"#txtEdit{0}\").textbox(\"getValue\");\r\n", attribute);
                    postDataContent.AppendFormat(" + \"&txtEdit{0}=\" + encodeURI(txtEdit{0})", attribute);

                    index++;
                }

                if (postDataContent.ToString() == "var postData = ")
                {
                    postDataContent.Append("\"\"");
                }

                postDataContent.Append(";");

                content.AppendFormat(@"

        function editModel() {{
            var row = $('#dg').datagrid('getChecked');
            if (row) {{
                if(row.length==1)
                {{
                    row = row[0];
                    $('#dlg-edit').dialog('open').dialog('setTitle', '编辑成员');
                    $('#fm-edit').form('load', row);
{0}
                }}
                else{{
                    alter(""编辑只能选择一个!"");
                }}
            }}
        }}

        function saveEditModel(){{
            {1}
            {2}
            $.ajax({{
                type: ""POST"",
                url: ""{3}.aspx?type=edit"",
                data: postData,
                success: function (msg) {{
                    if (msg == ""0"") {{
                        $(""#dialog>p"").text(""修改成功!"");
                        LoadData();
                    }} else {{
                        $(""#dialog>p"").text(msg);
                    }}

                    $('#dlg').dialog('close');        // close the dialog

                    // show dialog
                    $(""#dialog"").dialog({{
                        width: 180,
                        height: 100,
                        buttons: {{
                            Ok: function () {{
                                $(this).dialog(""close"");
                            }}
                        }}
                    }});
                }}
            }});
        }}
", editContent.ToString(),
                                     editSubmitContent.ToString(),
                                     postDataContent.ToString(),
                                     PageCache.TableName_UI);
            }
            #endregion

            #region add
            var addModel = PageCache.GetCmd("添加");
            if (addModel != null)
            {
                StringBuilder addContent      = new StringBuilder();
                StringBuilder postDataContent = new StringBuilder("var postData = ");
                int           index           = 0;
                foreach (var item in addModel.AttrList)
                {
                    string attribute = item.AttrName;
                    addContent.AppendFormat("\t\t\tvar txtAdd{0} = $(\"#txtAdd{0}\").textbox(\"getValue\");\r\n", attribute);
                    if (index == 0)
                    {
                        postDataContent.AppendFormat("\"txtAdd{0}=\" + encodeURI(txtAdd{0}) ", attribute);
                    }
                    else
                    {
                        postDataContent.AppendFormat(" + \"&txtAdd{0}=\" + encodeURI(txtAdd{0})", attribute);
                    }

                    index++;
                }

                if (postDataContent.ToString() == "var postData = ")
                {
                    postDataContent.Append("\"\"");
                }

                postDataContent.Append(";");

                content.AppendFormat(@"
        function newModel() {{
            $('#dlg-add').dialog('open').dialog('setTitle', '添加成员');
        }}

        function saveAddModel() {{
            {0}
            {1}
            $.ajax({{
                type: ""POST"",
                url: ""{2}.aspx?type=add"",
                data: postData,
                success: function (msg) {{
                    if (msg == ""0"") {{
                        $(""#dialog>p"").text(""添加成功!"");
                        LoadData();
                    }} else {{
                        $(""#dialog>p"").text(msg);
                    }}

                    $('#dlg').dialog('close');        // close the dialog

                    // show dialog
                    $(""#dialog"").dialog({{
                        width: 180,
                        height: 100,
                        buttons: {{
                            Ok: function () {{
                                $(this).dialog(""close"");
                            }}
                        }}
                    }});
                }}
            }});
        }}", addContent.ToString(),
                                     postDataContent.ToString(),
                                     PageCache.TableName_UI);
            }
            #endregion

            #region del
            var deleteModel = PageCache.GetCmd("删除");
            if (deleteModel != null)
            {
                string template = string.Format(@"

        function destroyUser() {{
            var row = $('#dg').datagrid('getChecked');
            if (row && row.length > 0) {{
                $.messager.confirm('Confirm', '确定删除该数据吗?', function (r) {{
                    if (r) {{
                        var ids = """";
                        for(var index=0;i<r.length;i++){{
                            ids+=r[i].{1}+"","";
                        }}

                        ids = ids.substring(0, ids.length-1);
                        $.post('{0}.aspx?type=delete', {{ ids: ids }}, function (result) {{
                            if (result.success) {{
                                $('#dg').datagrid('reload');    // reload the user data
                            }} else {{
                                $.messager.show({{    // show error message
                                    title: 'Error',
                                    msg: result.errorMsg
                                }});
                            }}
                        }}, 'json');
                    }}
                }});
            }}
        }}", PageCache.TableName_UI,
                                                PageCache.KeyId);

                content.Append(template);
            }
            #endregion

            #region bat edit

            var batEditModel = PageCache.GetCmd("批量编辑");
            if (batEditModel != null)
            {
                StringBuilder batEditContent = new StringBuilder();
                batEditContent.AppendFormat("\t\t\tvar txtBatEdit{0} = $(\"#txtBatEdit{0}\").textbox(\"getValue\");\r\n", PageCache.KeyId);
                StringBuilder postDataContent = new StringBuilder("var postData = ");
                postDataContent.AppendFormat("\"txtBatEdit{0}=\" + encodeURI(txtBatEdit{0}) ", PageCache.KeyId);
                int index = 0;
                foreach (var item in batEditModel.AttrList)
                {
                    string attribute = item.AttrName;
                    batEditContent.AppendFormat("\t\t\tvar txtBatEdit{0} = $(\"#txtBatEdit{0}\").textbox(\"getValue\");\r\n", attribute);
                    postDataContent.AppendFormat(" + \"&txtBatEdit{0}=\" + encodeURI(txtBatEdit{0})", attribute);

                    index++;
                }

                if (postDataContent.ToString() == "var postData = ")
                {
                    postDataContent.Append("\"\"");
                }

                postDataContent.Append(";");

                content.AppendFormat(@"

        function batEditModel() {{
            var row = $('#dg').datagrid('getChecked');
            if (row && row.length>0) {{
                $('#dlg-batedit').dialog('open').dialog('setTitle', '批量编辑成员');
                var ids = """";
                for(var i=0;i<row.length;i++){{
                    ids += row[i].{0} + "","";
                }}

                ids = ids.substring(0, ids.length - 1);
                $(""#txtBatEdit{0}"").val(ids);
            }}
        }}

        function saveBatEditModel() {{
            {1}
            {2}
            $.ajax({{
                type: ""POST"",
                url: ""{3}.aspx?type=batedit"",
                data: postData,
                success: function (msg) {{
                    if (msg == ""0"") {{
                        $(""#dialog>p"").text(""批量修改成功!"");
                        LoadData();
                    }} else {{
                        $(""#dialog>p"").text(msg);
                    }}

                    $('#dlg').dialog('close');        // close the dialog

                    // show dialog
                    $(""#dialog"").dialog({{
                        width: 180,
                        height: 100,
                        buttons: {{
                            Ok: function () {{
                                $(this).dialog(""close"");
                            }}
                        }}
                    }});
                }}
            }});
        }}
", PageCache.KeyId,
                                     batEditContent.ToString(),
                                     postDataContent.ToString(),
                                     PageCache.TableName_UI);
            }

            #endregion

            #region export

            var exportModel = PageCache.GetCmd("导出全部");
            if (exportModel != null)
            {
                int           index           = 0;
                StringBuilder coditionContent = new StringBuilder();
                StringBuilder pagePost        = new StringBuilder();
                foreach (var item in exportModel.AttrList)
                {
                    string attribute = item.AttrName;

                    // 找到一个
                    coditionContent.AppendFormat("\t\t\tvar txtSearch{0} = $(\"#txtSearch{0}\").textbox(\"getValue\");\r\n", attribute);

                    // var pagePost = "&xxx=" + xxx + "&yyy=" +yyy;
                    if (index == 0)
                    {
                        pagePost.AppendFormat("\t\t\tvar pageData = \"&txtSearch{0}=\" + txtSearch{0}", attribute);
                    }
                    else
                    {
                        pagePost.AppendFormat("+ \"&txtSearch{0}=\" + txtSearch{0}", attribute);
                    }

                    index++;
                }

                if (exportModel.AttrList.Count == 0)
                {
                    pagePost.Append("\t\t\tvar pageData = \"\";\r\n");
                }
                else
                {
                    pagePost.Append(";");
                }

                // selectExport
                content.AppendFormat(@"
        function exportAll() {{
{2}
{3}
                document.location=""{1}.aspx?type=downall"" + pageData;
        }}", PageCache.KeyId,
                                     PageCache.TableName_UI,
                                     coditionContent.ToString(),
                                     pagePost.ToString());
            }

            #endregion

            #region select export
            var selectExportModel = PageCache.GetCmd("导出选中");
            if (selectExportModel != null)
            {
                int           index           = 0;
                StringBuilder coditionContent = new StringBuilder();
                StringBuilder pagePost        = new StringBuilder();
                foreach (var item in selectExportModel.AttrList)
                {
                    string attribute = item.AttrName;

                    // 找到一个
                    coditionContent.AppendFormat("\t\t\tvar txtSearch{0} = $(\"#txtSearch{0}\").textbox(\"getValue\");\r\n", attribute);

                    // var pagePost = "&xxx=" + xxx + "&yyy=" +yyy;
                    if (index == 0)
                    {
                        pagePost.AppendFormat("\t\t\tvar pageData = \"&txtSearch{0}=\" + txtSearch{0}", attribute);
                    }
                    else
                    {
                        pagePost.AppendFormat("+ \"&txtSearch{0}=\" + txtSearch{0}", attribute);
                    }

                    index++;
                }

                if (selectExportModel.AttrList.Count == 0)
                {
                    pagePost.Append("\t\t\tvar pageData = \"\";\r\n");
                }
                else
                {
                    pagePost.Append(";");
                }

                // selectExport
                content.AppendFormat(@"

        function selectExport() {{
            var row = $('#dg').datagrid('getChecked');
            if (row && row.length>0) {{
                var ids = """";
                for(var i=0;i<row.length;i++){{
                    ids += row[i].{0} + "","";
                }}

                document.location=""{1}.aspx?type=down&ids="" + ids;
            }}
        }}", PageCache.KeyId,
                                     PageCache.TableName_UI);
            }
            #endregion

            content.AppendLine("\r\n\t</script>");

            return(content.ToString());
        }
Ejemplo n.º 17
0
        /// <summary>
        /// 创建对象
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        private static string CreateDialog()
        {
            StringBuilder dialogContent = new StringBuilder();

            #region 添加
            var addModel = PageCache.GetCmd("添加");
            if (addModel != null)
            {
                // 行数过多,分成两行
                string template = @"
    <div id=""dlg-add"" class=""easyui-dialog"" style=""width: 400px; height: 240px; padding: 10px 20px""
        closed=""true"" buttons=""#dlg-add-buttons"">
        <div class=""ftitle"">
        </div>
        <form id=""fm-add"" method=""post"" enctype=""multipart/form-data"" action=""{0}.aspx?type=add""
        novalidate=""novalidate"">
{1}
        </form>
    </div>
    <div id=""dlg-add-buttons"">
        <a href=""javascript:void(0)"" class=""easyui-linkbutton c6"" iconcls=""icon-ok"" onclick=""saveAddModel()""
            style=""width: 90px"">保 存</a> <a href=""javascript:void(0)"" class=""easyui-linkbutton""
                iconcls=""icon-cancel"" onclick=""javascript:$('#dlg-add').dialog('close')"" style=""width: 90px"">
                取 消</a>
    </div>";

                StringBuilder content = new StringBuilder();
                content.AppendFormat(@"        <input type=""hidden"" id=""txtAdd{0}"" value="""" />", PageCache.KeyId);
                foreach (var item in addModel.AttrList)
                {
                    string attribute = item.AttrName;

                    // &#12288; 占一个中文字符
                    content.AppendFormat(@"
        <div class=""fitem"">
            <label for=""txtAdd{0}"">{1}:</label>
            <input type=""text"" id=""txtAdd{0}"" name=""txtAdd{0}"" {2} />
        </div>", attribute, item.TitleName.PadLeftStr(4, "&emsp;"), item.DbType.ToEasyUIInputClassOptStr());
                }

                dialogContent.Append(string.Format(template, PageCache.TableName_UI, content.ToString()));
            }
            #endregion

            #region 编辑
            var editModel = PageCache.GetCmd("编辑");
            if (editModel != null)
            {
                // 行数过多,分成两行
                string template = @"
    <div id=""dlg-edit"" class=""easyui-dialog"" style=""width: 400px; height: 240px; padding: 10px 20px""
        closed=""true"" buttons=""#dlg-edit-buttons"">
        <div class=""ftitle"">
        </div>
        <form id=""fm-edit"" method=""post"" enctype=""multipart/form-data"" action=""{0}.aspx?type=edit""
        novalidate=""novalidate"">
{1}
        </form>
    </div>
    <div id=""dlg-edit-buttons"">
        <a href=""javascript:void(0)"" class=""easyui-linkbutton c6"" iconcls=""icon-ok"" onclick=""saveEditModel()""
            style=""width: 90px"">保 存</a> <a href=""javascript:void(0)"" class=""easyui-linkbutton""
                iconcls=""icon-cancel"" onclick=""javascript:$('#dlg-edit').dialog('close')"" style=""width: 90px"">
                取 消</a>
    </div>";

                StringBuilder content = new StringBuilder();
                content.AppendFormat(@"        <input type=""hidden"" id=""txtEdit{0}"" value="""" />", PageCache.KeyId);
                foreach (var item in editModel.AttrList)
                {
                    string attribute = item.AttrName;

                    // 初始化form显示数据
                    // &#12288; 占一个中文字符
                    content.AppendFormat(@"
        <div class=""fitem"">
            <label for=""txtEdit{0}"">{1}:</label>
            <input type=""text"" id=""txtEdit{0}"" name=""txtEdit{0}"" {2} />
        </div>", attribute, item.TitleName.PadLeftStr(4, "&emsp;"), item.DbType.ToEasyUIInputClassOptStr());
                }

                dialogContent.Append(string.Format(template, PageCache.TableName_UI, content.ToString()));
            }
            #endregion

            #region 批量编辑
            var batEditModel = PageCache.GetCmd("批量编辑");
            if (batEditModel != null)
            {
                string template = @"
    <div id=""dlg-batedit"" class=""easyui-dialog"" style=""width: 400px; height: 240px; padding: 10px 20px""
        closed=""true"" buttons=""#dlg-batedit-buttons"">
        <div class=""ftitle"">
        </div>
        <form id=""fm-batedit"" method=""post"" enctype=""multipart/form-data"" action=""{0}.aspx?type=batedit""
        novalidate=""novalidate"">
{1}
        </form>
    </div>
    <div id=""dlg-batedit-buttons"">
        <a href=""javascript:void(0)"" class=""easyui-linkbutton c6"" iconcls=""icon-ok"" onclick=""saveBatEditModel()""
            style=""width: 90px"">保 存</a> <a href=""javascript:void(0)"" class=""easyui-linkbutton""
                iconcls=""icon-cancel"" onclick=""javascript:$('#dlg-batedit').dialog('close')"" style=""width: 90px"">
                取 消</a>
    </div>";

                StringBuilder content = new StringBuilder();
                content.AppendFormat(@"		<input type=""hidden"" id=""txtBatEdit{0}"" value="""" />", PageCache.KeyId);
                foreach (var item in batEditModel.AttrList)
                {
                    string attribute = item.AttrName;

                    // &#12288; 占一个中文字符
                    content.AppendFormat(@"
        <div class=""fitem"">
            <label for=""txtBatEdit{0}"">{1}:</label>
            <input type=""text"" id=""txtBatEdit{0}"" name=""txtBatEdit{0}"" {2} />
        </div>", attribute, item.TitleName.PadLeftStr(4, "&emsp;"), item.DbType.ToEasyUIInputClassOptStr());
                }

                dialogContent.Append(string.Format(template, PageCache.TableName_UI, content.ToString()));
            }
            #endregion

            return(dialogContent.ToString());
        }
Ejemplo n.º 18
0
        private static string CreateEditData()
        {
            StringBuilder editContent    = new StringBuilder();
            StringBuilder createModel    = new StringBuilder();
            StringBuilder editStrContent = new StringBuilder();
            var           editModel      = PageCache.GetCmd("编辑");

            if (editModel != null)
            {
                editContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(txtEdit{1});\r\n", PageCache.KeyId, PageCache.KeyId);
                createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", PageCache.KeyId, ExtendMethod.ToStringToType(PageCache.KeyId, PageCache.KeyId_DbType));
                editStrContent.AppendFormat("string txtEdit{0},", PageCache.KeyId);
                foreach (var item in editModel.AttrList)
                {
                    string attribute      = item.AttrName;
                    string eval_attribute = item.ColName;
                    if (item.DbType.ToLower() == "datetime" ||
                        item.DbType.ToLower() == "date" ||
                        item.DbType.ToLower() == "int" ||
                        item.DbType.ToLower() == "bigint" ||
                        item.DbType.ToLower() == "tinyint")
                    {
                        editContent.AppendFormat("\t\t\tstring {0}Str = HttpUtility.UrlDecode(txtEdit{0});\r\n", attribute);
                        if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            editContent.AppendFormat("\t\t\tDateTime {0} = DateTime.MinValue;\r\n", attribute);
                            editContent.AppendFormat("\t\t\tDateTime.TryParse({0}Str, out {0});\r\n", attribute);
                        }
                        else
                        {
                            editContent.AppendFormat("\t\t\tint {0} = 0;;\r\n", attribute);
                            editContent.AppendFormat("\t\t\tint.TryParse({0}Str, out {0});\r\n", attribute);
                        }

                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType_ExceptIntDate(attribute, item.DbType));
                    }
                    else
                    {
                        editContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(txtEdit{1});\r\n", attribute, attribute);
                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType_ExceptIntDate(attribute, item.DbType));
                    }

                    editStrContent.AppendFormat("string txtEdit{0},", attribute);
                }

                if (editStrContent.Length > 0)
                {
                    editStrContent.Remove(editStrContent.Length - 1, 1);
                }

                string template = @"
        [HttpPost]
        public ActionResult edit({0})
        {{
{1}
            {2} model = new {2}();
{3}
            {4} dal = new {4}();
            dal.Update{5}(model);

            return new ContentResult() {{ Content = ""0"" }};
        }}
";

                return(string.Format(template,
                                     editStrContent.ToString(),
                                     editContent.ToString(),
                                     PageCache.TableName_Model,
                                     createModel.ToString(),
                                     PageCache.TableName_DAL,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
        public static string CreateQueryListMethod()
        {
            var showModel = PageCache.GetCmd("主显示");

            if (showModel != null)
            {
                StringBuilder queryWhereContent = new StringBuilder();
                StringBuilder queryListParams   = new StringBuilder();
                int           index             = 0;
                foreach (var item in showModel.AttrList)
                {
                    string attribute = item.ColName;
                    queryListParams.AppendFormat("{0} {1},", item.DbType.ToMsSqlClassType(), attribute);

                    if (index == 0)
                    {
                        if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint" || item.DbType.ToLower() == "decimal" || item.DbType.ToLower() == "float" || item.DbType.ToLower() == "double")
                        {
                            queryWhereContent.AppendFormat("if ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "tinyint")
                        {
                            queryWhereContent.AppendFormat("if ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            queryWhereContent.AppendFormat("if ({0} != DateTime.MinValue)\r\n", attribute);
                        }
                        else
                        {
                            queryWhereContent.AppendFormat("if (!string.IsNullOrEmpty({0}))\r\n", attribute);
                        }
                    }
                    else
                    {
                        if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint" || item.DbType.ToLower() == "decimal" || item.DbType.ToLower() == "float" || item.DbType.ToLower() == "double")
                        {
                            queryWhereContent.AppendFormat("\t\t\tif ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "tinyint")
                        {
                            queryWhereContent.AppendFormat("\t\t\tif ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            queryWhereContent.AppendFormat("\t\t\tif ({0} != DateTime.MinValue)\r\n", attribute);
                        }
                        else
                        {
                            queryWhereContent.AppendFormat("\t\t\tif (!string.IsNullOrEmpty({0}))\r\n", attribute);
                        }
                    }

                    queryWhereContent.Append("\t\t\t{\r\n");
                    queryWhereContent.AppendFormat("\t\t\t\tlistParams.Add(new SqlParameter(\"@{0}\", {1}) {{ Value = {0} }});\r\n", attribute, item.DbType.ToMsSqlDbType());

                    queryWhereContent.AppendFormat("\t\t\t\twhereStr += \" and {0}=@{0} \";\r\n", attribute);
                    queryWhereContent.Append("\t\t\t}\r\n");
                    queryWhereContent.AppendLine();

                    index++;
                }

                StringBuilder selectSqlContent = new StringBuilder();
                selectSqlContent.Append("\tstring selectSql = string.Format(@\"select * from " + PageCache.TableName + " where 1=1 {0} limit {1},{2};\", whereStr, ((page - 1) * pageSize), pageSize);\r\n");

                var assignContent = new StringBuilder();
                if (!showModel.AttrList.Exists(p => p.ColName == PageCache.KeyId))
                {
                    assignContent.AppendFormat("                        model.{0} = sqldr[\"{0}\"] == DBNull.Value ? {1} : {2};\r\n", PageCache.KeyId, ExtendMethod.ToDefaultValue(PageCache.KeyId_DbType), ExtendMethod.ToDefaultDBValue(PageCache.KeyId_DbType, PageCache.KeyId));
                }

                foreach (var item in showModel.AttrList)
                {
                    string attribute = item.ColName;
                    assignContent.AppendFormat("                        model.{0} = sqldr[\"{0}\"] == DBNull.Value ? {1} : {2};\r\n", attribute, ExtendMethod.ToDefaultValue(item.DbType), ExtendMethod.ToDefaultDBValue(item.DbType, attribute));
                }

                string template = @"
        public List<{0}> QueryList({1}int page, int pageSize)
        {{
            string whereStr = string.Empty;
            List<SqlParameter> listParams = new List<SqlParameter>();
            {2}
            {7}
            List<{0}> result = new List<{0}>();
            using (SqlConnection sqlcn = ConnectionFactory.{3})
            {{
                using(SqlDataReader sqldr = SqlHelper.ExecuteDataReader(sqlcn, CommandType.Text, selectSql, listParams.ToArray()))
                {{
                    while(sqldr.Read())
                    {{
                        {0} model = new {0}();
{5}
                        result.Add(model);
                    }}
                }}
            }}

            return result;
        }}

        public int QueryListCount({4})
        {{
            string whereStr = string.Empty;
            List<SqlParameter> listParams = new List<SqlParameter>();
            {2}
            string selectCountSql = string.Format(""select count(0) from {6} where 1=1 {{0}}"", whereStr);
            using (SqlConnection sqlcn = ConnectionFactory.{3})
            {{
                return Convert.ToInt32(SqlHelper.ExecuteScalar(sqlcn, CommandType.Text, selectCountSql, listParams.ToArray()));
            }}
        }}
";

                string queryCountParams = queryListParams.Length > 0 ? queryListParams.ToString().Substring(0, queryListParams.Length - 1) : queryListParams.ToString();
                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     queryListParams.ToString(),
                                     queryWhereContent.ToString(),
                                     PageCache.DatabaseName,
                                     queryCountParams,
                                     assignContent.ToString(),
                                     PageCache.TableName,
                                     selectSqlContent.ToString()));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 20
0
        private static string CreateBatEditData()
        {
            StringBuilder batEditContent    = new StringBuilder();
            StringBuilder createModel       = new StringBuilder();
            StringBuilder batEditStrContent = new StringBuilder();
            var           batEditModel      = PageCache.GetCmd("批量编辑");

            if (batEditModel != null)
            {
                batEditContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(txtBatEdit{1});\r\n", PageCache.KeyId, PageCache.KeyId);
                batEditContent.AppendFormat(@"           List<string> idList = {0}.Split(new char[]{{','}}, StringSplitOptions.RemoveEmptyEntries).ToList();{1}", PageCache.KeyId, Environment.NewLine);
                batEditStrContent.AppendFormat("string txtBatEdit{0},", PageCache.KeyId);
                foreach (var item in batEditModel.AttrList)
                {
                    string attribute      = item.AttrName;
                    string eval_attribute = item.ColName;
                    if (item.DbType.ToLower() == "datetime" ||
                        item.DbType.ToLower() == "date" ||
                        item.DbType.ToLower() == "int" ||
                        item.DbType.ToLower() == "bigint" ||
                        item.DbType.ToLower() == "tinyint")
                    {
                        batEditContent.AppendFormat("\t\t\tstring {0}Str = HttpUtility.UrlDecode(txtBatEdit{0});\r\n", attribute);
                        if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            batEditContent.AppendFormat("\t\t\tDateTime {0} = DateTime.MinValue;\r\n", attribute);
                            batEditContent.AppendFormat("\t\t\tDateTime.TryParse({0}Str, out {0});\r\n", attribute);
                        }
                        else
                        {
                            batEditContent.AppendFormat("\t\t\tint {0} = 0;;\r\n", attribute);
                            batEditContent.AppendFormat("\t\t\tint.TryParse({0}Str, out {0});\r\n", attribute);
                        }

                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType_ExceptIntDate(attribute, item.DbType));
                    }
                    else
                    {
                        batEditContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(txtBatEdit{1});\r\n", attribute, attribute);
                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType_ExceptIntDate(attribute, item.DbType));
                    }

                    batEditStrContent.AppendFormat("string txtBatEdit{0},", attribute);
                }

                if (batEditStrContent.Length > 0)
                {
                    batEditStrContent.Remove(batEditStrContent.Length - 1, 1);
                }

                string template = @"
        [HttpPost]
        public ActionResult batedit({0})
        {{
{1}
            {2} model = new {2}();
            {3} dal = new {3}();
            dal.Update{4}(model);

            return new ContentResult() {{ Content = ""0"" }};
        }}
";

                return(string.Format(template,
                                     batEditStrContent.ToString(),
                                     batEditContent.ToString(),
                                     PageCache.TableName_Model,
                                     createModel.ToString(),
                                     PageCache.TableName_DAL,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 21
0
        private static string CreateDownAndDownAll()
        {
            var down_all_model    = PageCache.GetCmd("导出全部");
            var down_select_model = PageCache.GetCmd("导出选中");

            if (down_all_model != null || down_select_model != null)
            {
                StringBuilder down_all_str = new StringBuilder();
                #region 导出全部
                if (down_all_model != null)
                {
                    StringBuilder searchContent    = new StringBuilder();
                    StringBuilder searchStrContent = new StringBuilder();
                    string        template         = @"

        private void DownAll()
        {{
{0}
            {1} dal = new {1}();
            List<{5}> data = dal.GetAll({4});
            string content = CreateTableAll(data);
            Response.Clear(); 
            Response.Buffer = true; 
            Response.Charset = ""UTF-8""; 
            Response.AddHeader(""Content-Disposition"", ""attachment; filename={1}.xls""); 
            Response.ContentEncoding = System.Text.Encoding.GetEncoding(""UTF-8""); 
            Response.ContentType = ""application/ms-excel;charset=UTF-8""; 
            Response.Write(content); 
            Response.Flush(); 
            Response.End(); 
        }}

        private string CreateTableAll(List<{5}> list)
        {{
            StringBuilder content = new StringBuilder();
            
            // create columns header
            content.Append(""{2}"");
            for (int i = 0, len = list.Count; i < len; i++)
            {{
                content.Append(""<tr>"");
{3}
                content.Append(""</tr>"");
            }}
            content.Append(""</tbody></table>"");

            return content.ToString();            
        }}";

                    foreach (var item in down_all_model.AttrList)
                    {
                        string attribute      = item.AttrName;
                        string eval_attribute = item.ColName;
                        if (item.DbType.ToLower() == "datetime" ||
                            item.DbType.ToLower() == "date" ||
                            item.DbType.ToLower() == "int" ||
                            item.DbType.ToLower() == "bigint" ||
                            item.DbType.ToLower() == "tinyint")
                        {
                            searchContent.AppendFormat("\t\t\tstring {0}Str = HttpUtility.UrlDecode(Request[\"txtSearch{0}\"]);\r\n", attribute);
                            if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                            {
                                searchContent.AppendFormat("\t\t\tDateTime {0} = DateTime.MinValue;\r\n", attribute);
                                searchContent.AppendFormat("\t\t\tDateTime.TryParse({0}Str, out {0});\r\n", attribute);
                            }
                            else
                            {
                                searchContent.AppendFormat("\t\t\tint {0} = 0;;\r\n", attribute);
                                searchContent.AppendFormat("\t\t\tint.TryParse({0}Str, out {0});\r\n", attribute);
                            }
                        }
                        else
                        {
                            searchContent.AppendFormat("            string {0} = HttpUtility.UrlDecode(Request[\"txtSearch{0}\"]);\r\n", attribute);
                        }

                        searchStrContent.AppendFormat(" {0},", attribute);
                    }

                    // 移除最后的逗号
                    string searchStrCount = searchStrContent.Length > 0 ? searchStrContent.ToString().Substring(0, searchStrContent.Length - 1) : searchStrContent.ToString();

                    StringBuilder batContent = new StringBuilder();
                    batContent.Append(searchContent.ToString());

                    StringBuilder content = new StringBuilder();
                    content.Append("<table border='1'><thead><tr>");
                    foreach (var item in down_all_model.AttrList)
                    {
                        content.AppendFormat("<th>{0}</th>", item.TitleName);
                    }

                    content.Append("</tr></thead>");

                    StringBuilder appendFormat = new StringBuilder();
                    foreach (var item in down_all_model.AttrList)
                    {
                        appendFormat.AppendFormat(@"                content.AppendFormat(""<td>{{0}}</td>"", list[i].{0});{1}", item.AttrName, Environment.NewLine);
                    }

                    down_all_str.AppendFormat(template,
                                              batContent.ToString(),
                                              PageCache.TableName_DAL,
                                              content.ToString(),
                                              appendFormat.ToString(),
                                              searchStrCount,
                                              PageCache.TableName_Model);
                }
                #endregion

                StringBuilder down_select_str = new StringBuilder();
                #region 导出选中
                if (down_select_model != null)
                {
                    StringBuilder searchContent    = new StringBuilder();
                    StringBuilder searchStrContent = new StringBuilder();
                    string        template         = @"
        private void Down()
        {{
{0}
            {1} dal = new {1}();
            List<{4}> data = dal.GetPartAll(idList);
            string content = CreateTable(data);
            Response.Clear(); 
            Response.Buffer = true; 
            Response.Charset = ""UTF-8""; 
            Response.AddHeader(""Content-Disposition"", ""attachment; filename={1}.xls""); 
            Response.ContentEncoding = System.Text.Encoding.GetEncoding(""UTF-8""); 
            Response.ContentType = ""application/ms-excel;charset=UTF-8""; 
            Response.Write(content); 
            Response.Flush(); 
            Response.End(); 
        }}

        private string CreateTable(List<{4}> list)
        {{
            StringBuilder content = new StringBuilder();
            
            // create columns header
            content.Append(""{2}"");
            for (int i = 0, len = list.Count; i < len; i++)
            {{
                content.Append(""<tr>"");
{3}
                content.Append(""</tr>"");
            }}
            content.Append(""</tbody></table>"");

            return content.ToString();            
        }}";

                    StringBuilder batContent = new StringBuilder();
                    searchContent.AppendFormat("            string ids = HttpUtility.UrlDecode(Request[\"ids\"]);\r\n", PageCache.KeyId, PageCache.KeyId);
                    searchContent.Append("            List<string> idList = ids.Split(new char[]{','}, StringSplitOptions.RemoveEmptyEntries).ToList();\r\n");
                    batContent.Append(searchContent.ToString());

                    StringBuilder content = new StringBuilder();
                    content.Append("<table border='1'><thead><tr>");
                    foreach (var item in down_select_model.AttrList)
                    {
                        content.AppendFormat("<th>{0}</th>", item.TitleName);
                    }

                    content.Append("</tr></thead>");

                    StringBuilder appendFormat = new StringBuilder();
                    foreach (var item in down_select_model.AttrList)
                    {
                        appendFormat.AppendFormat(@"                content.AppendFormat(""<td>{{0}}</td>"", list[i].{0});{1}", item.AttrName, Environment.NewLine);
                    }

                    down_select_str.AppendFormat(template,
                                                 batContent.ToString(),
                                                 PageCache.TableName_DAL,
                                                 content.ToString(),
                                                 appendFormat.ToString(),
                                                 PageCache.TableName_Model);
                }
                #endregion

                return(down_all_str.ToString() + down_select_str.ToString());
            }
            return(string.Empty);
        }
Ejemplo n.º 22
0
        private static string CreateLoadData()
        {
            string        template         = @"
        [HttpPost]
        public ActionResult load(int page, int pageSize{0})
        {{
{1}
            {2} dal = new {2}();
            var list = dal.QueryList({3}page, pageSize);
            int itemCount = dal.QueryListCount({4});
            int pageCount = (int)Math.Ceiling((double)itemCount / (double)pageSize);
{5}
            return new JsonResult() {{ Data = new {{ PageCount = pageCount, ItemCount = itemCount, Data = list }} }};
        }}
";
            StringBuilder searchContent    = new StringBuilder();
            StringBuilder searchStrContent = new StringBuilder();
            StringBuilder loadStrContent   = new StringBuilder();
            var           showModel        = PageCache.GetCmd("主显示");

            if (showModel != null)
            {
                foreach (var item in showModel.AttrList)
                {
                    string attribute = item.AttrName;
                    if (item.DbType.ToLower() == "datetime" ||
                        item.DbType.ToLower() == "date" ||
                        item.DbType.ToLower() == "int" ||
                        item.DbType.ToLower() == "bigint" ||
                        item.DbType.ToLower() == "tinyint")
                    {
                        searchContent.AppendFormat("\t\t\tstring {0}Str = HttpUtility.UrlDecode(txtSearch{0});\r\n", attribute);
                        if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            searchContent.AppendFormat("\t\t\tDateTime {0} = DateTime.MinValue;\r\n", attribute);
                            searchContent.AppendFormat("\t\t\tDateTime.TryParse({0}Str, out {0});\r\n", attribute);
                        }
                        else
                        {
                            searchContent.AppendFormat("\t\t\tint {0} = 0;;\r\n", attribute);
                            searchContent.AppendFormat("\t\t\tif(!int.TryParse({0}Str, out {0}))\r\n", attribute);
                            searchContent.Append("\t\t\t{\r\n");
                            searchContent.AppendFormat("\t\t\t\t{0} = -1;\r\n", attribute);
                            searchContent.Append("\t\t\t}\r\n");
                        }
                    }
                    else
                    {
                        searchContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(txtSearch{0});\r\n", attribute);
                    }

                    searchStrContent.AppendFormat(" {0},", attribute);
                    loadStrContent.AppendFormat(", string txtSearch{0}", attribute);
                }

                StringBuilder encodeContent = new StringBuilder();
                foreach (var item in showModel.AttrList)
                {
                    if (item.Style.FieldName == "Html编码")
                    {
                        string attribute = item.ColName;
                        encodeContent.AppendLine(string.Format("\t\t\tlist.ForEach(p => p.{0} = HttpUtility.HtmlEncode(p.{0}));", attribute));
                    }
                }

                // 移除最后的逗号
                string searchStrCount = searchStrContent.Length > 0 ? searchStrContent.ToString().Substring(0, searchStrContent.Length - 1) : searchStrContent.ToString();
                return(string.Format(template,
                                     loadStrContent.ToString(),
                                     searchContent.ToString(),
                                     PageCache.TableName_DAL,
                                     searchStrContent.ToString(),
                                     searchStrCount,
                                     encodeContent.ToString()));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 23
0
        private static string CreateBatEditData()
        {
            StringBuilder batEditContent = new StringBuilder();
            StringBuilder createModel    = new StringBuilder();
            var           batEditModel   = PageCache.GetCmd("批量编辑");

            if (batEditModel != null)
            {
                batEditContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(Request[\"txtBatEdit{1}\"]);\r\n", PageCache.KeyId, PageCache.KeyId);
                batEditContent.AppendFormat(@"           List<string> idList = {0}.Split(new char[]{{','}}, StringSplitOptions.RemoveEmptyEntries).ToList();{1}", PageCache.KeyId, Environment.NewLine);
                foreach (var item in batEditModel.AttrList)
                {
                    string attribute      = item.AttrName;
                    string eval_attribute = item.ColName;
                    if (item.DbType.ToLower() == "datetime" ||
                        item.DbType.ToLower() == "date" ||
                        item.DbType.ToLower() == "int" ||
                        item.DbType.ToLower() == "bigint" ||
                        item.DbType.ToLower() == "tinyint")
                    {
                        batEditContent.AppendFormat("\t\t\tstring {0}Str = HttpUtility.UrlDecode(Request[\"txtBatEdit{0}\"]);\r\n", attribute);
                        if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            batEditContent.AppendFormat("\t\t\tDateTime {0} = DateTime.MinValue;\r\n", attribute);
                            batEditContent.AppendFormat("\t\t\tDateTime.TryParse({0}Str, out {0});\r\n", attribute);
                        }
                        else
                        {
                            batEditContent.AppendFormat("\t\t\tint {0} = 0;;\r\n", attribute);
                            batEditContent.AppendFormat("\t\t\tint.TryParse({0}Str, out {0});\r\n", attribute);
                        }

                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType_ExceptIntDate(attribute, item.DbType));
                    }
                    else
                    {
                        batEditContent.AppendFormat("\t\t\tstring {0} = HttpUtility.UrlDecode(Request[\"txtBatEdit{1}\"]);\r\n", attribute, attribute);
                        createModel.AppendFormat("\t\t\tmodel.{0} = {1};\r\n", eval_attribute, ExtendMethod.ToStringToType_ExceptIntDate(attribute, item.DbType));
                    }
                }

                string template = @"
        private void BatEditData()
        {{
{0}
            {1} model = new {1}();
{2}
            {3} dal = new {3}();
            dal.BatUpdate{4}(idList, model);

            Response.Write(""0"");
        }}
";

                return(string.Format(template,
                                     batEditContent.ToString(),
                                     PageCache.TableName_Model,
                                     createModel.ToString(),
                                     PageCache.TableName_DAL,
                                     PageCache.TableName));
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 24
0
        public static string CreateQueryListMethod()
        {
            var showModel = PageCache.GetCmd("主显示");

            if (showModel != null)
            {
                StringBuilder queryWhereContent = new StringBuilder();
                StringBuilder queryListParams   = new StringBuilder();
                StringBuilder setInfoContent    = new StringBuilder();
                int           index             = 0;
                foreach (var item in showModel.AttrList)
                {
                    string attribute = item.ColName;
                    queryListParams.AppendFormat("{0} {1},", item.DbType.ToMsSqlClassType(), attribute);

                    if (index == 0)
                    {
                        if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint" || item.DbType.ToLower() == "decimal" || item.DbType.ToLower() == "float" || item.DbType.ToLower() == "double")
                        {
                            queryWhereContent.AppendFormat("if ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "tinyint")
                        {
                            queryWhereContent.AppendFormat("if ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            queryWhereContent.AppendFormat("if ({0} != DateTime.MinValue)\r\n", attribute);
                        }
                        else
                        {
                            queryWhereContent.AppendFormat("if (!string.IsNullOrEmpty({0}))\r\n", attribute);
                        }
                    }
                    else
                    {
                        if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint" || item.DbType.ToLower() == "decimal" || item.DbType.ToLower() == "float" || item.DbType.ToLower() == "double")
                        {
                            queryWhereContent.AppendFormat("\t\t\tif ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "tinyint")
                        {
                            queryWhereContent.AppendFormat("\t\t\tif ({0} >= 0)\r\n", attribute);
                        }
                        else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                        {
                            queryWhereContent.AppendFormat("\t\t\tif ({0} != DateTime.MinValue)\r\n", attribute);
                        }
                        else
                        {
                            queryWhereContent.AppendFormat("\t\t\tif (!string.IsNullOrEmpty({0}))\r\n", attribute);
                        }
                    }

                    setInfoContent.AppendFormat("\t\t\tinfo.{0} = {0};\r\n", attribute);
                    queryWhereContent.Append("\t\t\t{\r\n");
                    queryWhereContent.AppendFormat("\t\t\t\twhereStr += \" and {0}=@{0} \";\r\n", attribute);
                    queryWhereContent.Append("\t\t\t}\r\n");
                    queryWhereContent.AppendLine();

                    index++;
                }

                StringBuilder selectSqlContent = new StringBuilder();
                selectSqlContent.Append("\tstring selectSql = string.Format(@\"select * from " + PageCache.TableName + " where 1=1 {0} limit {1},{2};\", whereStr, ((page - 1) * pageSize), pageSize);\r\n");

                string template = @"
        public List<{0}> QueryList({1}int page, int pageSize)
        {{
            {0} info = new {0}();
{5}
            string whereStr = string.Empty;
            {2}
            {7}
            List<{0}> result = new List<{0}>();
            using (IDbConnection sqlcn = ConnectionFactory.{3})
            {{
                result = sqlcn.Query<{0}>(selectSql, info).ToList();
            }}

            return result;
        }}

        public int QueryListCount({4})
        {{
            {0} info = new {0}();
{5}
            string whereStr = string.Empty;
            {2}
            string selectCountSql = string.Format(""select count(0) from {6} where 1=1 {{0}} limit 1"", whereStr);
            using (IDbConnection sqlcn = ConnectionFactory.{3})
            {{
                return sqlcn.QuerySingle<int>(selectCountSql, info);
            }}
        }}
";

                string queryCountParams = queryListParams.Length > 0 ? queryListParams.ToString().Substring(0, queryListParams.Length - 1) : queryListParams.ToString();
                return(string.Format(template,
                                     PageCache.TableName_Model,
                                     queryListParams.ToString(),
                                     queryWhereContent.ToString(),
                                     PageCache.DatabaseName,
                                     queryCountParams,
                                     setInfoContent.ToString(),
                                     PageCache.TableName,
                                     selectSqlContent.ToString()));
            }
            else
            {
                return(string.Empty);
            }
        }
        public static string CreateGetAllAndPart()
        {
            var down_allModel     = PageCache.GetCmd("导出全部");
            var down_selelctModel = PageCache.GetCmd("导出选中");

            if (down_allModel != null || down_selelctModel != null)
            {
                StringBuilder down_allModel_Str = new StringBuilder();
                #region 导出全部
                if (down_allModel != null)
                {
                    StringBuilder queryWhereContent = new StringBuilder();
                    StringBuilder queryListParams   = new StringBuilder();
                    int           index             = 0;
                    foreach (var item in down_allModel.AttrList)
                    {
                        string attribute = item.ColName;
                        queryListParams.AppendFormat("{0} {1},", item.DbType.ToMsSqlClassType(), attribute);

                        if (index == 0)
                        {
                            if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint")
                            {
                                queryWhereContent.AppendFormat("if ({0} > 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "tinyint")
                            {
                                queryWhereContent.AppendFormat("if ({0} >= 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                            {
                                queryWhereContent.AppendFormat("if ({0} != DateTime.MinValue)\r\n", attribute);
                            }
                            else
                            {
                                queryWhereContent.AppendFormat("if (!string.IsNullOrEmpty({0}))\r\n", attribute);
                            }
                        }
                        else
                        {
                            if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint")
                            {
                                queryWhereContent.AppendFormat("\t\t\tif ({0} > 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "tinyint")
                            {
                                queryWhereContent.AppendFormat("\t\t\tif ({0} >= 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                            {
                                queryWhereContent.AppendFormat("\t\t\tif ({0} != DateTime.MinValue)\r\n", attribute);
                            }
                            else
                            {
                                queryWhereContent.AppendFormat("\t\t\tif (!string.IsNullOrEmpty({0}))\r\n", attribute);
                            }
                        }

                        queryWhereContent.Append("            {\r\n");
                        queryWhereContent.AppendFormat("                listParams.Add(new SqlParameter(\"@{0}\", {1}) {{ Value = {0} }});\r\n", attribute, item.DbType.ToMsSqlDbType());

                        queryWhereContent.AppendFormat("                whereStr += \" and {0}=@{0} \";\r\n", attribute);
                        queryWhereContent.Append("            }\r\n");
                        queryWhereContent.AppendLine();

                        index++;
                    }

                    var assignContent = new StringBuilder();
                    foreach (var item in down_allModel.AttrList)
                    {
                        string attribute = item.ColName;
                        assignContent.AppendFormat("                        model.{0} = sqldr[\"{0}\"] == DBNull.Value ? {1} : {2};\r\n", attribute, ExtendMethod.ToDefaultValue(item.DbType), ExtendMethod.ToDefaultDBValue(item.DbType, attribute));
                    }

                    string template = @"
        public List<{0}> GetAll({3})
        {{
            string whereStr = string.Empty;
            List<SqlParameter> listParams = new List<SqlParameter>();
{1}
            string selectAllSql = string.Format(""select * from {5} where 1=1 {{0}}"", whereStr);
            List<{0}> result = new List<{0}>();
            using (SqlConnection sqlcn = ConnectionFactory.{2})
            {{
                using(SqlDataReader sqldr = SqlHelper.ExecuteDataReader(sqlcn, CommandType.Text, selectAllSql, listParams.ToArray()))
                {{
                    while(sqldr.Read())
                    {{
                        {0} model = new {0}();
{4}
                        result.Add(model);
                    }}
                }}
            }}

            return result;
        }}
";

                    string queryCountParams = queryListParams.Length > 0 ? queryListParams.ToString().Substring(0, queryListParams.Length - 1) : queryListParams.ToString();
                    down_allModel_Str.AppendFormat(template,
                                                   PageCache.TableName_Model,
                                                   queryWhereContent.ToString(),
                                                   PageCache.DatabaseName,
                                                   queryCountParams,
                                                   assignContent.ToString(),
                                                   PageCache.TableName);
                }
                #endregion

                StringBuilder down_selectModel_Str = new StringBuilder();
                #region 导出选中
                if (down_selelctModel != null)
                {
                    StringBuilder selectSqlContent = new StringBuilder();
                    selectSqlContent.Append("            string selectSql = string.Format(@\"select * from\r\n");
                    selectSqlContent.Append("            " + PageCache.TableName + " where " + PageCache.KeyId + " in ({1})\r\n");
                    selectSqlContent.Append("            {0};\", whereStr, idArrayStr);\r\n");

                    var assignContent = new StringBuilder();
                    foreach (var item in down_selelctModel.AttrList)
                    {
                        string attribute = item.ColName;
                        assignContent.AppendFormat("                        model.{0} = sqldr[\"{0}\"] == DBNull.Value ? {1} : {2};\r\n", attribute, ExtendMethod.ToDefaultValue(item.DbType), ExtendMethod.ToDefaultDBValue(item.DbType, attribute));
                    }

                    string template = @"
        public List<{0}> GetPartAll(List<string> idList)
        {{
            var idArrayStr = string.Join("","", (from f in idList
                                select ""'""+ f + ""'"").ToArray());
            string whereStr = string.Empty;
            List<SqlParameter> listParams = new List<SqlParameter>();
{3}
            List<{0}> result = new List<{0}>();
            using (SqlConnection sqlcn = ConnectionFactory.{1})
            {{
                using(SqlDataReader sqldr = SqlHelper.ExecuteDataReader(sqlcn, CommandType.Text, selectSql, listParams.ToArray()))
                {{
                    while(sqldr.Read())
                    {{
                        {0} model = new {0}();
{2}
                        result.Add(model);
                    }}
                }}
            }}

            return result;
        }}

";
                    down_selectModel_Str.AppendFormat(template,
                                                      PageCache.TableName_Model,
                                                      PageCache.DatabaseName,
                                                      assignContent.ToString(),
                                                      selectSqlContent.ToString());
                }
                #endregion

                return(down_allModel_Str.ToString() + down_selectModel_Str.ToString());
            }
            else
            {
                return(string.Empty);
            }
        }
Ejemplo n.º 26
0
        private static string CreatePageLoad()
        {
            string        template = @"
        protected void Page_Load(object sender, EventArgs e)
        {{
            if (Request.HttpMethod.ToUpper() == ""POST"")
            {{
                string type = Request.QueryString[""type""];
                switch (type)
                {{{0}    
                }}

                Response.End();
            }}{1}
        }}
";
            StringBuilder content  = new StringBuilder();

            content.Append(@"
                    case ""load"":
                        LoadData();
                        break;");
            if (PageCache.GetCmd("添加") != null)
            {
                content.Append(@"
                    case ""add"":
                        AddData();
                        break;");
            }

            if (PageCache.GetCmd("编辑") != null)
            {
                content.Append(@"
                    case ""edit"":
                        EditData();
                        break;");
            }

            if (PageCache.GetCmd("批量编辑") != null)
            {
                content.Append(@"
                    case ""batedit"":
                        BatEditData();
                        break;");
            }

            if (PageCache.GetCmd("删除") != null)
            {
                content.Append(@"
                    case ""delete"":
                        DeleteData();
                        break;");
            }

            StringBuilder elseContent = new StringBuilder();

            if (PageCache.GetCmd("导出选中") != null || PageCache.GetCmd("导出全部") != null)
            {
                string export_all    = @"
                    case ""downall"":
                        DownAll();
                        break;";
                string export_select = @"
                    case ""down"":
                        Down();
                        break;";

                elseContent.AppendFormat(@"
            else{{
                string type = Request.QueryString[""type""];
                switch (type)
                {{{0}{1}
                }}
            }}", PageCache.GetCmd("导出选中") != null ? export_select : "",
                                         PageCache.GetCmd("导出全部") != null ? export_all : "");
            }

            return(string.Format(template, content.ToString(), elseContent.ToString()));
        }
Ejemplo n.º 27
0
        public static string CreateGetAllAndPart()
        {
            var down_allModel     = PageCache.GetCmd("导出全部");
            var down_selelctModel = PageCache.GetCmd("导出选中");

            if (down_allModel != null || down_selelctModel != null)
            {
                StringBuilder down_allModel_Str = new StringBuilder();
                #region 导出全部
                if (down_allModel != null)
                {
                    StringBuilder queryWhereContent = new StringBuilder();
                    StringBuilder queryListParams   = new StringBuilder();
                    StringBuilder setInfoContent    = new StringBuilder();
                    int           index             = 0;
                    foreach (var item in down_allModel.AttrList)
                    {
                        string attribute = item.ColName;
                        queryListParams.AppendFormat("{0} {1},", item.DbType.ToMsSqlClassType(), attribute);

                        if (index == 0)
                        {
                            if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint")
                            {
                                queryWhereContent.AppendFormat("if ({0} > 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "tinyint")
                            {
                                queryWhereContent.AppendFormat("if ({0} >= 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                            {
                                queryWhereContent.AppendFormat("if ({0} != DateTime.MinValue)\r\n", attribute);
                            }
                            else
                            {
                                queryWhereContent.AppendFormat("if (!string.IsNullOrEmpty({0}))\r\n", attribute);
                            }
                        }
                        else
                        {
                            if (item.DbType.ToLower() == "int" || item.DbType.ToLower() == "bigint")
                            {
                                queryWhereContent.AppendFormat("\t\t\tif ({0} > 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "tinyint")
                            {
                                queryWhereContent.AppendFormat("\t\t\tif ({0} >= 0)\r\n", attribute);
                            }
                            else if (item.DbType.ToLower() == "datetime" || item.DbType.ToLower() == "date")
                            {
                                queryWhereContent.AppendFormat("\t\t\tif ({0} != DateTime.MinValue)\r\n", attribute);
                            }
                            else
                            {
                                queryWhereContent.AppendFormat("\t\t\tif (!string.IsNullOrEmpty({0}))\r\n", attribute);
                            }
                        }

                        setInfoContent.AppendFormat("\t\t\tinfo.{0} = {0};\r\n", attribute);
                        queryWhereContent.Append("            {\r\n");
                        queryWhereContent.AppendFormat("                whereStr += \" and {0}=@{0} \";\r\n", attribute);
                        queryWhereContent.Append("            }\r\n");
                        queryWhereContent.AppendLine();

                        index++;
                    }

                    string template = @"
        public List<{0}> GetAll({3})
        {{
            {0} info = new {0}();
{4}
            string whereStr = string.Empty;
{1}
            string selectAllSql = string.Format(""select * from {5} where 1=1 {{0}} limit 10000"", whereStr);
            List<{0}> result = new List<{0}>();
            using (IDbConnection sqlcn = ConnectionFactory.{2})
            {{
                result = sqlcn.Query<{0}>(selectAllSql, info).ToList();
            }}

            return result;
        }}
";

                    string queryCountParams = queryListParams.Length > 0 ? queryListParams.ToString().Substring(0, queryListParams.Length - 1) : queryListParams.ToString();
                    down_allModel_Str.AppendFormat(template,
                                                   PageCache.TableName_Model,
                                                   queryWhereContent.ToString(),
                                                   PageCache.DatabaseName,
                                                   queryCountParams,
                                                   setInfoContent.ToString(),
                                                   PageCache.TableName);
                }
                #endregion

                StringBuilder down_selectModel_Str = new StringBuilder();
                #region 导出选中
                if (down_selelctModel != null)
                {
                    StringBuilder selectSqlContent = new StringBuilder();
                    selectSqlContent.Append("            string selectSql = string.Format(@\"select * from\r\n");
                    selectSqlContent.Append("            " + PageCache.TableName + " where " + PageCache.KeyId + " in ({1})\r\n");
                    selectSqlContent.Append("            {0} limit {2};\", whereStr, idArrayStr, idList.Count);\r\n");

                    string template = @"
        public List<{0}> GetPartAll(List<string> idList)
        {{
            var idArrayStr = string.Join("","", (from f in idList
                                select ""'""+ f + ""'"").ToArray());
            string whereStr = string.Empty;
{2}
            List<{0}> result = new List<{0}>();
            using (IDbConnection sqlcn = ConnectionFactory.{1})
            {{
                result = sqlcn.Query<{0}>(selectSql).ToList();
            }}

            return result;
        }}

";
                    down_selectModel_Str.AppendFormat(template,
                                                      PageCache.TableName_Model,
                                                      PageCache.DatabaseName,
                                                      selectSqlContent.ToString());
                }
                #endregion

                return(down_allModel_Str.ToString() + down_selectModel_Str.ToString());
            }
            else
            {
                return(string.Empty);
            }
        }