public async Task <Guid> Post(FundManager fundManager) { return(await _repository.Create(fundManager)); }
public async Task <Guid> Post(FundManager content) { return(await _client.PostContentAndGetAsync <Guid, FundManager>("api/FundManager/", content)); }
public Task <Guid> Update(FundManager fundManager) { _fundManagers[fundManager.Id] = fundManager; return(Task.FromResult(fundManager.Id)); }
public async Task <Guid> Put(FundManager fundManager) { return(await _repository.Update(fundManager)); }
public void HandleClientChargeMoney(string userID, int rid, int addMoney, bool transmit, int superInputFanLi = 0) { JieriIPointsExchgActivity act = HuodongCachingMgr.GetJieriIPointsExchgActivity(); if (null != act) { act.OnMoneyChargeEvent(userID, rid, addMoney); } EverydayActivity everyAct = HuodongCachingMgr.GetEverydayActivity(); if (null != everyAct) { everyAct.OnMoneyChargeEvent(userID, rid, addMoney); } SpecPriorityActivity spAct = HuodongCachingMgr.GetSpecPriorityActivity(); if (null != everyAct) { spAct.OnMoneyChargeEvent(userID, rid, addMoney); } if (superInputFanLi > 0) { JieriSuperInputActivity siAct = HuodongCachingMgr.GetJieRiSuperInputActivity(); if (null != siAct) { siAct.OnMoneyChargeEvent(userID, rid, addMoney, superInputFanLi); } } TMSKSocket clientSocket = GameManager.OnlineUserSession.FindSocketByUserID(userID); if (null == clientSocket) { SpecialActivity specAct = HuodongCachingMgr.GetSpecialActivity(); if (null != specAct) { specAct.OnMoneyChargeEventOffLine(userID, rid, addMoney); } } else { if (transmit) { LogManager.WriteLog(LogTypes.SQL, string.Format("通知账户ID{0}的角色更新元宝数量", userID), null, true); } GameClient otherClient = GameManager.ClientMgr.FindClient(clientSocket); if (null != otherClient) { SpecialActivity specAct = HuodongCachingMgr.GetSpecialActivity(); if (null != specAct) { specAct.OnMoneyChargeEventOnLine(otherClient, addMoney); } GameManager.ClientMgr.AddUserMoney(Global._TCPManager.MySocketListener, Global._TCPManager.tcpClientPool, Global._TCPManager.TcpOutPacketPool, otherClient, 0, "", ActivityTypes.None, ""); GameManager.logDBCmdMgr.AddDBLogInfo(-1, "钻石", "GM命令强迫更新", "系统", otherClient.ClientData.RoleName, "增加", addMoney, otherClient.ClientData.ZoneID, otherClient.strUserID, otherClient.ClientData.UserMoney, otherClient.ServerId, null); otherClient._IconStateMgr.FlushChongZhiIconState(otherClient); otherClient._IconStateMgr.CheckJieRiActivity(otherClient, false); otherClient._IconStateMgr.SendIconStateToClient(otherClient); UserReturnManager.getInstance().initUserReturnData(otherClient); SingletonTemplate <SevenDayActivityMgr> .Instance().OnCharge(otherClient); FundManager.initFundData(otherClient); } else { SpecialActivity specAct = HuodongCachingMgr.GetSpecialActivity(); if (null != specAct) { specAct.OnMoneyChargeEventOffLine(userID, rid, addMoney); } } } }
public void Update(Guid id, FundManager fundManager) { _fundManagers[id] = fundManager; }
public UserQueryInfo QueryUserByKey(string userId, string agentId) { var userManager = new UserBalanceManager(); var reg = userManager.QueryUserRegister(userId); if (reg == null) { throw new Exception("用户不存在"); } if (!string.IsNullOrEmpty(agentId) && reg.AgentId != agentId) { throw new Exception(string.Format("用户{0}不属于您发展的用户", userId)); } var balance = userManager.QueryUserBalance(userId); if (balance == null) { throw new Exception("用户账户不存在"); } var realNameManager = new UserRealNameManager(); var real = realNameManager.GetUserRealName(userId); //var apliy = new AlipayLoginInfo(); //var apliyCount = apliy.ApliyCount; var mobileManagr = new UserMobileManager(); var mobile = mobileManagr.GetUserMobile(userId); var fundManger = new FundManager(); var agentFreezeBalance = fundManger.QueryAgentFreezeBalanceByUserId(userId); var caibbFreezeBalance = 0M; if (balance.FreezeBalance > 0) { caibbFreezeBalance = balance.FreezeBalance - agentFreezeBalance;//网站冻结资金=总冻结资金-代理冻结资金; } var userAlipayManager = new UserAlipayManager(); var userAlipy = userAlipayManager.GetUserAlipay(userId); var userQQManager = new UserQQManager(); var userQQ = userQQManager.GetUserQQ(userId); var ocAgentManager = new OCAgentManager(); var ocAgent = ocAgentManager.QueryOCAgent(userId); return(new UserQueryInfo { DisplayName = reg.DisplayName, UserId = reg.UserId, RealName = real == null ? string.Empty : real.RealName, IdCardNumber = real == null ? string.Empty : real.IdCardNumber, Mobile = mobile == null ? string.Empty : mobile.Mobile, FillMoneyBalance = balance.FillMoneyBalance, BonusBalance = balance.BonusBalance, CommissionBalance = balance.CommissionBalance, ExpertsBalance = balance.ExpertsBalance, RedBagBalance = balance.RedBagBalance, FreezeBalance = caibbFreezeBalance, IsEnable = reg.IsEnable, AgentId = reg.AgentId, IsAgent = reg.IsAgent, CardType = "", ComeFrom = reg.ComeFrom, Email = "", IsFillMoney = reg.IsFillMoney, IsSettedEmail = true, IsSettedMobile = mobile == null ? false : mobile.IsSettedMobile, IsSettedRealName = real == null ? false : real.IsSettedRealName, RegisterIp = reg.RegisterIp, RegTime = reg.CreateTime, VipLevel = reg.VipLevel, CurrentDouDou = balance.CurrentDouDou, ApliyCount = userAlipy == null ? string.Empty : userAlipy.AlipayAccount, QQNumber = userQQ == null ? string.Empty : userQQ.QQ, CPSMode = ocAgent == null ? 0 : ocAgent.CPSMode, UserGrowth = balance.UserGrowth, CPSBalance = balance.CPSBalance }); }
public UserQueryInfo QueryUserByUserName(string userName, string agentId) { var userManager = new UserBalanceManager(); var reg = userManager.QueryUserRegisterByUserName(userName); if (reg == null) { throw new Exception("用户不存在"); } if (string.IsNullOrEmpty(reg.AgentId) || reg.AgentId != agentId) { throw new Exception(string.Format("用户{0}不属于您发展的用户", userName)); } var balance = userManager.QueryUserBalance(reg.UserId); if (balance == null) { throw new Exception("用户账户不存在"); } var realNameManager = new UserRealNameManager(); var real = realNameManager.GetUserRealName(reg.UserId); var mobileManagr = new UserMobileManager(); var mobile = mobileManagr.GetUserMobile(reg.UserId); var fundManger = new FundManager(); var agentFreezeBalance = fundManger.QueryAgentFreezeBalanceByUserId(reg.UserId); var caibbFreezeBalance = 0M; if (balance.FreezeBalance > 0) { caibbFreezeBalance = balance.FreezeBalance - agentFreezeBalance;//网站冻结资金=总冻结资金-代理冻结资金; } return(new UserQueryInfo { DisplayName = reg.DisplayName, UserId = reg.UserId, RealName = real == null ? string.Empty : real.RealName, IdCardNumber = real == null ? string.Empty : real.IdCardNumber, Mobile = mobile == null ? string.Empty : mobile.Mobile, FillMoneyBalance = balance.FillMoneyBalance, BonusBalance = balance.BonusBalance, CommissionBalance = balance.CommissionBalance, ExpertsBalance = balance.ExpertsBalance, RedBagBalance = balance.RedBagBalance, FreezeBalance = caibbFreezeBalance, IsEnable = reg.IsEnable, AgentId = reg.AgentId, IsAgent = reg.IsAgent, CardType = "", ComeFrom = reg.ComeFrom, Email = "", IsFillMoney = reg.IsFillMoney, IsSettedEmail = true, IsSettedMobile = mobile == null ? false : mobile.IsSettedMobile, IsSettedRealName = real == null ? false : real.IsSettedRealName, RegisterIp = reg.RegisterIp, RegTime = reg.CreateTime, VipLevel = reg.VipLevel, CurrentDouDou = balance.CurrentDouDou, }); }
/*Initialize Variables*/ private void Start() { manager = GameObject.Find("GameManager"); fundManager = manager.GetComponent <FundManager>(); }
public void setup() { manager = new FundManager(); }
public VOFundManager(FundManager instance) { this.instance = instance; }
public void Init() { // setup, create sample benchmark index repo fm = new FundManager(); var indexName = "UK Corporate Benchmark"; benchmarkRepo = new BenchmarkRepo(); benchmarkRepo.Add(new Benchmark() { IndexWeight = 50, Name = indexName, Stock = new Stock() { Symbol = "UNDE" } }); benchmarkRepo.Add(new Benchmark() { IndexWeight = 25, Name = indexName, Stock = new Stock() { Symbol = "ROBO" } }); benchmarkRepo.Add(new Benchmark() { IndexWeight = 10, Name = indexName, Stock = new Stock() { Symbol = "ABAC" } }); benchmarkRepo.Add(new Benchmark() { IndexWeight = 10, Name = indexName, Stock = new Stock() { Symbol = "DODO" } }); benchmarkRepo.Add(new Benchmark() { IndexWeight = 5, Name = indexName, Stock = new Stock() { Symbol = "ZIZA" } }); // create a mock fund var fund = fm.CreateFund("UK Equity Tracker", new FundRepo(), benchmarkRepo); // add cash tot the fund fund.AddCash(50023.00M); // add some stock to the newly created fund fund.AddCash(50023.00M); fund.AddStock(new Stock() { Symbol = "ROBO" }, qty: 100, price: 8.22M); fund.AddStock(new Stock() { Symbol = "UNDE" }, qty: 500, price: 3.11M); fund.AddStock(new Stock() { Symbol = "ABAC" }, qty: 600, price: .39M); fund.AddStock(new Stock() { Symbol = "DODO" }, qty: 30, price: 12M); fund.AddStock(new Stock() { Symbol = "XYZ" }, qty: 100, price: 10M); }
public async Task <FundManager> Create(FundManager fundManager) { _repository.Create(fundManager); return(await _repository.GetBy(fundManager.Id)); // TODO: Change this into a TResult? }
/// <summary> /// 申请提现 /// 计算申请金额是否可提现,返回计算结果 /// </summary> public CheckWithdrawResult RequestWithdraw_Step1(string userId, decimal requestMoney) { var balanceManager = new UserBalanceManager(); var fundManager = new FundManager(); var userManager = new UserManager(); var maxTimes = 3; var currentTimes = fundManager.QueryTodayWithdrawTimes(userId); if (currentTimes >= maxTimes) { throw new Exception(string.Format("每日只能提现{0}次", maxTimes)); } var user = userManager.LoadUser(userId); if (user == null) { throw new Exception("用户不存在 - " + userId); } var userBalance = balanceManager.QueryUserBalance(userId); if (userBalance == null) { throw new Exception("用户帐户不存在 - " + userId); } //奖金+佣金+名家 var can_tx_money = userBalance.BonusBalance + userBalance.CommissionBalance + userBalance.ExpertsBalance; //正常提现 if (can_tx_money >= requestMoney) { return(new CheckWithdrawResult { WithdrawCategory = WithdrawCategory.General, RequestMoney = requestMoney, ResponseMoney = requestMoney, Summary = string.Format("申请提现{0:N2}元,到账{0:N2}元。", requestMoney), }); } var payoutMoney = requestMoney - can_tx_money; if (userBalance.FillMoneyBalance < payoutMoney) { return(new CheckWithdrawResult { WithdrawCategory = WithdrawCategory.Error, RequestMoney = requestMoney, ResponseMoney = 0, Summary = "可用充值金额不足", }); } #region 处理充值金额的消费,直接扣5% var percent = decimal.Parse(new CacheDataBusiness().QueryCoreConfigFromRedis("WithdrawAboutFillMoney.CutPercent")); //收取5%手续费 var cutFree = payoutMoney * percent / 100; return(new CheckWithdrawResult { RequestMoney = requestMoney, ResponseMoney = requestMoney - cutFree, WithdrawCategory = WithdrawCategory.Compulsory, Summary = string.Format("提现金额中包含充值金额,需要扣除{0}%手续费{1:N2}元,实际到账{2:N2}元", percent, cutFree, requestMoney - cutFree), }); #endregion }
/// <summary> /// 申请提现 /// 实际添加提现记录,扣除用户资金 /// </summary> public void RequestWithdraw_Step2(Withdraw_RequestInfo info, string userId, string password) { var userManager = new UserBalanceManager(); var user = userManager.QueryUserRegister(userId); if (!user.IsEnable) { throw new LogicException("用户已禁用"); } DB.Begin(); var resonseMoney = 0M; var orderId = BusinessHelper.GetWithdrawId(); BusinessHelper businessHelper = new BusinessHelper(); var category = businessHelper.Payout_To_Frozen_Withdraw(BusinessHelper.FundCategory_RequestWithdraw, userId, orderId, info.RequestMoney , string.Format("申请提现:{0:N2}元", info.RequestMoney), "Withdraw", password, out resonseMoney); var fundManager = new FundManager(); var addWithdraw = new C_Withdraw { OrderId = orderId, BankCardNumber = info.BankCardNumber, BankCode = info.BankCode, BankName = info.BankName, BankSubName = info.BankSubName, CityName = info.CityName, RequestTime = DateTime.Now, ProvinceName = info.ProvinceName, UserId = userId, RequestMoney = info.RequestMoney, WithdrawAgent = (int)info.WithdrawAgent, Status = (int)WithdrawStatus.Requesting, WithdrawCategory = (int)category, ResponseMoney = resonseMoney, }; fundManager.AddWithdraw(addWithdraw); //查询到账金额 var wi = GetWithdrawById(orderId); //判断DP是否可用 var cacheDataBusiness = new CacheDataBusiness(); var iscoreConfigInfo = cacheDataBusiness.QueryCoreConfigByKey("DP.Isvailable"); //获取当前系统时间(4-5点DP关闭) var datetime = System.DateTime.Now; var nowHourAndM = datetime.ToString("t"); var datestar = cacheDataBusiness.QueryCoreConfigByKey("DP.StartTime"); var dateend = cacheDataBusiness.QueryCoreConfigByKey("DP.EndTime"); DateTime dstar = Convert.ToDateTime(datestar.ConfigValue); DateTime dend = Convert.ToDateTime(dateend.ConfigValue); if (iscoreConfigInfo.ConfigValue == "1") { if (datetime <= dstar || datetime >= dend) { //发送消息到DP //判断是否发送到DP String htmls = info.BankName; //获取Dp提现最大限额 var coreConfigInfo = cacheDataBusiness.QueryCoreConfigByKey("DP.WithdrawHigthMoney"); //获取Dp给的公司编码 var coreConfigInfoC = cacheDataBusiness.QueryCoreConfigByKey("DP.Companyid"); //获取DP给的key var ck = cacheDataBusiness.QueryCoreConfigByKey("DP.Key"); //获取DP访问路径 var cw = cacheDataBusiness.QueryCoreConfigByKey("DP.WebUrl"); decimal withdrawHigthMoney = decimal.Parse(coreConfigInfo.ConfigValue); //var writer = Common.Log.LogWriterGetter.GetLogWriter(); //writer.Write("关于DP日志", "关于DP日志", Common.Log.LogType.Information, "关于DP日志", "withdrawHigthMoney===============" + withdrawHigthMoney); String str = String.Format("BankCardNumber=" + info.BankCardNumber + ",BankCode=" + info.BankCode + ",BankName=" + info.BankName + ",BankSubName=" + info.BankSubName + ",CityName=" + info.CityName + ",ProvinceName=" + info.ProvinceName + ",RequestMoney=" + info.RequestMoney + ",userRealName=" + info.userRealName + ",WithdrawAgent=" + info.WithdrawAgent + ""); //writer.Write("输出参数写测试用例", "输出参数写测试用例", Common.Log.LogType.Information, "输出参数写测试用例", "输出参数写测试用例===============" + str); WithdrawApplyInfo wai = new WithdrawApplyInfo(); wai.company_order_num = orderId; wai.company_user = userId; wai.card_name = info.userRealName; wai.card_num = info.BankCardNumber; wai.issue_bank_name = info.BankName; wai.issue_bank_address = info.BankSubName; wai.memo = ""; String amount = wi.ResponseMoney.ToString(); wai.amount = Math.Round(decimal.Parse(amount), 2); wai.company_id = Int32.Parse(coreConfigInfoC.ConfigValue); String dpresult = null; decimal dpHighmoney = decimal.Parse(coreConfigInfo.ConfigValue); if (info.RequestMoney < withdrawHigthMoney) { if (htmls.Contains("工商银行")) { int bankid = (int)BankCode.ICBC; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("招商银行")) { int bankid = (int)BankCode.CMB; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("建设银行")) { int bankid = (int)BankCode.CCB; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("农业银行")) { int bankid = (int)BankCode.ABC; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("中国银行")) { int bankid = (int)BankCode.BOC; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("交通银行")) { int bankid = (int)BankCode.BCM; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("中国民生银行") || htmls.Contains("民生银行")) { int bankid = (int)BankCode.CMBC; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("中信银行")) { int bankid = (int)BankCode.ECC; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("浦东发展银行") || htmls.Contains("浦发") || htmls.Contains("浦东")) { int bankid = (int)BankCode.SPDB; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("邮政储蓄") || htmls.Contains("中国邮政")) { int bankid = (int)BankCode.PSBC; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("光大银行")) { int bankid = (int)BankCode.CEB; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("平安银行")) { int bankid = (int)BankCode.PINGAN; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("广东发展银行") || htmls.Contains("广发银行")) { int bankid = (int)BankCode.CGB; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("华夏银行")) { int bankid = (int)BankCode.HXB; wai.bank_id = bankid.ToString(); } else if (htmls.Contains("兴业银行")) { int bankid = (int)BankCode.CIB; wai.bank_id = bankid.ToString(); } else { var pListe = new List <string>(); pListe.Add(string.Format("{0}={1}", "[OrderId]", orderId)); pListe.Add(string.Format("{0}={1}", "[UserName]", user.DisplayName)); pListe.Add(string.Format("{0}={1}", "[RequestMoney]", info.RequestMoney)); pListe.Add(string.Format("{0}={1}", "[ResponseMoney]", resonseMoney)); //发送短信 new SiteMessageControllBusiness().DoSendSiteMessage(userId, "", "ON_User_Request_Withdraw", pListe.ToArray()); DB.Commit(); //刷新余额 BusinessHelper.RefreshRedisUserBalance(userId); return; } dpresult = Withdrawal(wai, ck.ConfigValue, cw.ConfigValue); if (dpresult == null || dpresult == "") { DB.Rollback(); throw new Exception("服务繁忙,请稍后重试,如多次尝试失败,请在客服服务时间内联系在线客服咨询"); } } } } #region 发送站内消息:手机短信或站内信 var pList = new List <string>(); pList.Add(string.Format("{0}={1}", "[OrderId]", orderId)); pList.Add(string.Format("{0}={1}", "[UserName]", "")); pList.Add(string.Format("{0}={1}", "[RequestMoney]", info.RequestMoney)); pList.Add(string.Format("{0}={1}", "[ResponseMoney]", resonseMoney)); //发送短信 new SiteMessageControllBusiness().DoSendSiteMessage(userId, "", "ON_User_Request_Withdraw", pList.ToArray()); #endregion DB.Commit(); //刷新余额 BusinessHelper.RefreshRedisUserBalance(userId); }