[内网]文化云交易前端H5
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

427 lines
14 KiB

let Payment_method = null;
//截取url中的参数
function GetQueryString (name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return null
}
// 传递userId
if (GetQueryString("batchcode") != null && GetQueryString("batchcode").toString().length > 1) {
var batchcode = GetQueryString("batchcode");
}
let user_isli = cookieHandler.get("isliCode"); //用户isli
let Merchant_id = cookieHandler.get("Merchant_id"); //商户id
let accountId = cookieHandler.get("accountId"); //用户isli
let islidata = {
user_isli: user_isli,
batchcode: batchcode, //订单编号
user_role: 1 //购买角色
}
window.onload = function () {
Array.prototype.myForEach = function myForEach (callback, context) {
context = context || window;
if (Array.prototype.forEach) {
// 调用forEach方法,不做任何处理
this.forEach(callback, context);
return;
}
}
let login_token = cookieHandler.get("normal_login_token");
if (login_token) {
getshort(islidata);
} else {
$(location).prop('href', './login.html?time=' + new Date().getTime());
}
//判断支付方式
let method = $(".active").val();
if (method == "微信") {
Payment_method = 13
} else if (method == "支付宝") {
Payment_method = 12
} else if (method == "网银支付") {
Payment_method = 15
}
}
//选择支付方式
$(".btn").click(function () {
Payment_method = "";
$(this).addClass("active");
$(this).siblings().removeClass("active");
method = $(".active").val();
if (method == "微信") {
Payment_method = 13
} else if (method == "支付宝") {
Payment_method = 12
} else if (method == "网银支付") {
Payment_method = 15
}
});
let good_money = null; //交易金额
let All_data = []; //所有商品
let OrderCode = null;//订单号
//标的清单
function getshort (data) {
$("#table-javascript").bootstrapTable({
method: "Get",
contentType: "application/x-www-form-urlencoded",
url: Paymentlist + "certiaudit/listIndet",
async: false,
cache: false,
queryParams: function (params) {
params.userid = cookieHandler.get("accountId");
params.isok = '2';
return params;
},
ajaxOptions: {
headers: {
"normal_login_token": cookieHandler.get("normal_login_token")
}
},
responseHandler: function (res) {
if (res.resultCode == "00000000" && res.data.length > 0) {
good_money = res.data[0].paysum; //商品总价格
if(good_money > 20000){
$('#Alipay').attr('disabled','disabled');
}
OrderCode = res.data[0].pay_no;//订单号
All_data = res.data;
return res.data
} else {
return []
}
},
// 请求失败
onLoadError: function (err) {
if (err == 401) {
cookieHandler.del("isliCode")
cookieHandler.del("normal_login_token")
cookieHandler.del("accountId")
cookieHandler.del("cellPhone")
cookieHandler.del("userType")
Dreamer.error("请先登录");
setTimeout(function () {
let demoDate = new Date();
window.location.href = 'login.html?time=' + new Date().getTime();
}, 1500)
}
},
columns: [
{
title: '订单号',
field: 'pay_no',
align: 'center',
valign: 'middle'
},
{
title: '名称',
field: '',
align: 'center',
valign: 'middle',
formatter: function (value, row, index) {
return "认证缴费订单"
}
},
{
title: '订单金额',
field: 'paysum',
align: 'center',
valign: 'middle',
formatter: function (value, row, index) {
var f = parseFloat(value);
if (isNaN(f)) {
return false;
}
var f = Math.round(value * 100 ) / 100;
var s = f.toString();
var rs = s.indexOf('.');
if (rs < 0) {
rs = s.length;
s += '.';
}
while (s.length <= rs + 2) {
s += '0';
}
return '¥' + s;
}
}
]
})
}
//转换时间
function getDayTimer (data) {
var date = new Date(data)
var y = date.getFullYear()
var m = date.getMonth() + 1
m = m < 10 ? ('0' + m) : m
var d = date.getDate()
d = d < 10 ? ('0' + d) : d
var currentdate = y + '-' + m + '-' + d;
var hh = date.getHours()
hh = hh < 10 ? ('0' + hh) : hh
var mm = date.getMinutes()
mm = mm < 10 ? ('0' + mm) : mm
var ss = date.getSeconds()
ss = ss < 10 ? ('0' + ss) : ss
var time = hh + ':' + mm + ':' + ss;
return currentdate + " " + time
}
//未支付3分钟进入认证缴费订单
function NewTime () {
var date = new Date();
var year = date.getFullYear(); //获取当前年份
var mon = date.getMonth() + 1; //获取当前月份
var da = date.getDate(); //获取当前日
var h = date.getHours(); //获取小时
var m = date.getMinutes(); //获取分钟
var s = date.getSeconds(); //获取秒
var ts = m + Number(3);
//将时间格式转化为时间戳
var oDate1 = new Date(year, mon, da, h, m, s); //当前的时间
var oDate2 = year + '-' + mon + '-' + da + ' ' + h + ':' + ts + ':' + s;
if (localStorage.getItem("new_payame_order") && localStorage.getItem("new_user_payame_order")) {
let new_oDate2 = localStorage.getItem("new_payame_order");
var targetDate = new Date(new_oDate2);
run(targetDate);
} else {
localStorage.setItem("new_user_payame_order", oDate1);
localStorage.setItem("new_payame_order", oDate2);
let new_oDate2 = localStorage.getItem("new_payame_order");
var targetDate = new Date(new_oDate2);
run(targetDate);
}
}
function run (enddate) {
window.queen_id = setInterval("getDate('" + enddate + "')", 1000);
}
function getDate (enddate) {
let oDate = new Date(); //获取日期对象
let year = oDate.getFullYear(); //获取当前年份
let mon = oDate.getMonth() + 1; //获取当前月份
let da = oDate.getDate(); //获取当前日
let h = oDate.getHours(); //获取小时
let m = oDate.getMinutes(); //获取分钟
let s = oDate.getSeconds(); //获取秒
let new_time = year + '-' + mon + '-' + da + ' ' + h + ':' + m + ':' + s;
let new_oDate2 = localStorage.getItem("new_payame");
if (new_oDate2 == new_time) {
Dreamer.warning("由于长时间未支付,即将进入认证缴费订单!", 2000);
localStorage.removeItem('new_user_payame_order');
localStorage.removeItem('new_payame_order');
window.clearInterval(window.queen_id);
setTimeout(function () {
window.location.href = 'CerationPayment.html?time=' + new Date().getTime();
}, 2000)
}
}
// /*按钮禁用5秒*/
function disabledSubmitButton (submitButtonName) {
$("." + submitButtonName).attr({
"disabled": "disabled"
}); //控制按钮为禁用
var timeoutObj = setTimeout(function () {
$("." + submitButtonName).removeAttr("disabled"); //将按钮可用
/* 清除已设置的setTimeout对象 */
clearTimeout(timeoutObj)
}, 5000);
}
// let clock = null;
function Con_payment () {
//拼接标的名称
let manyName = "";
let shopname = "";
let shop_price = "";
let new_shop_Name = "";
let new_user_year = [];
//计算年限
let user_year = null;
All_data.myForEach(function (item, index, arr) {
if (index < All_data.length - 1) {
shopname += item.pay_no + ",";
} else {
shopname += item.pay_no + "";
}
//商品单价
if (index < All_data.length - 1) {
shop_price += item.paysum + ",";
} else {
shop_price += item.paysum + "";
}
});
//计算交易金额
let manyMony = 0;
manyMony = (Number(good_money * 100)).toFixed(0);
// let newmanyName = manyName; //将标的名称拼接起来给新的
// amount 交易金额精确到分(100=1元)
// app_id 发送请求的公司ID,由银联供应链综合服务平台统一发放
// body 订单描述
// businesstype 交易类型(见附录)1001-销售收款;2001-消费付款
// ordernumber 订单号
// paymenttypeid 12:支付宝 13 微信 15 网银支付
// subpaymenttypeid 12:支付宝 13 微信 15 网银支付
// businesstime 创建时间yyyy-MM-dd HH:mm:ss
// buyer 客户(买方)
// chargeuptype 收支类型1-收入2-支出
// goodsname 商品名称
// orderamount 订单金额(单位分)
// payorderid 交易流水号
// price 商品单价(单位分)
// seller 商户(卖方)
// settlementamount 结算金额(分)
// settlementtype 结算方式:1-转账充值;2-内部转账
// totalqty 商品数量
// if (manyName.length > 100) {
// manyName = manyName.split(",")[0];
// }
let payment = {
amount: manyMony, //交易金额
app_id: Merchant_id, //发送请求的公司id
body: "认证缴费订单", //订单描述
businesstype: 1001, //交易类型1001-销售收款,2001-消费付款
ordernumber: shopname, //订单号
paymenttypeid: Payment_method, //12支付宝,13微信 15 网银支付
subpaymenttypeid: Payment_method, //12支付宝,13微信 15 网银支付
businesstime: getDayTimer(new Date()),
buyer: accountId, //客户(买方) 用户isli
chargeuptype: 2, //收支类型1-收入2-支出,
goodsname: "认证缴费订单", //商品名称
orderamount: manyMony, //订单金额(单位分)
payorderid: shopname, //交易流水号
price: shop_price, //商品单价(单位分)
seller: accountId, //商户(卖方)
settlementamount: manyMony, //结算金额(分)
settlementtype: 2, //结算方式:1-转账充值;2-内部转账
// totalqty: user_year, //商品数量
totalqty: 1 //商品数量
}
//判断数据中没有撤销的数据就可以下单推送了
if (new_shop_Name == "") {
disabledSubmitButton("firmpay");
//确认支付接口
var ajaxPaymentShop = new AJAX_OBJ(PayCallBack + "order/certificationPay?amount=" + payment.amount +
"&app_id=" + payment.app_id + "&body=" + encodeURIComponent(payment.body, "ut-8") + "&businesstype=" +
payment.businesstype +
"&ordernumber=" + payment.ordernumber + '&paymenttypeid=' + payment.paymenttypeid +
'&subpaymenttypeid=' + payment.subpaymenttypeid + '&businesstime=' + payment.businesstime +
'&buyer=' + payment.buyer + '&chargeuptype=' + payment.chargeuptype + '&goodsname=' +
encodeURIComponent(payment.goodsname, "ut-8") + '&orderamount=' + payment.orderamount + '&payorderid=' +
payment.payorderid + '&price=' + payment.price +
'&seller=' + payment.seller + '&settlementamount=' + payment.settlementamount +
'&settlementtype=' + payment.settlementtype +
'&totalqty=' + payment.totalqty, PaymentShop, onUrlError);
ajaxPaymentShop.postRequestData();
} else {
Dreamer.warning(new_shop_Name + "无法购买");
}
}
//确认支付
$(".firmpay").click(Con_payment);
function PaymentShop (xmlHttp) {
var res = eval("(" + xmlHttp.responseText + ")");
if (res.resultCode === "00000000") {
// let new_titleurl = "https://spay3.swiftpass.cn/spay/payorder-5b3841025eec50de187971d612c5b46af";
if (Payment_method != "15" && Payment_method != "15") {
//支付弹出框
$('#myModal').modal({
backdrop:'static',
keyboard:false
});
let left_list = '<div class="tent_left">' + '<img class="tent_img" src=' + res.data.qrcodeurl + '>' + '</div>' +
'<div class="tent_cen">' +
'<img id="imagess" src="../images/sx.png">' + '</div>' +
'<div class="error">' + '<h1 class="error-tit">' +'温馨提示' + '</h1>'+ '<div class="error-hand">'+ '</div>'+
'<div class="error-text">'+'请使用'+'<span>'+'网银、支付宝'+'</span>'+'App扫码支付'+'</div>'+
'</div>';
$(".modal-word").html(left_list);
clock = setInterval(handelRote, 5000);
NewTime();
} else {
var newwin = window.open('', '', '');
newwin.opener = null;
newwin.document.write(res.data);
newwin.document.close();
clock = setInterval(handelRote, 5000);
}
} else {
Dreamer.error(res.resultMsg);
}
}
//点击刷新按钮
function handelRote () {
$('#imagess').css('transform', 'rotate(360deg)');
$('#imagess').css('transition', 'all 1s');
var ajaxRefreshShop = new AJAX_OBJ(Paymentlist + "certiaudit/getObectByCode?code=" + OrderCode, RefreshShop, onUrlError);
ajaxRefreshShop.postRequestData();
}
function RefreshShop (xmlHttp) {
var res = eval('(' + xmlHttp.responseText + ')');
if (res.resultCode === "00000000") {
$('#imagess').css('transform', '');
$('#imagess').css('transition', '');
let status = res.data.respcod;
if (status == "支付完成") {
clearInterval(clock);
localStorage.removeItem('new_user_payame_order');
localStorage.removeItem('new_payame_order');
window.clearInterval(window.queen_id);
$('#myModal').modal('hide');
let stat = "支付成功";
$('#situationModal').modal({
backdrop: 'static'
});
let left_list = '<h2 class="word_header">' + stat + '</h2>' +
'<div class="word_cen">' + '<div class="btn_cen" onclick="retun()">' + '返回' +
'</div>' +
'<div class="btn_cen" onclick="chaseOrder()">' + '进入认证缴费订单' + '</div>' + '</div>';
$(".situation-word").html(left_list);
} else {
clearInterval(clock);
$('#myModal').modal('hide');
let stat = "支付失败";
$('#situationModal').modal({
backdrop: 'static'
});
let left_list = '<h2 class="word_header">' + stat + '</h2>' +
'<div class="word_cen">' + '<div class="btn_cen" onclick="retun()">' + '返回' +
'</div>' +
'<div class="btn_cen" onclick="chaseOrder()">' + '进入认证缴费订单' + '</div>' + '</div>';
$(".situation-word").html(left_list);
}
}
}
//点击返回
function retun () {
window.location.href = 'Home.html?time=' + new Date().getTime();
}
//点击进入认证缴费订单
function chaseOrder () {
window.location.href = 'CerationPayment.html?time=' + new Date().getTime();
}