public static extern UInt32 d2c_lic_new( IntPtr device_handle, ref IntPtr d2c_handle, ACCOUNT_TYPE account_type, [In, MarshalAs(UnmanagedType.LPArray)] byte[] account_id, UInt32 account_size, [In, MarshalAs(UnmanagedType.LPArray)] byte[] cert, UInt32 cert_size );
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { ACCOUNT_TYPE accType = ( ACCOUNT_TYPE )value; switch (accType) { case ACCOUNT_TYPE.Manager: return("管理员"); case ACCOUNT_TYPE.Dealer: return("金商"); case ACCOUNT_TYPE.DealerClerk: return("金商店员"); default: return(""); } }
private void InitializeUserInfo( ) { string file = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ConstUserInfoFile); UserInformation userInfo; if (File.Exists(file)) { userInfo = FileSerialize <UserInformation> .Deserialize(file); userInfo.Decrypt( ); } else { userInfo = new UserInformation( ); } AccountName = userInfo.AccountName; PbPassword.Password = userInfo.Password; AccType = userInfo.AccType; RememberPassword = userInfo.RememberPassword; RememberUserName = userInfo.RememberUserName; }
/// <summary> /// 限价挂单查询 /// </summary> /// <param name="loginID">登录ID标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="requestInfo">查询的限定信息</param> /// <param name="orderList">返回的限价挂单列表</param> /// <returns>ErrType</returns> public ErrType GetPendingOrderList(string loginID, ACCOUNT_TYPE accType, RequestInformationBase requestInfo, out List<PendingOrderData> orderList) { orderList = null; try { //Todo:金通网待处理 #region MyRegion //TradeHoldOrderInfo info = ManagerService.GetMultiTradeHoldOrder((int)accType, loginID, requestInfo.AccountName, requestInfo.StartTime, requestInfo.EndTime); //if (!info.Result) // return new ErrType(ERR.SERVICE, info.Desc); //orderList = info.TdHoldOrderList.Select(MyConverter.ToPendingOrderData).ToList(); #endregion 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.GetPendingOrderList); } }
/// <summary> /// 修改客户资金信息 /// </summary> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="accountName">要查询的客户账户名</param> /// <param name="fundsInfo">新的客户资金信息</param> /// <returns>ErrType</returns> public ErrType ModifyClientFundsInfo(string loginID, ACCOUNT_TYPE accType, string accountName, FundsInformation fundsInfo) { try { //Todo:金通网待处理 //return GeneralErr.Success; #region MyRegion Fundinfo info = MyConverter.ToFundInfo(fundsInfo); //ResultDesc result = ManagerService.ModifyUserFundinfo(info, accountName, loginID, (int)accType); ResultDesc result = ManagerService.ModifyUserFundinfo(info, accountName, loginID); return result.Result ? GeneralErr.Success : new ErrType(ERR.SERVICE, result.Desc); #endregion } 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.OperationError); } }
/// <summary> /// 资金调整 /// </summary> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="accountName">要查询的客户账户名</param> /// <param name="money">资金调整金额</param> /// <returns>ErrType</returns> public ErrType AdjustMoney(string loginID, ACCOUNT_TYPE accType, string accountName, double money) { return FundsOperate(loginID, accType, accountName, money, FUND_OPERATE_TYPE.AdjustMoney); }
/// <summary> /// 资金操作 /// </summary> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="accountName">要查询的客户账户名</param> /// <param name="money">资金操作金额</param> /// <param name="operateType">操作类别,出金/入金/资金调整</param> /// <returns>ErrType</returns> private ErrType FundsOperate(string loginID, ACCOUNT_TYPE accType, string accName, double money, FUND_OPERATE_TYPE operateType) { try { ResultDesc result = ManagerService.ModifyUserMoney(loginID, accName, money, (int)operateType); return result.Result ? GeneralErr.Success : new ErrType(ERR.SERVICE, result.Desc); } 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.OperationError); } }
/// <summary> /// 删除指定的金商账户 /// </summary> /// <param name="accountName">要删除的金商账户名</param> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <returns>ErrType</returns> public ErrType DeleteDealerAccount(string accountName, string loginID, ACCOUNT_TYPE accType) { try { //Todo:金通网待处理 return GeneralErr.Success; #region MyRegion //ResultDesc result = ManagerService.DelAgent(accountName, loginID, (int)accType); //return result.Result ? GeneralErr.Success : new ErrType(ERR.SERVICE, result.Desc); #endregion } 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.OperationError); } }
/// <summary> /// 获取在线客户列表 /// </summary> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="accountName">账户名</param> /// <param name="filter">过滤信息</param> /// <param name="clientList">获取的在线客户列表</param> /// <returns>ErrType</returns> public ErrType GetOnlineClientList(string loginID, ACCOUNT_TYPE accType, string accountName, ClientAccountFilter filter, out List<ClientAccount> onlineClientList) { onlineClientList = null; try { //Todo:金通网待处理 #region MyRegion //UserQueryCon query = MyConverter.ToUserQueryCon(loginID, accType, accountName, filter); //UserBaseInfo info = ManagerService.GetOnLineUserBaseInfo(query); //if (!info.Result) // return new ErrType(ERR.SERVICE, info.Desc); //onlineClientList = info.TdUserList.Select(MyConverter.ToClientAccount).ToList(); #endregion 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.GetOnlineClientList); } }
/// <summary> /// 用户登陆 /// </summary> /// <param name="account">账户</param> /// <param name="password">密码</param> /// <param name="accountType">账户类型,管理员/金商</param> /// <returns>登陆成功或失败</returns> public ErrType Login(string account, string password, ACCOUNT_TYPE accountType) { LoginResult loginResult = _businessService.Login(account, password); if (loginResult.LoginSuccess) { _loginID = loginResult.LoginID; _accName = account; _quotationAddr = loginResult.QuotationAddr; _quotationPort = loginResult.QuotationPort; _businessService.UserRolePrivileges(_loginID, loginResult.UserID, ref _AccountAuthority); } return loginResult.LoginSuccess ? GeneralErr.Success : new ErrType(ERR.SERVICE, loginResult.ErrMsg); }
/// <summary> /// 用用户名和密码实例化一个登陆信息类 /// </summary> /// <param name="accName">账户名</param> /// <param name="password">账户密码</param> /// <param name="type">账户类型</param> public LoginInformation(string accName, string password, ACCOUNT_TYPE type) { AccountName = accName; Password = password; AccountType = type; }
/// <summary> /// 获取客户资金信息 /// </summary> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="accountName">要查询的客户账户名</param> /// <param name="fundsInfo">返回的客户资金信息</param> /// <returns>ErrType</returns> public ErrType GetClientFundsInfo(string loginID, ACCOUNT_TYPE accType, string accountName, out FundsInformation fundsInfo) { fundsInfo = null; try { UserFundinfo info = ManagerService.GetUserFundinfo(loginID, accountName); if (!info.Result) return new ErrType(ERR.SERVICE, info.Desc); fundsInfo = MyConverter.ToFundsInformation(info.Fdinfo); 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.GetClientFundsInfo); } }
/// <summary> /// 用用户名和密码实例化一个登陆信息类 /// </summary> /// <param name="accName">账户名</param> /// <param name="password">账户密码</param> /// <param name="type">账户类型</param> public LoginInformation( string accName, string password, ACCOUNT_TYPE type ) { AccountName = accName; Password = password; AccountType = type; }
public ClientHedgingInfo GetHedgingTradeList(string loginID, ACCOUNT_TYPE accType, RequestInformationBase requestInfo) { ClientHedgingInfo cinfo = new ClientHedgingInfo(); try { HedgingInfo info = _managerService.GetHedgingInfo(loginID, requestInfo.StartTime, requestInfo.EndTime); cinfo.Desc = info.Desc; cinfo.ProfitValue = info.ProfitValue; cinfo.Quantity = info.Quantity; cinfo.Result = info.Result; cinfo.Storagefee = info.StorageFee; cinfo.Tradefee = info.TradeFee; //info.HedgingList.ForEach(p => cinfo.LTdOrderList.Add(MyConverter.ToHedgingTradeData(p))); string PreviousName = ""; for (int i = 0; i < info.HedgingList.Count; i++) { if (info.HedgingList[i].ProductName == PreviousName) { MyConverter.ToHedgingTradeData2(info.HedgingList[i], cinfo.LTdOrderList[cinfo.LTdOrderList.Count - 1]); } else { cinfo.LTdOrderList.Add(MyConverter.ToHedgingTradeData(info.HedgingList[i])); cinfo.LTdOrderList[cinfo.LTdOrderList.Count - 1].OrderType2 = null; } PreviousName = info.HedgingList[i].ProductName; } } catch (TimeoutException te) { cinfo.Result = false; cinfo.Desc = ErrorText.TimeoutException; } catch (Exception ex) { cinfo.Result = false; cinfo.Desc = ErrorText.GetHedgingTradeList; } return cinfo; }
/// <summary> /// 用户登陆 /// </summary> /// <param name="accountName">账户名</param> /// <param name="password">密码</param> /// <param name="accType">账户类型,管理员或金商</param> /// <returns>登陆结果</returns> public LoginResult Login(string accountName, string password, ACCOUNT_TYPE accType) { try { //Todo:金通网待处理 return null; #region MyRegion //string mac = MacAddress.LocalMAC; //if (accType == ACCOUNT_TYPE.Manager)//管理员 //{ // ReAdminAuth mgrResult = ManagerService.AdminLogin(accountName, password, mac); // return MyConverter.ToLoginResult(mgrResult); //} //else if (accType == ACCOUNT_TYPE.Dealer)//金商 //{ // ReAgentAuth dealerResult = ManagerService.AgentLogin(accountName, password, mac); // return MyConverter.ToLoginResult(dealerResult); //} //else//金商店员 //{ // ReClerkAuth dealerClerkResult = ManagerService.ClerkLogin(accountName, password, mac); // return MyConverter.ToLoginResult(dealerClerkResult); // return null; //} #endregion } catch (Exception ex) { return new LoginResult(""); } }
/// <summary> /// 获取导出报表的网页地址 /// </summary> /// <param name="loginID">登录ID标识</param> /// <param name="accType">账户类型,金商或管理员</param> /// <param name="startTime">查询起始时间</param> /// <param name="endTime">查询结束时间</param> /// <param name="type">报表类型</param> /// <param name="webAddr">返回的报表地址</param> /// <returns>ErrType</returns> public ErrType GetExportStatementsWebAddr(string loginID, ACCOUNT_TYPE accType, DateTime startTime, DateTime endTime, STATEMENTS_TYPE type, out string webAddr) { webAddr = string.Empty; try { int int_type = (int)type; ReportForms report = _managerService.GetReportForms(startTime, endTime, int_type, loginID); if (!report.Result) return new ErrType(ERR.SERVICE, report.Desc); webAddr = report.ReportAddr; 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.GetExportStatementsWebAddr); } }
/// <summary> /// 获取对冲交易记录 /// </summary> /// <param name="loginID">登录ID标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="requestInfo">查询的限定信息</param> /// <param name="orderList">返回的对冲交易记录</param> /// <returns>ErrType</returns> public ErrType GetHedgingTradeList(string loginID, ACCOUNT_TYPE accType, RequestInformationBase requestInfo, out List<HedgingTradeData> orderList) { orderList = null; try { HedgingInfo info = _managerService.GetHedgingInfo(loginID, requestInfo.StartTime, requestInfo.EndTime); if (!info.Result) return new ErrType(ERR.SERVICE, info.Desc); orderList = info.HedgingList.Select(MyConverter.ToHedgingTradeData).ToList(); 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.GetHedgingTradeList); } }
internal static UserQueryCon ToUserQueryCon(string loginID, ACCOUNT_TYPE accType, string accountName, ClientAccountFilter filter) { return new UserQueryCon { LoginId = loginID, //Todo:金通网待处理 #region MyRegion //UserTypeInfo = (int)accType, //AgentId = accountName, #endregion TradeAccount = filter.AccountName, UserName = filter.UserName, CardNum = filter.CertificateNumber, }; }
private void InitializeUserInfo( ) { string file = Path.Combine( AppDomain.CurrentDomain.BaseDirectory, ConstUserInfoFile ); UserInformation userInfo; if( File.Exists( file ) ) { userInfo = FileSerialize<UserInformation>.Deserialize( file ); userInfo.Decrypt( ); } else userInfo = new UserInformation( ); AccountName = userInfo.AccountName; PbPassword.Password = userInfo.Password; AccType = userInfo.AccType; RememberPassword = userInfo.RememberPassword; RememberUserName = userInfo.RememberUserName; }
/// <summary> /// 获取金商列表 /// </summary> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <param name="accountName">账户名</param> /// <param name="dealerList">获取的金商账户列表</param> /// <returns>ErrType</returns> public ErrType GetDealerList(string loginID, ACCOUNT_TYPE accType, string accountName, out List<DealerAccount> dealerList) { dealerList = null; try { //Todo:金通网待处理 return GeneralErr.Success; #region MyRegion ////获取金商基本信息 //AgentBaseInfo info = ManagerService.GetAgentBaseInfo(loginID, (int)accType, accountName); //if (!info.Result) // return new ErrType(ERR.SERVICE, info.Desc); //dealerList = new List<DealerAccount>(); //StringBuilder errMsg = new StringBuilder(); //foreach (var userInfo in info.AtUserList) //{ // //获取金商权限 // AgentAuthInfo authInfo = ManagerService.GetAgentAuth(userInfo.AgentId, loginID, (int)accType); // if (!authInfo.Result) // { // errMsg.Append(authInfo.Desc); // continue; // } // DealerAccount dealerAcc = MyConverter.ToDealerAccount(userInfo, authInfo.AtAuth); // dealerList.Add(dealerAcc); //} //if (errMsg.Length != 0) // return new ErrType(ERR.ERROR, errMsg.ToString()); //return errMsg.Length == 0 ? GeneralErr.Success : new ErrType(ERR.SERVICE, errMsg.ToString()); #endregion } 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.GetDealerList); } }
/// <summary> /// 将账户类型ACCOUNT_TYPE转换成UserType对应的值 /// </summary> /// <param name="accType"></param> /// <returns></returns> public static int ToUserType(ACCOUNT_TYPE accType) { if (accType == ACCOUNT_TYPE.Manager) { return 1; } else if (accType == ACCOUNT_TYPE.Dealer) { return 2; } else { throw new NotSupportedException(string.Format("不支持的账户类型:{0}", accType)); } }
//Todo:金通网弃用 ///// <summary> ///// 修改金商资料(包括权限) ///// </summary> ///// <param name="dealerAcc">金商账户类</param> ///// <param name="loginID">登陆标识</param> ///// <param name="accType">账户类型,管理员或金商</param> ///// <returns>ErrType</returns> //public ErrType ModifyDealerAccountInfo(DealerAccount dealerAcc, string loginID, ACCOUNT_TYPE accType) //{ // try // { // #region MyRegion // //修改基本信息 // AgentUser userInfo = MyConverter.ToAgentUser(dealerAcc.AccInfo); // ResultDesc result = ManagerService.ModifyAgentUser(userInfo, loginID, (int)accType); // if (!result.Result) // return new ErrType(ERR.SERVICE, result.Desc); // //修改权限 // AgentAuth authority = MyConverter.ToAgentAuth(dealerAcc.Authority); // result = ManagerService.ModifyAgentAuth(authority, dealerAcc.AccInfo.AccountName, loginID, (int)accType); // return result.Result ? GeneralErr.Success : new ErrType(ERR.SERVICE, result.Desc); // #endregion // } // 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) // { // return new ErrType(ERR.EXEPTION, ex.Message); // } //} #endregion #region 新增金商账户 /// <summary> /// 新增金商账号 /// </summary> /// <param name="dealerAcc">新增的金商账号信息</param> /// <param name="loginID">登陆标识</param> /// <param name="accType">账户类型,管理员或金商</param> /// <returns>ErrType</returns> public ErrType AddDealerAccount(DealerAccount dealerAcc, string loginID, ACCOUNT_TYPE accType) { try { //Todo:金通网待处理 return GeneralErr.Success; #region MyRegion //AgentUser userInfo = MyConverter.ToAgentUser(dealerAcc.AccInfo); //AgentAuth authority = MyConverter.ToAgentAuth(dealerAcc.Authority); //ResultDesc result = ManagerService.AddAgent(userInfo, authority, loginID, (int)accType); //return result.Result ? GeneralErr.Success : new ErrType(ERR.SERVICE, result.Desc); #endregion } 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.OperationError); } }