diff --git a/src/pages_function/pages/materialInbound/index.vue b/src/pages_function/pages/materialInbound/index.vue
index 7dfbee1..5717997 100644
--- a/src/pages_function/pages/materialInbound/index.vue
+++ b/src/pages_function/pages/materialInbound/index.vue
@@ -4,14 +4,6 @@
-
-
-
- {{ currentStatusLabel }}
-
-
-
-
+
+
+
+ {{ currentStatusLabel }}
+
+
+
+
@@ -40,37 +40,23 @@
更多筛选
-
-
- 物料信息
-
-
-
- 创建人
-
- {{ selectedCreatorLabel }}
-
-
-
-
- {{ item.label }}
- ✓
+
+
+ 创建人
+
+
+ {{ selectedCreatorLabel }}
+
-
+
-
+
入库时间
-
@@ -213,7 +199,6 @@ const filterPopupRef = ref(null)
const selectedCreator = ref(null)
const inTimeFilter = ref([])
const creatorOptions = ref([])
-const creatorPanelOpen = ref(false)
const statusOptions = computed(() => [
{ label: '待入库', value: '0' },
@@ -241,6 +226,12 @@ const selectedCreatorLabel = computed(() => {
const found = creatorOptions.value.find((u) => u.value === selectedCreator.value)
return found ? found.label : '创建人'
})
+const creatorLabels = computed(() => ['创建人', ...creatorOptions.value.map((o) => o.label)])
+const creatorIndex = computed(() => {
+ if (!selectedCreator.value) return 0
+ const idx = creatorOptions.value.findIndex((o) => o.value === selectedCreator.value)
+ return idx >= 0 ? idx + 1 : 0
+})
const list = ref([])
const loading = ref(false)
@@ -353,13 +344,14 @@ function confirmFilterDrawer() {
fetchList(true)
}
-function toggleCreatorPanel() {
- creatorPanelOpen.value = !creatorPanelOpen.value
-}
-
-function selectCreator(item) {
- selectedCreator.value = selectedCreator.value === item.value ? null : item.value
- creatorPanelOpen.value = false
+function onCreatorPickerChange(event) {
+ const index = Number(event?.detail?.value || 0)
+ if (index === 0) {
+ selectedCreator.value = null
+ } else {
+ const item = creatorOptions.value[index - 1]
+ selectedCreator.value = item ? item.value : null
+ }
}
async function loadCreatorOptions() {
@@ -395,6 +387,7 @@ function resetFilters() {
selectedStatus.value = ''
selectedCreator.value = null
inTimeFilter.value = []
+ filterPopupRef.value?.close()
fetchList(true)
}
@@ -574,7 +567,7 @@ onHide(() => {})
gap: 18rpx;
}
-.search-row {
+.quick-row {
margin-top: 18rpx;
}
@@ -715,169 +708,21 @@ onHide(() => {})
color: #ffffff;
}
-.drawer-section {
- margin-bottom: 18rpx;
- padding: 28rpx 28rpx 30rpx;
- border-radius: 24rpx;
- background: #ffffff;
- box-sizing: border-box;
-}
-
-.drawer-section-head {
- display: flex;
- align-items: center;
- justify-content: space-between;
- margin-bottom: 24rpx;
-}
-
-.drawer-section-title {
- font-size: 32rpx;
- line-height: 1.3;
- color: #1f2937;
- font-weight: 700;
-}
-
-.drawer-grid {
- display: grid;
- grid-template-columns: repeat(2, minmax(0, 1fr));
- gap: 22rpx 20rpx;
-}
-
-.drawer-field {
- min-width: 0;
-}
-
-.drawer-field-wide {
- grid-column: 1 / -1;
-}
-
-.drawer-label {
- display: block;
- margin-bottom: 12rpx;
- font-size: 24rpx;
- line-height: 1.3;
- color: #4b5563;
- font-weight: 500;
-}
-
-.drawer-picker {
- width: 100%;
- min-height: 74rpx;
- border: 0;
- border-radius: 8rpx;
- background: #f7f8fb;
- box-sizing: border-box;
- display: flex;
- align-items: center;
- justify-content: center;
- padding: 0 18rpx;
- gap: 8rpx;
-}
-
-.drawer-picker-text {
- min-width: 0;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- font-size: 26rpx;
- color: #111827;
- text-align: center;
-}
-
-.drawer-picker-text.placeholder {
- color: #9ca3af;
-}
-
-.drawer-option-panel {
- max-height: 360rpx;
- margin-top: 12rpx;
- border-radius: 12rpx;
- background: #f7f8fb;
- overflow: hidden;
-}
-
-.drawer-option-item {
- min-height: 72rpx;
- padding: 0 24rpx;
- display: flex;
- align-items: center;
- justify-content: space-between;
- border-bottom: 1rpx solid #eceff3;
- box-sizing: border-box;
-}
-
-.drawer-option-item:last-child {
- border-bottom: 0;
-}
-
-.drawer-option-item.active {
- background: rgba(23, 75, 120, 0.1);
-}
-
-.drawer-option-item.active .drawer-option-text {
- color: #174b78;
- font-weight: 600;
-}
-
-.drawer-option-text {
- min-width: 0;
- flex: 1;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- font-size: 26rpx;
- color: #1f2937;
-}
-
-.drawer-option-check {
- flex-shrink: 0;
- font-size: 28rpx;
- color: #174b78;
- margin-left: 16rpx;
-}
-
-.drawer-date {
- width: 100%;
- min-height: 74rpx;
- border: 0;
- border-radius: 8rpx;
- background: #f7f8fb;
- box-sizing: border-box;
- display: flex;
- align-items: center;
- padding: 0 12rpx;
-}
-
-.drawer-date :deep(.uni-date),
-.drawer-date :deep(.uni-date-editor),
-.drawer-date :deep(.uni-date-editor--x),
-.drawer-date :deep(.uni-date-x) {
- width: 100%;
-}
-
-.drawer-date :deep(.uni-date-editor),
-.drawer-date :deep(.uni-date-editor--x),
-.drawer-date :deep(.uni-date-x) {
- min-height: 74rpx;
-}
-
-.drawer-date :deep(.uni-date-editor--x),
-.drawer-date :deep(.uni-date-x) {
- border: 0;
- padding: 0;
- background: transparent;
-}
-
-.drawer-date :deep(.uni-date-range) {
- display: flex;
- align-items: center;
-}
-
-.drawer-date :deep(.uni-date__x-input) {
- text-align: center;
- font-size: 26rpx;
- color: #111827;
-}
+.drawer-section { margin-bottom: 18rpx; padding: 8rpx 28rpx; border-radius: 24rpx; background: #ffffff; box-sizing: border-box; }
+.drawer-fields { display: flex; flex-direction: column; }
+.drawer-field { min-width: 0; min-height: 98rpx; display: flex; align-items: center; gap: 20rpx; border-bottom: 1rpx solid #eceff3; box-sizing: border-box; }
+.drawer-field:last-child { border-bottom: 0; }
+.drawer-label { width: 160rpx; flex: 0 0 160rpx; font-size: 24rpx; line-height: 1.3; color: #4b5563; font-weight: 500; }
+.drawer-picker-host { min-width: 0; flex: 1; display: block; }
+.drawer-picker { min-width: 0; flex: 1; width: 100%; min-height: 74rpx; border: 0; border-radius: 8rpx; background: #f7f8fb; box-sizing: border-box; display: flex; align-items: center; justify-content: flex-end; padding: 0 18rpx; gap: 8rpx; }
+.drawer-picker-text { min-width: 0; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 26rpx; color: #111827; text-align: right; }
+.drawer-picker-text.placeholder { color: #9ca3af; }
+.drawer-date { min-width: 0; flex: 1; width: 100%; min-height: 74rpx; border: 0; border-radius: 8rpx; background: #f7f8fb; box-sizing: border-box; display: flex; align-items: center; padding: 0 12rpx; }
+.drawer-date :deep(.uni-date), .drawer-date :deep(.uni-date-editor), .drawer-date :deep(.uni-date-editor--x), .drawer-date :deep(.uni-date-x) { width: 100%; }
+.drawer-date :deep(.uni-date-editor), .drawer-date :deep(.uni-date-editor--x), .drawer-date :deep(.uni-date-x) { min-height: 74rpx; }
+.drawer-date :deep(.uni-date-editor--x), .drawer-date :deep(.uni-date-x) { border: 0; padding: 0; background: transparent; }
+.drawer-date :deep(.uni-date-range) { display: flex; align-items: center; }
+.drawer-date :deep(.uni-date__x-input) { text-align: center; font-size: 26rpx; color: #111827; }
/* ====== 列表 ====== */
.list-scroll {
diff --git a/src/pages_function/pages/materialMove/index.vue b/src/pages_function/pages/materialMove/index.vue
index b640273..d607d0d 100644
--- a/src/pages_function/pages/materialMove/index.vue
+++ b/src/pages_function/pages/materialMove/index.vue
@@ -3,14 +3,6 @@
-
-
-
- {{ currentStatusLabel }}
-
-
-
-
+
+
+
+ {{ currentStatusLabel }}
+
+
+
+