소스 검색

退换货

wangxiaoming 7 년 전
부모
커밋
bcbf6c2a0b
5개의 변경된 파일477개의 추가작업 그리고 29개의 파일을 삭제
  1. 115 0
      aiberle/customer-service.html
  2. 213 0
      aiberle/exchange-goods.html
  3. 2 2
      aiberle/my-center.html
  4. 124 3
      aiberle/order-details.html
  5. 23 24
      aiberle/order-list.html

+ 115 - 0
aiberle/customer-service.html

@@ -0,0 +1,115 @@
+<!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>
+			//屏蔽分享
+//			document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
+//				WeixinJSBridge.call('hideOptionMenu');
+//			});
+		</script>
+	</head>
+
+	<body>
+		<div class="mui-content">
+			<div class="clearing-box">
+				<ul class="mui-table-view mui-table-view-striped my-grid-view-no mui-table-view-condensed shopping-cart-list">
+
+				</ul>
+				<br />
+				<ul class="mui-table-view cusomer-ul">
+					<li class="mui-table-view-cell mui-media" id="retreat">
+						<a class="mui-navigate-right order_process"  newStatus="2"><div class="mui-media-body">仅退款<p class="mui-ellipsis">还未收到货,并与客服协商同意后</p></div></a>
+					</li>
+					<li class="mui-table-view-cell mui-media" id="returnOfGoods">
+						<a class="mui-navigate-right order_process" newStatus="4"><div class="mui-media-body">退货退款<p class="mui-ellipsis">已收到货,需联系客服寄回已收货物</p></div></a>
+					</li>
+					<li class="mui-table-view-cell mui-media" id="exchangeGood">
+						<a class="mui-navigate-right order_process" newStatus="7"><div class="mui-media-body">申请换货<p class="mui-ellipsis">已收到货,需联系客服获得寄换地址</p></div></a>
+					</li>
+				</ul>
+			</div>
+		</div>
+		<!-- 加载ing begin-->
+		<div class="loading covers">
+			<div class="loading-bj"></div>
+			<p>正在加载...</p>
+		</div>
+		<!-- 加载ing end -->
+		<script src="js/mui.min.js"></script>
+		<script src="js/jquery-2.1.1.min.js"></script>
+		<script src="js/main.js"></script>
+		<script>
+			window.addEventListener('pageshow', function(e) {
+				// 通过persisted属性判断是否存在 BF Cache
+				if(e.persisted) {
+					location.reload();
+				}
+			});
+			
+			var orderId = getParam("orderId");//从URL带过来的订单id
+			var status = 0;
+			//dom加载完毕
+			mui.ready(function() {
+				$.ajax(base_path + '/wechat/cart/getShopOrderByOrderId?dates=' + new Date().getTime(), {
+					data: {
+						"orderId": orderId
+					},
+					dataType: 'json',
+					xhrFields: {
+						withCredentials: true
+					},
+					crossDomain: true,
+					type: 'get',
+					timeout: 15000,
+					success: function(dt) {
+						if(dt.isRedirect) {
+							location.href = dt.redirectURL;
+						} else {
+							console.log(dt);
+							var order = dt.data
+							status = order.salesStatus; //赋值状态
+							if(status == 2){
+								$("#retreat").show();
+								$("#returnOfGoods").hide();
+								$("#exchangeGood").hide();
+							}else if(status == 5){
+								$("#retreat").hide();
+								$("#returnOfGoods").show();
+								$("#exchangeGood").show();
+							}
+							var str = "";
+							mui.each(order.orderItemList, function(index) {
+								str += '<div class="mui-table"><div class="mui-table-cell mui-col-xs-5"><img class="mui-media-object wh-100" src="'+ this.itemProductPic +'"></div><div class="mui-table-cell table-middle mui-col-xs-7" style="line-height:2.5">'+ this.itemProductName +'<h6>颜色:'+ this.productColor +'<span class="center">数量:'+ this.itemNum +'</span></h6><div>¥'+ (this.itemProductDiscount / 100).toFixed(2) +'</div></div></div>';
+							});
+							document.querySelector('.shopping-cart-list').innerHTML = str;
+							
+							$(".loading").hide().css("opacity", "0"); //隐藏(正在加载...)
+						}
+					},
+					error: function(xhr, type, errorThrown) {
+						console.log(xhr);
+						mui.alert("获取订单列表失败!网络错误");
+					}
+				});
+				
+				$(".loading").hide().css("opacity", "0"); //隐藏(正在加载...)
+			});
+			
+			/*申请退款*/
+			$(document).on('tap', '.order_process', function() {
+				var newStatus =  $(this).attr("newStatus");
+				location.href = "exchange-goods.html?orderId=" + orderId + "&newStatus=" + newStatus;
+			})
+		</script>
+	</body>
+
+</html>

