public static CreditCardRetrieveMultipleStatementDate RetrieveCreditCardStatementDates(Params request) { CreditCardRetrieveMultipleStatementDate response = new CreditCardRetrieveMultipleStatementDate(); try { if (request.Parameter.ContainsKey("cardNo")) { string cardNo = request.Parameter["cardNo"]; CreditCardInformation information = RetrieveCreditCardDetail(cardNo, RetrieveCreditCardType(cardNo)); if (!string.IsNullOrEmpty(information.CustomerNo)) { request.Parameter.Add("custNo", information.CustomerNo); } } if (request.Parameter.ContainsKey("custNo")) { Params param = new Params() { Parameter = new Dictionary <string, string>() }; param.RequestTransType = "GetHistoryCreditCardTransaction"; param.Parameter.Add("custNo", request.Parameter["custNo"]); param.WSDL = "CCStatementDateHistory"; ESBData data = EAI.RetrieveESBData(param); if (data.Result != null && data.Result.Count != 0) { response.MinimumPayment = Formatter.GetParsedDouble(data.Result[0]["minPayment"], false); response.Name = data.Result[0]["name1"]; response.Address1 = data.Result[0]["addr1"]; response.Address2 = data.Result[0]["addr2"]; response.City = data.Result[0]["city"]; } foreach (StringDictionary eachRecord in data.Result) { if (eachRecord.ContainsKey("stateDate")) { response.Statements.Add(new CreditCardStatementInformation() { StatementDateInJulianFormat = eachRecord["stateDate"], StatementDate = Formatter.ParseExact(eachRecord["stateDate"], "JY") }); } } } } catch (Exception e) { } return(response); }
public void CompletingInformation(CreditCardRetrieveMultipleStatementDate statement) { Information.Name = statement.Name; Information.Address = statement.Address1 + " " + statement.Address2; Information.MinimumPayment = statement.MinimumPayment; Information.NewBalance = 0.0; foreach (CreditCardInformation card in CreditCards) { if (!string.IsNullOrEmpty(card.CreditCardNo)) { GridCreditCardTransaction data = new GridCreditCardTransaction(); data.CreditCardNo = card.CreditCardNo; data.CardholderName = card.CardholderName; double?NegativeAmount = 0.0; double?PositiveAmount = 0.0; double?PreviousBalance = 0.0; foreach (CreditCardTransaction trx in Transactions) { if (trx.CreditCardNo == card.CreditCardNo) { if (CCTransaction.HistoricalTransactionCodesForNegativeAmount.Contains(trx.TransactionCode)) { NegativeAmount += trx.Amount; } else { PositiveAmount += trx.Amount; } PreviousBalance += trx.PreviousBalance; if (!"INTEREST".Equals(trx.Description)) { data.Trx.Add(trx); } } } data.PreviousBalance = PreviousBalance; data.SubTotal = PositiveAmount - NegativeAmount + PreviousBalance; TransactionData.Add(data); Information.NewBalance += data.SubTotal; } } Information.NewBill = Information.NewBalance - (Information.OldBalance + Information.Credit); }