diff --git a/src/views/modules/order/buyorder.vue b/src/views/modules/order/buyorder.vue index 4883d04..5cd34c0 100644 --- a/src/views/modules/order/buyorder.vue +++ b/src/views/modules/order/buyorder.vue @@ -533,11 +533,11 @@ - - - - - + + + + + @@ -545,9 +545,21 @@ maxlength="500" show-word-limit> - - 取 消 - 确 定 + + + @@ -780,6 +792,40 @@ this.isMultipleDisabled() } }, + computed: { + refundApplyHasShipping() { + const row = this.refundApplyOrder + if (!row || row.orderId == null) return false + const ship = Number(row.shippingMoney) + return !isNaN(ship) && ship > 0 + }, + refundApplyPaidMoney() { + const row = this.refundApplyOrder + if (!row || row.orderId == null) return 0 + const n = Number(row.realMoney) + return isNaN(n) ? 0 : n + }, + refundApplyDeductShippingFee() { + const row = this.refundApplyOrder + if (!row || row.orderId == null) return 0 + const ship = Number(row.shippingMoney) + if (isNaN(ship) || ship <= 0) return 0 + return this.refundApplyForm.refundShipping === 1 ? ship : 0 + }, + refundApplyPreviewAmount() { + const row = this.refundApplyOrder + if (!row || row.orderId == null) return 0 + const paid = Number(row.realMoney) + const shipping = Number(row.shippingMoney) + const paidNum = isNaN(paid) ? 0 : paid + const shipNum = isNaN(shipping) ? 0 : shipping + if (this.refundApplyForm.refundShipping === 1) { + const n = paidNum - shipNum + return n > 0 ? n : 0 + } + return paidNum + } + }, methods: { computedVipType(userVips) { if (!userVips || userVips.length === 0) return ''; @@ -1928,6 +1974,44 @@ font-size: 12px; } + .refund-apply-dialog-footer { + display: flex; + align-items: center; + justify-content: space-between; + flex-wrap: wrap; + gap: 12px; + } + + .refund-apply-footer-amount { + flex: 1; + min-width: 0; + } + + .refund-apply-footer-label { + color: #606266; + font-size: 14px; + margin-right: 8px; + } + + .refund-apply-footer-value { + color: #e6a23c; + font-size: 18px; + font-weight: 600; + } + + .refund-apply-footer-breakdown { + display: inline-block; + margin-left: 6px; + color: #909399; + font-size: 13px; + font-weight: normal; + vertical-align: baseline; + } + + .refund-apply-footer-actions { + flex-shrink: 0; + } + .refund-detail-dialog { .refund-total-card { background: #f5f7fa; diff --git a/src/views/modules/trainingCourse/training-course-list.vue b/src/views/modules/trainingCourse/training-course-list.vue index 1d5dd02..52e2845 100644 --- a/src/views/modules/trainingCourse/training-course-list.vue +++ b/src/views/modules/trainingCourse/training-course-list.vue @@ -858,7 +858,7 @@ export default { data: this.$http.adornData({}), }).then(({ data }) => { if (data && data.code === 0) { - this.vipList = data.vipBuyConfigList.filter(item => item.type >= 4 && item.type <= 9); + this.vipList = data.vipBuyConfigList.filter(item => item.type >= 4 && item.type <= 10); this.svipList = data.vipBuyConfigList.filter(item => item.type === 1 || item.type === 2); } });