Exemplo n.º 1
0
        /// <summary>
        /// 创建保存用的临时数据
        /// </summary>
        /// <param name="currentBusiness">业务数据(组,组的用户,组的权限,功能点的自定义名称)</param>
        /// <param name="lbAvailableUser"></param>
        /// <param name="lbSelectedUser"></param>
        /// <returns></returns>
        public DataSet CreateSaveData(DataSet currentBusiness, ListBox lbAvailableUser, ListBox lbSelectedUser)
        {
            DataSet      save  = new DataSet();
            DataRowState state = currentBusiness.Tables[BusinessDataSetIndex.Groups].Rows[0].RowState;

            currentBusiness.Tables[BusinessDataSetIndex.Groups].AcceptChanges();

            DataTable summary = currentBusiness.Tables[BusinessDataSetIndex.Groups].Copy();

            if (state == DataRowState.Added)
            {
                summary.Rows[0].SetAdded();
                _GroupID = Convert.ToInt32(BridgeFactory.CreateCommonServiceBridge().GetTableID(tb_sys_UserGroup.__TableName, tb_sys_UserGroup.__KeyName));
                summary.Rows[0][tb_sys_UserGroup.__KeyName] = _GroupID;
            }
            else if (state == DataRowState.Modified)
            {
                _GroupID = Convert.ToInt32(summary.Rows[0][tb_sys_UserGroup.__KeyName]);
                summary.Rows[0].SetModified();
            }
            DataTable auths = GetGroupAuthorityChanges(currentBusiness.Tables[BusinessDataSetIndex.GroupAuthorities]).Copy();
            DataTable user  = GetGroupUserChanges(currentBusiness, lbAvailableUser, lbSelectedUser);

            //DataTable tagNames = _FormTagCustomName.GetChanges();

            save.Tables.Add(summary);                                                                                       //用户组
            save.Tables.Add(user);                                                                                          //用户数据
            save.Tables.Add(auths == null ? currentBusiness.Tables[BusinessDataSetIndex.GroupAuthorities].Clone() : auths); //权限数据
            //save.Tables.Add(tagNames == null ? _FormTagCustomName.Clone() : tagNames); //功能点的自定义名称

            return(save);
        }
