var isPay = true; // 是否在请求支付,false表示正在请求,true可以请求
var isEfficacious = true; //商品是否有效,有效则可以支付,无效则不能支付
mui.ready(function() {
var orderId = getParam("orderId");
$('#check-luck-draw').attr("value", orderId);
var table = document.body.querySelector('.shopping-cart-list');
mui.ajax('/iamberry/wechat/cart/getShopOrderByOrderId', {
data: {
orderId: orderId
},
dataType: 'json',
type: 'post',
timeout: 15000,
success: function(dt) {
//服务器返回响应
if(dt.status) {
var bannerdata = dt.data;
$('#logistics').hide();
$('#exchangeOrder').hide();
$('#salesReturn').hide();
$('#refund').hide();
$('#cancelOrder').hide();
$('#orderPay').hide();
$('#oldStatus').val(bannerdata.salesStatus);
if(bannerdata.salesStatus == 1) {
$('#salesStatus').html('待支付');
$('#cancelOrder').show();
$('#orderPay').show();
} else if(bannerdata.salesStatus == 2) {
$('#salesStatus').html('已支付,待发货');
$('#refund').show();
$("#choujiang").show();
} else if(bannerdata.salesStatus == 3) {
$('#salesStatus').html('退款申请中');
} else if(bannerdata.salesStatus == 4) {
$('#salesStatus').html('已退款');
} else if(bannerdata.salesStatus == 5) {
$('#salesStatus').html('已发货');
$('#exchangeOrder').show();
$('#salesReturn').show();
$('#logistics').show();
} else if(bannerdata.salesStatus == 6) {
$('#salesStatus').html('申请退货中');
} else if(bannerdata.salesStatus == 7) {
$('#salesStatus').html('退货中');
} else if(bannerdata.salesStatus == 8) {
$('#salesStatus').html('订单退货,订单关闭');
} else if(bannerdata.salesStatus == 9) {
$('#salesStatus').html('换货中');
$('#logistics').show();
} else if(bannerdata.salesStatus == 10) {
$('#salesStatus').html('换货完成');
$('#logistics').show();
} else if(bannerdata.salesStatus == 11) {
$('#salesStatus').html('申请换货中');
$('#logistics').show();
} else if(bannerdata.salesStatus == 12) {
$('#salesStatus').html('订单完成');
$('#logistics').show();
$('#exchangeOrder').show();
} else if(bannerdata.salesStatus == 0) {
$('#salesStatus').html('取消订单');
}
$('#salesOrderid').html(bannerdata.salesOrderid);
$('#salesCreateDate').html(bannerdata.salesCreateDate);
$('#salesAmount').html('¥' + accDiv(bannerdata.salesAmount, 100));
$('#salesYetAmount').html('¥' + accDiv(bannerdata.salesYetAmount, 100));
$('#salesAddressInfo').html(bannerdata.salesAddressInfo);
$('#salesAddressName').html(bannerdata.salesAddressName);
$('#salesAddressTel').html(bannerdata.salesAddressTel);
$('#salesUserRemark').html(bannerdata.salesUserRemark);
$('#salesLockType').val(bannerdata.salesLockType);
if(bannerdata.salesStatus != 0 && bannerdata.salesStatus != 1 && bannerdata.couponReduce != null && bannerdata.couponReduce != '') {
$('#couponReduce').html('¥' + accDiv(bannerdata.couponReduce, 100));
$('#couponMoney').show();
} else {
$('#couponMoney').hide();
}
if(null != bannerdata.salesPostFirm && bannerdata.salesPostFirm != '' &&
bannerdata.salesPostNum != null && bannerdata.salesPostNum != '') {
if(bannerdata.salesPostFirm == 'shentong') {
$('#salesPostFirm').html('申通快递');
}
if(bannerdata.salesPostFirm == 'yuantong') {
$('#salesPostFirm').html('圆通快递');
}
if(bannerdata.salesPostFirm == 'shunfeng') {
$('#salesPostFirm').html('顺丰快递');
}
if(bannerdata.salesPostFirm == 'longbanwuliu') {
$('#salesPostFirm').html('龙邦快递');
}
$('#salesPostNum').html(bannerdata.salesPostNum);
$('#logistics').show();
} else {
$('#salesPostFirm').html('暂无');
$('#logistics').hide();
}
$('#logistics').attr("postfirm", bannerdata.salesPostFirm);
$('#logistics').attr("postnum", bannerdata.salesPostNum);
$('#logistics').attr("gourl", '/iamberry/pay/goOrderInfo?orderId=' + bannerdata.salesOrderid);
var item = bannerdata.orderItemList;
if(item != null) {
$(item).each(function(index) {
var pro_color = switchcolor(this.productColor)
var li = document.createElement('li');
li.className = 'mui-table-view-cell mui-media bg-f';
li.innerHTML = '
' +
' | ' + this.itemProductName + ' | x' + this.itemNum + ' | ' +
'
' +
'颜色:' + pro_color + ' |
' +
'单价:¥' + accDiv(this.itemProductDiscount, 100) + ' | 合计:¥' + accDiv(this.itemTotal, 100) + ' |
';
if(bannerdata.salesStatus == 1 && this.productStatus != 1) {
li.innerHTML = '' +
' | ' +
'' + this.itemProductName + ' | ' +
'
' +
'产品下架 |
';
//待支付订单中如果有下架的产品,则不能支付
isEfficacious = false;
}
table.appendChild(li);
});
}
document.querySelector('.loading-bg').style.display = 'none';
}
},
error: function(xhr, type, errorThrown) {
errorfn(xhr);
}
});
});
function goOrderPay() {
if(!isEfficacious) {
mui.alert("您的订单有商品下架,请重新生成订单购买!");
return false;
}
var salesOrderid = $('#salesOrderid').html();
var dataArgs = {
"orderId": salesOrderid
};
if(isPay) {
layer.open({
type: 2,
shadeClose: false,
content: "正在请求加载订单信息..."
}); // 调用加载弹出层
isPay = false; //锁定请求
mui.ajax('/iamberry/wechat/cart/orderPay', { // 提交订单,准备支付
data: dataArgs,
dataType: 'json',
type: 'POST',
timeout: 15000,
success: function(dt) {
layer.closeAll();
if(dt.status) {
var str = dt.data.info;
var obj = JSON.parse("{" + str + "}");
WeixinJSBridge.invoke('getBrandWCPayRequest', obj, function(res) {
if(res.err_msg == 'get_brand_wcpay_request:ok') {
var orderIds = {
"orderId": dt.data.orderId
};
layer.open({
type: 2,
shadeClose: false,
content: "正在请求加载订单信息..."
}); // 调用加载弹出层
mui.ajax('/iamberry/wechat/order/checkOrderPaySuccess', { // 校验订单状态
data: orderIds,
dataType: 'json',
type: 'post',
timeout: 15000,
success: function(dt) {
if(dt.status) { // 支付成功
window.location.href = "/iamberry/wechat/order/paySuccess?orderId=" + orderIds.orderId + "&dates=" + new Date().getTime();
} else {
isPay = false;
setTimeout(checkOrderStatus(orderIds), 1000);
}
},
error: function(xhr, type, errorThrown) {
isPay = true;
layer.closeAll();
mui.alert("您的网络异常,请刷新重试!");
return;
}
});
} else {
isPay = true;
mui.alert("对不起,支付失败!请稍后重试!" + dt.data.orderId + "支付失败!");
window.location.href = "/iamberry/pay/goOrderInfo?orderId=" + dt.data.orderId + "&dates=" + new Date().getTime();; // 前往订单详情
}
});
} else {
isPay = true;
mui.alert(dt.message);
}
},
error: function(xhr, type, errorThrown) {
isPay = true;
layer.closeAll();
mui.alert("您的网络异常,请刷新重试!");
return;
}
});
} else {
mui.alert("正在请求支付中~~请稍后!");
return;
}
}
//根据用户操作选择对应的操作方法
function operation(num) { //num: 1:换货 2:退货
var url = '';
var data = new Array;
var status = $('#oldStatus').val();
var orderId = $('#salesOrderid').html();
var salesLockType = $('#salesLockType').val();
var changeOrderId = $("#changeOrderId").val();
var returnOrderId = $("#returnOrderId").val();
var info = "";
var message = "";
if(status == 1) {
if(salesLockType == 2) {
mui.alert("该订单不能取消!");
return false;
}
//取消订单
info = "您确定要取消订单吗?";
url = '/iamberry/wechat/cart/cancelOrder';
data = {
orderId: orderId,
changeOrderId: changeOrderId,
status: status
}
} else if(status == 2) {
if(salesLockType == 2) {
mui.alert("您申请了微代理,此单已被锁定,无法进行退款操作!");
return false;
}
//申请退款
info = "您确定要申请退款?";
message = "此订单不能退款!";
url = '/iamberry/wechat/cart/returnOrder';
var returnReason = $('#return-money-id').val();
if(returnReason == null || returnReason == '') {
mui.alert("备注必填!请输入1-99个字!");
return false;
} else {
if(!checkAddress(returnReason)) {
mui.alert("您输入的格式有误,请重新输入!");
return false;
}
}
data = {
orderId: orderId,
remark: returnReason,
status: status
}
} else if(status == 5 || status == 12) {
if(num == 1) {
//换货
info = "您确定要申请换货吗?";
message = "超出换货期限,不能换货!";
url = '/iamberry/wechat/cart/exchangeOrder';
data = {
orderId: orderId,
changeOrderId: changeOrderId,
status: status
}
} else {
if(salesLockType == 2) {
mui.alert("您申请了微代理,此单已被锁定,无法进行退货操作!");
return false;
}
//退货
info = "您确定要申请退货吗?";
message = "超出退货期限,不能退货!";
url = '/iamberry/wechat/cart/returnOrder';
var returnReason = $('#return-pay-id').val();
if(returnReason == null || returnReason == '') {
mui.alert("备注必填!请输入1-99个字!");
return false;
} else {
if(!checkAddress(returnReason)) {
mui.alert("您输入的格式有误,请重新输入!");
return false;
}
}
data = {
orderId: orderId,
remark: returnReason,
returnOrderId: returnOrderId,
status: status
}
}
}
var btnArray = ['否', '是'];
mui.confirm(info, '爱贝源-提示', btnArray, function(e) {
if(e.index == 1) {
$.ajax({
data: data,
url: url,
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 15000, //超时时间设置为15秒;
success: function(dt) {
//服务器返回响应
if(dt.status) {
var bannerdata = dt.data;
location.reload();
} else {
mui.alert(message);
}
}
});
}
});
}