diff --git a/manifest.json b/manifest.json index 66c0cb3..5073785 100644 --- a/manifest.json +++ b/manifest.json @@ -13,8 +13,8 @@ } ], "sassImplementationName" : "node-sass", - "versionName" : "1.2.86", - "versionCode" : 1286, + "versionName" : "1.2.87", + "versionCode" : 1287, "app-plus" : { "compatible" : { "ignoreVersion" : true diff --git a/pages/bookShop/settlement.vue b/pages/bookShop/settlement.vue index 34fbf29..3dda87b 100644 --- a/pages/bookShop/settlement.vue +++ b/pages/bookShop/settlement.vue @@ -374,6 +374,18 @@ + + @@ -413,6 +425,9 @@ export default { realPrice: 0, payType: 1, nowClick: true, + presaleRemarkModalShow: false, + presaleRemarkModalContent: "", + presaleRemarkModalResolve: null, paylist: [ { title: "支付宝", @@ -556,6 +571,59 @@ export default { } }, // 获取优惠券列表 + openPresaleRemarkModal(content) { + this.presaleRemarkModalContent = content; + this.presaleRemarkModalShow = true; + return new Promise((resolve) => { + this.presaleRemarkModalResolve = resolve; + }); + }, + handlePresaleRemarkConfirm() { + this.presaleRemarkModalShow = false; + if (this.presaleRemarkModalResolve) { + const resolve = this.presaleRemarkModalResolve; + this.presaleRemarkModalResolve = null; + resolve(true); + } + }, + handlePresaleRemarkCancel() { + this.presaleRemarkModalShow = false; + if (this.presaleRemarkModalResolve) { + const resolve = this.presaleRemarkModalResolve; + this.presaleRemarkModalResolve = null; + resolve(false); + } + }, + async checkPresaleRemark() { + const productIds = this.cartList + .map((e) => e.productId) + .filter((id) => id) + .join(","); + if (!productIds) { + return true; + } + try { + const res = await $http.request({ + url: "book/buyOrder/presaleRemark", + method: "POST", + data: { + productIds, + }, + header: { + "Content-Type": "application/json", + }, + }); + const remark = + res && typeof res.remark == "string" ? res.remark.trim() : ""; + if (!remark) { + return true; + } + return await this.openPresaleRemarkModal(remark); + } catch (error) { + console.log("presaleRemark error:", error); + return true; + } + }, getCourpe() { let proId = ""; for (let i = 0; i < this.cartList.length; i++) { @@ -894,7 +962,7 @@ export default { this.youhuiShow = false; }, // 提交结算 - goBuyJie() { + async goBuyJie() { if (this.addressList.length == 0) { this.dizhiShow = true; // 如果没有地址信息 return; @@ -923,6 +991,11 @@ export default { quantity: this.cartList[i].productAmount, }); } + const passPresaleRemark = await this.checkPresaleRemark(); + if (!passPresaleRemark) { + this.nowClick = true; + return; + } let data = { buyType: this.typeId, //0- 商品页直接下单 1- 购物车结算 userId: this.userInfo.id, //下单人ID