shish 23 часов назад
Родитель
Сommit
065e2a254d
2 измененных файлов с 36 добавлено и 5 удалено
  1. 32 4
      ghsApp/src/admin/stat/productSale.vue
  2. 4 1
      ghsApp/src/api/stat/index.js

+ 32 - 4
ghsApp/src/admin/stat/productSale.vue

@@ -1,10 +1,12 @@
 <!--
-  花材销售排行:按花材汇总数量/金额/毛利;timeType 切换记账时间(bill) / 发货时间(send)。
+  花材销售排行:按花材汇总数量/金额/毛利。
+  timeType 切换记账时间(bill) / 发货时间(send);
+  includeNextDay 切换是否计入跨天售后(售后历史)。
 -->
 <template>
 <view class="app-content">
 <view class="ex-page">
-		<!-- 筛选区两行:上时间类型+采购人,下日期选择,避免互相遮挡 -->
+		<!-- 筛选区:时间类型+采购人、售后历史、日期,分行避免互相遮挡 -->
 		<view class="filter-panel">
 			<view class="filter-row filter-row-main">
 				<view class="time-type-row">
@@ -25,6 +27,21 @@
 					@click="changeStaff()"
 				>{{ selectStaff.id == 0 ? '选采购人' : selectStaff.name }}</button>
 			</view>
+			<!-- 是否把跨天售后扣到所选日期:包含=通过日扣减,不含=只看当日净销 -->
+			<view class="filter-row filter-row-after">
+				<view class="time-type-row">
+					<view
+						class="time-type-item"
+						:class="{ active: params.includeNextDay === 1 }"
+						@click="changeIncludeNextDay(1)"
+					>包含售后历史</view>
+					<view
+						class="time-type-item"
+						:class="{ active: params.includeNextDay === 0 }"
+						@click="changeIncludeNextDay(0)"
+					>不含售后历史</view>
+				</view>
+			</view>
 			<view class="filter-row filter-row-date">
 				<DateSelect class="bar" top="0" @selectDateFn="selectDateFn" />
 			</view>
@@ -49,8 +66,8 @@
 								</view>
 							</t-td>
 						</t-tr>
-						<view v-if="Number(nextDayDeduct) > 0" style="color:#e67e22;font-size:26upx;margin:0 10upx 10upx 10upx;font-weight:bold;">
-							跨天售后扣减:¥{{ nextDayDeduct }}
+						<view v-if="params.includeNextDay === 1 && Number(nextDayDeduct) > 0" style="color:#e67e22;font-size:26upx;margin:0 10upx 10upx 10upx;font-weight:bold;">
+							售后历史花材已扣除:¥{{ nextDayDeduct }}
 						</view>
 						<block v-if="displayList && !$util.isEmpty(displayList)">
 							<view v-for="(item, index) in displayList" :key="index">
@@ -123,6 +140,8 @@ export default {
 				staffName:'',
 				// bill=记账时间(默认) / send=发货时间
 				timeType: 'bill',
+				// 1=包含跨天售后扣减(默认,与原口径一致) / 0=不含跨天售后
+				includeNextDay: 1,
 			},
 			profile:[],
 			staffData:[],
@@ -174,6 +193,12 @@ export default {
 			this.params.timeType = type
 			this.init()
 		},
+		/** 切换是否计入跨天售后:1 包含售后历史,0 不含 */
+		changeIncludeNextDay(flag) {
+			if (this.params.includeNextDay === flag) return
+			this.params.includeNextDay = flag
+			this.init()
+		},
 		rankByFn(rank){
 			this.getStatList(rank)
 		},
@@ -218,6 +243,9 @@ export default {
 		justify-content: space-between;
 		margin-bottom: 12upx;
 	}
+	.filter-row-after {
+		margin-bottom: 12upx;
+	}
 	.filter-row-date {
 		min-height: 56upx;
 		padding: 0 8upx;

+ 4 - 1
ghsApp/src/api/stat/index.js

@@ -55,7 +55,10 @@ export const getStatProfit = data => {
 	return https.get('/stat/profit', data)
 }
 
-//花材排行
+/**
+ * 花材销售排行:对应 StatItemController::actionShow
+ * includeNextDay=1 计入跨天售后扣减,=0 只统计当日净销
+ */
 export const getStatItemShow = data => {
 	return https.get('/stat-item/show', data)
 }