var e = getApp(), r = e.request,rq=r,t = require("../../../utils/util.js"), o = require("../../../utils/common.js"),oo=e.globalData,os=oo.setting; var regeneratorRuntime = require('../../../utils/runtime.js'); Page({ data: { url: os.url, resourceUrl: os.imghost, iurl: os.imghost, order: null, optionIsGoup: !1, user_note: "", conf:null, }, onLoad: function(e) { var th=this; var r = void 0 !== e.isGoup && e.isGoup; getApp().getConfig2(function (e) { th.setData({conf:e}); }) this.setData({ optionIsGoup: r }), this.requestOrderDetail(e.order_id), wx.removeStorageSync("order:order_detail:update"); }, onShow: function() { wx.getStorageSync("order:order_detail:update") && (wx.removeStorageSync("order:order_detail:update"), this.requestOrderDetail(this.data.order.order_id)); }, requestOrderDetail: function(e) { var o = this,oid=e,th=this; r.get(o.data.url + "/api/weshop/order/get/"+os.stoid+"/"+e, { success: function(e) { var r = e.data.data; r.addTimeFormat = t.format(r.add_time); if (r.order_status == 0 && r.pay_status==0 ){ r.order_status_detail="待支付"; r.pay_btn=1; } if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status== 0) r.order_status_detail = "待发货"; if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status == 1){ r.order_status_detail = "待收货";r.receive_btn=1; if (r.exp_type == 0) r.shipping_btn=1; } if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status == 2){ r.order_status_detail = "待收货"; r.receive_btn = 1; if (r.exp_type == 0) r.shipping_btn = 1; } if (r.order_status == 2){ r.order_status_detail = "待评价"; if (r.exp_type == 0) r.shipping_btn = 1; } if (r.order_status == 3) r.order_status_detail = "已取消"; if (r.order_status == 4){ r.order_status_detail = "已完成"; if (r.exp_type == 0) r.shipping_btn = 1; } if (r.order_status == 5) r.order_status_detail = "已作废"; if (r.order_status == 6) r.order_status_detail = "退款完成"; r['is_all_return'] = 0; //------获取订单商品------- rq.get("/api/weshop/ordergoods/list",{ data: { store_id: os.stoid, order_id: oid}, success:async function (eb) { r.order_goods=eb.data.data.pageData; //------------对比一下有没有退款记录------------ await getApp().request.promiseGet("/api/weshop/order/returngoods/page",{ data: { order_id: r.order_id, store_id: os.stoid, user_id:oo.user_id, pageSize: 20 } }).then(rs=>{ var ttd=rs; //--看一下订单的总数量-- var gtype_num = r.order_goods.length; if(ttd.data.data.pageData == undefined) return false; var goodslist = r.order_goods; //----没有相关的退款记录---- if (ttd.data.data.total==0){ r['is_all_return'] = 0; goodslist.forEach(function (ee, ii) { if (r['order_status'] == 1 && r['pay_status'] == 1 && gtype_num>1){ //是不是可以单个商品退款 if(th.check_for_return_btn(r) ) { goodslist[ii]['return_btn']=1; } } }); }else{ //--------整单退-------- if (ttd.data.data.pageData[0]['goods_id_list'] != null && ttd.data.data.pageData[0]['goods_id_list'] != ''){ var eea = ttd.data.data.pageData[0]; //1.退款正在进行中, //2.退款被拒绝就要显示可以退款 //3.退款已经完成 r['is_all_return']=1; r['is_all_return_status'] = ttd.data.data.pageData[0].status; if (r['order_status'] == 1 && r['pay_status'] == 1) { switch (eea.status) { case 0: case 1: r['return_btn'] = 2; break; case 2: r['return_btn'] = 4; break; case 3: r['return_btn'] = 3; break; default: r['return_btn'] = 0; } } }else{ //1.退款正在进行中, //2.退款被拒绝就要显示可以退款 //3.退款已经完成 r['is_all_return'] = 0; var rt_ok_num=0; //if(r['order_status'] == 1 && r['pay_status'] == 1) { goodslist.forEach(function (eeb, iii) { if(r['order_status'] == 1 && r['pay_status'] == 1) goodslist[iii]['return_btn'] = 1; //申请退款 ttd.data.data.pageData.forEach(function (eea, ii) { var st = eea.status; if (eea.goods_id == eeb.goods_id){ switch (eea.status){ case 0: case 1://退款处理中 r['has_rt'] = 1; //有部分退 goodslist[iii]['return_btn'] = 2; break; case 2://退款完成 goodslist[iii]['return_btn'] = 4;rt_ok_num++; break; case 3://已拒绝,重新退款 goodslist[iii]['return_btn'] = 3; break; default: if(r['order_status'] == 1 && r['pay_status'] == 1) goodslist[iii]['return_btn'] = 1; //申请退款 } return; } }); }); //} } } //--如果是全部退款,也就可以删除-- if(rt_ok_num==goodslist.length){ r['is_all_return_status']=2; } r['order_goods'] = goodslist; var g_num = 0; goodslist.forEach(function (ee, ii) { if(ee.return_btn!=4) g_num += ee.goods_num; }); r['g_num'] = g_num; }) //--------获取门店----------- rq.get("/api/weshop/pickup/get/" + os.stoid + "/" + r.pickup_id, { success: function (ebb) { r.pickname = ebb.data.data.pickup_name; o.setData({ order: r, }); } }) } }) } }); }, /*-----联系客户------*/ contactService: function() { e.getConfig(function(t) { if (t.store_tel == undefined) { getApp().request.get("/api/weshop/store/get/" + os.stoid, { isShowLoading: 1, data: {}, success: function (rs) { getApp().globalData.config = rs.data.data; if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) { getApp().showWarning("商家未设置电话"); return false; } e.confirmBox("请联系客服:" + rs.data.data.store_tel); } }) } else { e.confirmBox("请联系客服:" + t.store_tel); } }); }, //--------取消订单--------- cancelOrder: function(e) { var t = this,th=t, o = e.currentTarget.dataset.id,order=this.data.order; var is_skill=0; var order_goods=order.order_goods; var is_zsorder=order.is_zsorder; //--判断是不是秒杀-- order_goods.forEach(function (val,ind) { if(val.prom_type==1){ is_skill=1; return false; } }) wx.showModal({ title: "是否取消订单?", success: function(e) { if(!e.confirm) return false; //如果是秒杀和拼单的商品,取消订单要返回redis,并取消订单 //if(is_skill==1 || is_zsorder>=2){ getApp().request.delete("/api/weshop/order/cancelTeamOrder/"+os.stoid+"/"+o,{ data:{}, success: function(t) { if(t.data.code==0) th.requestOrderDetail(o), wx.setStorageSync("order:order_list:update", !0); }, }) /*---- }else{ getApp().request.put("/api/weshop/order/updatebyId", { data: {order_id: o, order_status: 3}, success: function(e) { th.requestOrderDetail(o), wx.setStorageSync("order:order_list:update", !0); } }); }--*/ } }); }, //--------确认收货--------- confirmOrder: function(e) { var t = this, o = this.data.order.order_id,order=this.data.order; var is_zsorder=order.is_zsorder; wx.showModal({ title: "是否确认收货?", success: function(e) { e.confirm && r.put("/api/weshop/order/updatebyId", { data: { order_id: o, order_status: 2 }, success: function(e) { t.requestOrderDetail(o), wx.setStorageSync("order:order_list:update", !0); //如果是会员团订单 if(is_zsorder==3){ getApp().request.post("/api/weshop/order/vipTuanTebate/"+os.stoid+"/"+o,{ data:{}, success:function () { }}) } } }); } }); }, //--------立即支付---------- jumpToCart4: function(e) { this.data.optionIsGoup ? wx.navigateTo({ url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true" }) : o.jumpToCart4({ order_sn: this.data.order.order_sn, order_amount: this.data.order.order_amount }, 1); }, checkTeam: function() { wx.navigateTo({ url: "/pages/team/team_detail/team_detail?foundId=" + this.data.order.orderTeamFound.found_id }); }, //------图片失败,默认图片--------- bind_bnerr: function (e) { var _errImg = e.target.dataset.errorimg; var _errObj = {}; _errObj[_errImg] = "public/images/default_goods_image_240.gif"; this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; }, zfwk:function(){ var url = "/pages/cart/cart_wk/cart_wk?order_id=" + this.data.order.order_id; getApp().goto(url); }, //--------跳转到退款详情----------- gotoreturn: function (t) { var e = t.currentTarget.dataset.recid; var oid = t.currentTarget.dataset.oid; var wh = ""; if (e != undefined && e != null && e != "") { wh = "&goods_id=" + e; } wx.navigateTo({ url: "/pages/user/return_goods_info/return_goods_info?order_id=" + oid + wh, }); }, //---判断是不是有退款----- checkReturnGoodsStatus: function (t) { var e = t.currentTarget.dataset.recid; var oid = t.currentTarget.dataset.oid; r.get("/api/weshop/order/returngoods/page", { data: { goods_id: e, order_id: oid, store_id: os.stoid }, success: function (t) { if (t.data.code == 0) { var r = t.data.data.total; if (0 == r) return wx.navigateTo({ url: "/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid, }); //--如果拒绝,就重新申请退款-- if (t.data.data.pageData[0].status == 3) { return wx.navigateTo({ url: "/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid, }); } wx.navigateTo({ url: "/pages/user/return_goods_info/return_goods_info?id=" + r }); } } }); }, //-----删除订单----- deleteOrderData: function(t) { var th=this; var order_id=t.currentTarget.dataset.order_id; wx.showModal({ title: "是否删除订单?", success: function(tt) { t.confirm && rq.put("/api/weshop/order/updatebyId", { data: { order_id: order_id, order_status: 5 }, success: function (t) { getApp().my_warnning("删除成功",1,th); setTimeout(function () { getApp().goto("/pages/user/order_list/order_list"); },1000); } }) } }); }, //--判断是不是可以单个商品退-- check_for_return_btn:function (item) { if(item.coupon_no) return false; //有用优惠券 if(item.order_prom_id) return false; //有订单优惠 if(item.order_status>=2) return false; //订单状态>2 var istrue=true; //----判断是不是有优惠活动和赠送商品---- for (var g in item.order_goods) { var g_item=item.order_goods[g]; if ((g_item.prom_type == 3 && g_item.discount_amount> 0) || (g_item.prom_type== 3 && g_item.goods_price <= 0) ) { istrue=false; break } if (g_item.prom_type== 5) { istrue=false; break } } if(!istrue) return false; var conf=this.data.conf; //判断是不是原路退回 if(conf.refund_type==1) return true; else{ if(item.order_amount==0 || item.user_money==0) return true; } return false; } });