Example #1
0
        public ReportChunk Generate(decimal feeMultiplier)
        {
            var chunkItems = Items
                             .Select(i => new ReportChunk.ReportChunkItem()
            {
                Id     = i.Id,
                Name   = i.Name,
                Amount = i.Amount,
                Fee    = CalculateFee(i.Type, i.Amount, feeMultiplier)
            })
                             .ToArray();
            var chunk = new ReportChunk()
            {
                Items        = chunkItems,
                TotalItems   = chunkItems.Length,
                TotalAmounts = chunkItems.Sum(i => i.Amount),
                TotalFees    = chunkItems.Sum(i => i.Fee)
            };

            chunk.GrandTotal = chunk.TotalAmounts + chunk.TotalFees;
            return(chunk);
        }
Example #2
0
 public void Write(string username, ReportChunk chunk) => WriteCalls.Add(new WriteCall()
 {
     Username = username, Chunk = chunk
 });