Exemple #1
0
        public static dynamic SendTokenToCustomer(string accountNumber, string serialNumber)
        {
            try
            {
                dynamic returnedCustomer = new System.Dynamic.ExpandoObject();
                if (!string.IsNullOrEmpty(serialNumber) && ThirdPartyDL.RetrievePanDetailByAccountNumber(serialNumber) == null)
                {
                    throw new Exception(string.Format("Serial Number: {0} is not valid.", serialNumber));
                }
                else
                {
                    Customer customer = CustomerDL.RetrieveCustomerByAccountNumber(accountNumber);
                    if (customer != null)
                    {
                        Random random = new Random();
                        string token  = random.Next(1999, 9999).ToString();
                        returnedCustomer.customerID    = customer.ID;
                        returnedCustomer.customerToken = token;

                        Mail.SendCardRequestToken(customer, token);

                        return(returnedCustomer);
                    }
                    else
                    {
                        throw new Exception(string.Format("Invalid customer with account number: {0}", accountNumber));
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemple #2
0
        public static List <Object> RetrievePans()
        {
            try
            {
                List <Object> returnedPans = new List <object>();

                List <PANDetail> panDetails = ThirdPartyDL.RetrievePanDetails();

                foreach (PANDetail panDetail in panDetails)
                {
                    Object panDetailObj = new
                    {
                        Pan          = panDetail.pan,
                        SerialNumber = panDetail.account_number,
                        Status       = panDetail.Status
                    };

                    returnedPans.Add(panDetailObj);
                }

                return(returnedPans);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemple #3
0
 public static PANDetail RetrievePanDetailsByAccountNumber(string accountNumber)
 {
     try
     {
         return(ThirdPartyDL.RetrievePanDetailByAccountNumber(accountNumber));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemple #4
0
 public static PANDetail RetrievePanDetailsByPan(string pan)
 {
     try
     {
         return(ThirdPartyDL.RetrievePanDetailByPan(pan));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemple #5
0
 public static bool Save(PANDetail panDetail, out string message)
 {
     try
     {
         if (ThirdPartyDL.PanExists(panDetail))
         {
             message = string.Format("Pan: {0} or Serial Number: {1} exists already", panDetail.pan, panDetail.account_number);
             return(false);
         }
         else
         {
             message = string.Empty;
             return(ThirdPartyDL.Save(panDetail));
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemple #6
0
 public static bool UpdateCardRequest(long cardRequestID, string requestType, string loggedInUsername)
 {
     try
     {
         string      clearPan    = string.Empty;
         CardRequest cardRequest = new CardRequest();
         if (requestType == StatusUtil.RequestType.WithSerialNumber.ToString())
         {
             List <KioskSolutionLibrary.ModelLibrary.EntityFrameworkLibrary.ThirdPartyData.PANDetail> unusedPans = ThirdPartyDL.RetrieveUnUsedPanDetails();
             if (unusedPans.Count == 0)
             {
                 throw new Exception("There are no available pans for linking");
             }
             else
             {
                 clearPan = unusedPans.Take(1).First().pan;
             }
         }
         bool updated = CustomerDL.UpdateCardRequest(cardRequestID, clearPan, loggedInUsername, out cardRequest);
         if (updated)
         {
             Mail.SendCardPickup(cardRequest);
         }
         return(updated);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }