From 4b8f0d1cb618b00303502681159b0ad6bc4404a6 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 24 三月 2026 14:54:40 +0800
Subject: [PATCH] fix: 真机运行时,日期组件默认当前日期
---
src/pages/inventoryManagement/stockReport/index.vue | 74 +++++++++++++++++++++++++++++--------
1 files changed, 58 insertions(+), 16 deletions(-)
diff --git a/src/pages/inventoryManagement/stockReport/index.vue b/src/pages/inventoryManagement/stockReport/index.vue
index 158581d..eba56c3 100644
--- a/src/pages/inventoryManagement/stockReport/index.vue
+++ b/src/pages/inventoryManagement/stockReport/index.vue
@@ -69,6 +69,8 @@
<view class="row" v-if="searchForm.reportType === 'inout'"><text class="l">鍑哄簱鏁伴噺</text><text class="r">{{ item.totalStockOut }}</text></view>
<view class="row"><text class="l">鐜板湪搴撳瓨</text><text class="r highlight">{{ item.currentStock }}</text></view>
<view class="row" v-if="item.createBy"><text class="l">鍏ュ簱浜�</text><text class="r">{{ item.createBy }}</text></view>
+ <view class="row" v-if="item.currentWeight"><text class="l">鐜板噣閲�(鍚�)</text><text class="r">{{ item.currentWeight }}</text></view>
+ <view class="row" v-if="item.recordType"><text class="l">鏉ユ簮</text><text class="r">{{ getRecordType(item.recordType) }}</text></view>
</view>
</view>
<view class="load-more-wrap">
@@ -78,15 +80,13 @@
<view v-else class="no-data">鏆傛棤鏁版嵁</view>
</view>
- <up-popup :show="showDatePicker" mode="bottom" @close="showDatePicker = false">
- <up-datetime-picker
- v-model="dateValue"
- :mode="datePickerMode"
- :show="showDatePicker"
- @confirm="onDateConfirm"
- @cancel="showDatePicker = false"
- />
- </up-popup>
+ <up-datetime-picker
+ v-model="dateValue"
+ :mode="datePickerMode"
+ :show="showDatePicker"
+ @confirm="onDateConfirm"
+ @cancel="showDatePicker = false"
+ />
</view>
</template>
@@ -94,12 +94,12 @@
import { ref, reactive, toRefs, computed, watch } from 'vue'
import dayjs from 'dayjs'
import PageHeader from '@/components/PageHeader.vue'
-import { formatDateToYMD } from '@/utils/ruoyi'
import { onShow } from '@dcloudio/uni-app'
import {
getStockInventoryReportList,
getStockInventoryInAndOutReportList
} from '@/api/inventoryManagement/stockInventory.js'
+import {findAllQualifiedStockInRecordTypeOptions} from "@/api/basicData/enum";
const reportTypes = [
{ label: '鏃ユ姤', value: 'daily' },
@@ -147,10 +147,24 @@
p.startMonth = searchForm.value.startMonth + '-01'
p.endMonth = searchForm.value.endMonth + '-01'
} else {
- p.startDate = searchForm.value.startDate
- p.endDate = searchForm.value.endDate
+ p.startMonth = searchForm.value.startDate
+ p.endMonth = searchForm.value.endDate
}
return p
+}
+
+const stockRecordTypeOptions = ref([])
+
+const getRecordType = (recordType) => {
+ return stockRecordTypeOptions.value.find(item => item.value === recordType)?.label || ''
+}
+
+// 鑾峰彇鏉ユ簮绫诲瀷閫夐」
+const fetchStockRecordTypeOptions = () => {
+ findAllQualifiedStockInRecordTypeOptions()
+ .then(res => {
+ stockRecordTypeOptions.value = res.data;
+ })
}
const getList = () => {
@@ -199,6 +213,23 @@
getList()
}
+const toPickerTimestamp = (val, target) => {
+ if (!val) return Date.now()
+ let parsed
+ if (target === 'startMonth' || target === 'endMonth') {
+ parsed = dayjs(`${val}-01`).valueOf()
+ } else {
+ parsed = dayjs(val).valueOf()
+ }
+ return Number.isNaN(parsed) ? Date.now() : parsed
+}
+
+const formatPickerDate = (value, isMonth) => {
+ const parsed = dayjs(value)
+ if (!parsed.isValid()) return ''
+ return parsed.format(isMonth ? 'YYYY-MM' : 'YYYY-MM-DD')
+}
+
const openDatePicker = (target) => {
let val = ''
datePickerTarget.value = target
@@ -219,13 +250,18 @@
val = searchForm.value.endDate
break
}
- dateValue.value = val ? new Date(val).getTime() : Date.now()
+ dateValue.value = toPickerTimestamp(val, target)
showDatePicker.value = true
}
const onDateConfirm = (e) => {
const isMonth = datePickerTarget.value === 'startMonth' || datePickerTarget.value === 'endMonth'
- const str = isMonth ? dayjs(e.value).format('YYYY-MM') : formatDateToYMD(e.value)
+ const str = formatPickerDate(e.value, isMonth)
+ if (!str) {
+ showDatePicker.value = false
+ uni.showToast({ title: '鏃ユ湡鏍煎紡鏃犳晥', icon: 'none' })
+ return
+ }
if (datePickerTarget.value === 'single') {
searchForm.value.singleDate = str
@@ -262,12 +298,15 @@
searchForm.value.singleDate = today.format('YYYY-MM-DD')
}
if (!searchForm.value.startMonth || !searchForm.value.endMonth) {
- searchForm.value.startMonth = today.subtract(1, 'month').format('YYYY-MM')
- searchForm.value.endMonth = today.format('YYYY-MM')
+ searchForm.value.startMonth = today.format('YYYY-MM')
+ searchForm.value.endMonth = today.add(1, 'month').format('YYYY-MM')
}
if (!searchForm.value.startDate || !searchForm.value.endDate) {
searchForm.value.endDate = today.format('YYYY-MM-DD')
searchForm.value.startDate = today.subtract(6, 'day').format('YYYY-MM-DD')
+ }
+ if (!datePickerTarget.value) {
+ dateValue.value = toPickerTimestamp(searchForm.value.singleDate, 'single')
}
}
@@ -282,8 +321,11 @@
onShow(() => {
initDefaultDates()
handleQuery()
+ fetchStockRecordTypeOptions()
})
+initDefaultDates()
+
const goBack = () => uni.navigateBack()
</script>
--
Gitblit v1.9.3