/// <summary> /// 5.2.10 根据用户ID获取所有用户权限集合 /// </summary> /// <param name="loginID">登录标识ID</param> /// <param name="userID">用户ID</param> /// <param name="userPrivilegesInfo">权限</param> /// <returns></returns> public ErrType UserRolePrivileges(string loginID, string userID, ref UserPrivilegesInfo userPrivilegesInfo) { try { List<PrivilegeEntity> list = new List<PrivilegeEntity>(); EntityBase result = ManagerService.UserRolePrivileges(loginID, userID, ref list); if (!result.Result) return new ErrType(ERR.SERVICE, result.Desc); userPrivilegesInfo = MyConverter.ToUserPrivilegesInfo(list); return GeneralErr.Success; } catch (TimeoutException te) { FileLog.WriteLog("", Assembly.GetExecutingAssembly().GetName().Name, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name, te.Message); return new ErrType(ERR.EXEPTION, ErrorText.TimeoutException); } catch (Exception ex) { FileLog.WriteLog("", Assembly.GetExecutingAssembly().GetName().Name, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name, ex.Message); return new ErrType(ERR.EXEPTION, ErrorText.QueryError); } }
internal static UserPrivilegesInfo ToUserPrivilegesInfo(List<PrivilegeEntity> list) { UserPrivilegesInfo info = new UserPrivilegesInfo(); if (list != null) { #region 管理权限 info.AccountManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account).FirstOrDefault() == null ? false : true;// 账号管理权限(父级) //管理员 info.AdminAccountManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Manager).FirstOrDefault() == null ? false : true;//管理员权限 info.RolePrivilegeEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Manager_Role).FirstOrDefault() == null ? false : true;//管理员--角色权限 info.AdminAccountManagerAccountInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Manager_AccountInfo).FirstOrDefault() == null ? false : true;//管理员--管理员资料 info.AdminAccountManagerAddAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Manager_AddAccount).FirstOrDefault() == null ? false : true;//管理员--新增管理员 info.AdminAccountManagerDelAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Manager_DelAccount).FirstOrDefault() == null ? false : true;//管理员--删除管理员 //客户管理 info.ClientAccountManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client).FirstOrDefault() == null ? false : true;//客户账号管理权限 info.ClientAccountManagerAccountInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_AccountInfo).FirstOrDefault() == null ? false : true;//客户账号--客户账户资料 info.ClientAccountManagerAddAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_AddAccount).FirstOrDefault() == null ? false : true;//客户账号--新增客户账户 info.ClientAccountManagerAdjustMoney = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_AdjustMoney).FirstOrDefault() == null ? false : true;//客户账号--调节 info.ClientAccountManagerDelAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_DelAccount).FirstOrDefault() == null ? false : true;//客户账号--删除客户账户 info.ClientAccountManagerFundsInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_FundsInfo).FirstOrDefault() == null ? false : true;//客户账号--客户资金信息 info.ClientAccountManagerMarketOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_MarketOrder).FirstOrDefault() == null ? false : true;//客户账号--即时成交 info.ClientAccountManagerPendingOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_PendingOrder).FirstOrDefault() == null ? false : true;//客户账号--挂单交易 info.ClientAccountManagerOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Account_Client).FirstOrDefault() == null ? false : true;//客户管理--订单信息 //会员账户 info.DealerAccountManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_OrgAccount).FirstOrDefault() == null ? false : true;//金商账号/会员账户管理权限 info.DealerAccountManagerAccountInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_OrgAccount_AccountInfo).FirstOrDefault() == null ? false : true;//会员账户--会员账户资料 info.DealerAccountManagerAddAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_OrgAccount_AddAccount).FirstOrDefault() == null ? false : true;//会员账户--新增会员账户 info.DealerAccountManagerDelAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_OrgAccount_DelAccount).FirstOrDefault() == null ? false : true;//会员账户--删除会员账户 info.DealerAccountManagerRole = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_OrgAccount_Role).FirstOrDefault() == null ? false : true;//会员账户--会员账户角色 //在线客户 info.ClientOnlineAccountManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Online).FirstOrDefault() == null ? false : true;//在线客户 info.ClientOnlineAccountManagerAccountInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Online_AccountInfo).FirstOrDefault() == null ? false : true;//在线客户--账户资料 info.ClientOnlineAccountManagerDelAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Online_DelAccount).FirstOrDefault() == null ? false : true;//在线客户--删除账户 info.ClientOnlineAccountManagerFundsInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Online_FundsInfo).FirstOrDefault() == null ? false : true;//在线客户--资金信息 info.ClientOnlineAccountManagerOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Online_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Account_Online).FirstOrDefault() == null ? false : true;//在线客户--订单信息 //微会员 info.OrgManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org).FirstOrDefault() == null ? false : true;//微会员 info.OrgManagerAccountInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org_AccountInfo).FirstOrDefault() == null ? false : true;//微会员--微会员资料 info.OrgManagerAddAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org_AddAccount).FirstOrDefault() == null ? false : true;//微会员--新增微会员 info.OrgManagerDelAccount = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org_DelAccount).FirstOrDefault() == null ? false : true;//微会员--删除微会员 info.orgManagerRole = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org_Role).FirstOrDefault() == null ? false : true;//微会员--微会员角色 info.OrgManagerSetCommissionRatio = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org_SetCommissionRatio).FirstOrDefault() == null ? false : true;//微会员--返佣比例 info.OrgManagerSetDefaultCommissionRatio = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org_SetDefaultCommissionRatio).FirstOrDefault() == null ? false : true;//微会员--返佣比例 info.OrgManagerSetAllCommissionRatio = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Org_SetAllCommissionRatio).FirstOrDefault() == null ? false : true;//微会员--返佣比例 #endregion #region 系统设置 info.IsSystemSettingsEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System).FirstOrDefault() == null ? false : true;//系统设置(父类) info.AllowReleaseNews = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_1).FirstOrDefault() == null ? false : true;//发布新闻 info.AllowArticlesInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_ArticlesInfo).FirstOrDefault() == null ? false : true;//理财师说 info.AllowAdvert = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_Advert).FirstOrDefault() == null ? false : true;//广告 info.AllowReleaseAnnouncement = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_2).FirstOrDefault() == null ? false : true;//发布公告 info.AllowViewLog = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_LogInfo).FirstOrDefault() == null ? false : true;//查看日志 info.AllowHolidaysSettings = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_Holiday).FirstOrDefault() == null ? false : true;//假日设置 info.AllowTradingDaySettings = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_TradingDay).FirstOrDefault() == null ? false : true;//交易日设置 info.AllowTransactionSettings = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_TradingSetting).FirstOrDefault() == null ? false : true;//交易设置 info.EnableIPAddressFiltering = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_IPAddrFilter).FirstOrDefault() == null ? false : true;//IP地址过滤 info.EnableMACAddressFiltering = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_MACFilter).FirstOrDefault() == null ? false : true;//MAC地址过滤 info.EnableRoleManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_RoleManager).FirstOrDefault() == null ? false : true;//角色管理 info.EnablePrivilegeManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_PrivilegeManager).FirstOrDefault() == null ? false : true;//权限管理 info.EnableTradeMoneyInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_TradeMoneyInfo).FirstOrDefault() == null ? false : true;//出入金解约 info.GroupManager = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.System_Group).FirstOrDefault() == null ? false : true;//客户分组管理 #endregion #region 数据管理 info.IsDataManagerEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Data).FirstOrDefault() == null ? false : true;//数据管理权限(父类) info.IsProductManagerEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Data_ProductInfo).FirstOrDefault() == null ? false : true;//商品管理权限 info.IsHistoryDataManagerEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Data_HistoryData).FirstOrDefault() == null ? false : true;//历史数据管理 info.ExchangeRateWater = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Data_RateWaterInfo).FirstOrDefault() == null ? false : true;//汇率/水 info.ManualPriceEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Data_ProductInfo_ManualPrice).FirstOrDefault() == null ? false : true;//手工报价 info.EffectiveEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Data_Effective).FirstOrDefault() == null ? false : true;//体验券 #endregion #region 提货受理权限 info.TiHuoShouLi = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.TakeGoods).FirstOrDefault() == null ? false : true;//提货受理 (父级) info.ShouLiMingXi = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.TakeGoods_AcceptDetail).FirstOrDefault() == null ? false : true;//受理明细 info.TiHuo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.TakeGoods_TakeGoods).FirstOrDefault() == null ? false : true;//提货 info.BangDingUser = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.TakeGoods_BindingAccount).FirstOrDefault() == null ? false : true;//绑定账号 #endregion #region 交易管理 //交易管理(父级) info.IsTradeManagerEnabled = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade).FirstOrDefault() == null ? false : true;//交易管理(父级) //金生金单 info.JgjOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_JgjGoods).FirstOrDefault() == null ? false : true;//金生金单 //买跌单 info.HuiGouOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_BackGoods).FirstOrDefault() == null ? false : true;//买跌单 //提货单 info.TihuoOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_TakeGoods).FirstOrDefault() == null ? false : true;//提货单 //交割单 info.DeliverOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_DeliveryGoods).FirstOrDefault() == null ? false : true;//交割单 //市价定单 info.AllowViewMarketOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_MarketOrder).FirstOrDefault() == null ? false : true;//市价定单(有效单) info.AllowViewMarketOrderChargeback = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_MarketOrder_Chargeback).FirstOrDefault() == null ? false : true;//市价定单--平仓 info.AllowViewMarketOrderOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_MarketOrder_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Trade_MarketOrder).FirstOrDefault() == null ? false : true;//市价定单--订单信息 //限价定单/委托订单 info.AllowViewPendingOrder = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_PendingOrder).FirstOrDefault() == null ? false : true;//限价定单 info.AllowViewPendingOrderCancel = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_PendingOrder_Cancel).FirstOrDefault() == null ? false : true;//限价定单--撤销 info.AllowViewPendingOrderOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_PendingOrder_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Trade_PendingOrder).FirstOrDefault() == null ? false : true;//限价定单--订单信息 //平仓历史 info.AllowViewChargebackRecord = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ChargebackRecode).FirstOrDefault() == null ? false : true;//平仓历史 info.AllowViewChargebackRecordOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ChargebackRecode_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Trade_ChargebackRecode).FirstOrDefault() == null ? false : true;//平仓历史--订单信息 //入库单 info.AllowViewWarehousing = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_WarehousingOrder).FirstOrDefault() == null ? false : true;//入库单 //对冲交易 info.AllowViewHedgingTransactions = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_HedgeTrade).FirstOrDefault() == null ? false : true;//对冲交易 //导出报表 info.AllowExportStatement = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ExportStatements).FirstOrDefault() == null ? false : true;//导出报表 info.AllowExportMarketOrderReport = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ExportStatements_MarketOrderReport).FirstOrDefault() == null ? false : true;//市价单报表 info.AllowExportPendingOrderReport = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ExportStatements_PendingOrderReport).FirstOrDefault() == null ? false : true;//限价单报表 info.AllowExportFundReport = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ExportStatements_FundReport).FirstOrDefault() == null ? false : true;//资金报表 info.AllowExportAdjustReport = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ExportStatements_AdjustReport).FirstOrDefault() == null ? false : true;//导出平仓报表 //出金处理 info.TradeChuJin = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ChuJin).FirstOrDefault() == null ? false : true;//出金处理 info.TradeChuJinDetails = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ChuJin_Details).FirstOrDefault() == null ? false : true;//出入金详情 info.TradeChuJinOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_ChuJin_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Trade_ChuJin).FirstOrDefault() == null ? false : true;//出金处理--订单信息 //解约处理 info.TradeTermination = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_Termination).FirstOrDefault() == null ? false : true;//解约处理 info.TradeTerminationApproved = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_Termination_Approved).FirstOrDefault() == null ? false : true;//解约处理--审核解约 info.TradeTerminationReject = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_Termination_Reject).FirstOrDefault() == null ? false : true;//解约处理--拒绝解约 info.TradeTerminationOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_Termination_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Trade_Termination).FirstOrDefault() == null ? false : true;//解约处理--订单信息 //资金报表 info.AllowFundReport = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_FundReport).FirstOrDefault() == null ? false : true;//资金报表 info.AllowFundReportOrderInfo = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_FundReport_OrderInfo && p.ParentPrivilegeName == AppPrivilegeConfig.Trade_FundReport).FirstOrDefault() == null ? false : true;//资金报表--订单信息 //会员报表 info.AllowJujian = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Trade_JujianManager).FirstOrDefault() == null ? false : true;//会员报表 info.IsCanAlterDJ = list.Where(p => p.PrivilegeName == AppPrivilegeConfig.Account_Client_FundsInfo_Ok).FirstOrDefault() == null ? false : true;//修改冻结资金 #endregion } return info; }