From e8d4fd6cd4aad8e5fbfba86dbddf322afff728ee Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=A7=A6=E6=98=9F=E6=98=9F?= <605893810@qq.com>
Date: Thu, 20 Aug 2026 17:31:00 +0800
Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A0820=E9=9C=80=E6=B1=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
App.vue | 32 +-
api/cart.js | 13 +-
api/common.js | 100 +-
api/coupon.js | 62 +
manifest.json | 307 +-
pages.json | 30 +
pages/home/home.vue | 2701 +++++++++--------
.../announcement-detail.vue | 16 +-
.../announcement/announcement.vue | 18 +-
pages/login_package/login/login.vue | 17 +-
pages/login_package/message/message.vue | 356 +++
pages/mine/mine.vue | 18 +-
.../apply_refund/apply_refund.vue | 882 ++++++
.../fill_express/fill_express.vue | 654 ++++
.../mine_order/after-sales/refund-popup.vue | 9 +-
pages/mine_package/mine_order/mine_order.vue | 34 +-
.../order_submit/coupon-dialog.vue | 633 ++--
.../order_submit/coupon-dialog1.vue | 593 ++++
.../order_submit/order_submit.vue | 241 +-
.../order_submit/order_submit2.vue | 1505 +++++++++
.../applicable_goods/applicable_goods.vue | 488 +++
pages/other_package/coupon/coupon.vue | 964 ++++--
pages/other_package/get-coupon/get-coupon.vue | 801 +++++
.../other_package/productInfo/productInfo.vue | 472 ++-
pages/sort/sort copy 2.vue | 1012 ------
pages/sort/sort copy.vue | 454 ---
pages/sort/sort.vue | 23 +-
.../hashmall-customer-service.vue | 63 +-
.../js_sdk/kefu-realtime.js | 97 +
.../js_sdk/kefu-socket.js | 172 +-
utils/enumUtils.js | 3 +-
31 files changed, 9112 insertions(+), 3658 deletions(-)
create mode 100644 api/coupon.js
create mode 100644 pages/login_package/message/message.vue
create mode 100644 pages/mine_package/apply_refund/apply_refund.vue
create mode 100644 pages/mine_package/fill_express/fill_express.vue
create mode 100644 pages/order_package/order_submit/coupon-dialog1.vue
create mode 100644 pages/order_package/order_submit/order_submit2.vue
create mode 100644 pages/other_package/applicable_goods/applicable_goods.vue
create mode 100644 pages/other_package/get-coupon/get-coupon.vue
delete mode 100644 pages/sort/sort copy 2.vue
delete mode 100644 pages/sort/sort copy.vue
create mode 100644 uni_modules/hashmall-customer-service/js_sdk/kefu-realtime.js
diff --git a/App.vue b/App.vue
index eb008ae..4856cd1 100644
--- a/App.vue
+++ b/App.vue
@@ -1,16 +1,18 @@
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 积分兑换
+
+ 好物随心兑
+
+
+
+
+
+
+
+
+ 红包抽奖
+
+ 现金红包等你拿!
+
+
+
+
+
+
+
+
+
+
+
+
+ {{
+ item.title_text }}
+ {{ item.title }}
+ {{ item.title }}
+
+
+ {{ item.rightText }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 温馨提示
+ 暂未开放
+
+
+ 确定
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ updateApkObj.content }}
+
+
+
+
+ 更新中{{ bannerPercentage }}%
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ newsList[0]?.title }}
+ {{ newsList[0]?.subTitle }}
+ 查看
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/login_package/announcement-detail/announcement-detail.vue b/pages/login_package/announcement-detail/announcement-detail.vue
index 9a67c14..251d56b 100644
--- a/pages/login_package/announcement-detail/announcement-detail.vue
+++ b/pages/login_package/announcement-detail/announcement-detail.vue
@@ -47,7 +47,21 @@ export default {
}
},
onReturnClick() {
- uni.navigateTo({url:"/pages/login_package/announcement/announcement"});
+ const pages = getCurrentPages();
+ if (pages && pages.length > 1) {
+ uni.navigateBack({
+ delta: 1,
+ fail: () => {
+ uni.switchTab({
+ url: "/pages/home/home",
+ });
+ },
+ });
+ } else {
+ uni.switchTab({
+ url: "/pages/home/home",
+ });
+ }
},
},
};
diff --git a/pages/login_package/announcement/announcement.vue b/pages/login_package/announcement/announcement.vue
index a9c5c20..b8c2b73 100644
--- a/pages/login_package/announcement/announcement.vue
+++ b/pages/login_package/announcement/announcement.vue
@@ -81,9 +81,21 @@ export default {
},
// 返回
onReturnClick() {
- uni.switchTab({
- url:'/pages/home/home'
- })
+ const pages = getCurrentPages();
+ if (pages && pages.length > 1) {
+ uni.navigateBack({
+ delta: 1,
+ fail: () => {
+ uni.switchTab({
+ url: "/pages/home/home",
+ });
+ },
+ });
+ } else {
+ uni.switchTab({
+ url: "/pages/home/home",
+ });
+ }
},
},
};
diff --git a/pages/login_package/login/login.vue b/pages/login_package/login/login.vue
index 1387b88..303433d 100644
--- a/pages/login_package/login/login.vue
+++ b/pages/login_package/login/login.vue
@@ -538,19 +538,13 @@ export default {
uni.login({
provider: 'apple',
success: async (loginRes) => {
- console.log('Apple 登录成功:', loginRes);
const authResult = loginRes.appleInfo || {};
const params = {
identityToken: authResult.identityToken,
- // openId: authResult.user,
- // fullName: authResult.fullName ? `${authResult.fullName.familyName || ''}${authResult.fullName.givenName || ''}` : '',
- // authorizationCode: authResult.authorizationCode
};
- console.log("Apple 登录成功-0:", params)
try {
const response = await appleLogin(params);
- console.log("Apple 登录成功-1:", response)
if (response && response.bizcode === 100) {
if (response.data && response.data.userId) {
@@ -562,14 +556,12 @@ export default {
});
}
} else {
- console.log("Apple 登录成功-2:", response)
this.$refs.uToastRef.show({
type: "error",
message: response?.msg || "Apple登录失败",
});
}
} catch (error) {
- console.error("Apple登录异常:", error);
this.$refs.uToastRef.show({
type: "error",
message: "Apple登录异常,请重试",
@@ -579,18 +571,17 @@ export default {
}
},
fail: (err) => {
- this.loading = false;
- console.error('Apple登录授权失败:', err);
+
this.$refs.uToastRef.show({
type: "error",
message: "Apple登录授权失败",
});
}
});
- // #endif
},
- })
- }
+ });
+ // #endif
+ },
},
computed: {
diff --git a/pages/login_package/message/message.vue b/pages/login_package/message/message.vue
new file mode 100644
index 0000000..5532fad
--- /dev/null
+++ b/pages/login_package/message/message.vue
@@ -0,0 +1,356 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}
+ {{ item.badge }}
+
+ {{ item.desc }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/mine/mine.vue b/pages/mine/mine.vue
index d5d94d5..bbc1444 100644
--- a/pages/mine/mine.vue
+++ b/pages/mine/mine.vue
@@ -293,12 +293,12 @@ export default {
url: 'https://static.tbmall.xin/static/mine/apply_purse.png',
path: '/pages/mine_package/mine_purse/mine_purse'
},
- // {
- // id: 6,
- // title: "优惠券",
- // url: "https://static.tbmall.xin/static/mine/apply_prize.png",
- // path: "/pages/other_package/coupon/coupon",
- // },
+ {
+ id: 6,
+ title: "优惠券",
+ url: "https://static.tbmall.xin/static/mine/apply_prize.png",
+ path: "/pages/other_package/coupon/coupon",
+ },
{
id: 2,
title: '抽奖',
@@ -390,6 +390,12 @@ export default {
title: '财务',
url: 'https://static.tbmall.xin/static/mine/tool_cw.png',
path: '/pages/rwa_package/insights/finance'
+ },
+ {
+ id: 13,
+ title: '领券中心',
+ url: 'https://static.tbmall.xin/static/mine/coupon.png',
+ path: '/pages/other_package/get-coupon/get-coupon'
}
// {
// id: 11,
diff --git a/pages/mine_package/apply_refund/apply_refund.vue b/pages/mine_package/apply_refund/apply_refund.vue
new file mode 100644
index 0000000..edf87ff
--- /dev/null
+++ b/pages/mine_package/apply_refund/apply_refund.vue
@@ -0,0 +1,882 @@
+
+
+
+
+
+
+
+ ‹
+
+
+ 申请退款
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 规格:{{ productSpec }}
+ x {{ productNum }}
+
+
+
+
+ 共{{ productNum }}件,合计¥{{ totalPrice }}
+
+
+
+
+
+
+
+
+ *
+ 退款原因
+
+
+
+ {{ selectedReason ? selectedReason.name : '请选择' }}
+
+
+ ›
+
+
+
+
+
+
+
+
+
+ 退款金额
+
+
+ ¥{{ totalPrice }}
+
+
+
+
+
+
+
+ 上传凭证
+ (选填)
+
+
+
+
+
+ ×
+
+
+
+ +
+ 上传图片
+
+
+
+
+
+
+
+ 退款描述
+ (选填)
+
+
+
+ 已输入{{ remark.length }}/100
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/mine_package/fill_express/fill_express.vue b/pages/mine_package/fill_express/fill_express.vue
new file mode 100644
index 0000000..4a85007
--- /dev/null
+++ b/pages/mine_package/fill_express/fill_express.vue
@@ -0,0 +1,654 @@
+
+
+
+
+
+
+
+ ‹
+
+
+ 填写物流
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 规格:{{ productSpec }}
+ x {{ productNum }}
+
+
+
+
+ 共{{ productNum }}件,合计¥{{ totalPrice }}
+
+
+
+
+
+
+ 退货信息
+ (如无退货信息请联系客服人员)
+
+
+
+
+ 联系人
+ {{ sellerName }}
+
+
+
+
+
+
+ 手机号
+ {{ sellerPhone }}
+
+
+
+
+
+
+ 退货地址
+ {{ sellerAddress }}
+
+
+
+
+
+
+ 物流信息
+
+
+
+
+
+ *
+ 物流公司
+
+
+
+ {{ expressName || '请选择' }}
+
+
+ ›
+
+
+
+
+
+
+
+
+
+ *
+ 物流单号
+
+
+
+
+
+
+
+
+
+ 物流说明
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/mine_package/mine_order/after-sales/refund-popup.vue b/pages/mine_package/mine_order/after-sales/refund-popup.vue
index 6a6571c..127f5d0 100644
--- a/pages/mine_package/mine_order/after-sales/refund-popup.vue
+++ b/pages/mine_package/mine_order/after-sales/refund-popup.vue
@@ -33,7 +33,7 @@
-
+
未通过原因
{{ product.auditRemark || "--" }}
@@ -59,6 +59,11 @@
+
+ 物流说明
+ {{ product.expressRemark || "--" }}
+
+
@@ -301,7 +306,7 @@ export default {
} else if (this.status == 3) {
return "您已成功发起退货/退款申请,请耐心等待处理";
} else if (this.status == 4) {
- return "退款申请失败";
+ return "退货申请失败";
} else if (this.status == 5) {
return "退款成功";
} else if (this.status == 6) {
diff --git a/pages/mine_package/mine_order/mine_order.vue b/pages/mine_package/mine_order/mine_order.vue
index 94a31fb..56a9daa 100644
--- a/pages/mine_package/mine_order/mine_order.vue
+++ b/pages/mine_package/mine_order/mine_order.vue
@@ -99,7 +99,7 @@
共{{ item.buyNum }}件,合计¥{{ item.sumAmount }}
-->
共{{ item.buyNum }}件,合计数字积分{{ item.buyDeductionValue
- }}
+ }}
+¥{{ item.sumAmount }}
运费:¥{{ item.postage }},商品总价:¥{{ item.sumAmount }}
@@ -135,8 +135,8 @@
修改地址
@@ -153,7 +153,7 @@
'operate_comm',
'operate_but_1'
]"
- v-if="(!item.isAfter && form.type !== MINE_ORDER_TYPE.UNPAID && form.type !== MINE_ORDER_TYPE.AFTER_SALE && item.status !== 5) || item.isAfterOpen"
+ v-if="!item.isAfter && form.type !== MINE_ORDER_TYPE.UNPAID && form.type !== MINE_ORDER_TYPE.AFTER_SALE && item.status !== 5"
@click="onSaleAfter(item)">
申请售后
@@ -223,7 +223,8 @@
联系售后
荐
- 退货退款
+ 退货/退款
+
@@ -417,6 +418,7 @@ export default {
flowId: null,
signUrl: null,
downShow: false,
+ tipsShow: false,
selectItem: null,
userInfo: null,
search: "",
@@ -574,18 +576,26 @@ export default {
this.form.type == MINE_ORDER_TYPE.UNSHIPPED ? 1 : 2;
}
},
+ toApplyRefundPage() {
+ this.activeIndex = 1;
+ this.afterShow = false;
+ const orderId = this.aftterSalesProduct ? this.aftterSalesProduct.id : '';
+ uni.navigateTo({
+ url: `/pages/mine_package/apply_refund/apply_refund?id=${orderId}&orderData=${encodeURIComponent(JSON.stringify(this.aftterSalesProduct || {}))}`
+ });
+ },
// 售后订单详情
async onAfterSaleDetail(item) {
- // if (item.status === 8) {
- // this.$refs.uToastRef.show({
- // type: "success",
- // message: "订单已作废",
- // });
- // return;
- // }
const { bizcode, data } = await afterSaleDetail({ id: item.afterId });
if (bizcode == 100) {
this.aftterSalesProduct = { ...data, ...{ afterId: item.afterId, status: item.status } };
+ console.log("售后订单详情", this.aftterSalesProduct);
+ if (this.aftterSalesProduct.afterType == 2 && this.aftterSalesProduct.status == 1) {
+ uni.navigateTo({
+ url: `/pages/mine_package/fill_express/fill_express?afterData=${encodeURIComponent(JSON.stringify(this.aftterSalesProduct))}`
+ });
+ return;
+ }
this.salesServer = 2;
this.afterShow = true;
}
diff --git a/pages/order_package/order_submit/coupon-dialog.vue b/pages/order_package/order_submit/coupon-dialog.vue
index bfa51ae..4a80e9f 100644
--- a/pages/order_package/order_submit/coupon-dialog.vue
+++ b/pages/order_package/order_submit/coupon-dialog.vue
@@ -1,11 +1,12 @@
-
-
+
-
{{ tab.name }}
@@ -28,28 +29,24 @@
-
-
-
+
+
¥
- {{ coupon.amount }}
+ {{ getDiscountAmount(coupon) }}
- {{ coupon.condition }}
+ {{ getThresholdText(coupon) }}
-
+
@@ -57,29 +54,49 @@
-
+
- {{ coupon.title }}
- {{ coupon.description }}
-
-
-
- 仅剩 {{ coupon.timeLeft }}
+ {{ coupon.title || '优惠券' }}
+
+
+ {{ getTagText(coupon) }}
+
+ {{ getScopeText(coupon) }}
-
- 已失效
+ {{ getValidityText(coupon) }}
+
+ {{ getUnavailableReason(coupon) }}
-
-
-
- 使用
+
+
+
+
+
+ ✓
+
+
+
+ 不可用
+
+
+
+
+ 暂无相关优惠券
+
+
+
+
@@ -93,55 +110,131 @@ export default {
type: Boolean,
default: false,
},
+ goodsId: {
+ type: [Number, String],
+ default: 0,
+ },
+ coupons: {
+ type: Array,
+ default: () => [],
+ },
+ orderAmount: {
+ type: [Number, String],
+ default: 0,
+ },
+ selectedCoupon: {
+ type: Object,
+ default: () => null,
+ },
},
data() {
return {
activeTab: 0,
tabs: [
- { name: "全部", value: "all" },
- { name: "可使用", value: "active" },
- { name: "已失效", value: "expired" },
- ],
- coupons: [
- {
- amount: 12,
- condition: "无门槛",
- title: "限时秒杀优惠券",
- description: "云南白药牙膏儿膏儿膏儿...",
- timeLeft: "14:20:55",
- status: "active"
- },
- {
- amount: 12,
- condition: "无门槛",
- title: "限时秒杀优惠券",
- description: "云南白药牙膏儿膏儿膏儿...",
- timeLeft: "14:20:55",
- status: "active"
- },
+ { name: "全部", value: "" },
+ { name: "可使用", value: 1 },
+ { name: "不可用", value: 2 },
],
+ isLoading: false,
};
},
computed: {
- filteredCoupons() {
- if (this.activeTab === 0) {
- return this.coupons;
- } else if (this.activeTab === 1) {
- return this.coupons.filter(c => c.status === 'active');
- } else if (this.activeTab === 2) {
- return [];
- } else {
- return this.coupons.filter(c => c.status === 'expired');
+ displayCoupons() {
+ if (this.activeTab === 1) {
+ return this.coupons.filter((coupon) => this.isAvailable(coupon));
}
- }
+ if (this.activeTab === 2) {
+ return this.coupons.filter((coupon) => !this.isAvailable(coupon));
+ }
+ return this.coupons;
+ },
},
methods: {
+ switchTab(index) {
+ this.activeTab = index;
+ },
+ isAvailable(coupon) {
+ if (coupon.canUse === false) return false;
+ if (coupon.available === false) return false;
+ if (coupon.receiveStatus === 2) return false;
+ if (coupon.status === 2 || coupon.status === 3 || coupon.status === 4) return false;
+ return Number(this.orderAmount || 0) >= Number(coupon.thresholdAmount || 0);
+ },
+ isSelected(coupon) {
+ if (!this.selectedCoupon) return false;
+ const curId = coupon.couponUserId || coupon.id || coupon.templateId;
+ const selId = this.selectedCoupon.couponUserId || this.selectedCoupon.id || this.selectedCoupon.templateId;
+ return curId && selId && String(curId) === String(selId);
+ },
+ toggleSelect(coupon) {
+ if (this.isSelected(coupon)) {
+ this.$emit("select", null);
+ } else {
+ this.$emit("select", coupon);
+ }
+ this.handleClose();
+ },
+ noUseCoupon() {
+ this.$emit("select", null);
+ this.handleClose();
+ },
handleClose() {
this.$emit("close");
},
- useCoupon(coupon) {
- this.$emit("select", coupon);
- this.$emit("close");
+ // 格式化辅助函数
+ getDiscountAmount(coupon) {
+ return coupon.discountAmount !== undefined ? coupon.discountAmount : (coupon.amount || 0);
+ },
+ getThresholdText(coupon) {
+ const threshold = coupon.thresholdAmount !== undefined ? Number(coupon.thresholdAmount) : 0;
+ if (threshold === 0) {
+ return "无门槛";
+ }
+ return `满${threshold}元可用`;
+ },
+ getTagText(coupon) {
+ if (coupon.scopeType === 1) return "通用券";
+ if (coupon.scopeType === 2) return "商品券";
+ if (coupon.scopeType === 3 || coupon.scopeType === 4) return "品类券";
+ if (coupon.scopeText && coupon.scopeText.includes("通用")) return "通用券";
+ return "通用券";
+ },
+ getScopeText(coupon) {
+ if (coupon.scopeText) return coupon.scopeText;
+ if (coupon.scopeType === 1) return "所有商品可用";
+ if (coupon.scopeType === 2) return "指定商品可用";
+ if (coupon.scopeType === 3) return "指定类目可用";
+ if (coupon.scopeType === 4) return "指定专区商品可用";
+ return "所有商品可用";
+ },
+ getValidityText(coupon) {
+ if (coupon.useEndTime) {
+ return `有效期至 ${this.formatTime(coupon.useEndTime)}`;
+ }
+ if (coupon.endTime) {
+ return `有效期至 ${this.formatTime(coupon.endTime)}`;
+ }
+ if (coupon.validDays && coupon.validDays > 0) {
+ return `领取之日起${coupon.validDays}天内有效`;
+ }
+ return "长期有效";
+ },
+ getUnavailableReason(coupon) {
+ const threshold = Number(coupon.thresholdAmount || 0);
+ if (Number(this.orderAmount || 0) < threshold) {
+ return `订单金额未满${threshold}元`;
+ }
+ return coupon.unavailableReason || "该优惠券不适用于当前订单";
+ },
+ formatTime(time) {
+ if (!time) return "";
+ if (typeof time === "string" && time.includes("-")) return time;
+ const date = new Date(Number(time));
+ if (isNaN(date.getTime())) return String(time);
+ const y = date.getFullYear();
+ const m = String(date.getMonth() + 1).padStart(2, "0");
+ const d = String(date.getDate()).padStart(2, "0");
+ return `${y}-${m}-${d}`;
},
},
};
@@ -149,11 +242,12 @@ export default {
\ No newline at end of file
+
+.empty-wrap {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding: 120rpx 0;
+
+ .empty-text {
+ font-size: 28rpx;
+ color: #999999;
+ }
+}
+
+.popup-footer {
+ padding: 20rpx 32rpx 30rpx 32rpx;
+ background-color: #ffffff;
+
+ .no-use-btn {
+ width: 100%;
+ height: 80rpx;
+ line-height: 80rpx;
+ text-align: center;
+ background-color: #f5f5f5;
+ color: #666666;
+ font-size: 28rpx;
+ font-weight: 500;
+ border-radius: 40rpx;
+
+ &:active {
+ background-color: #eeeeee;
+ }
+ }
+}
+
diff --git a/pages/order_package/order_submit/coupon-dialog1.vue b/pages/order_package/order_submit/coupon-dialog1.vue
new file mode 100644
index 0000000..165b953
--- /dev/null
+++ b/pages/order_package/order_submit/coupon-dialog1.vue
@@ -0,0 +1,593 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/order_package/order_submit/order_submit.vue b/pages/order_package/order_submit/order_submit.vue
index 0622b8d..49afb29 100644
--- a/pages/order_package/order_submit/order_submit.vue
+++ b/pages/order_package/order_submit/order_submit.vue
@@ -60,7 +60,7 @@
¥{{
pItem.totalPrice
- }}
+ }}
每件到手价¥{{ pItem.unitPrice }}
@@ -84,7 +84,7 @@
¥{{
pItem.totalPrice
- }}
+ }}
每件到手价¥{{ pItem.unitPrice }}
@@ -108,7 +108,7 @@
运费{{
getValue(PRODUCT_DELIVERY_TIME, addItem.deliveryTime)
- }}
+ }}
{{ orderInfo.postage ? "¥" + orderInfo.postage : "包邮" }}
@@ -144,28 +144,6 @@
-
- 支付方式
-
-
-
-
-
-
-
- {{ item.name }}
- {{ item.name }}
- 可用:
- {{ item.balance }}
-
-
-
-
-
-
商品总价
@@ -173,29 +151,39 @@
{{
`${buyCouponvalue}数字积分+${orderInfo.amount -
(orderInfo.postage || 0) +
- (orderInfo.enterpriseAmount || 0)
+ (orderInfo.enterpriseAmount || 0) + (orderInfo.couponDiscount || 0)
}元`
}}
¥{{
- orderInfo.amount -
- orderInfo.postage +
- (orderInfo.enterpriseAmount || 0)
+ (orderInfo.amountBeforeCoupon != null
+ ? orderInfo.amountBeforeCoupon
+ : Number(orderInfo.amount || 0) + Number(orderInfo.couponDiscount || 0)) -
+ Number(orderInfo.postage || 0) +
+ Number(orderInfo.enterpriseAmount || 0)
}}
运费
¥{{ orderInfo.postage }}
-
+
秒杀价
@@ -218,6 +206,31 @@
¥{{ orderInfo.amount }}
+
+
+ 支付方式
+
+
+
+
+
+
+
+ {{ item.name }}
+ {{ item.name }}
+ 可用:
+ {{ item.balance }}
+
+
+
+
+
+
+
+
@@ -292,10 +305,13 @@
-
+
-
-
+
+
+
+
\ No newline at end of file
diff --git a/pages/other_package/applicable_goods/applicable_goods.vue b/pages/other_package/applicable_goods/applicable_goods.vue
new file mode 100644
index 0000000..ba5143c
--- /dev/null
+++ b/pages/other_package/applicable_goods/applicable_goods.vue
@@ -0,0 +1,488 @@
+
+
+
+
+
+
+
+
+
+
+ 适用商品
+
+
+
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+ 综合
+
+
+
+
+
+
+
+ 价格
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.goodsName || item.title || item.name }}
+
+
+
+ ¥
+ {{ formatPrice(item.price) }}
+
+
+ 全网销量{{ formatSales(item.sales) }}件
+
+
+
+
+
+
+
+
+
+ 暂无相关商品
+
+
+
+ 加载中...
+
+
+
+
+
+
+
+
diff --git a/pages/other_package/coupon/coupon.vue b/pages/other_package/coupon/coupon.vue
index 7b3a538..d73afb5 100644
--- a/pages/other_package/coupon/coupon.vue
+++ b/pages/other_package/coupon/coupon.vue
@@ -1,350 +1,662 @@
-
-
-
-
-
-
-
- {{ item }}
-
-
-
+
+
+
-
-
-
-
-
-
- ¥
- {{ coupon.amount }}
-
- {{ coupon.condition }}
-
-
-
-
-
-
-
-
+
+
+
+ {{ item.name }}
+
+
+
-
-
-
- {{ coupon.title }}
- {{ coupon.description }}
-
-
-
- 仅剩 {{ coupon.timeLeft }}
-
-
- 已失效
-
-
-
-
-
- 使用
-
-
-
-
+
+
+
+
+
+
+
+
+ ¥
+ {{ getDiscountAmount(coupon) }}
+
+ {{ getThresholdText(coupon) }}
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+ {{ coupon.title || '优惠券' }}
+
+
+ {{ getTagText(coupon) }}
+
+ {{ getScopeText(coupon) }}
+
+ {{ getValidityText(coupon) }}
+
+
+
+
+
+ 去使用
+
+
+ {{ getBtnText(coupon) }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ TB
+
+
+ ♥
+
+
+
+ 暂无优惠券
+
+ 去领取优惠券
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/other_package/get-coupon/get-coupon.vue b/pages/other_package/get-coupon/get-coupon.vue
new file mode 100644
index 0000000..651f5ee
--- /dev/null
+++ b/pages/other_package/get-coupon/get-coupon.vue
@@ -0,0 +1,801 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ¥
+ {{ getDiscountAmount(coupon) }}
+
+ {{ getThresholdText(coupon) }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ coupon.title }}
+
+ {{ getTagText(coupon) }}
+ {{ getScopeText(coupon) }}
+
+ {{ getValidityText(coupon) }}
+
+
+
+
+
+ 立即领取
+
+
+ 去使用
+
+
+ {{ coupon.receiveStatusText || '已达上限' }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ TB
+
+
+ ♥
+
+
+
+ 敬请期待
+ 更多优质商品正在路上...
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/other_package/productInfo/productInfo.vue b/pages/other_package/productInfo/productInfo.vue
index ad3035e..52d9e80 100644
--- a/pages/other_package/productInfo/productInfo.vue
+++ b/pages/other_package/productInfo/productInfo.vue
@@ -10,8 +10,8 @@
{{ currentNum + 1 }}/{{ swiperList.length }}
-
-
+
+
@@ -84,6 +84,22 @@
+
+
+
+
+ 领券
+
+
+ {{ cItem.title || '优惠券' }}
+
+
+
+
+
+
+
+
+
+