public voucherDTO redeemRequestVoucher(voucherDTO request)
        {
            voucherDTO           ovoucherDTO = null;
            string               LocalTicketorSiteCode;
            string               sURL;
            RTOnlineTicketDetail TicketDetailEntity = new RTOnlineTicketDetail();

            TicketDetailEntity.TicketString = request.barcode;

            ValidateSiteCode(TicketDetailEntity.TicketString, out LocalTicketorSiteCode, out sURL);

            if (sURL.IsNullOrEmpty() || sURL == "INVALID") //Invalid Site Code or No rights to access other Site
            {
                return(ovoucherDTO);
            }
            else if (sURL.StartsWith("http")) // WebService Call in case of Different Site Code
            {
                System.ServiceModel.EndpointAddress objEndpoint = new System.ServiceModel.EndpointAddress(sURL);
                TicketingClient.TicketingServiceReference.TicketingServiceClient objClient = new TicketingClient.TicketingServiceReference.TicketingServiceClient(objEndpoint, LocalTicketorSiteCode);

                //EndpointAddress objEndpoint = new EndpointAddress("http://10.2.108.29/TicketingWCFService/TicketingService.svc"); //sURL
                //TicketingServiceClient objClient = new TicketingServiceClient(objEndpoint, "1001"); //LocalTicketorSiteCode);
                voucherDTO[] ovoucherDTOarr = objClient.SearchTicketForCage(TicketDetailEntity.TicketString, Settings.SiteCode);
                if (ovoucherDTOarr != null)
                {
                    if (ovoucherDTOarr.Length > 0)
                    {
                        ovoucherDTO = ovoucherDTOarr[0];
                    }
                }
                return(ovoucherDTO);
            }

            return(issueTicketDB.redeemRequestVoucherForCage(request));
        }
        public voucherDTO[] SearchVoucher(String partialBarcode, int siteId, long amount, int maxCount)
        {
            voucherDTO[] ovoucherDTO = null;
            string       LocalTicketorSiteCode;
            string       sURL;

            ValidateSiteCode(partialBarcode, out LocalTicketorSiteCode, out sURL);

            if (sURL.IsNullOrEmpty() || sURL == "INVALID") //Invalid Site Code or No rights to access other Site
            {
                LogManager.WriteLog("IssueTicketCage->SearchVoucher(Invalid Site Code or No rights to access other Site):" + partialBarcode, LogManager.enumLogLevel.Debug);
                return(ovoucherDTO);
            }
            else if (sURL.StartsWith("http")) // WebService Call in case of Different Site Code
            {
                LogManager.WriteLog("IssueTicketCage->Cross ticketing: SearchVoucher Got site URL for:" + partialBarcode, LogManager.enumLogLevel.Debug);

                System.ServiceModel.EndpointAddress objEndpoint = new System.ServiceModel.EndpointAddress(sURL);
                TicketingClient.TicketingServiceReference.TicketingServiceClient objClient = new TicketingClient.TicketingServiceReference.TicketingServiceClient(objEndpoint, LocalTicketorSiteCode);

                //EndpointAddress objEndpoint = new EndpointAddress("http://10.2.108.29/TicketingWCFService/TicketingService.svc"); //sURL
                //TicketingServiceClient objClient = new TicketingServiceClient(objEndpoint, "1001"); //LocalTicketorSiteCode);
                return(objClient.SearchTicketForCage(partialBarcode, Settings.SiteCode));
            }

            return(issueTicketDB.SearchTicketForCage(partialBarcode, siteId, amount, maxCount));
        }
        public voucherDTO[] SearchVoucher(String partialBarcode, int siteId, long amount, int maxCount)
        {
            voucherDTO[] ovoucherDTO = null;
            string LocalTicketorSiteCode;
            string sURL;

            ValidateSiteCode(partialBarcode, out LocalTicketorSiteCode, out sURL);

            if (sURL.IsNullOrEmpty() || sURL == "INVALID") //Invalid Site Code or No rights to access other Site
            {
                LogManager.WriteLog("IssueTicketCage->SearchVoucher(Invalid Site Code or No rights to access other Site):" + partialBarcode, LogManager.enumLogLevel.Debug);
                return ovoucherDTO;
            }
            else if (sURL.StartsWith("http")) // WebService Call in case of Different Site Code 
            {
                LogManager.WriteLog("IssueTicketCage->Cross ticketing: SearchVoucher Got site URL for:" + partialBarcode, LogManager.enumLogLevel.Debug);

                System.ServiceModel.EndpointAddress objEndpoint = new System.ServiceModel.EndpointAddress(sURL);
                TicketingClient.TicketingServiceReference.TicketingServiceClient objClient = new TicketingClient.TicketingServiceReference.TicketingServiceClient(objEndpoint, LocalTicketorSiteCode);

                //EndpointAddress objEndpoint = new EndpointAddress("http://10.2.108.29/TicketingWCFService/TicketingService.svc"); //sURL
                //TicketingServiceClient objClient = new TicketingServiceClient(objEndpoint, "1001"); //LocalTicketorSiteCode);
                return objClient.SearchTicketForCage(partialBarcode, Settings.SiteCode);
            }

            return issueTicketDB.SearchTicketForCage(partialBarcode, siteId, amount, maxCount);
        }
        public voucherDTO redeemRequestVoucher(voucherDTO request)
        {
            voucherDTO ovoucherDTO = null;
            string LocalTicketorSiteCode;
            string sURL;
            RTOnlineTicketDetail TicketDetailEntity = new RTOnlineTicketDetail();
            TicketDetailEntity.TicketString = request.barcode;

            ValidateSiteCode(TicketDetailEntity.TicketString, out LocalTicketorSiteCode, out sURL);

            if (sURL.IsNullOrEmpty() || sURL == "INVALID") //Invalid Site Code or No rights to access other Site
            {
                return ovoucherDTO;
            }
            else if (sURL.StartsWith("http")) // WebService Call in case of Different Site Code 
            {
                System.ServiceModel.EndpointAddress objEndpoint = new System.ServiceModel.EndpointAddress(sURL);
                TicketingClient.TicketingServiceReference.TicketingServiceClient objClient = new TicketingClient.TicketingServiceReference.TicketingServiceClient(objEndpoint, LocalTicketorSiteCode);

                //EndpointAddress objEndpoint = new EndpointAddress("http://10.2.108.29/TicketingWCFService/TicketingService.svc"); //sURL
                //TicketingServiceClient objClient = new TicketingServiceClient(objEndpoint, "1001"); //LocalTicketorSiteCode);
                voucherDTO[] ovoucherDTOarr = objClient.SearchTicketForCage(TicketDetailEntity.TicketString,Settings.SiteCode);
                if (ovoucherDTOarr != null)
                {
                    if (ovoucherDTOarr.Length > 0)
                    {
                        ovoucherDTO = ovoucherDTOarr[0];
                    }
                }
                return ovoucherDTO;
            }
            
            return  issueTicketDB.redeemRequestVoucherForCage(request);
        }