+ 213 - 0
aiberle/exchange-goods.html

@@ -0,0 +1,213 @@
+<!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>
+			//屏蔽分享
+//			document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
+//				WeixinJSBridge.call('hideOptionMenu');
+//			});
+		</script>
+	</head>
+
+	<body>
+		<div class="mui-content">
+			<div class="clearing-box">
+				<!--换货列表-->
+				<ul class="mui-table-view mui-table-view-striped my-grid-view-no mui-table-view-condensed shopping-cart-list">
+					
+				</ul>
+				<br/>
+				<ul class="mui-table-view cusomer-ul">
+					<li>
+						<div class="mui-input-row">
+						<label class="lbl-remarks"><span id="nameMsg"></span></label>
+						<input class="ipt-remarks" type="text" placeholder="" id="remark">
+					</div>
+					</li>
+				</ul>
+				</div>
+			<div class="address-cantainner" id="addressInfo">
+				<ul class="mui-table-view mui-table-view-striped my-grid-view-no mui-table-view-condensed">
+					<li class="mui-table-view-cell">
+						<div class="mui-table">							
+							<!--微信地址-->
+							<div class="mui-table-cell mui-col-xs-1 mui-text-left table-middle">
+								<p><span class="iconfont icon-dingwei"></span></p>
+							</div>
+							<div class="mui-table-cell mui-col-xs-10 mui-text-left table-middle">
+								<div>收货人:杨春有 <span class="mui-pull-right">13592708169</span></div>
+								<p>收货地址:东莞清溪三中金龙工业区徐福记对面优尼雅 电子科技</p>
+							</div>
+						</div>
+					</li>
+				</ul>
+			</div>
+			<div class="clearing-box">
+				<br />
+				<p id="msg"></p>
+				<br />
+				<div class="mui-content-padded mui-text-center">
+					<button type="button" class="my-btn-black" id="orderUpdateStatus">提交</button>
+				</div>
+			</div>
+		</div>
+		<!-- 加载ing begin-->
+		<div class="loading covers">
+			<div class="loading-bj"></div>
+			<p>正在加载...</p>
+		</div>
+		<!-- 加载ing end -->
+		<script src="js/mui.min.js"></script>
+		<script src="js/jquery-2.1.1.min.js"></script>
+		<script src="js/main.js"></script>
+		<script>
+			window.addEventListener('pageshow', function(e) {
+				// 通过persisted属性判断是否存在 BF Cache
+				if(e.persisted) {
+					location.reload();
+				}
+			});
+			
+			var orderId = getParam("orderId");//从URL带过来的订单id
+			var newStatus = getParam("newStatus"); //2:退款   4:退货       7:换货
+			var status = 0;
+			//dom加载完毕
+			mui.ready(function() {
+				
+				var nameMsg = "";
+				if(newStatus == 2){
+					$("#nameMsg").html("退款原因");
+					$("#remark").attr("placeholder","请填写您的退款原因");
+				}else if(newStatus == 4){
+					$("#nameMsg").html("退货原因");
+					$("#remark").attr("placeholder","请填写您的退货原因");
+				}else if(newStatus == 7){
+					$("#nameMsg").html("换货原因");
+					$("#remark").attr("placeholder","请填写您的换货原因");
+				}
+				
+				$.ajax(base_path + '/wechat/cart/getShopOrderByOrderId?dates=' + new Date().getTime(), {
+					data: {
+						"orderId": orderId
+					},
+					dataType: 'json',
+					xhrFields: {
+						withCredentials: true
+					},
+					crossDomain: true,
+					type: 'get',
+					timeout: 15000,
+					success: function(dt) {
+						if(dt.isRedirect) {
+							location.href = dt.redirectURL;
+						} else {
+							console.log(dt);
+							var order = dt.data
+							status = order.salesStatus; //赋值状态
+							if(status == 2){
+								$("#addressInfo").hide();
+								$("#msg").html("提示:提交审核成功后,退款金额为您实付金额,当实付金额不为0时,您实付金额将在3个工作日内退款到原支付账户。");
+							}else if(newStatus == 4){  //退货退款
+								$("#addressInfo").show();
+								$("#msg").html("<p>提示:</p><p>1:提交成功后,需联系客服并寄回产品,且将寄回单号和 寄件人信息提供给客服、方便核实</p><p>2:我们收到退回产品后,将立即为您退款,当实付金额不为0时,您实付金额将在3个工作日内退款到原支付账户。</p>" );
+							}else if(newStatus == 7){ 
+								$("#addressInfo").show();
+								$("#msg").html("提示:提交成功后,需联系客服并寄回产品,并且将寄回单号和 寄件人信息、需要更换的机器信息一起提供给客服" );
+							}
+							var str = "";
+							mui.each(order.orderItemList, function(index) {
+								str += '<div class="mui-table"><div class="mui-table-cell mui-col-xs-5"><img class="mui-media-object wh-100" src="'+ this.itemProductPic +'"></div><div class="mui-table-cell table-middle mui-col-xs-7" style="line-height:2.5">'+ this.itemProductName +'<h6>颜色:'+ this.productColor +'<span class="center">数量:'+ this.itemNum +'</span></h6><div>¥'+ (this.itemProductDiscount / 100).toFixed(2) +'</div></div></div>';
+							});
+							document.querySelector('.shopping-cart-list').innerHTML = str;
+							
+							$(".loading").hide().css("opacity", "0"); //隐藏(正在加载...)
+						}
+					},
+					error: function(xhr, type, errorThrown) {
+						console.log(xhr);
+						mui.alert("获取订单列表失败!网络错误");
+					}
+				});
+				
+				$(".loading").hide().css("opacity", "0"); //隐藏(正在加载...)
+			});
+			
+			
+			/*提交*/
+			$(document).on('tap', '#orderUpdateStatus', function() {
+				var remark = $("#remark").val();
+				remark=remark.replace(/(^\s*)|(\s*$)/g, "");
+				if(remark !=null && remark.trim().length != 0 && typeof(remark)!="undefined"){
+					//if(remark){
+					//}
+					
+//					var remark = $("#textarea").val();
+					var ch_en_num = /^[A-Za-z0-9 _\[\]\【\】\{\}\{\}\(\)\(\)\《\》\<\>\,\,\.\。\、\!\!\~\·\@\#\¥\$\%\^\…\&\—\:\:\;\;\‘\’\'\'\"\"\“\”\?\?\-\=\|\*\s\+\-\u4e00-\u9fa5]{0,100}$/;
+	
+					if(ch_en_num.test(remark)) {
+						console.log("退款验证通过")
+					} else {
+						mui.alert("内容格式错误!仅支持中/英文,数字,普通符号");
+						return false;
+					}
+					updateOrderStatus(orderId,newStatus,remark);
+				}else{
+					var info = "";
+					if(newStatus == 2){
+						info = "请填写您的退款原因";
+					}else if(newStatus == 4){
+						info = "请填写您的退货原因";
+					}else if(newStatus == 7){
+						info = "请填写您的换货原因";
+					}
+					mui.alert(info);
+				}
+			})
+			
+			
+			/*修改状态*/
+			function updateOrderStatus(orderId, status, remark) {
+				var msg = "";
+			 	$.ajax(base_path + '/wechat/cart/updateOrderStatus?dates=' + new Date().getTime(), {
+					data: {
+						"status": status, //更改后的状态
+						"orderId": orderId, //订单id
+						"remark": remark
+					},
+					dataType: 'json',
+					xhrFields: {
+						withCredentials: true
+					},
+					crossDomain: true,
+					type: 'get',
+					timeout: 15000,
+					success: function(dt) {
+						if(dt.resultCode == 200) {
+							console.log(dt);
+							mui.alert('您的申请已提交,如有疑问请联系客服人员!',"提醒",function(){
+								location.href = "order-details.html?orderId="+orderId;
+							});
+							
+						} else{
+							mui.alert(dt.message);
+						}
+					},
+					error: function(xhr, type, errorThrown) {
+						console.log(xhr);
+						mui.alert("提交失败!网络错误");
+					}
+				});
+			}
+		</script>
+	</body>
+
+</html>

+ 2 - 2
aiberle/my-center.html

@@ -21,7 +21,7 @@
 
 	<body>
 		<footer class="mui-bar mui-bar-tab" id="footer-bar-tab">
-			<a class="mui-tab-item mui-active">
+			<a class="mui-tab-item ">
 				<span class="iconfont icon-shouye"></span>
 				<span class="mui-tab-label">首页</span>
 			</a>
@@ -33,7 +33,7 @@
 				<span class="iconfont icon-dingdan"></span>
 				<span class="mui-tab-label">订单</span>
 			</a>
-			<a class="mui-tab-item">
+			<a class="mui-tab-item mui-active">
 				<span class="iconfont icon-wode"></span>
 				<span class="mui-tab-label">我的</span>
 			</a>

+ 124 - 3
aiberle/order-details.html

@@ -27,6 +27,26 @@
 				&nbsp;&nbsp;加载中...
 			</div>
 		</div>
+		
+		<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 class="mui-content">
 			<div style="margin:14px 14px 0 14px;background-color: #f3f3f3;text-align: center;">
 				<ul class="mui-table-view mui-table-view-striped my-grid-view-no mui-table-view-condensed">
@@ -69,9 +89,9 @@
 						下单时间:<span id="salesCreateDate"></span>
 					</li>
 				</ul>
-				<textarea id="textarea" rows="1" placeholder="如您选择退款,请先输入退款原因!" style="background-color: #f9f9f9;border: 0;margin:0;padding: 15px;font-size: 14px;"></textarea>
-				<div class="mui-content-padded mui-text-center">
-					<button type="button" class="mui-btn my-btn-request" disabled="disabled">我要退款</button>
+				<!--<textarea id="textarea" rows="1" placeholder="如您选择退款,请先输入退款原因!" style="background-color: #f9f9f9;border: 0;margin:0;padding: 15px;font-size: 14px;"></textarea>-->
+				<div class="mui-content-padded mui-text-center" id="operation">
+					
 				</div>
 			</div>
 
@@ -124,47 +144,61 @@
 								document.querySelector('.shopping-cart-list').innerHTML = str;
 								document.querySelector('.loading-bg').style.display = 'none';
 								
+								var payHtml = '<button type="button" class="mui-btn my-btn-request go_pay" >立即支付</button>';
+								var aftermarketHtml = '<button type="button" class="mui-btn my-btn-request go_aftermarket" >我要售后</button>';
+								var logisticsHtml = '<button type="button" class="mui-btn my-btn-request" >查看物流</button>';
+								var cancelHtml = '<button type="button" class="mui-btn my-btn-request" >取消申请</button>';
 								/*订单状态*/
 								var statusName = "";
+								var operationHtml = "";
 								switch (parseInt(order.salesStatus)){
 									case 0 : 
 										statusName = "取消订单";
 										break;
 									case 1 : 
 										statusName = "待支付";
+										operationHtml += payHtml;
 										break;
 									case 2 : 
 										statusName = "已支付";
+										operationHtml += aftermarketHtml;
 										break;
 									case 3 : 
 										statusName = "退款申请中";
+										operationHtml += cancelHtml;
 										break;
 									case 4 : 
 										statusName = "已退款";
 										break;
 									case 5 : 
 										statusName = "已发货";
+										operationHtml += aftermarketHtml + logisticsHtml;
 										break;
 									case 6 : 
 										statusName = "申请退货中";
+										operationHtml += cancelHtml + logisticsHtml;
 										break;
 									case 7 : 
 										statusName = "退货中";
+										operationHtml += cancelHtml;
 										break;
 									case 8 : 
 										statusName = "订单退货完成";
 										break;
 									case 9 : 
 										statusName = "换货中";
+										operationHtml += cancelHtml;
 										break;
 									case 10 : 
 										statusName = "换货完成";
 										break;
 									case 11 : 
 										statusName = "申请换货中";
+										operationHtml += cancelHtml + logisticsHtml;
 										break;
 									case 12 : 
 										statusName = "订单完成";
+										operationHtml += logisticsHtml
 										break;
 									default:
 										break;
@@ -174,6 +208,7 @@
 								$("#salesCreateDate").html(order.salesCreateDate);
 								$("#salesYetAmount").html(accDiv(order.salesYetAmount,100));
 								$("#num").html(num);
+								$("#operation").html(operationHtml);
 							}
 						}
 					},
