Пример #1
0
        private XDocument ProcessCustomerValidationRequestsAndGetResponse(List <CustomerValidationRequest> cvrequests)
        {
            BettingSuiteDataContext           db                 = new BettingSuiteDataContext();
            List <CustomerValidationResponse> cvresponses        = new List <CustomerValidationResponse>(cvrequests.Count());
            List <CustomerValidationResponse> invalidcvresponses = new List <CustomerValidationResponse>(cvrequests.Count());

            foreach (CustomerValidationRequest cvr in cvrequests)
            {
                int      refr     = int.Parse(cvr.getCustReference().Substring(1));
                customer customer = null;

                //check Type of customer
                if (cvr.getCustReference().StartsWith(ConfigurationManager.AppSettings["AGENT PREFIX"]))
                {
                    shop shop = db.shops.SingleOrDefault(a => a.id == refr);
                    if (shop != null)
                    {
                        customer = new customer(shop);
                        customer.setPrefix(cvr.getCustReference().ElementAt(0).ToString());
                        if (customer.getReference() != refr)
                        {
                            customer = null;
                        }
                    }
                    else
                    {
                        customer = null;
                    }


                    if (customer != null)
                    {
                        // customer.setPaymentItem(cvr.getPaymentItemCode());
                        CustomerValidationResponse cr = new CustomerValidationResponse(customer, cvr.getMerchantReference());
                        cvresponses.Add(cr);
                    }
                    else
                    {
                        customer = new customer(null, null, null, null, null, null, 1);
                        customer.setPrefix(cvr.getCustReference().ElementAt(0).ToString());
                        customer.setReference(refr);
                        CustomerValidationResponse icr = new CustomerValidationResponse(customer, cvr.getMerchantReference());
                        invalidcvresponses.Add(icr);
                    }
                }
                else
                {
                    // Implement Online Users Later
                    customer = new customer(null, null, null, null, null, null, 1);
                    // customer.setPrefix(cvr.getCustReference().ElementAt(0).ToString());
                    customer.setReference(refr);
                    CustomerValidationResponse icr = new CustomerValidationResponse(customer, cvr.getMerchantReference());
                    invalidcvresponses.Add(icr);
                }
            }
            return(generateCustomerValidationResponse(cvresponses, invalidcvresponses));
        }
Пример #2
0
        private XDocument ProcessNotificationRequestsAndGetResponse(List <PaymentNotificationRequestHelper> pnrequests)
        {
            BettingSuiteDataContext            db          = new BettingSuiteDataContext();
            List <PaymentNotificationResponse> pnresponses = new List <PaymentNotificationResponse>(pnrequests.Count());

            // List<PaymentNotificationResponse> invalidpnresponses = new List<PaymentNotificationResponse>(pnrequests.Count());
            foreach (PaymentNotificationRequestHelper pnr in pnrequests)
            {
                int      refr     = int.Parse(pnr.getCustReference().Substring(1));
                customer customer = null;
                //check Type of customer
                if (pnr.getCustReference().StartsWith(ConfigurationManager.AppSettings["AGENT PREFIX"]))
                {
                    shop shop = db.shops.SingleOrDefault(a => a.id == refr);
                    if (shop != null)
                    {
                        customer = new customer(shop);
                        if (customer.getReference() != refr)
                        {
                            customer = null;
                        }
                    }
                    else
                    {
                        customer = null;
                    }


                    if (customer != null)
                    {
                        // customer.setPaymentItem(cvr.getPaymentItemCode());
                        PaymentNotificationResponse pr = new PaymentNotificationResponse(customer, pnr);
                        pr.setStatus(0);
                        savePaymentDetails(pnr);
                        pr.setPaymentLogId(pnr.getPaymentLogId().ToString());
                        pnresponses.Add(pr);
                    }
                    else
                    {
                        customer = new customer(null, null, null, null, null, null, 1);
                        customer.setReference(refr);
                        PaymentNotificationResponse ipr = new PaymentNotificationResponse(customer, pnr);
                        ipr.setStatus(1);
                        pnresponses.Add(ipr);
                    }
                }
                else if (pnr.getCustReference().StartsWith(ConfigurationManager.AppSettings["ONLINE USER PREFIX"]))
                {
                    // SORT OUT ONLINE LATER
                }

                else
                {
                    customer = new customer(null, null, null, null, null, null, 1);
                    customer.setReference(refr);
                    PaymentNotificationResponse ipr = new PaymentNotificationResponse(customer, pnr);
                    ipr.setStatus(1);
                    pnresponses.Add(ipr);
                }
            }
            return(generatePaymentNotificationResponse(pnresponses));
        }