Exemplo n.º 2
0
        public bool Login(LoginUser loginUser)
        {
            //调用数据访问层的接口检查用户登录
            //用户登录前尚未创建Loginer对象,所有传null值
            IBridge_User bridge = BridgeFactory.CreateUserBridge();
            DataTable    data   = bridge.Login(loginUser, Char.Parse(LoginUserType.S.ToString()));

            if (data.Rows.Count == 0)
            {
                throw new CustomException("登录失败,请检查用户名和密码!");
            }
            DataRow row = data.Rows[0];

            //用户实例,登录成功
            Loginer user = new Loginer();

            user.Account     = ConvertEx.ToString(row[TUser.Account]);
            user.AccountName = ConvertEx.ToString(row[TUser.UserName]);
            user.FlagAdmin   = ConvertEx.ToString(row[TUser.FlagAdmin]);
            user.Email       = ConvertEx.ToString(row[TUser.Email]);
            user.LoginTime   = DateTime.Now;

            //参数:dataSet: 帐套编号, 从帐套字典表获取DBName,DataSetID,DataSetName三个字段的值
            //给下面三个属性赋值
            user.DBName    = loginUser.DataSetDBName; //重要:在数据层根据DBName设置连接数据库
            user.DataSetID = loginUser.DataSetID;

            Loginer.CurrentUser = user;                                             //保存当前用户

            SystemAuthentication.UserAuthorities = bridge.GetUserAuthorities(user); //下载用户权限

            return(true);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 更新菜单标题
        /// </summary>
        /// <param name="item"></param>
        private void UpdateMenu(ToolStripItem item)
        {
            MenuItemTag tag    = item.Tag as MenuItemTag;
            string      filter = string.Format("FNumber='{0}' and FModelID={1}", item.Name, tag.ModuleID);

            DataRow[] exists = _SummaryTable.Select(filter);
            if (exists.Length > 0)
            {
                string caption = ConvertEx.ToString(exists[0][tb_sys_Function.FName]);
                if (caption != item.Text)
                {
                    _LastUpdated += 1;
                    exists[0][tb_sys_Function.FName] = item.Text; //更新菜单标题.
                }
            }
            else
            {
                DataRow append = _SummaryTable.NewRow();
                append[tb_sys_Function.FID]       = Convert.ToInt32(BridgeFactory.CreateCommonServiceBridge().GetTableID(tb_sys_Function.__TableName, tb_sys_Function.__KeyName)) + _LastInserted;
                append[tb_sys_Function.FAuths]    = tag.FormAuthorities;
                append[tb_sys_Function.FName]     = item.Text;
                append[tb_sys_Function.FNumber]   = item.Name;
                append[tb_sys_Function.FMenuType] = tag.MenuType.ToString();
                append[tb_sys_Function.FModelID]  = tag.ModuleID;
                _SummaryTable.Rows.Add(append);

                _LastInserted += 1;
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// 增加菜单权限
        /// </summary>
        /// <param name="auths">权限表</param>
        /// <param name="node">当前处理的树结点</param>
        private void AddAuthority(DataTable auths, TreeNode node)
        {
            int actions  = 0;
            int moduleID = 0;

            AuthNodeTag tag = node.Tag as AuthNodeTag; //取树结点的引用对象

            //新增组权限记录
            DataRow newrow = auths.NewRow();

            if (_UGID == 0)
            {
                _UGID = Convert.ToInt32(BridgeFactory.CreateCommonServiceBridge().GetTableID(tb_sys_UG_Auth.__TableName, tb_sys_UG_Auth.__KeyName));
            }
            newrow[tb_sys_UG_Auth.FID] = _UGID.ToString();
            _UGID++;
            newrow[tb_sys_UG_Auth.FUGID] = _GroupID;
            string sFun = tag.DataRow == null?tag.FUnctionID.ToString() : tag.DataRow[tb_sys_UG_Auth.FunctionID].ToString();

            newrow[tb_sys_UG_Auth.FunctionID] = sFun == "" ? "0" : sFun;  //tag.DataRow == null ? tag.FUnctionID : tag.DataRow[tb_sys_UG_Auth.FunctionID];
            newrow[tb_sys_UG_Auth.FMenu]      = tag.AuthID;


            if (tag.MenuItem.Tag != null && tag.MenuItem.Tag is MenuItemTag)
            {
                //取当前处理的树结点所有权限值加总
                actions  = this.GetActions(node);
                moduleID = (tag.MenuItem.Tag as MenuItemTag).ModuleID;//模块编号
            }
            newrow[tb_sys_UG_Auth.FModelID] = moduleID;
            newrow[tb_sys_UG_Auth.FAuths]   = actions;
            //newrow[TUserRole.Authorities] = actions;
            //newrow[TUserRole.ModuleID] = moduleID;
            auths.Rows.Add(newrow);
        }
Exemplo n.º 5
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);//捕获系统所产生的异常。
            Application.ApplicationExit += new EventHandler(Application_ApplicationExit);

            Program.CheckInstance();                       //检查程序是否运行多实例
            SystemConfig.ReadSettings();                   //读取用户自定义设置

            if (false == BridgeFactory.InitializeBridge()) //初始化桥接功能
            {
                Application.Exit();
                return;
            }

            BonusSkins.Register();         //注册Dev酷皮肤
            OfficeSkins.Register();        ////注册Office样式的皮肤
            SkinManager.EnableFormSkins(); //启用窗体支持换肤特性

            //注意:先打开登陆窗体,登陆成功后正式运行程序(MDI主窗体)
            if (frmLogin.Login())
            {
                Program.MainForm.Show();
                Application.Run();
            }
            else//登录失败,退出程序
            {
                Application.Exit();
            }
        }
Exemplo n.º 6
0
        public void DownloadBaseCacheData()
        {
            IBridge_DataDict bridge = BridgeFactory.CreateDataDictBridge("");

            //下载小字典表数据
            _AllDataDicts = bridge.DownloadDicts();

            //跟据存储过程返回数据表的顺序取
            _BusinessTables     = _AllDataDicts.Tables[1];
            _User               = _AllDataDicts.Tables[2];
            _Person             = _AllDataDicts.Tables[3];
            _CustomerAttributes = _AllDataDicts.Tables[4];
            _Bank               = _AllDataDicts.Tables[5];
            _CommonDataDictType = _AllDataDicts.Tables[6];
            _PayType            = _AllDataDicts.Tables[7];
            _Currency           = _AllDataDicts.Tables[8];
            _Location           = _AllDataDicts.Tables[9];
            _DepartmentData     = _AllDataDicts.Tables[10];

            //调用数据表名
            _AllDataDicts.Tables[1].TableName  = sys_BusinessTables.__TableName;
            _AllDataDicts.Tables[2].TableName  = TUser.__TableName;
            _AllDataDicts.Tables[3].TableName  = tb_Person.__TableName;
            _AllDataDicts.Tables[4].TableName  = tb_CustomerAttribute.__TableName;
            _AllDataDicts.Tables[5].TableName  = "#Bank"; //tb_CommDataDictType表的银行类别的记录
            _AllDataDicts.Tables[6].TableName  = tb_CommDataDictType.__TableName;
            _AllDataDicts.Tables[7].TableName  = tb_PayType.__TableName;
            _AllDataDicts.Tables[8].TableName  = tb_Currency.__TableName;
            _AllDataDicts.Tables[9].TableName  = tb_Location.__TableName;
            _AllDataDicts.Tables[10].TableName = "#Dept"; //tb_CommDataDictType表的部门类别的记录
        }
Exemplo n.º 7
0
        private void BindingOrganization()
        {
            IBridge_CommonService bridge = BridgeFactory.CreateCommonServiceBridge();
            DataTable             data   = bridge.GetSystemOrganization();

            DataBinder.BindingLookupEditDataSource(cmbOrg, data, "FNAME", "FNUMBER");
        }
Exemplo n.º 8
0
        private void BindingDataSet(string sOrgID)
        {
            IBridge_CommonService bridge = BridgeFactory.CreateCommonServiceBridge();
            DataTable             data   = bridge.GetSystemDataSetByOrg(sOrgID);

            DataBinder.BindingLookupEditDataSource(cmbDataset, data, "FNAME", "FNUMBER");
        }
Exemplo n.º 9
0
        /// <summary>
        /// 更新按钮
        /// </summary>
        /// <param name="item"></param>
        private void UpdateButton(BarItem item, string sFunid)
        {
            string filter = string.Format(tb_sys_Fun_MenuBar.FNumber + "='{0}' and " + tb_sys_Fun_MenuBar.FFunctionID + "={1}", item.Name, sFunid);

            DataRow[] exists = _AuthorityItem.Select(filter);
            if (exists.Length > 0)
            {
                string caption = ConvertEx.ToString(exists[0][tb_sys_Fun_MenuBar.FName]);
                if (caption != item.Caption)
                {
                    _ButtonUpdated += 1;
                    exists[0][tb_sys_Fun_MenuBar.FName] = item.Caption; //更新菜单标题.
                }
            }
            else
            {
                DataRow append = _AuthorityItem.NewRow();;
                append[tb_sys_Fun_MenuBar.FID]         = Convert.ToInt32(BridgeFactory.CreateCommonServiceBridge().GetTableID(tb_sys_Fun_MenuBar.__TableName, tb_sys_Fun_MenuBar.__KeyName)) + _ButtonInserted;
                append[tb_sys_Fun_MenuBar.FNumber]     = item.Name;
                append[tb_sys_Fun_MenuBar.FName]       = item.Caption;
                append[tb_sys_Fun_MenuBar.FFunctionID] = sFunid;
                append[tb_sys_Fun_MenuBar.FAuthority]  = _MaxAuthorID;
                _MaxAuthorID = _MaxAuthorID * 2;
                _AuthorityItem.Rows.Add(append);

                _ButtonInserted += 1;
            }
        }
Exemplo n.º 10
0
        private IBridge_SUPPLIERCUSTOMER _MyBridge; //桥接/策略接口

        public bllSUPPLIERCUSTOMER()
        {
            _KeyFieldName     = tb_SUPPLIERCUSTOMER.__KeyName;   //主键字段
            _SummaryTableName = tb_SUPPLIERCUSTOMER.__TableName; //表名
            _WriteDataLog     = true;                            //是否保存日志
            _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(tb_SUPPLIERCUSTOMER));
            _MyBridge         = this.CreateBridge();
        }
