| 1 |
- (global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["pages/goods_order/goods_order"],{"1ba2":function(e,n,t){"use strict";(function(e,n){var r=t("47a9");t("b46f");r(t("3240"));var o=r(t("4ceb"));e.__webpack_require_UNI_MP_PLUGIN__=t,n(o.default)}).call(this,t("3223")["default"],t("df3c")["createPage"])},"1c50":function(e,n,t){"use strict";(function(e){var r=t("47a9");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var o=r(t("7eb4")),s=r(t("ee10")),a=r(t("af34")),i=r(t("7ca3")),c=t("0669"),u=(t("1815"),t("30a0"),t("7f20"),t("dc70")),d=t("49f8"),f=(t("7398"),t("704d"));t("28d0");function l(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function p(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?l(Object(t),!0).forEach((function(n){(0,i.default)(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):l(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var h={name:"GoodsOrder",data:function(){return{from:"",pageStatus:f.PageStatusEnum["LOADING"],pageErrorMsg:"",deliveryTypeTabsList:[{id:1,name:"快递发货",sign:"express"},{id:2,name:"上门自提",sign:"store"}],deliveryTypeTabsIndex:0,pageQueryPayload:{},orderFrom:{delivery_type:"",user_remark:"",coupon_list_id:"",address_id:"",selffetch_shop_id:"",contact:"",mobile:""},showCoupons:!1,couponTabsList:[{sign:"usable",name:"可使用优惠券"},{sign:"disabled",name:"不可使用优惠券"}],couponTabsIndex:0,couponsInfo:{can_use:[],not_can_use:[]},couponsActive:{},addressInfo:{},selffetchStoreInfo:{},orderInfo:{},orderGoodsList:[],disableGoods:[],showDisabled:!1,goodsLength:0,showModal:!1}},computed:{orderFormParams:function(){var e=p({},this.orderFrom);switch(e.delivery_type){case 1:delete e.selffetch_shop_id,delete e.contact,delete e.mobile;break;case 2:delete e.address_id;break}return e},orderExtendParams:function(){var e=new Object;switch(this.from){case f.OrderTypeEnum["GOODS"]:break;case f.OrderTypeEnum["TEAM"]:e.source=f.OrderSourceEnum["BUY_NOW"];break;case f.OrderTypeEnum["SECKILL"]:e.source=f.OrderSourceEnum["BUY_NOW"];break;case f.OrderTypeEnum["BARGAIN"]:e.source=f.OrderSourceEnum["BUY_NOW"];break;case f.OrderTypeEnum["PRESELL"]:e.source=f.OrderSourceEnum["BUY_NOW"];break}return p(p({},e),{},{order_type:this.from})},isMarketing:function(){switch(this.from){case f.OrderTypeEnum["VIRTUAL"]:case f.OrderTypeEnum["GOODS"]:return!1;default:return!0}},deliveryActive:function(){return this.deliveryTypeTabsList[this.deliveryTypeTabsIndex]},couponsTabActive:function(){return this.couponTabsList[this.couponTabsIndex]}},watch:{disableGoods:function(e){var n=this;e.forEach((function(e){n.orderGoodsList.push(p(p({},e.goods),{},{msg:e.msg}))}))},immediate:!0},methods:{initDeliveryType:function(){var e=this;return new Promise((function(n,t){(0,c.apiDeliveryType)().then((function(t){var r=t.express,o=t.selffetch,s=[];r.is_express&&s.push(1),o.is_selffetch&&s.push(2),e.deliveryTypeTabsList=e.deliveryTypeTabsList.filter((function(e){return s.includes(e["id"])})),e.deliveryTypeTabsList.forEach((function(e){switch(e.id){case 1:e.name=r.express_name;break;case 2:e.name=o.selffetch_name;break}})),e.orderFrom.delivery_type=e.deliveryActive["id"],n(t)})).catch((function(e){return t(null!==e&&void 0!==e?e:"获取不到配送方式")}))}))},initOrderData:function(){var e=this;return new Promise((function(n,t){(0,c.apiOrderPlace)(p(p(p(p({},e.orderFormParams),e.pageQueryPayload),e.orderExtendParams),{},{action:"settle"})).then((function(t){var r;e.addressInfo=t.address,e.orderFrom.address_id=null===(r=t.address)||void 0===r?void 0:r.id,e.goodsLength=t.goods.length,e.orderGoodsList=t.goods,e.disableGoods=t.goods_disabled,e.orderInfo=t,e.orderFrom.contact=t.selffetch_info.contact,e.orderFrom.mobile=t.selffetch_info.mobile,n(t)})).catch((function(e){return t(e)}))}))},initCouponGoods:function(){var e=this;return new Promise((function(n,t){var r=null,o=e.pageQueryPayload,s=o.goods,i=o.cart_id,c=o.source;switch(c){case f.OrderSourceEnum["BUY_NOW"]:var d=s.map((function(e){return{num:e.goods_num,item_id:e.item_id}}));r={goods:d,source:1};break;case f.OrderSourceEnum["CART"]:r={cart_ids:(0,a.default)(i),source:2};break}(0,u.apiCouponGoods)(p({},r)).then((function(n){return n.can_use.forEach((function(e){return e.checked=!1})),n.can_use[0]&&(n.can_use[0].checked=!0,e.couponsActive=n.can_use[0]),n})).then((function(t){e.couponsInfo=t,e.couponTabsList.forEach((function(e){switch(e.sign){case"usable":e.name=e.name+"(".concat(t.can_use_count,")");break;case"disabled":e.name=e.name+"(".concat(t.not_can_use_count,")");break}})),n(t)})).catch((function(e){return t(e)}))}))},changeCouponUse:function(e,n){this.couponsInfo.can_use.forEach((function(e){return e.checked=!1})),e&&(e.checked=!0)},useCoupon:function(){this.showCoupons=!1;var e=this.couponsInfo.can_use.find((function(e){return e.checked}));this.couponsActive=e||{},this.$set(this.orderFrom,"coupon_list_id",null===e||void 0===e?void 0:e.id),this.initOrderData()},openCouponsPopup:function(){var e=this;if(Object.keys(this.couponsActive).length){var n=this.couponsInfo.can_use.find((function(n){return n.id===e.couponsActive.id}));n.checked=!0}},closeCouponsPopup:function(){Object.keys(this.couponsActive).length||this.couponsInfo.can_use.forEach((function(e){return e.checked=!1}))},changeDeliveryType:function(e){var n=this;return(0,s.default)(o.default.mark((function t(){var r,s;return o.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return n.deliveryTypeTabsIndex=e,n.orderFrom.delivery_type=n.deliveryActive["id"],t.prev=2,t.next=5,n.initOrderData();case 5:r=t.sent,s=r.selffetch_info,s.selffetch_shop_id&&(n.orderFrom.selffetch_shop_id=s.selffetch_shop_id,n.selffetchStoreInfo=s.selffetch_shop),t.next=13;break;case 10:t.prev=10,t.t0=t["catch"](2),console.log(t.t0);case 13:case"end":return t.stop()}}),t,null,[[2,10]])})))()},onAddressSelect:function(){var n=this;e.$once("changeAddress",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n.orderFrom.address_id;e&&(n.orderFrom.address_id=e),n.initOrderData()})),this.$Router.push({path:"/pages/address/address",query:{type:!0}})},onStoreSelect:function(){var n=this;e.$once("changeStore",(function(e){n.selffetchStoreInfo=e,n.orderFrom.selffetch_shop_id=e.id,n.initOrderData()})),this.$Router.push({path:"/bundle/pages/store_list/store_list"})},checkOrder:function(){var e=p({},this.orderFrom);switch(e.delivery_type){case 1:if(!e.address_id)throw new Error("请选择送货地址");break;case 2:if(!e.selffetch_shop_id||!e.contact||11!=e.mobile.length)throw new Error("请完善自提点信息");break}},onSubmitOrder:function(){var n=this;if(0!=this.goodsLength){if(4==this.orderFrom.delivery_type&&!this.orderFrom.address_id&&"express"==this.deliveryActive["sign"]&&0!=this.orderInfo.is_address)return this.$toast({title:"请选择收货地址"});try{this.checkOrder()}catch(t){return this.$toast({title:t.message})}e.showModal({title:"温馨提示",content:"是否确认下单?",confirmColor:this.themeColor,success:function(){var e=(0,s.default)(o.default.mark((function e(t){var r,s;return o.default.wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(r=t.confirm,e.prev=1,r){e.next=4;break}throw"订单取消";case 4:return e.prev=4,e.next=7,n.handleSubscribeMP_WEIXIN();case 7:e.next=12;break;case 9:e.prev=9,e.t0=e["catch"](4),console.log("SUBSCRIBE_ERROR_MSG:",e.t0);case 12:return e.next=14,n.handlePlaceOrder();case 14:s=e.sent,console.log(s),e.next=22;break;case 18:e.prev=18,e.t1=e["catch"](1),console.log("ORDER_ERROR_MSG:",e.t1),"提交的商品已不能购买,请重新选择商品"==e.t1?n.showModal=!0:"自提门店不能为空"==e.t1&&n.$toast({title:"请选择自提门店"});case 22:case"end":return e.stop()}}),e,null,[[1,18],[4,9]])})));return function(n){return e.apply(this,arguments)}}()})}},handleSubscribeMP_WEIXIN:function(){return new Promise((function(n,t){(0,d.apiSubscribe)().then((function(r){r.length||t("暂无可订阅信息"),e.requestSubscribeMessage({tmplIds:r,success:function(e){n(e)},fail:function(e){t("订阅失败")}})})).catch((function(){return t("订阅获取失败")}))}))},handlePlaceOrder:function(){var n=this;return new Promise((function(t,r){(0,c.apiOrderPlace)(p(p(p(p({},n.orderFormParams),n.pageQueryPayload),n.orderExtendParams),{},{action:"buy"})).then((function(t){return e.$once("duringPayment",(function(e){n.handlePayResult(e)})),t})).then((function(e){var r=e.type,o=e.order_id;n.$Router.replace({path:"/pages/payment/payment",query:{from:r,order_id:o}}),t(o)})).catch((function(e){return r(e)}))}))},handlePayResult:function(e){var n=this,t=e.result,r=e.order_id;switch(t){case f.PaymentStatusEnum["SUCCESS"]:case f.PaymentStatusEnum["FAIL"]:setTimeout((function(){n.$Router.replace({path:"/pages/payment_result/payment_result",query:{order_id:r,from:"order"}})}),1e3);break;case f.PaymentStatusEnum["CLOSE"]:this.$Router.push({path:"/pages/payment_result/payment_result",query:{order_id:r,from:"order"}});break}},handledisBuy:function(){this.$Router.replaceAll({path:"/pages/shop_cart/shop_cart"})}},onLoad:function(){var e=this;return(0,s.default)(o.default.mark((function n(){var t,r,s;return o.default.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(t=e.$Route.query,console.log(t),n.prev=2,e.from=t.from,e.pageQueryPayload=t.payload,e.orderFrom.address_id=t.address_id,4!=t.from){n.next=10;break}e.orderFrom.delivery_type=4,n.next=12;break;case 10:return n.next=12,e.initDeliveryType();case 12:if(n.t0=!e.isMarketing,!n.t0){n.next=16;break}return n.next=16,e.initCouponGoods();case 16:return e.$set(e.orderFrom,"coupon_list_id",null===(r=e.couponsInfo)||void 0===r||null===(s=r.can_use[0])||void 0===s?void 0:s.id),n.next=19,e.initOrderData();case 19:e.pageStatus=f.PageStatusEnum["NORMAL"],n.next=27;break;case 22:n.prev=22,n.t1=n["catch"](2),e.pageErrorMsg=n.t1,e.pageStatus=f.PageStatusEnum["ERROR"],console.log("页面数据初始化失败",n.t1);case 27:case"end":return n.stop()}}),n,null,[[2,22]])})))()},onUnload:function(){e.$off(["changeStore","changeAddress"])}};n.default=h}).call(this,t("df3c")["default"])},"31cf":function(e,n,t){"use strict";var r=t("a36c"),o=t.n(r);o.a},"4ceb":function(e,n,t){"use strict";t.r(n);var r=t("fba3"),o=t("f4c4");for(var s in o)["default"].indexOf(s)<0&&function(e){t.d(n,e,(function(){return o[e]}))}(s);t("31cf");var a=t("828b"),i=Object(a["a"])(o["default"],r["b"],r["c"],!1,null,"1d82917b",null,!1,r["a"],void 0);n["default"]=i.exports},a36c:function(e,n,t){},f4c4:function(e,n,t){"use strict";t.r(n);var r=t("1c50"),o=t.n(r);for(var s in r)["default"].indexOf(s)<0&&function(e){t.d(n,e,(function(){return r[e]}))}(s);n["default"]=o.a},fba3:function(e,n,t){"use strict";t.d(n,"b",(function(){return o})),t.d(n,"c",(function(){return s})),t.d(n,"a",(function(){return r}));var r={uTabs:function(){return t.e("components/uview-ui/components/u-tabs/u-tabs").then(t.bind(null,"6470"))},addressCard:function(){return t.e("components/address-card/address-card").then(t.bind(null,"6ebb"))},uInput:function(){return Promise.all([t.e("common/vendor"),t.e("components/uview-ui/components/u-input/u-input")]).then(t.bind(null,"3012"))},goodsCard:function(){return t.e("components/goods-card/goods-card").then(t.bind(null,"4daa"))},price:function(){return t.e("components/price/price").then(t.bind(null,"1266"))},uIcon:function(){return t.e("components/uview-ui/components/u-icon/u-icon").then(t.bind(null,"1340"))},uPopup:function(){return t.e("components/uview-ui/components/u-popup/u-popup").then(t.bind(null,"002f"))},couponCard:function(){return t.e("components/coupon-card/coupon-card").then(t.bind(null,"5763"))},uEmpty:function(){return t.e("components/uview-ui/components/u-empty/u-empty").then(t.bind(null,"7bc9"))},pageStatus:function(){return t.e("components/page-status/page-status").then(t.bind(null,"7cfb"))},uModal:function(){return t.e("components/uview-ui/components/u-modal/u-modal").then(t.bind(null,"e709"))}},o=function(){var e=this,n=e.$createElement,t=(e._self._c,e.orderInfo.is_address?e.deliveryTypeTabsList.length:null),r=e.orderInfo.is_address?JSON.stringify(e.addressInfo):null,o=e.__map(e.orderGoodsList,(function(n,t){var r=e.__get_orig(n);return{$orig:r,a0:{"border-raius":0,height:"220rpx"}}})),s=e.disableGoods.length,a=s?e.disableGoods.length:null,i=e.couponsInfo.can_use.length,c=e.__map(e.couponsInfo.not_can_use,(function(n,t){var r=e.__get_orig(n),o={title:n.fail_use_tips,content:n.fail_use_detail};return{$orig:r,a1:o}})),u=e.couponsInfo.not_can_use.length,d=e.__map(e.disableGoods,(function(n,t){var r=e.__get_orig(n);return{$orig:r,a2:{"border-raius":0,height:"220rpx"}}}));e._isMounted||(e.e0=function(n){e.showCoupons=!0},e.e1=function(n){e.showDisabled=!0},e.e2=function(n){e.showCoupons=!1},e.e3=function(n){return e.couponTabsIndex=n},e.e4=function(n){e.showDisabled=!1},e.e5=function(n){e.showDisabled=!1},e.e6=function(n){e.showDisabled=!1}),e.$mp.data=Object.assign({},{$root:{g0:t,g1:r,l0:o,g2:s,g3:a,g4:i,l1:c,g5:u,l2:d}})},s=[]}},[["1ba2","common/runtime","common/vendor"]]]);
|