Beispiel #1
0
        /// <summary>
        /// 生成通知渠道类型NoticeChanelType枚举对应的KeyValue选项
        /// </summary>
        /// <returns></returns>
        private LibTextOptionCollection GetNoticeTypeKeyValue()
        {
            LibTextOptionCollection options = new LibTextOptionCollection();
            Array arrays = Enum.GetValues(typeof(NoticeChanelType));

            for (int i = 0; i < arrays.LongLength; i++)
            {
                object    test        = arrays.GetValue(i);
                FieldInfo fieldInfo   = test.GetType().GetField(test.ToString());
                int       key         = (int)arrays.GetValue(i);
                object[]  attribArray = fieldInfo.GetCustomAttributes(typeof(DescriptionAttribute), true);
                if (attribArray == null || attribArray.Length == 0)
                {
                    continue;
                }
                else
                {
                    DescriptionAttribute attr = attribArray[0] as DescriptionAttribute;
                    if (attr == null)
                    {
                        continue;
                    }
                    options.Add(new LibTextOption()
                    {
                        Key   = Convert.ToString((int)arrays.GetValue(i)),
                        Value = attr.Description
                    });
                }
            }
            return(options);
        }
Beispiel #2
0
        protected override void BuildDataSet()
        {
            this.DataSet = new DataSet();
            string    primaryName = "Id";
            DataTable masterTable = new DataTable(masterTableName);

            DataSourceHelper.AddColumn(new DefineField(masterTable, primaryName, "用户账号", FieldSize.Size20)
            {
                AllowEmpty = false, AllowCopy = false
            });
            DataSourceHelper.AddColumn(new DefineField(masterTable, "Name", "用户名称", FieldSize.Size50));
            DataSourceHelper.AddColumn(new DefineField(masterTable, "Password", "用户密码", FieldSize.Size50)
            {
                AllowCondition = false, InputType = InputType.Password
            });
            DataSourceHelper.AddColumn(new DefineField(masterTable, "UserImage", "用户头像", FieldSize.Size50));
            DataSourceHelper.AddColumn(new DefineField(masterTable, "PERSONID", "人员代码", FieldSize.Size20)
            {
                ControlType    = LibControlType.IdName,
                SelectSql      = "Select A.PERSONID as Id,A.PERSONNAME as Name From COMPERSON A",
                SelectFields   = "A.PERSONNAME",
                RelativeSource = new RelativeSourceCollection()
                {
                    new RelativeSource("com.Person")
                    {
                        RelFields = new RelFieldCollection()
                        {
                            new RelField("PERSONNAME", LibDataType.NText, FieldSize.Size50, "人员名称"),
                            //new RelField("PHONENO",LibDataType.Text,FieldSize.Size20,"手机","PERSONPHONE"),
                            //new RelField("CORNET",LibDataType.Text,FieldSize.Size20,"短号","PERSONPHONENO"),
                            //new RelField("HEADPORTRAIT",LibDataType.NText,FieldSize.Size500,"头像","PERSONHEADPORTRAIT"),
                            //new RelField("MAIL",LibDataType.Text,FieldSize.Size50,"邮箱","PERSONMAIL")
                        }
                    }
                }
            });
            DataSourceHelper.AddColumn(new DefineField(masterTable, "ROLEID", "角色", FieldSize.Size20)
            {
                ControlType    = LibControlType.IdName,
                RelativeSource = new RelativeSourceCollection()
                {
                    new RelativeSource("axp.Role")
                    {
                        RelFields = new RelFieldCollection()
                        {
                            new RelField("ROLENAME", LibDataType.NText, FieldSize.Size50, "角色名称")
                        }
                    }
                }
            });
            DataSourceHelper.AddColumn(new DefineField(masterTable, "PhoneId", "手机标识", FieldSize.Size50)
            {
                AllowCondition = false, InputType = InputType.Password
            });
            DataSourceHelper.AddColumn(new DefineField(masterTable, "ISUSE", "启用")
            {
                DataType = LibDataType.Boolean, ControlType = LibControlType.YesNo, DefaultValue = true
            });
            DataSourceHelper.AddColumn(new DefineField(masterTable, "WALLPAPER", "壁纸", FieldSize.Size100)
            {
                DataType = LibDataType.NText, ControlType = LibControlType.NText, ReadOnly = true
            });
            DataSourceHelper.AddColumn(new DefineField(masterTable, "WALLPAPERSTRETCH", "充满桌面")
            {
                DataType = LibDataType.Boolean, ControlType = LibControlType.YesNo, ReadOnly = true, DefaultValue = true
            });
            DataSourceHelper.AddFixColumn(masterTable, this.BillType);
            masterTable.PrimaryKey = new DataColumn[] { masterTable.Columns[primaryName] };
            this.DataSet.Tables.Add(masterTable);
            ///*
            // 系统账户对应的各个APP信息
            DataTable bodyTable = new DataTable(tableAppName);

            DataSourceHelper.AddColumn(new DefineField(bodyTable, primaryName, "用户账号", FieldSize.Size20));
            DataSourceHelper.AddRowId(bodyTable);
            DataSourceHelper.AddRowNo(bodyTable);
            LibTextOptionCollection appTypeOptionList = new LibTextOptionCollection();

            appTypeOptionList.Add(new LibTextOption()
            {
                Key = ((int)AppType.LeaderMobile).ToString(), Value = "App"
            });
            appTypeOptionList.Add(new LibTextOption()
            {
                Key = ((int)AppType.PDA).ToString(), Value = "PDA"
            });
            DataSourceHelper.AddColumn(new DefineField(bodyTable, "CLIENTTYPE", "APP类型")
            {
                DataType       = LibDataType.Int32,
                ControlType    = LibControlType.KeyValueOption,// 需要以键值对的形式给出选项,以便Int32的值可以与枚举项的值对应
                KeyValueOption = appTypeOptionList
            });
            DataSourceHelper.AddColumn(new DefineField(bodyTable, "CLIENTID", "客户端ID", FieldSize.Size100));
            bodyTable.PrimaryKey = new DataColumn[] { bodyTable.Columns[primaryName], bodyTable.Columns["ROW_ID"] };

            this.DataSet.Tables.Add(bodyTable);
            this.DataSet.Relations.Add(string.Format("{0}_{1}", masterTableName, tableAppName), masterTable.Columns[primaryName], bodyTable.Columns[primaryName]);

            // 账户可以登录的网站
            DataTable siteTable = new DataTable(siteTableName);

            DataSourceHelper.AddColumn(new DefineField(siteTable, primaryName, "用户账号", FieldSize.Size20));
            DataSourceHelper.AddRowId(siteTable);
            DataSourceHelper.AddRowNo(siteTable);
            DataSourceHelper.AddColumn(new DefineField(siteTable, "SITEID", "站点", FieldSize.Size20)
            {
                RelativeSource = new RelativeSourceCollection()
                {
                    new RelativeSource("axp.LinkSite")
                    {
                        RelFields = new RelFieldCollection()
                        {
                            new RelField("SHORTNAME", LibDataType.NText, FieldSize.Size100, "站点名称")
                        }
                    }
                }
            });
            siteTable.PrimaryKey = new DataColumn[] { siteTable.Columns[primaryName], siteTable.Columns["ROW_ID"] };
            this.DataSet.Tables.Add(siteTable);
            this.DataSet.Relations.Add(string.Format("{0}_{1}", masterTableName, siteTableName), masterTable.Columns[primaryName], siteTable.Columns[primaryName]);
            //*/
        }