Exemplo n.º 11
0
 public bllUser()
 {
     _KeyFieldName     = TUser.__KeyName;   //主键字段
     _SummaryTableName = TUser.__TableName; //表名
     _WriteDataLog     = false;             //是否保存日志
     _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(TUser));
     _MyBridge         = this.CreateBridge();
 }
Exemplo n.º 12
0
 public bllCommonDataDict()
 {
     _KeyFieldName     = tb_CONFIG_DETAIL.__KeyName;   //主键字段
     _SummaryTableName = tb_CONFIG_DETAIL.__TableName; //表名
     _WriteDataLog     = true;                         //是否保存日志
     _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(tb_CONFIG_DETAIL));
     _SelfBridge       = BridgeFactory.CreateCommonDataDictBridge();
 }
Exemplo n.º 13
0
 public bllSystemProfile()
 {
     _KeyFieldName     = tb_sys_SystemProfile.__KeyName;   //主键字段
     _SummaryTableName = tb_sys_SystemProfile.__TableName; //表名
     _WriteDataLog     = false;                            //是否保存日志
     _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(tb_sys_SystemProfile));
     _MyBridge         = this.CreateBridge();
 }
 public bllAccountIDs()
 {
     _KeyFieldName     = tb_AccountIDs.__KeyName;   //主键字段
     _SummaryTableName = tb_AccountIDs.__TableName; //表名
     _WriteDataLog     = false;                     //是否保存日志
     _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(tb_AccountIDs));
     _MyBridge         = this.CreateBridge();
 }
