var ordcoun = 0;
$('#major').unbind('click').on('click',
function() {
$("#major").attr('disabled',true);
$("body").css("overflow","hidden");
//var $iframe = $('')
var $iframe = $('')
var params = {
"PRODUCT_NAME" : PRODUCT_NAME,
"PRODUCT_PRICE" : PRODUCT_PRICE,
"CLIENT_ID" : "",
"CLIENT" : "3",
"SERVICE_ID" : "",
"AUTH_NO" : "",
"CLIENT_SECRET" : "",
"VERSION" : "1.0",
"SERVICE_PHONE" : "",
"THEME" : "",
"PRODUCT_ID" : PRODUCT_ID,
"PRODUCT_TYPE" : "1"
}
$iframe.on('load',function() {
$.ajax({
//请求后项定向服务获取
url : getRootPath() + "-s1api" + "/ini/clientsecret",
dataType : "JSON",
method : "GET",
success : function(data) {
params.CLIENT_ID = data.client_id;
params.AUTH_NO = data.auth_no;
params.CLIENT_SECRET = data.client_secret;
console.log(JSON.stringify(params))
$('#uniauthframe')[0].contentWindow.postMessage(
JSON.stringify(params),
"https://cap.chinaunicom.cn/CAP-AUTH/")
}
})
})
$('body').append($iframe);
function order(data, product) {
$("#major").val("正在开通请稍等....!");
//活动页面的订购的逻辑
$.ajax({
type : "POST",
contentType : "application/json; charset=utf-8",
dataType : "Json",
url : getRootPath() + "-s1api" + '/com/buyc',
data : JSON.stringify(GetMasData(product, data.SERVICE_ID,data.RSP.DATA[0].TOKEN)),
success : function(msg) {
var resCode = eval(msg["resultCode"]);
switch (resCode) {
case (0000):
$("#major").val("订购成功!");
break;
case (0013):
$("#major").css("font-size","0.1rem");
$("#major").val("该号码归属省分2/3G暂未开通此产品!");
break;
case (6608):
$("#major").css("font-size","0.1rem");
$("#major").val("该号码归属省分,暂未开通此产品!");
break;
case (6611):
$("#major").val("订购失败,请重试!");
$("#major").attr('disabled',false);
ordcoun = 0;
break;
case (6615):
$("#major").val("订购失败,请确定用户套餐!");
break;
case (6622):
$("#major").val("用户已订购过此产品!");
break;
case (7777):
//对7777编码不处理
break;
default:
$("#major").css("font-size","0.1rem");
$("#major").val(msg["errorInfo"]);
$("#major").attr('disabled',false);
ordcoun = 0;
}
},
error : function(XMLHttpRequest,
textStatus, errorThrown) {
$("#major").attr('disabled',false);
$("#major").val("请求失败,请确认网络是否正常!");
},
});
}
/**
* 订购发送信息包装
* @param product
* @returns {___anonymous5356_5582}
*/
function GetMasData(product, phone, tok) {
var data = {
"fog" : getMemoValbyId(product, "fog"),
"usermob" : phone,
"useraccount" : getMemoValbyId(product,
"useraccount"),
"fes" : getUrlParam("fes"),
"sou" : getUrlParam("sou"),
"token" : tok
};
return data;
}
//监听统一认证结果
window.addEventListener('message', function(e) {
if(ordcoun==0){
ordcoun = 1;
var data = JSON.parse(e.data);
switch (data.RSP.RSP_CODE) {
case "0000": //处理成功
$('iframe').remove();
alert(data.RSP.DATA[0].TOKEN);
ordcoun = 0;
break;
case "0001"://auth_no无效 (入参流水)
$("#major").val("认证失败!");
$("#major").attr('disabled',false);
ordcoun = 0;
case "0003"://client_id不存在 (注册id存在问题)
$("#major").val("认证失败!");
$("#major").attr('disabled',false);
ordcoun = 0;
case "4444"://服务暂时不可用(系统忙/系统队列满)
$("#major").val("服务暂时不可用!");
$("#major").attr('disabled',false);
ordcoun = 0;
case "9001"://关闭H5认证页面
$('iframe').remove();
$("#major").attr('disabled',false);
ordcoun = 0;
break;
}
}
}, false);
})