private static void BuildSummaryCashOut(ColossusBetsDetail_Template detailTemplate, IEnumerable<ITicket> detailTickets) { decimal cashOutPercent = 0; decimal cashOutAmount = 0; foreach (var detailTicket in detailTickets) { if (detailTicket.BetTypeId == CashOutBetTypeId) { cashOutPercent += detailTicket.Handicap1 * 100; cashOutAmount += detailTicket.Winlost; } } var cashOwn = 100 - cashOutPercent; detailTemplate.cashOwn = string.Format(ColosussBetsLabel.YouOwnPercent, Formatter.DecFormat(cashOwn, 0)); if (cashOutPercent == 0) { detailTemplate.cashSold = ColosussBetsLabel.YouSoldZeroPercent; } else { detailTemplate.cashSold = string.Format( ColosussBetsLabel.YouSoldPercent, Formatter.DecFormat(cashOutPercent, 0), BuildColossusBetsWinLoss(cashOutAmount)); } }
public static string BuildColossusBetDetails(this BetListHTMLBuilder factory, IEnumerable<ITicket> detailTickets, ITicketHelper ticketHelper) { ColossusBetsDetail_Template detailTemplate = new ColossusBetsDetail_Template(); BuildSummaryCashOut(detailTemplate, detailTickets); BuildColossusBetDetailsTable(detailTemplate, detailTickets, ticketHelper); return detailTemplate.ToString(); }
private static void BuildBodyRow( ColossusBetsDetail_Template detailTemplate, ITicket detailTicket, ITicketHelper ticketHelper) { ColossusBetsDetail_Contents_Block detailContent = new ColossusBetsDetail_Contents_Block(); detailContent.date = detailTicket.TransDate.ToString(); detailContent.transactionType = BuildColossusBetsTransactionType( detailTicket.BetTypeId, detailTicket.Handicap1, ticketHelper); detailContent.winloss = BuildColossusBetsWinLoss(detailTicket.Winlost); detailContent.status = BuildColossusBetsDetailStatus(detailTicket.Status); detailTemplate.Contents.Append(detailContent); }
private static void BuildTotalRow( ColossusBetsDetail_Template detailTemplate, bool hasTicketDetails, decimal totalWinloss) { detailTemplate.TotalContents.Clear(); detailTemplate.NoData.Clear(); if (hasTicketDetails) { ColossusBetsDetail_TotalContents_Block totalContent = new ColossusBetsDetail_TotalContents_Block(); totalContent.totalWinloss = BuildColossusBetsWinLoss(totalWinloss); detailTemplate.TotalContents.Append(totalContent); } else { detailTemplate.NoData.Append(new ColossusBetsDetail_NoData_Block()); } }
private static void BuildColossusBetDetailsTable( ColossusBetsDetail_Template detailTemplate, IEnumerable<ITicket> detailTickets, ITicketHelper ticketHelper) { decimal totalWinloss = 0; detailTemplate.Contents.Clear(); foreach (var detailTicket in detailTickets) { BuildBodyRow(detailTemplate, detailTicket, ticketHelper); totalWinloss += detailTicket.Winlost; } BuildTotalRow(detailTemplate, detailTickets.Any(), totalWinloss); }