public static PINSelectionRespBean PINChangeViaWS(string pinEncrypted, string mobilePhone, string locPan)
        {
            PINSelectionRespBean resp = new PINSelectionRespBean();

            try
            {
                CardworksClient cw = new CardworksClient();
                //string linkWS = classUtilities.GetStringValueFromConfig("linkWS_UAT");
                string linkWS = classUtilities.GetStringValueFromConfig("linkWS_LIVE");

                cw.Endpoint.Address = new EndpointAddress(new Uri(linkWS));
                System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); };

                PINSelectionReqBean req = new PINSelectionReqBean();
                req.sequenceNo = generateNumber();
                req.fi         = "970429"; //Hard code
                req.pan        = locPan;   //LOC + 4 last digit Pan
                req.actInd     = "3";      //Hard code
                req.mobileNo   = mobilePhone;
                req.newPIN     = pinEncrypted;

                //PINSelectionRespBean
                resp = cw.PINSelection(req);
                return(resp);
            }
            catch (Exception ex)
            {
                classKichHoatTheLogWriter.WriteLog("Error PINChangeViaWS() at change_pin class, " + ex.Message);
                return(resp);
            }
        }
        public int Change_PIN(string mobile_i, string pin_i, string zpk_i, string locPan_i)
        {
            try
            {
                string mobile              = "";
                string pin                 = pin_i;
                string zpk                 = zpk_i;
                string locPan              = locPan_i;
                string ResSequenceNo       = "";
                string ResResponseCode     = "";
                string ResponseDescription = "";

                mobile = mobile_i.Substring(mobile_i.Length - 8, 8);
                string clearPINClock = "16" + pin + mobile;
                string encryptedPIN  = TripleDESEncrypt(new HexKey(zpk), clearPINClock);
                encryptedPIN = encryptedPIN.ToUpper();

                PINSelectionRespBean pinChangeResp = PINChangeViaWS(encryptedPIN, mobile, locPan);
                if (pinChangeResp != null)
                {
                    ResSequenceNo       = pinChangeResp.sequenceNo;
                    ResResponseCode     = pinChangeResp.responseCode;
                    ResponseDescription = pinChangeResp.responseDescription;
                }
                if (ResResponseCode == "000")//success
                {
                    return(1);
                }
                else
                {
                    return(0);//fail
                }
            }
            catch (Exception ex)
            {
                classKichHoatTheLogWriter.WriteLog("Error Change_PIN() at change_pin class, " + ex.Message);
                return(0);
            }
        }