diff --git a/src/pages/event/EventRecordList.vue b/src/pages/event/EventRecordList.vue
index 873a6cf..ed9501f 100644
--- a/src/pages/event/EventRecordList.vue
+++ b/src/pages/event/EventRecordList.vue
@@ -26,74 +26,75 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
- 删除
-
-
-
-
-
-
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
@@ -125,7 +126,7 @@
format="YYYY-MM-DD HH:mm"
title="结束时间"
v-model="dateRange[1]"
- @confirm="endVisible = false"
+ @confirm="confirmEndTime"
/>
@@ -177,7 +178,6 @@ let keywordTimer: number | undefined;
let initialized = false;
const canCreateRecord = computed(() => userStore.hasPermissions(permissionCodes.eventRecord.create));
-const isCustomRange = computed(() => dateFilterType.value === "custom");
const dateFilterLabel = computed(() => dateOptions.find(item => item.value === dateFilterType.value)?.label || "今天");
const actionOptions = computed(() => eventList.value.map(item => ({
label: item.name || "未命名事件",
@@ -193,7 +193,6 @@ const eventFilterLabel = computed(() => {
.map(item => item.name || "未命名事件")
.join("、");
});
-const summaryBehaviorText = computed(() => `事件:${eventFilterLabel.value}`);
const selectedNumberEvent = computed(() => {
if (actionFilter.value.length !== 1) {
return undefined;
@@ -202,14 +201,6 @@ const selectedNumberEvent = computed(() => {
return event?.valueType === "NUMBER" ? event : undefined;
});
const canDeleteRecord = computed(() => userStore.hasPermissions(permissionCodes.eventRecord.delete));
-const summaryText = computed(() => {
- if (!isCustomRange.value) {
- const current = dateOptions.find(item => item.value === dateFilterType.value);
- return `范围:${current?.label || "今天"}|${dateRange.value[0] || "不限"}`;
- }
-
- return `范围:${dateRange.value[0] || "-"} ~ ${dateRange.value[1] || "-"}`;
-});
watch(keyword, () => {
if (!initialized) {
@@ -265,7 +256,7 @@ const summaryNumberValueText = computed(() => {
if (!selectedNumberEvent.value || pageResult.numberValueTotal === undefined || pageResult.numberValueTotal === null) {
return "";
}
- return `数值合计:${formatEventNumberValue(selectedNumberEvent.value, pageResult.numberValueTotal)}`;
+ return `${formatEventNumberValue(selectedNumberEvent.value, pageResult.numberValueTotal)}`;
});
const loadStateText = computed(() => {
if (isLoading.value) {
@@ -345,6 +336,26 @@ async function selectDateFilter(type: DropdownValue): Promise {
}
}
+async function confirmStartTime(): Promise {
+ startVisible.value = false;
+ await confirmCustomRange();
+}
+
+async function confirmEndTime(): Promise {
+ endVisible.value = false;
+ await confirmCustomRange();
+}
+
+async function confirmCustomRange(): Promise {
+ if (dateFilterType.value === "custom") {
+ return;
+ }
+
+ dateFilterType.value = "custom";
+ await replaceFilterQuery();
+ await reloadRecords();
+}
+
async function exportExcel(): Promise {
if (isExporting.value) {
return;
@@ -657,52 +668,69 @@ onUnmounted(() => {
}
}
- .summary {
- color: #52607a;
- font-size: .8125rem;
- text-align: center;
- }
+ .list-wrapper {
+ gap: 1rem;
+ display: flex;
+ flex-direction: column;
- .record-list {
+ .summary {
+ overflow: hidden;
- .item {
-
- &:last-child {
-
- :deep(.t-cell:after) {
- display: none;
- }
+ :deep(.t-cell__title) {
+ flex: 0 0 4.5rem;
}
- .cell {
- padding: .5rem;
-
- :deep(.t-cell__title) {
- flex: 1 1 0;
- min-width: 0;
- }
-
- :deep(.t-cell__title-text) {
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- }
-
- :deep(.t-cell__note) {
- flex: 0 0 auto;
- white-space: nowrap;
- }
-
- .avatar {
- width: 3.5rem;
- height: 3.5rem;
- }
+ :deep(.t-cell__note) {
+ flex: 1 1 0;
+ min-width: 0;
+ overflow: hidden;
+ text-align: right;
+ text-overflow: ellipsis;
+ white-space: nowrap;
}
+ }
- .delete {
- height: 100%;
- padding: 0 1rem;
- border-radius: 0;
+ .record-list {
+
+ .item {
+
+ &:last-child {
+
+ :deep(.t-cell:after) {
+ display: none;
+ }
+ }
+
+ .cell {
+ padding: .5rem;
+
+ :deep(.t-cell__title) {
+ flex: 1 1 0;
+ min-width: 0;
+ }
+
+ :deep(.t-cell__title-text) {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ }
+
+ :deep(.t-cell__note) {
+ flex: 0 0 auto;
+ white-space: nowrap;
+ }
+
+ .avatar {
+ width: 3.5rem;
+ height: 3.5rem;
+ }
+ }
+
+ .delete {
+ height: 100%;
+ padding: 0 1rem;
+ border-radius: 0;
+ }
}
}
}