static void Main(string[] args) { if (args.Length > 0) { ProcessCreditCard pcc = new ProcessCreditCard(args[0]); pcc.Execute(); } else { Console.WriteLine("Please provide input file to process"); } }
protected void Page_Load(object sender, EventArgs e) { Label1.Text = "ACCA Processing.."; // Do the processing only if it is loaded on tuesday, 10 PM if ((DateTime.Now.DayOfWeek == DayOfWeek.Tuesday && DateTime.Now.TimeOfDay.Hours == 22) || Request.QueryString["eventDate"] != null) { Label1.Text = "ACCA Processing.."; try { AccaService accaService = ServiceAccess.GetInstance().GetAcca(); DateTime eventDate = DateTime.MinValue; if (Request.QueryString["eventDate"] != null) { eventDate = Convert.ToDateTime(Request.QueryString["eventDate"]); } AccaInfo[] allAccaInfo = accaService.GetCreditCardDetailsForScheduledEvents(eventDate); Irmac.MailingCycle.BLLServiceLoader.Order.OrderService orderService = ServiceAccess.GetInstance().GetOrder(); foreach (Irmac.MailingCycle.BLLServiceLoader.Acca.AccaInfo accaInfo in allAccaInfo) { //if quantity sufficient if (accaInfo.EventStatus != ScheduleEventStatus.ACCAError) { accaInfo.EventStatus = ScheduleEventStatus.InProgress; accaInfo.Remarks = "Billed successfully"; ProcessCreditCard processCreditCard = new ProcessCreditCard(); processCreditCard.Address1 = accaInfo.AccaCreditCardInfo.Address.Address1; processCreditCard.Address2 = accaInfo.AccaCreditCardInfo.Address.Address2; processCreditCard.Amount = accaInfo.AccaOrderInfo.Amount; processCreditCard.CardNumber = accaInfo.AccaCreditCardInfo.Number; processCreditCard.City = accaInfo.AccaCreditCardInfo.Address.City; processCreditCard.Country = accaInfo.AccaCreditCardInfo.Address.Country.Name; processCreditCard.ExpiryDate = new DateTime (accaInfo.AccaCreditCardInfo.ExpirationYear, accaInfo.AccaCreditCardInfo.ExpirationMonth, 1); string[] names = accaInfo.AccaCreditCardInfo.HolderName.Split(new char[] { ' ' }); processCreditCard.FirstName = names[0]; if (names.Length > 1) { processCreditCard.LastName = names[1]; } processCreditCard.State = accaInfo.AccaCreditCardInfo.Address.State.Name; processCreditCard.ZipCode = accaInfo.AccaCreditCardInfo.Address.Zip; processCreditCard.AuthorizeCard(); OrderInfo orderInfo = accaInfo.AccaOrderInfo; if (processCreditCard.CreditCardStatus != CardStatus.Approved) { accaInfo.EventStatus = ScheduleEventStatus.ACCAError; accaInfo.Remarks = processCreditCard.Message; } else { orderInfo.CreditCard = accaInfo.AccaCreditCardInfo; orderInfo.Date = DateTime.Now; orderInfo.Number = 10000; } orderInfo.TransactionCode = processCreditCard.TransactionId; orderInfo.TransactionMessage = processCreditCard.Message; accaInfo.AccaOrderInfo = orderInfo; } } AccaInfo[] updatedInfo = accaService.UpdateEventInfo(allAccaInfo); SendACCAMail(updatedInfo); Label1.Text = "ACCA Process Completed Successfully.."; } catch (Exception ex) { log.Error("Acca Error", ex); } } }