@@ -200,6 +235,92 @@
 					});
 				}
 			});
+			
+			/**
+			 * 立即支付
+			 */
+			mui('body').on('tap', '.go_pay', function() {
+				goOrderPay(orderId);
+			});
+			
+			/**
+			 * 申请售后
+			 */
+			mui('body').on('tap', '.go_aftermarket', function() {
+				location.href = "customer-service.html?orderId=" + orderId;
+			});
+			
+			/**
+			 * 立即支付
+			 */
+			mui('body').on('tap', '.go_pay', function() {
+				goOrderPay(orderId);
+			});
+			
+			
+	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;
+            }
+        });
+    }
 		</script>
 	</body>
 

+ 23 - 24
aiberle/order-list.html

@@ -28,24 +28,24 @@
 		<a class="mui-control-item icon-todelivery" href="#item4" tabindex="3">全部</a>
 	</div>
 </header>
-<!--<footer class="mui-bar mui-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">
-        <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>-->
+<!--<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">
@@ -454,26 +454,25 @@
                                 error: function(xhr, type, errorThrown) {
                                     isPay = true;
 //                                  layer.closeAll();
-                                    mui.alert("您的网络异常,请刷新重试!");
+                                    mui.toast("您的网络异常,请刷新重试!");
                                     return;
                                 }
                             });
                         } else {
                             isPay = true;
-
-                            mui.alert("对不起,支付失败!请稍后重试!" + dt.data.orderId + "支付失败!");
-                            window.location.href = "order-details.html?orderId=" + dt.data.orderId; // 前往订单详情
+                            //mui.alert("对不起,支付失败!请稍后重试!" + dt.data.orderId + "支付失败!");
+                            //window.location.href = "order-details.html?orderId=" + dt.data.orderId; // 前往订单详情
                         }
                     });
                 } else {
                     isPay = true;
-                    mui.alert(dt.message);
+                    mui.toast(dt.message);
                 }
             },
             error: function(xhr, type, errorThrown) {
                 isPay = true;
 //              layer.closeAll();
-                mui.alert("您的网络异常,请刷新重试!");
+                mui.toast("您的网络异常,请刷新重试!");
                 return;
             }
         });