static void recalculateReferralsContracts() { using (FlyMiningEntityDI Fdb = new FlyMiningEntityDI()) { List <UserProfile2> userList = Fdb.UserProfile2.Where(t => t.InvitedBy.HasValue && t.InvitedBy != t.Id && t.InvitedBy != 0).ToList(); List <ContractReferral> referralList = Fdb.ContractReferrals.ToList(); List <Contract> contractList = Fdb.Contracts.ToList(); decimal referralPart = Settings.FriendPart; foreach (UserProfile2 user in userList) { List <Contract> contractUserList = contractList.Where(t => t.userID == user.Id).ToList(); foreach (Contract contract in contractUserList) { if (referralList.Count(t => t.userID == user.Id && t.ContractFatherId == contract.id) == 0) { ContractReferral newRefContr = new ContractReferral(contract, user.Id, referralPart); Fdb.ContractReferrals.Add(newRefContr); } if (referralList.Count(t => t.userID == user.InvitedBy && t.ContractFatherId == contract.id) == 0) { ContractReferral newRefContr = new ContractReferral(contract, user.Id, referralPart); Fdb.ContractReferrals.Add(newRefContr); } } Fdb.SaveChanges(); } } }
public static void SaveHashrateHistory() { using (FlyMiningMonitorEntities1 fme = new FlyMiningMonitorEntities1()) { using (FlyMiningEntityDI fdb = new FlyMiningEntityDI()) { DateTime currentTime = DateTime.UtcNow; currentTime = currentTime.Date.AddHours(currentTime.Hour); DateTime timeHourEarly = currentTime.AddHours(-1); List <MiningMonitorUser> userList = fme.MiningMonitorUsers.Where(t => t.AdminProperty.HasValue && t.AdminProperty.Value && t.LastDataImport > timeHourEarly).ToList(); foreach (MiningMonitorUser user in userList) { if (!fdb.HistoricalHourHashrates.Any(t => t.date == currentTime && t.userID == user.UserID)) { fdb.HistoricalHourHashrates.Add(new HistoricalHourHashrate() { date = currentTime, Hashrate = Convert.ToInt64(user.TotalHashrate.Value), MinerAllCount = user.AllMiners, NotWorkingCount = user.AllMiners - user.WorkingMiners, WorkingCount = user.WorkingMiners, userID = user.UserID, Site = true }); } } fdb.SaveChanges(); } } }
public static void Recalculating(object obj = null) { using (FlyMiningEntityDI fDB = new FlyMiningEntityDI()) { recalculateBalance(fDB); recalculateUserContractHashrate(fDB); } }
public static void dailyIncome(object obj = null) { if (Math.Abs((DateTime.UtcNow - DateTime.UtcNow.Date).TotalMinutes) < 7 || Math.Abs((DateTime.UtcNow - DateTime.UtcNow.Date.AddDays(1)).TotalMinutes) < 7) { System.Threading.Thread.Sleep(TimeSpan.FromMinutes(10)); } using (FlyMiningEntityDI fDB = new FlyMiningEntityDI()) { calculateNewChanges(fDB, SiteContent.FlyHodler); calculateNewChanges(fDB, SiteContent.Flymining); calculateFee(fDB); timeOffsetCheck(fDB); MinningPool.savePoolHashrateHistoryUpdate().Wait(); MinningPool.savePoolIncomeHistoryUpdate().Wait(); HistHourFunction.SaveHashrateHistory(); } }