Exemplo n.º 15
0
        private IBridge_Customer _MyBridge; //桥接/策略接口

        public bllCustomer()
        {
            _KeyFieldName     = tb_Customer.__KeyName;   //主键字段
            _SummaryTableName = tb_Customer.__TableName; //表名
            _WriteDataLog     = true;                    //是否保存日志
            _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(tb_Customer));
            _MyBridge         = this.CreateBridge();
        }
Exemplo n.º 16
0
 private IBridge_Customer _MyBridge; //桥接/策略接口
 public blltest03()
 {
     _KeyFieldName     = tb_test01.__KeyName;   //主键字段
     _SummaryTableName = tb_test01.__TableName; //表名
     _WriteDataLog     = true;                  //是否保存日志
     //_DAL = new daltest03(Loginer.CurrentUser);//数据层的实例
     _DataDictBridge = BridgeFactory.CreateDataDictBridge(typeof(tb_test01));
     _MyBridge       = this.CreateBridge();
 }
Exemplo n.º 17
0
 internal TealBeanRenderWalker(IInteraction tealBean, VersionNumber version, TimeZoneInfo dateTimeZone, TimeZoneInfo dateTimeTimeZone
                               , BridgeFactory factory)
 {
     this.tealBean         = tealBean;
     this.dateTimeZone     = dateTimeZone;
     this.dateTimeTimeZone = dateTimeTimeZone;
     this.factory          = factory;
     this.version          = version;
 }
Exemplo n.º 18
0
        public bllPerson()
        {
            _KeyFieldName     = tb_Person.__KeyName;   //主键字段
            _SummaryTableName = tb_Person.__TableName; //表名
            _WriteDataLog     = true;                  //是否保存日志

            //方式一:由ORM自动查询DAL类
            _DataDictBridge = BridgeFactory.CreateDataDictBridge(typeof(tb_Person));
        }
Exemplo n.º 19
0
 public bllCommonDataDict()
 {
     _KeyFieldName     = tb_t_CommonDataDict.__KeyName;   //主键字段
     _SummaryTableName = tb_t_CommonDataDict.__TableName; //表名
     _WriteDataLog     = false;                           //是否保存日志
     _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(tb_t_CommonDataDict));
     _SelfBridge       = BridgeFactory.CreateCommonDataDictBridge();
     _SummaryTable     = DataDictCache.Cache.CommonDataDict;
 }
Exemplo n.º 20
0
        /// <summary>
        /// 获取窗体的功能ID
        /// </summary>
        /// <param name="sMenu"></param>
        /// <returns></returns>
        public static string GetFunctionID(string sMenu)
        {
            string sRet = BridgeFactory.CreateCommonServiceBridge().GetTableFieldValue(tb_sys_Function.__TableName, tb_sys_Function.__KeyName, " And " + tb_sys_Function.FNumber + "='" + sMenu + "'");

            if (sRet == string.Empty)
            {
                sRet = "0";
            }
            return(sRet);
        }
Exemplo n.º 21
0
        public bllMenuMgr()
        {
            _DataDictBridge   = BridgeFactory.CreateDataDictBridge(typeof(TMenu));
            _KeyFieldName     = TMenu.__KeyName;
            _SummaryTableName = TMenu.__TableName;

            _MyBridge          = BridgeFactory.CreateUserGroupBridge();
            _AuthorityItem     = _MyBridge.GetAuthorityItem();     //Actions Master Data
            _FormTagCustomName = _MyBridge.GetFormTagCustomName(); //自定义功能名称
        }
        private IFieldBridge GetFieldBridge(MemberInfo member)
        {
            var memberType = GetMemberType(member);

            return(BridgeFactory.GuessType(
                       member.Name, memberType,
                       GetFieldBridgeDefinition(member),
                       mappingDefinition.DateBridge(member)
                       ));
        }
