<!DOCTYPE html>
<html>

<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no">
	<meta name="apple-mobile-web-app-capable" content="yes">
	<meta name="apple-mobile-web-app-status-bar-style" content="black">
	<title>订单列表</title>
	<link rel="stylesheet" type="text/css" href="css/mui.min.css" />
	<link rel="stylesheet" type="text/css" href="css/iconfont.css" />
	<link rel="stylesheet" type="text/css" href="css/main.css" />
	<script type="text/javascript" src="//res.wx.qq.com/open/js/jweixin-1.1.0.js"></script>
	<script>
        //屏蔽分享
//       document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
//        	WeixinJSBridge.call('hideOptionMenu');
//       });
	</script>
</head>

<body>
<header class="mui-bar mui-bar-nav">
	<div id="pro-menu" class="mui-segmented-control tab-with-orderlist">
		<a class="mui-control-item icon-topay" tabindex="0" href="#item1">待支付</a>
		<a class="mui-control-item icon-todelivery" href="#item2" tabindex="1">待发货</a>
		<a class="mui-control-item icon-delivery" href="#item3" tabindex="2">待收货</a>
		<a class="mui-control-item icon-allorder" href="#item4" tabindex="3">全部</a>
	</div>
</header>
<!--<footer class="mui-bar mui-bar-tab" id="footer-bar-tab">
			<a class="mui-tab-item">
				<span class="iconfont icon-shouye"></span>
				<span class="mui-tab-label">首页</span>
			</a>
			<a class="mui-tab-item">
				<span class="iconfont icon-gouwuche"></span>
				<span class="mui-tab-label">购物车</span>
			</a>
			<a class="mui-tab-item mui-active">
				<span class="iconfont icon-dingdan"></span>
				<span class="mui-tab-label">订单</span>
			</a>
			<a class="mui-tab-item">
				<span class="iconfont icon-wode"></span>
				<span class="mui-tab-label">我的</span>
			</a>
		</footer>-->
<!-- 上拉加载数据 -->
<div id="pullrefresh_order_list" class="mui-content mui-scroll-wrapper">
	<div class="mui-scroll">
		<ul class="my-table-view-order my-scroll-order">
	
		</ul>
	</div>
</div>
<!-- 加载ing -->
<div class="loading-bg">
	<div class="mui-loading">
		<div class="mui-spinner">
		</div>
		&nbsp;&nbsp;加载中...
	</div>
