예제 #1
0
        private string GetModelSql(string id)
        {
            string      re    = @"
                        SELECT	@ReturnValue = 0
                        SET @MMID=CONVERT(BIGINT,@MMID)+6
                EXEC	@return_value = [dbo].[proc_K_ModelManageSave]
		                @TranType = N'NEW',
                        @ID = @MMID,
";
            ModelManage mmObj = new ModelManage();
            DataTable   dt    = mmObj.GetList("ONE", Utils.getOneParams(id));

            if (dt.Rows.Count > 0)
            {
                DataRow  dr  = dt.Rows[0];
                string[] arr = GetTableAction(dr["TableName"].ToString());

                re += GetFieldValue(dr["MenuNo"].ToString(), "N''", "MenuNo");
                re += GetFieldValue(SiteID.ToString(), "1", "SiteID");
                re += GetFieldValue(dr["Title"].ToString(), "N''", "Title");
                re += GetFieldValue(dr["TableName"].ToString(), "N''", "TableName");
                re += GetFieldValue(dr["ModuleID"].ToString(), "NULL", "ModuleID");
                re += GetFieldValue(dr["SysField"].ToString(), "N''", "SysField");
                re += GetFieldValue(dr["ListLink"].ToString(), "N''", "ListLink");
                re += GetFieldValue(dr["ListButton"].ToString(), "N''", "ListButton");
                re += GetFieldValue(dr["OperationColumn"].ToString(), "N''", "OperationColumn");
                re += GetFieldValue(dr["CustomCol"].ToString(), "N''", "CustomCol");
                re += GetFieldValue(dr["Memo"].ToString(), "N''", "Memo");
                re += "@Orders=@MMORDERS,\r\n";
                re += GetFieldValue(dr["IsEnable"].ToString(), "true", "IsEnable");
                re += GetFieldValue(dr["IsDel"].ToString(), "false", "IsDel");
                re += GetFieldValue(dr["IsHtml"].ToString(), "false", "IsHtml");
                re += GetFieldValue(dr["IsOrderEdit"].ToString(), "true", "IsOrderEdit");
                re += "@ddlSql=N'" + GetTablesScript(dr["TableName"].ToString()) + "',\r\n";
                re += "@dmlSql=N'',\r\n";
                re += "@operName=N'" + arr[1] + "',\r\n";
                re += "@operTitle=N'" + arr[0] + "',\r\n";
                re += "@operCount=" + arr[2] + ",\r\n";
                re += GetFieldValue(dr["IsListContentClip"].ToString(), "true", "IsListContentClip");
                re += GetFieldValue(dr["DeliverAndSearchUrlParam"].ToString(), "NULL", "DeliverAndSearchUrlParam");
                re += GetFieldValue(dr["FieldFromUrlParamValue"].ToString(), "NULL", "FieldFromUrlParamValue");
                re += GetFieldValue(dr["OperationColumnWidth"].ToString(), "N''", "OperationColumnWidth");
                re += GetFieldValue(dr["ConfigMan"].ToString(), "N'admin'", "ConfigMan");
                re += GetFieldValue(dr["NotSearchField"].ToString(), "NULL", "NotSearchField");
                re += GetFieldValue(dr["BackDeliverUrlParam"].ToString(), "'NodeCode'", "BackDeliverUrlParam");
                re += GetFieldValue(dr["CommonField"].ToString(), "N''", "CommonField");
                re += GetFieldValue(dr["IsSub"].ToString(), "false", "IsSub");
                re += GetFieldValue(dr["SubModelGroupID"].ToString(), "NULL", "SubModelGroupID");
            }
            re += "@ReturnValue = @ReturnValue OUTPUT\r\n";
            re += "IF @ReturnValue=1\r\n";
            re += "BEGIN\r\n";

            return(re);
        }
        private string GetModelSql(string id, out string title)
        {
            #region 存储过程执行示例

            /*
             * DECLARE	@return_value int,
             *  @ReturnValue int
             *
             * SELECT	@ReturnValue = 0
             *
             * EXEC	@return_value = [dbo].[proc_K_ModelManageSave]
             *  @TranType = N'NEW',
             *  @ID = N'100000007863852',
             *  @MenuNo = N'76d6c241-548b-4633-9c2c-c33f8e09c7eb',
             *  @SiteID = 1,
             *  @Title = N'测试模型',
             *  @TableName = N'K_U_test22',
             *  @ModuleID = 1,
             *  @SysField = N'7',
             *  @ListLink = N'none$',
             *  @ListButton = N'1,2$',
             *  @CustomCol = N'',
             *  @OperationColumn = N'1,2',
             *  @Memo = N'',
             *  @Orders = 78,
             *  @IsEnable = true,
             *  @IsDel = false,
             *  @IsHtml = true,
             *  @IsOrderEdit = true,
             *  @ddlSql = N'CREATE TABLE [K_U_test22] ([ID] varchar(15) NOT NULL,[IsDel] int default(0) null,[IsEnable] int default(1) null,[IsArchiving] int default(0) null,[Orders] bigint default(0) null,[AddDate] datetime default(getdate()) null,[DelTime] datetime default(getdate()) null,[SiteID] int not null,[NodeCode] varchar(50) not null,[FlowState] int null default(3) CHECK([FlowState] >= 0 AND [FlowState] <= 99),[ReferenceID] varchar(15)  NULL,[AddMan] varchar(50)  NULL,CONSTRAINT [PK_K_U_CLU_K_U_test22] PRIMARY KEY CLUSTERED ([ID] ASC));alter table K_U_test22 add  Source nvarchar(256)  null  default('''');',
             *  @dmlSql = N'''''',
             *  @operName = N'添加,删除,修改',
             *  @operTitle = N'New,Delete,Edit',
             *  @operCount = 3,
             *  @IsListContentClip = true,
             *  @OperationColumnWidth = N'''''',
             *  @ConfigMan = N'admin',
             *  @CommonField = N'c5926f2e-d778-4aa3-8a61-cfa5bc983c8c,49defabe-7431-4147-ad9b-d0b7d423110d,e3bbb9df-afff-409d-bf13-64f92382e5ae,1f69d33c-5e44-4cdc-8095-9777971232b2,b08df817-d5bb-4de1-94c8-c04e507d26ff,237ad893-d2b4-441a-b1b7-e66f4825f914,f217c6c8-f938-46bf-a2c9-6ba06df0240c,8399c733-b017-4faa-b404-20eaf53e6f42,1cac109f-e00c-4c96-a129-438ee61e14e8',
             *  @IsSub = false,
             *  @SubModelGroupID = null,
             *  @NotSearchField = N'null',
             *  @BackDeliverUrlParam = N'nodecode',
             *  @FieldFromUrlParamValue = N'null',
             *  @DeliverAndSearchUrlParam = N'null',
             *  @ReturnValue = @ReturnValue OUTPUT
             *
             * SELECT	@ReturnValue as N'@ReturnValue'
             */
            #endregion

            string      re    = @"
                        SELECT	@ReturnValue = 0
                        SET @MMID=CONVERT(BIGINT,@MMID)+6
                        SET @MMORDERS=CONVERT(BIGINT,@MMORDERS)+6
                EXEC	@return_value = [dbo].[proc_K_ModelManageSave]
		                @TranType = N'NEW',
                        @ID = @MMID,
";
            ModelManage mmObj = new ModelManage();
            DataTable   dt    = mmObj.GetList("ONE", Utils.getOneParams(id));
            title = string.Empty;
            string InserPublicOperSql = string.Empty;
            if (dt.Rows.Count > 0)
            {
                DataRow  dr  = dt.Rows[0];
                string[] arr = GetTableAction(dr["TableName"].ToString());

                re += GetFieldValue(dr["MenuNo"].ToString(), "N''", "MenuNo");
                re += GetFieldValue(SiteID.ToString(), "1", "SiteID");
                re += GetFieldValue(dr["Title"].ToString(), "N''", "Title");
                re += GetFieldValue(dr["TableName"].ToString(), "N''", "TableName");
                re += GetFieldValue(dr["ModuleID"].ToString(), "NULL", "ModuleID");
                re += GetFieldValue(dr["SysField"].ToString(), "N''", "SysField");
                re += GetFieldValue(dr["ListLink"].ToString(), "N''", "ListLink");
                re += GetFieldValue(dr["ListButton"].ToString(), "N''", "ListButton");
                re += GetFieldValue(dr["OperationColumn"].ToString(), "N''", "OperationColumn");
                re += GetFieldValue(dr["CustomCol"].ToString(), "N''", "CustomCol");
                re += GetFieldValue(dr["Memo"].ToString(), "N''", "Memo");
                re += "@Orders=@MMORDERS,\r\n";
                re += GetFieldValue(dr["IsEnable"].ToString(), "true", "IsEnable");
                re += GetFieldValue(dr["IsDel"].ToString(), "false", "IsDel");
                re += GetFieldValue(dr["IsHtml"].ToString(), "false", "IsHtml");
                re += GetFieldValue(dr["IsOrderEdit"].ToString(), "true", "IsOrderEdit");
                re += "@ddlSql=N'" + GetTablesScript(dr["TableName"].ToString()) + "',\r\n";
                re += "@dmlSql=N'',\r\n";
                re += "@operName=N'" + arr[1] + "',\r\n";
                re += "@operTitle=N'" + arr[0] + "',\r\n";
                re += "@operCount=" + arr[2] + ",\r\n";
                re += GetFieldValue(dr["IsListContentClip"].ToString(), "true", "IsListContentClip");
                re += GetFieldValue(dr["DeliverAndSearchUrlParam"].ToString(), "NULL", "DeliverAndSearchUrlParam");
                re += GetFieldValue(dr["FieldFromUrlParamValue"].ToString(), "NULL", "FieldFromUrlParamValue");
                re += GetFieldValue(dr["OperationColumnWidth"].ToString(), "N''", "OperationColumnWidth");
                re += GetFieldValue(dr["ConfigMan"].ToString(), "N'admin'", "ConfigMan");
                re += GetFieldValue(dr["NotSearchField"].ToString(), "NULL", "NotSearchField");
                re += GetFieldValue(dr["BackDeliverUrlParam"].ToString(), "'NodeCode'", "BackDeliverUrlParam");
                re += GetFieldValue(dr["CommonField"].ToString(), "N''", "CommonField");
                re += GetFieldValue(dr["IsSub"].ToString(), "false", "IsSub");
                re += GetFieldValue(dr["SubModelGroupID"].ToString(), "NULL", "SubModelGroupID");

                title = dr["Title"].ToString();
                string[] operArr      = arr[0].Split(',');
                string[] operArrTitle = arr[1].Split(',');
                for (int i = 0; i < operArr.Length; i++)
                {
                    InserPublicOperSql += "IF not exists(select top 1 * from K_SysPublicOper where OperName='" + operArrTitle[i].Replace("'", "''") + "')\r\n";
                    InserPublicOperSql += "      INSERT INTO K_SysPublicOper(OperName,Title,IsValid) VALUES ('" + operArrTitle[i].Replace("'", "''") + "','" + operArr[i].Replace("'", "''") + "',1);\r\n";
                }
            }
            re += "@ReturnValue = @ReturnValue OUTPUT\r\n";
            re += "IF @ReturnValue=1\r\n";
            re += "BEGIN\r\n";
            re += InserPublicOperSql;

            return(re);
        }