Exemplo n.º 23
0
        private IFieldBridge GetFieldBridge(MemberInfo member)
        {
            var memberType = GetMemberType(member);

            return(BridgeFactory.GuessType(
                       member.Name, memberType,
                       AttributeUtil.GetFieldBridge(member),
                       AttributeUtil.GetAttribute <DateBridgeAttribute>(member)
                       ));
        }
Exemplo n.º 24
0
 public bllDatabaseSet()
 {
     _KeyFieldName          = tb_t_ItemPropDesc.__KeyName;   //主键字段
     _SummaryTableName      = tb_t_ItemPropDesc.__TableName; //表名
     _ClassKeyFieldName     = tb_t_ItemClass.__KeyName;      //分类字段主键
     _ClassSummaryTableName = tb_t_ItemClass.__TableName;    //表名
     _WriteDataLog          = true;                          //是否保存日志
     _DataDictBridge        = BridgeFactory.CreateDataDictBridge(typeof(tb_t_ItemClass));
     _ItemClassBridge       = BridgeFactory.CreateItemClassBridge();
     _ItemPropDescBridge    = BridgeFactory.CreateItemPropDescBridge();
 }
Exemplo n.º 25
0
        private void BindingDataSet()
        {
            //DataTable data = CommonData.GetSystemDataSet();
            //DataBinder.BindingLookupEditDataSource(txtDataset, data, "DataSetName", "DataSetID");
            //txtDataset.EditValue = _user.DataSetID;
            IBridge_CommonService bridge = BridgeFactory.CreateCommonServiceBridge();
            DataTable             data   = bridge.GetSystemDataSet();

            DataBinder.BindingLookupEditDataSource(txtDataset, data, "FNAME", "FNUMBER");
            txtDataset.EditValue = _user.DataSetID;
        }
Exemplo n.º 26
0
 /// <summary>
 /// 登出
 /// </summary>
 public void Logout()
 {
     try
     {
         IBridge_User user = BridgeFactory.CreateUserBridge();
         user.Logout(Loginer.CurrentUser.Account);
     }
     catch
     {
     }
 }
        protected FluentMappingPart(PropertyInfo propertyInfo)
        {
            this.Name(propertyInfo.Name);

            // set the default getter
            this.Getter = new BasicPropertyAccessor.BasicGetter(propertyInfo.DeclaringType, propertyInfo, propertyInfo.Name);

            // set the default bridge
            var bridge = BridgeFactory.GuessType(propertyInfo.Name, propertyInfo.PropertyType, null, null);

            (this as IHasBridge).FieldBridge = bridge;
        }
Exemplo n.º 28
0
        /// <summary>
        /// 保存附件
        /// </summary>
        /// <param name="storage">附件数据</param>
        public void SaveAttachedFile(DataTable storage)
        {
            DataTable temp = storage.GetChanges(); //获取修改的记录

            if (temp != null)                      //有新增或修改附件,保存数据
            {
                IBridge_DataDict bridge = BridgeFactory.CreateDataDictBridge(typeof(tb_AttachFile));
                DataSet          ds     = new DataSet();
                ds.Tables.Add(temp);
                bridge.Update(ds);
            }
        }
Exemplo n.º 29
0
        private ClassBridgeMapping BuildClassBridge(IClassBridgeDefinition ann, Analyzer parentAnalyzer)
        {
            var classAnalyzer = GetAnalyzerByType(ann.Analyzer) ?? parentAnalyzer;

            return(new ClassBridgeMapping(ann.Name, BridgeFactory.ExtractType(ann))
            {
                Boost = ann.Boost,
                Analyzer = classAnalyzer,
                Index = ann.Index,
                Store = ann.Store
            });
        }
Exemplo n.º 30
0
        public bllMenuMgr()
        {
            _DataDictBridge    = BridgeFactory.CreateDataDictBridge(typeof(tb_sys_Function));
            _BarDataDictBridge = BridgeFactory.CreateDataDictBridge(typeof(tb_sys_Fun_MenuBar));
            _KeyFieldName      = tb_sys_Function.__KeyName;
            _SummaryTableName  = tb_sys_Function.__TableName;

            _MyBridge                = BridgeFactory.CreateUserGroupBridge();
            _AuthorityItem           = _MyBridge.GetAuthorityItem();     //Actions Master Data
            _AuthorityItem.TableName = tb_sys_Fun_MenuBar.__TableName;
            _FormTagCustomName       = _MyBridge.GetFormTagCustomName(); //自定义功能名称
        }