</div>
<!-- 加载ing END -->
<script src="js/mui.min.js"></script>
<script src="js/mui.picker.min.js"></script>
<script src="js/jquery-2.1.1.min.js"></script>
<script src="js/jquery.autocompleter.js"></script>
<script src="js/main.js"></script>
<script>
	
    var isPay = true; // 是否在请求支付,false表示正在请求,true可以请求
    var tabindex = 1;
    /**
     * 获取指定的URL参数值
     * URL:http://www.baidu.com/index?name=tyler
     * 参数:paramName URL参数
     * 调用方法:getParam("name")
     * 返回值:tyler
     */
    var search_str = "",
        pageNumber = 0,
        pagesize = 10;
    //初始化mui
    mui.init({
        pullRefresh: {
            container: '#pullrefresh_order_list',
            down: {
                //						callback: pulldownRefresh
            },
            up: {
                contentrefresh: '正在加载...',
                callback: pullupRefresh
            }
        }
    });
    mui.ready(function() {
        tabindex = getParam("salesStatus");
        tabindex == null ? tabindex = '1' : tabindex;
        $(".tab-with-orderlist").removeClass('mui-active');
        switch(tabindex) {
            case "2":
                $(".tab-with-orderlist .icon-todelivery").addClass('mui-active');
                break;
            case "5":
                $(".tab-with-orderlist .icon-delivery").addClass('mui-active');
                break;
            case "-1":
                $(".tab-with-orderlist .icon-allorder").addClass('mui-active');
                break;
            default:
                $(".tab-with-orderlist .icon-topay").addClass('mui-active');
                break;
        }
        document.querySelector('.loading-bg').style.display = 'none';
        mui('#pullrefresh_order_list').pullRefresh().pullupLoading();
    });

    function SetRemainTime(setName, index, sys_second) {

        var setName = setInterval(function() {
            if(sys_second > 1) {
                sys_second -= 1;
                var minute = Math.floor((sys_second / 60));
                //var second = Math.floor(sys_second % 60);

                //$("#testid"+index).html(second);
                $("#testid" + index).html(minute);
                //$("#testid" + index).html(minute + "分" + second + "秒");
            } else {
                $("#timeli" + index).hide();
                clearInterval(setName);
            }
        }, 1000);

    }

    /**
     * 上拉加载具体业务实现
     */
    function pullupRefresh() {
        ++pageNumber;
        var Status = ""
        var btnArray = ['否', '是'];
        tabindex == "-1" ? Status = "" : Status = tabindex;
        $.ajax(base_path + '/wechat/cart/selectShopOrder?dates=' + new Date().getTime(), {
            data: {
                "pageSize": pagesize,
                "pageNO": pageNumber,
                "salesStatus": Status
            },
            dataType: 'json',
            type: 'post',
            xhrFields: {
				withCredentials: true
			},
			crossDomain: true,
            timeout: 15000,
            success: function(dt) {
                if(dt.isRedirect) {
                    location.href = dt.redirectURL;
                } else {
                    if(dt.status) {
                        var order_data = [];
                        order_data = dt.data.orderList;
                        //参数为true代表没有更多数据了。
                        mui('#pullrefresh_order_list').pullRefresh().endPullupToRefresh(order_data.length < pagesize);
                        var table = document.body.querySelector('.my-table-view-order'),
                            str = "",
                            str1 = "";
                        console.log(order_data);
                        mui(order_data).each(function(index) {
                            var txt_order = this;
                            var li = document.createElement('li');
                            switch(txt_order.salesStatus) {
                                case "0":
                                    str = '<span>取消订单</span>';
                                    break;
                                case "1":
                                    str = '<span class="cl-red">待支付</span> <a class="mui-btn my-btn-danger mui-pull-right go_order_details" value=' + this.salesOrderid + '>去支付</a>';
                                    break;
                                case "2":
                                    str = '<span>待发货</span>';
                                    break;
                                case "3":
                                    str = '<span>退款申请中</span>';
                                    break;
                                case "4":
                                    str = '<span>已退款</span>';
                                    break;
                                case "5":
                                    str = '<span>已发货</span>';
                                    break;
                                case "6":
                                    str = '<span>申请退货中</span>';
                                    break;
                                case "7":
                                    str = '<span>退货中</span>';
                                    break;
                                case "8":
                                    str = '<span>订单关闭</span>';
                                    break;
                                case "9":
                                    str = '<span>换货中</span>';
                                    break;
                                case "10":
                                    str = '<span>换货完成</span>';
                                    break;
                                case "11":
                                    str = '<span>申请换货中</span>';
                                    break;
                                default:
                                    str = '<span>订单完成</span>';
                                    break;
                            }
                            var orderSalesStatus = txt_order.salesStatus;
                            if(Status == "") {
                                str1 = '状态:' + str;
                            }

                            var a = '<li><ul class="mui-table-view mui-grid-view my-view-no " style="padding-bottom: 0;">';
                            var color_num = 0;	//统计购买产品数量
                            mui(txt_order.orderItemList).each(function(index) {
                                var txt_item = this;
                                color_num += txt_item.itemNum;
                                a += '<li class="mui-table-view-cell mui-media mui-col-xs-4 mui-text-left">'
                                    + '<a href="#"><img class="mui-media-object" src="' + txt_item.itemProductPic + '"></a>'
                                    + '</li>'
                                    + '<li class="mui-table-view-cell mui-media mui-col-xs-8 mui-text-left">'
                                    + '<a>'
                                    + '<div class="pro-tit">' + txt_item.itemProductName + '</div>'
                                    + '<h6 >颜色:' + txt_item.itemProductColor + '<span class="my-pull-right">数量:' + txt_item.itemNum + '</span></h6>'
                                    + '<p>¥' + accDiv(txt_item.itemProductDiscount,100) + '</p>'
                                mui(txt_item.salesUserGiftList).each(function(index) {
                                    var txt_gift = this;
                                    if (index == 0) {
                                        a += '<h6>赠品:' + txt_gift.giftName + '&nbsp;&nbsp;&nbsp;&nbsp;数量:' + txt_gift.userGiftCount + '</h6>';
                                    } else {
                                        a += '<h6>&nbsp;&nbsp;&nbsp;&nbsp;' + txt_gift.giftName + '&nbsp;&nbsp;&nbsp;&nbsp;数量:' + txt_gift.userGiftCount + '</h6>';
                                    }
                                });
                            });
                            a += '</a>'
                                + '</li>'
                                + '<li class="mui-table-view-cell mui-media mui-col-xs-12 mui-text-right cl-red">'
                                + '<span class="mui-pull-left">共' + color_num + '件</span>合计:¥' + accDiv(txt_order.salesYetAmount,100) + '&nbsp;&nbsp;'
                                + '</li>'
                                + '<li class="mui-table-view-cell mui-media mui-col-xs-5 mui-text-left">';
                             var ali = '<li class="mui-table-view-cell mui-media mui-col-xs-7 mui-text-right">';
                             var ali2 = '</li>';
                             var orderDesc = '<button type="button" class="my-order-btn" onclick="order_details(\'' + txt_order.salesOrderid + '\')">订单详情</button>';
                            if (txt_order.salesStatus == 1) {
                                if(txt_order.salesAdminRemark > 0) {
                                    SetRemainTime("setName" + index, index, this.salesAdminRemark);
                                    a += '<h6><span class="my-btn-orange" id="testid' + index + '"></span>分钟后,订单失效</h6>';
                                }
                                a += '<li class="mui-table-view-cell mui-media mui-col-xs-7 mui-text-right">'
                                    //+ '<button type="button" class="my-order-btn" onclick="cancel_order(\'' + txt_order.salesOrderid + '\',\'' + txt_order.salesStatus + '\')">取消订单</button>'
                                    + '<button type="button" class="my-order-btn" onclick="goOrderPay(\'' + txt_order.salesOrderid + '\')">立即支付</button>';
                                a += orderDesc;
                                a += '</li>';
                            } else if (txt_order.salesStatus == 2) {
                            	a += ali;
                                a += '<button type="button" class="my-order-btn" onclick="warnSend(\'' + txt_order.salesOrderid + '\',\'' + txt_order.salesStatus + '\')">提醒发货</button>'
                            	a += orderDesc;
                            	a += ali2;
                            } else if (txt_order.salesStatus == 5) {
                            	a += ali;
                                a += '<button type="button" class="my-order-btn" onclick="confirm_receipt(\'' + txt_order.salesOrderid + '\',\'' + txt_order.salesStatus + '\')">确认收货</button>'
                            	a += orderDesc;
                            	a += ali2;
                            }else{
                            	a += ali;
                            	a += orderDesc;
                            	a += ali2;
                            }
                            li.innerHTML = a + '</ul>';
                            table.appendChild(li);
                        });
                    } else {
                        mui.confirm(dt.message + '是否重新加载页面?', '爱贝源-提示', btnArray, function(e) {
                            if(e.index == 1) {
                                location.reload(true);
                            }
                        });
                    }
                }
            },
            error: function(xhr, type, errorThrown) {
                //异常处理;
                //errorfn(xhr);
            }
        });
    }

    function search_pullrefresh(str) {
        if(str != null && str != '') {
            if(!checkParameter(str)) {
                mui.alert('您输入的格式有误,请重新输入!');
            } else {
                pageNumber = 0;
                $('.my-scroll-order').empty();
                search_str = str;
                mui('#pullrefresh_order_list').pullRefresh().refresh(true);
                mui('#pullrefresh_order_list').pullRefresh().pullupLoading();
            }
        } else {
            pageNumber = 0;
            $('.my-scroll-order').empty();
            search_str = str;
            mui('#pullrefresh_order_list').pullRefresh().refresh(true);
            mui('#pullrefresh_order_list').pullRefresh().pullupLoading();
        }
    }
	/*mui.os.ios ? listener_ipt() : keyup_fn();*/
	

    function keyup_fn() {
        $('body').on('keyup', '#order-list-search', function(e) {
            var currKey = 0,
                e = e || event;
            currKey = e.keyCode || e.which || e.charCode;
            var keyName = String.fromCharCode(currKey);
            if(currKey == "13") {
                //传参数并加载数据
                var str = $.trim($('#order-list-search').val());
                search_pullrefresh(str);
            }
        });
    }

    mui.each(document.querySelectorAll('.tab-with-orderlist .mui-control-item'), function(index, el) {
        el.addEventListener('tap', function() {
            pageNumber = 0;
            switch(index) {
                case 0:
                    tabindex = 1;
                    break;
                case 1:
                    tabindex = 2;
                    break;
                case 2:
                    tabindex = 3;
                    break;
                default:
                    tabindex = -1;
                    break;
            }
            $('.my-scroll-order').empty();
            mui('#pullrefresh_order_list').pullRefresh().refresh(true);
            mui('#pullrefresh_order_list').pullRefresh().pullupLoading();
        }, false);
    });

    //提醒发货
    function warnSend(salesOrderid,status) {
        var dataArgs = {
            "orderId": salesOrderid,
            "status": status
        };
        $.ajax(base_path+'/wechat/cart/warn_send', {
            data: dataArgs,
            dataType: 'json',
            type: 'POST',
            timeout: 15000,
            success: function (dt) {
                mui.alert(dt.message);
            },
            error: function(xhr, type, errorThrown) {
            }
        });
    }

    //确认收货
    function confirm_receipt(salesOrderid,status) {
        var dataArgs = {
            "orderId": salesOrderid,
            "status": status
        };
        $.ajax(base_path+'/wechat/cart/confirm_receipt', {
            data: dataArgs,
            dataType: 'json',
            type: 'POST',
            timeout: 15000,
            success: function (dt) {
                mui.alert(dt.message);
            },
            error: function(xhr, type, errorThrown) {
            }
        });
    }

    //取消订单
    function cancel_order(salesOrderid,status) {
        var dataArgs = {
            "orderId": salesOrderid,
            "status": status
        };
        $.ajax(base_path+'/wechat/cart/cancelOrder', {
            data: dataArgs,
            dataType: 'json',
            type: 'POST',
            timeout: 15000,
            success: function (dt) {
                mui.alert(dt.message);
            },
            error: function(xhr, type, errorThrown) {
            }
        });
    }

    //显示物流信息
    function show_logistics(salesPostNum,salesPostFirm) {
        mui.openWindow({
            url: '/iamberry/view/view_logistics.html?billCode=' + salesPostNum + '&billName=' + salesPostFirm
        });
    }

    function order_details(salesOrderid) {
        mui.openWindow({
            url: 'order-details.html?orderId=' + salesOrderid
        });
	}

    function goOrderPay(salesOrderid) {
        var dataArgs = {
            "orderId": salesOrderid
        };

        $.ajax(base_path+'/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: "正在请求加载订单信息..."
//                          }); // 调用加载弹出层
                            $.ajax(base_path+'/wechat/order/checkOrderPaySuccess', { // 校验订单状态
                                data: orderIds,
                                dataType: 'json',
                                type: 'post',
                                timeout: 15000,
                                success: function(dt) {
                                    if(dt.status) { // 支付成功
                                        window.location.href = "pay-win.html?orderId=" + orderIds.orderId + "&dates=" + new Date().getTime();
                                    } else {
                                        setTimeout(checkOrderStatus(orderIds), 1000);
                                    }
                                },
                                error: function(xhr, type, errorThrown) {
                                    isPay = true;
//                                  layer.closeAll();
                                    mui.toast("您的网络异常,请刷新重试!");
                                    return;
                                }
                            });
                        } else {
                            isPay = true;
                            //mui.alert("对不起,支付失败!请稍后重试!" + dt.data.orderId + "支付失败!");
                            //window.location.href = "order-details.html?orderId=" + dt.data.orderId; // 前往订单详情
                        }
                    });
                } else {
                    isPay = true;
                    mui.toast(dt.message);
                }
            },
            error: function(xhr, type, errorThrown) {
                isPay = true;
//              layer.closeAll();
                mui.toast("您的网络异常,请刷新重试!");
                return;
            }
        });
    }

    function checkParameter(remark) {
        if(!/^[\u4e00-\u9fa5_a-zA-Z0-9-]+$/.test(remark)) {
            return false;
        }
        return true;
    }
    mui('body').on('tap', '#mydate', function() {
        var th = this;
        var picker = new mui.DtPicker({
            type: "date", //设置日历初始视图模式
            beginDate: new Date(2016, 7, 1), //设置开始日期
            endDate: new Date() //设置结束日期
        });
        console.log(picker)
        picker.show(function(rs) {
            pageNumber = 0;
            th.value = rs.text;
            picker.dispose();
            $('.my-scroll-order').empty();
            mui('#pullrefresh_order_list').pullRefresh().refresh(true);
            mui('#pullrefresh_order_list').pullRefresh().pullupLoading();
        });
    });
    mui("body").on('tap', '.mui-btn[data-id=btn-cancel]', function() {
        pageNumber = 0;
        document.getElementById('mydate').value = "";
    })
    mui("body").on('tap', '.my-right', function() {
        if($(".search-box").is(":hidden")) {
            $('.search-box').show();
            $(".tab-with-orderlist").css("margin-top", 105 + "px");
            $(".mui-bar-nav~.mui-content").css("padding-top", 156 + "px");
        } else {
            $('.search-box').hide();
            document.getElementById('mydate').value = "";
            $(".tab-with-orderlist").css("margin-top", 56 + "px");
            $(".mui-bar-nav~.mui-content").css("padding-top", 107 + "px");
        }
    })
</script>
</body>

</html>