public BaseApiResponse DashBoard() { var users = _userQueryService.UserList(); var wallets = _walletQueryService.AllWallets(); var stores = _storeQueryService.StoreList(); var storeOrders = _storeOrderQueryService.StoreOrderList(); var rechargeApplyes = _walletQueryService.RechargeApplyLogs(); var incentiveBenevolenceTransfers = _walletQueryService.GetBenevolenceTransfers(BenevolenceTransferType.Incentive); return(new DashBoardResponse { UserCount = users.Count(), NewRegCount = users.Where(x => x.CreatedOn > DateTime.Now.AddDays(-7)).Count(), AmbassadorCount = users.Where(x => x.Role == UserRole.Ambassador).Count(), NewAmbassadorCount = users.Where(x => x.CreatedOn > DateTime.Now.AddDays(-7) && x.Role == UserRole.Ambassador).Count(), CashTotal = wallets.Sum(x => x.Cash), LockedCashTotal = wallets.Sum(x => x.LockedCash), RechargeApplysTotal = rechargeApplyes.Where(x => x.Status == RechargeApplyStatus.Placed).Sum(x => x.Amount), BenevolenceTotal = wallets.Sum(x => x.Benevolence), TodayBenevolenceAddedTotal = wallets.Sum(x => x.TodayBenevolenceAdded), LastIncentiveAmount = incentiveBenevolenceTransfers.Where(x => x.CreatedOn.Date.Equals(DateTime.Now.Date)).Sum(x => x.Amount), TotalIncentiveAmount = incentiveBenevolenceTransfers.Sum(x => x.Amount), TotalSale = stores.Sum(x => x.TotalSale), TodaySale = stores.Sum(x => x.TodaySale), StoreOrderCount = stores.Sum(x => x.TotalOrder), TodayStoreOrderCount = stores.Sum(x => x.TodayOrder), TodayOrderProfit = storeOrders.Where(x => x.CreatedOn.Date == DateTime.Now.Date).Sum(x => x.Total) - storeOrders.Where(x => x.CreatedOn.Date == DateTime.Now.Date).Sum(x => x.StoreTotal), TotalOrderProfit = storeOrders.Sum(x => x.Total) - storeOrders.Sum(x => x.StoreTotal) }); }
public RechargeApplysListPageResponse RechargeApplysListPage([FromBody] RechargeApplysListPageRequest request) { request.CheckNotNull(nameof(request)); var pageSize = 20; var rechargeApplylogs = _walletQueryService.RechargeApplyLogs(); var total = rechargeApplylogs.Count(); //筛选 if (request.Status != RechargeApplyStatus.All) { rechargeApplylogs = rechargeApplylogs.Where(x => x.Status == request.Status); } if (!request.Name.IsNullOrEmpty()) { rechargeApplylogs = rechargeApplylogs.Where(x => x.BankOwner.Contains(request.Name)); } total = rechargeApplylogs.Count(); //分页 rechargeApplylogs = rechargeApplylogs.OrderByDescending(x => x.CreatedOn).Skip(pageSize * (request.Page - 1)).Take(pageSize); return(new RechargeApplysListPageResponse { Total = total, RechargeApplys = rechargeApplylogs.Select(x => new RechargeApply { Id = x.Id, Amount = x.Amount, Pic = x.Pic, BankName = x.BankName, BankNumber = x.BankNumber, BankOwner = x.BankOwner, CreatedOn = x.CreatedOn, Remark = x.Remark, Status = x.Status.ToDescription(), WalletId = x.WalletId }).ToList() }); }
public RechargeApplyLogsResponse RechargeApplyLogs() { var currentAccount = _contextService.GetCurrentAccount(HttpContext.Current); //通过以上方法 已经获取_wallet实例了 var rechargeApplylogs = _walletQueryService.RechargeApplyLogs(currentAccount.WalletId.ToGuid()); return(new RechargeApplyLogsResponse { RechargeApplys = rechargeApplylogs.Select(x => new RechargeApply { Id = x.Id, Amount = x.Amount, Pic = x.Pic, BankName = x.BankName, BankNumber = x.BankNumber, BankOwner = x.BankOwner, CreatedOn = x.CreatedOn, Remark = x.Remark, Status = x.Status.ToDescription(), WalletId = x.WalletId }).ToList() }); }