zhengyuxuan
2025-04-01 aff6340db92f4801184db829eccfed93ff6fedb3
LifePayment/LifePayment.Application/LifePay/StatisticsService.cs
@@ -138,6 +138,38 @@
            }
            return receiptsListOutPut;
        }
        public async Task<ChannlesRakeListOutPut> GetChannlesRakeList(List<string> channleList)
        {
            var today = DateTime.Now.Date;
            var statistics = await _lifePayChannlesRakeRepository.Where(x => x.IsDeleted == false)
                            .WhereIf(channleList.Count() > 0, x => channleList.Contains(x.ChannelId))
                            .ToListAsync();
            var groupedStatistics = statistics
               .GroupBy(x => x.CreationTime)
               .Select(g => new
               {
                   CreationTime = g.Key,
                   ChannlesRakePrice = g.Sum(x => x.ChannlesRakePrice),
               })
               .ToList();
            ChannlesRakeListOutPut channlesRakeListOutPut = new ChannlesRakeListOutPut();
            foreach (var item in groupedStatistics)
            {
                ReceiptsDetail receive = new ReceiptsDetail()
                {
                    CreationTime = item.CreationTime.ToString("yyyy-MM-dd"),
                    Amount = item.ChannlesRakePrice
                };
                channlesRakeListOutPut.ChannlesRakeList.Add(receive);
            }
            return channlesRakeListOutPut;
        }
@@ -164,7 +196,7 @@
            {
                ChannelDataReceive receive = new ChannelDataReceive()
                {
                    ChannelId = item.ChannelId,
                    ChannelName = _lifePayChannlesRep.Where(x => x.ChannlesNum == item.ChannelId).FirstOrDefault().ChannlesName,
                    ReceivePrice = item.ReceivePrice,
                    ChannlesRakePrice = item.ChannlesRakePrice,
                };
@@ -190,7 +222,7 @@
            {
                ChannelDataUserNumber usernumber = new ChannelDataUserNumber()
                {
                    ChannelId = item.ChannelId,
                    ChannelName = _lifePayChannlesRep.Where(x => x.ChannlesNum == item.ChannelId).FirstOrDefault().ChannlesName,
                    Number = item.Number,
                };
                if (channelDataList.UserNumberList.Count() < 5)
@@ -256,7 +288,8 @@
                YesterdayFail = yesterdayFail,
                AccumulatedUsers = accumulatedUsers,
                YesterdayActiveUsers = yesterdayActiveUsers,
                ChannelId = channleId
                ChannelId = channleId,
                Date = today.AddDays(-1)
            };
            await _dallyStatisticsRepository.InsertAsync(entity);
            return entity;