Răsfoiți Sursa

跨天售后

shish 1 zi în urmă
părinte
comite
d417f150f4

+ 3 - 3
ghsApp/src/admin/home/components/OrderItem.vue

@@ -80,7 +80,7 @@
           <view v-if="item.smallNum > 0">{{ `${item.bigNum}/${item.smallNum}` }}</view>
           <view v-else>{{ item.bigNum }}</view>
           <view class="price">
-            <!-- 列表展示价 = actPrice - 封账后退款(nextDayTkPrice),与详情「最终金额」对齐 -->
+            <!-- 列表展示价 = actPrice - 跨天退款(nextDayTkPrice),与详情「最终金额」对齐 -->
             <view v-if="Number(item.orderPrice) == displayActPrice">¥{{ displayActPrice }}</view>
             <view v-else>
               <text class="price-original">¥{{ item.orderPrice ? parseFloat(item.orderPrice) : 0 }}</text>
@@ -384,8 +384,8 @@ export default {
   },
   computed: {
     /**
-     * 列表展示价:actPrice - 封账后退款(nextDayTkPrice)
-     * 封账后退款不改 actPrice,这里扣减后与详情「最终金额」一致
+     * 列表展示价:actPrice - 跨天退款(nextDayTkPrice)
+     * 跨天退款不改 actPrice,这里扣减后与详情「最终金额」一致
      */
     displayActPrice() {
       const act = Number(this.item.actPrice) || 0

+ 6 - 24
ghsApp/src/components/forward-options-popup.vue

@@ -1,13 +1,12 @@
 <!--
   跨天售后确认弹框
-  用途:隔天/已结账售后二次确认;资金默认原路,不再选手选 fundType。
-  mode=purchase:上游采购文案(退回采购账户余额)
+  用途:隔天/已结账售后二次确认;文案统一为「确认退款?」
 -->
 <template>
 	<view v-if="show" class="mask" @click="onCancel">
 		<view class="panel" @click.stop>
-			<view class="title">退款确认</view>
-			<view class="tip">{{ tipText }}</view>
+			<view class="title">提示</view>
+			<view class="tip">确认退款?</view>
 			<view class="btns">
 				<button class="popup-btn cancel" @click="onCancel">取消</button>
 				<button class="popup-btn confirm" @click="onOk">确认退款</button>
@@ -21,28 +20,10 @@ export default {
 	name: 'forward-options-popup',
 	props: {
 		show: { type: Boolean, default: false },
-		// 已结账单当天售后也走隔天口径
+		// 兼容旧调用方,文案已统一不再区分
 		orderCleared: { type: Boolean, default: false },
-		// free=无原单退款;purchase=上游采购隔天
 		mode: { type: String, default: '' }
 	},
-	computed: {
-		tipText() {
-			if (this.mode === 'free') {
-				return '无关联销售单:退货回库;资金请在成功页确认按原路退回或返充余额。'
-			}
-			if (this.mode === 'purchase') {
-				if (this.orderCleared) {
-					return '采购单已结清,本次售后不减实付,只会算今天退款;金额将退回采购账户余额。'
-				}
-				return '本次售后不减采购实付,只会算作今天退款;金额将退回采购账户余额。'
-			}
-			if (this.orderCleared) {
-				return '订单已结账,本次售后不减订单实付,只会算今天退款;资金将原路退回。'
-			}
-			return '本次售后不减订单实付,只会算今天退款;资金将原路退回。'
-		}
-	},
 	methods: {
 		onCancel() {
 			this.$emit('cancel')
@@ -75,7 +56,7 @@ export default {
 	box-sizing: border-box;
 }
 .title {
-	font-size: 46upx;
+	font-size: 44upx;
 	font-weight: bold;
 	color: #333;
 	text-align: center;
@@ -86,6 +67,7 @@ export default {
 	color: #666;
 	line-height: 1.6;
 	margin-bottom: 60upx;
+	text-align: center;
 }
 .btns {
 	display: flex;

+ 8 - 8
ghsApp/src/pagesOrder/detail.vue

@@ -404,10 +404,10 @@
 						<div class="tui-title" style="color:#3385FF;">实际金额</div>
 						<div class="detail-price_box" style="font-size: 34upx;color:#3385FF;">¥{{ parseFloat(detailInfo.realPrice)}}</div>
 					</tui-list-cell>
-					<!-- 封账后退款:不改 realPrice,单独展示;最终金额 = 实际金额 - 封账后退款 -->
+					<!-- 跨天退款:不改 realPrice,单独展示;最终金额 = 实际金额 - 跨天退款 -->
 					<tui-list-cell v-if="Number(detailInfo.nextDayTkPrice) > 0" class="line-cell" :hover="false">
-						<div class="tui-title">封账后退款</div>
-						<div class="detail-price_box" style="font-size: 28upx;">-¥{{ parseFloat(detailInfo.nextDayTkPrice) }}</div>
+						<div class="tui-title" style="color:red;font-weight:bold;">跨天退款</div>
+						<div class="detail-price_box" style="font-size: 28upx;color:red;">-¥{{ parseFloat(detailInfo.nextDayTkPrice) }}</div>
 					</tui-list-cell>
 					<tui-list-cell v-if="Number(detailInfo.nextDayTkPrice) > 0" class="line-cell" :hover="false">
 						<div class="tui-title" style="color:#3385FF;">最终金额</div>
@@ -466,14 +466,14 @@
 						<div class="tui-title">实际金额</div>
 						<div class="detail-price_box" style="font-size: 32upx;">¥{{ parseFloat(detailInfo.realPrice)}}</div>
 					</tui-list-cell>
-					<!-- 封账后退款 / 最终金额:与上方价格明细口径一致 -->
+					<!-- 跨天退款 / 最终金额:与上方价格明细口径一致 -->
 					<tui-list-cell
 						v-if="(detailInfo.status==3 || detailInfo.status==4) && Number(detailInfo.nextDayTkPrice) > 0"
 						class="line-cell"
 						:hover="false"
 					>
-						<div class="tui-title">封账后退款</div>
-						<div class="detail-price_box" style="font-size: 28upx;">-¥{{ parseFloat(detailInfo.nextDayTkPrice) }}</div>
+						<div class="tui-title" style="color:red;font-weight:bold;">跨天退款</div>
+						<div class="detail-price_box" style="font-size: 28upx;color:red;">-¥{{ parseFloat(detailInfo.nextDayTkPrice) }}</div>
 					</tui-list-cell>
 					<tui-list-cell
 						v-if="(detailInfo.status==3 || detailInfo.status==4) && Number(detailInfo.nextDayTkPrice) > 0"
@@ -828,8 +828,8 @@ export default {
 			return parseFloat((day + next).toFixed(2))
 		},
 		/**
-		 * 最终金额:实际金额 realPrice - 封账后退款 nextDayTkPrice
-		 * 封账后退款不改实付字段,用差值给店员看净额
+		 * 最终金额:实际金额 realPrice - 跨天退款 nextDayTkPrice
+		 * 跨天退款不改实付字段,用差值给店员看净额
 		 */
 		finalPriceAfterSealRefund() {
 			const real = Number(this.detailInfo.realPrice) || 0

+ 1 - 1
ghsApp/src/pagesOrder/refundList.vue

@@ -11,7 +11,7 @@
               <text>类型:{{item.book == 1 ? '预订单多退少补' :'普通'}}</text>
               <!-- sameDay=0 跨天售后,否则当天售后 -->
               <text :style="Number(item.sameDay) === 0 ? 'color:#e67e22;font-weight:bold;' : ''">
-                退款:{{ Number(item.sameDay) === 0 ? '封账后退款' : '当天退款' }}
+                退款:{{ Number(item.sameDay) === 0 ? '跨天退款' : '当天退款' }}
               </text>
               <text v-if="!$util.isEmpty(item.remark)">备注:{{item.remark}}</text>
 

+ 24 - 1
ghsApp/src/pagesPurchase/info.vue

@@ -209,7 +209,7 @@
 					</tui-list-cell>
 					<!-- 金额明细里只展示当天退款(tkPrice),隔天不减实付故不进此行 -->
 					<tui-list-cell v-if="sameDayRefundPrice > 0" class="line-cell" :hover="false">
-						<div class="tui-title">当天退款</div>
+						<div class="tui-title">当天售后</div>
 						<div class="detail-price_box red" style="font-size:30upx">-¥{{ sameDayRefundPrice }}</div>
 					</tui-list-cell>
 					<tui-list-cell v-if="detailInfo.discountAmount > 0" class="line-cell" :hover="false">
@@ -220,6 +220,15 @@
 						<div class="tui-title">实际金额</div>
 						<div class="detail-price_box" style="font-size:32upx;color:#3385FF;">¥{{ detailInfo.realPrice ? parseFloat(detailInfo.realPrice) : 0 }}</div>
 					</tui-list-cell>
+					<!-- 隔天退款不改 realPrice;最终金额 = 实际金额 - 隔天退款 -->
+					<tui-list-cell v-if="Number(detailInfo.nextDayTkPrice) > 0" class="line-cell" :hover="false">
+						<div class="tui-title">跨天售后</div>
+						<div class="detail-price_box red" style="font-size:30upx;">-¥{{ nextDayRefundPrice }}</div>
+					</tui-list-cell>
+					<tui-list-cell v-if="Number(detailInfo.nextDayTkPrice) > 0" class="line-cell" :hover="false">
+						<div class="tui-title">最终金额</div>
+						<div class="detail-price_box" style="font-size:32upx;color:#3385FF;font-weight:bold;">¥{{ finalPriceAfterNextDayRefund }}</div>
+					</tui-list-cell>
 				</div>
 			</view>
 
@@ -368,6 +377,20 @@ export default {
 		sameDayRefundPrice() {
 			return parseFloat(Number(this.detailInfo.tkPrice || 0).toFixed(2))
 		},
+		/** 隔天退款:nextDayTkPrice(不改 realPrice) */
+		nextDayRefundPrice() {
+			return parseFloat(Number(this.detailInfo.nextDayTkPrice || 0).toFixed(2))
+		},
+		/**
+		 * 最终金额:实际金额 realPrice - 隔天退款
+		 * 隔天退款不改实付口径,用差值展示净额
+		 */
+		finalPriceAfterNextDayRefund() {
+			const real = Number(this.detailInfo.realPrice) || 0
+			const next = Number(this.detailInfo.nextDayTkPrice) || 0
+			const final = real - next
+			return parseFloat((final > 0 ? final : 0).toFixed(2))
+		},
 		/** 累计退款:当天 tkPrice + 隔天 nextDayTkPrice */
 		totalRefundPrice() {
 			const tk = Number(this.detailInfo.tkPrice || 0)