From a66ff0e3cfa7fd65c2350af6c986eaa127c7af69 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 02 四月 2026 16:45:24 +0800
Subject: [PATCH] #登录页修复
---
rsf-design/src/views/basic-info/bas-station-area/index.vue | 64 ++++++----
rsf-design/src/views/auth/login/index.vue | 15 +-
rsf-design/src/components/core/layouts/art-header-bar/widget/ArtUserMenu.vue | 39 ++----
rsf-design/src/locales/langs/en.json | 101 ++++++----------
rsf-design/src/locales/langs/zh.json | 99 ++++++---------
rsf-design/src/assets/images/user/avatar.webp | 0
6 files changed, 141 insertions(+), 177 deletions(-)
diff --git a/rsf-design/src/assets/images/user/avatar.webp b/rsf-design/src/assets/images/user/avatar.webp
index 6d7234b..4a90bfb 100644
--- a/rsf-design/src/assets/images/user/avatar.webp
+++ b/rsf-design/src/assets/images/user/avatar.webp
Binary files differ
diff --git a/rsf-design/src/components/core/layouts/art-header-bar/widget/ArtUserMenu.vue b/rsf-design/src/components/core/layouts/art-header-bar/widget/ArtUserMenu.vue
index 6efbeec..2329355 100644
--- a/rsf-design/src/components/core/layouts/art-header-bar/widget/ArtUserMenu.vue
+++ b/rsf-design/src/components/core/layouts/art-header-bar/widget/ArtUserMenu.vue
@@ -27,24 +27,12 @@
/>
<div class="w-[calc(100%-60px)] h-full">
<span class="block text-sm font-medium text-g-800 truncate">{{
- userInfo.userName
+ displayNickname
}}</span>
- <span class="block mt-0.5 text-xs text-g-500 truncate">{{ userInfo.email }}</span>
+ <span class="block mt-0.5 text-xs text-g-500 truncate">{{ displaySubTitle }}</span>
</div>
</div>
<ul class="py-4 mt-3 border-t border-g-300/80">
- <li class="btn-item" @click="goPage('/system/user-center')">
- <ArtSvgIcon icon="ri:user-3-line" />
- <span>{{ $t('topBar.user.userCenter') }}</span>
- </li>
- <li class="btn-item" @click="toDocs()">
- <ArtSvgIcon icon="ri:book-2-line" />
- <span>{{ $t('topBar.user.docs') }}</span>
- </li>
- <li class="btn-item" @click="toGithub()">
- <ArtSvgIcon icon="ri:github-line" />
- <span>{{ $t('topBar.user.github') }}</span>
- </li>
<li class="btn-item" @click="lockScreen()">
<ArtSvgIcon icon="ri:lock-line" />
<span>{{ $t('topBar.user.lockScreen') }}</span>
@@ -61,26 +49,25 @@
<script setup>
import { useI18n } from 'vue-i18n'
- import { useRouter } from 'vue-router'
import { ElMessageBox } from 'element-plus'
import { useUserStore } from '@/store/modules/user'
- import { WEB_LINKS } from '@/utils/constants'
import { mittBus } from '@/utils/sys'
defineOptions({ name: 'ArtUserMenu' })
- const router = useRouter()
const { t } = useI18n()
const userStore = useUserStore()
const { getUserInfo: userInfo } = storeToRefs(userStore)
const userMenuPopover = ref()
- const goPage = (path) => {
- router.push(path)
- }
- const toDocs = () => {
- window.open(WEB_LINKS.DOCS)
- }
- const toGithub = () => {
- window.open(WEB_LINKS.GITHUB)
- }
+ const displayNickname = computed(
+ () =>
+ userInfo.value?.nickname ||
+ userInfo.value?.nickName ||
+ userInfo.value?.realName ||
+ userInfo.value?.userName ||
+ '-'
+ )
+ const displaySubTitle = computed(
+ () => userInfo.value?.userName || userInfo.value?.email || ''
+ )
const lockScreen = () => {
mittBus.emit('openLockScreen')
}
diff --git a/rsf-design/src/locales/langs/en.json b/rsf-design/src/locales/langs/en.json
index 81d450c..f6ae9c9 100644
--- a/rsf-design/src/locales/langs/en.json
+++ b/rsf-design/src/locales/langs/en.json
@@ -113,13 +113,39 @@
"noData": "No printable data"
},
"table": {
- "index": "No.",
+ "form": {
+ "reset": "Reset",
+ "submit": "Submit"
+ },
+ "searchBar": {
+ "reset": "Reset",
+ "search": "Search",
+ "expand": "Expand",
+ "collapse": "Collapse",
+ "searchInputPlaceholder": "Please enter",
+ "searchSelectPlaceholder": "Please select"
+ },
+ "selection": "Select",
+ "sizeOptions": {
+ "small": "Compact",
+ "default": "Default",
+ "large": "Loose"
+ },
+ "column": {
+ "selection": "Select",
+ "expand": "Expand",
+ "index": "Index"
+ },
+ "index": "Index",
"unit": "Unit",
"id": "ID",
"name": "Name",
"code": "Code",
+ "keyword": "Keyword",
"status": "Status",
+ "type": "Type",
"memo": "Remark",
+ "remark": "Remark",
"createBy": "Created By",
"createTime": "Created At",
"updateBy": "Updated By",
@@ -131,7 +157,20 @@
"wcs": "WCS",
"source": "Source",
"supplier": "Supplier",
- "supplierBatch": "Supplier Batch"
+ "supplierBatch": "Supplier Batch",
+ "batch": "Batch",
+ "quantity": "Quantity",
+ "materialCode": "Material Code",
+ "materialName": "Material Name",
+ "menuType": "Menu Type",
+ "iconPreview": "Icon Preview",
+ "componentKey": "Component Key",
+ "permissionKey": "Permission Key",
+ "zebra": "Zebra",
+ "border": "Border",
+ "headerBackground": "Header BG",
+ "topLevelMenu": "Top Level Menu",
+ "emptyText": "No data"
},
"search": {
"placeholder": "Search page",
@@ -635,64 +674,6 @@
"tokenMetric": "Tokens: prompt {prompt} / completion {completion} / total {total}",
"streaming": "Streaming"
}
- },
- "table": {
- "form": {
- "reset": "Reset",
- "submit": "Submit"
- },
- "searchBar": {
- "reset": "Reset",
- "search": "Search",
- "expand": "Expand",
- "collapse": "Collapse",
- "searchInputPlaceholder": "Please enter",
- "searchSelectPlaceholder": "Please select"
- },
- "selection": "Select",
- "sizeOptions": {
- "small": "Compact",
- "default": "Default",
- "large": "Loose"
- },
- "column": {
- "selection": "Select",
- "expand": "Expand",
- "index": "Index"
- },
- "index": "Index",
- "id": "ID",
- "name": "Name",
- "code": "Code",
- "keyword": "Keyword",
- "operation": "Operation",
- "status": "Status",
- "type": "Type",
- "source": "Source",
- "supplier": "Supplier",
- "supplierBatch": "Supplier Batch",
- "memo": "Remark",
- "remark": "Remark",
- "createBy": "Created By",
- "updateBy": "Updated By",
- "updateTime": "Updated At",
- "createTime": "Created At",
- "unit": "Unit",
- "batch": "Batch",
- "quantity": "Quantity",
- "materialCode": "Material Code",
- "materialName": "Material Name",
- "wcs": "WCS",
- "menuType": "Menu Type",
- "iconPreview": "Icon Preview",
- "componentKey": "Component Key",
- "permissionKey": "Permission Key",
- "sort": "Sort",
- "zebra": "Zebra",
- "border": "Border",
- "headerBackground": "Header BG",
- "topLevelMenu": "Top Level Menu",
- "emptyText": "No data"
},
"message": {
"requestTimeoutStopped": "Request timed out and waiting has stopped",
diff --git a/rsf-design/src/locales/langs/zh.json b/rsf-design/src/locales/langs/zh.json
index 12e8965..4133832 100644
--- a/rsf-design/src/locales/langs/zh.json
+++ b/rsf-design/src/locales/langs/zh.json
@@ -113,13 +113,39 @@
"noData": "鏆傛棤鎵撳嵃鏁版嵁"
},
"table": {
+ "form": {
+ "reset": "閲嶇疆",
+ "submit": "鎻愪氦"
+ },
+ "searchBar": {
+ "reset": "閲嶇疆",
+ "search": "鏌ヨ",
+ "expand": "灞曞紑",
+ "collapse": "鏀惰捣",
+ "searchInputPlaceholder": "璇疯緭鍏�",
+ "searchSelectPlaceholder": "璇烽�夋嫨"
+ },
+ "selection": "閫夋嫨",
+ "sizeOptions": {
+ "small": "绱у噾",
+ "default": "榛樿",
+ "large": "瀹芥澗"
+ },
+ "column": {
+ "selection": "鍕鹃��",
+ "expand": "灞曞紑",
+ "index": "搴忓彿"
+ },
"index": "搴忓彿",
"unit": "鍗曚綅",
"id": "ID",
"name": "鍚嶇О",
"code": "缂栫爜",
+ "keyword": "鍏抽敭瀛�",
"status": "鐘舵��",
+ "type": "绫诲瀷",
"memo": "澶囨敞",
+ "remark": "澶囨敞",
"createBy": "鍒涘缓浜�",
"createTime": "鍒涘缓鏃堕棿",
"updateBy": "鏇存柊浜�",
@@ -131,7 +157,20 @@
"wcs": "WCS",
"source": "鏉ユ簮",
"supplier": "渚涘簲鍟�",
- "supplierBatch": "渚涘簲鍟嗘壒娆�"
+ "supplierBatch": "渚涘簲鍟嗘壒娆�",
+ "batch": "鎵规",
+ "quantity": "鏁伴噺",
+ "materialCode": "鐗╂枡缂栫爜",
+ "materialName": "鐗╂枡鍚嶇О",
+ "menuType": "鑿滃崟绫诲瀷",
+ "iconPreview": "鍥炬爣棰勮",
+ "componentKey": "缁勪欢鏍囪瘑",
+ "permissionKey": "鏉冮檺鏍囪瘑",
+ "zebra": "鏂戦┈绾�",
+ "border": "杈规",
+ "headerBackground": "琛ㄥご鑳屾櫙",
+ "topLevelMenu": "椤剁骇鑿滃崟",
+ "emptyText": "鏆傛棤鏁版嵁"
},
"search": {
"placeholder": "鎼滅储椤甸潰",
@@ -637,64 +676,6 @@
"tokenMetric": "Tokens: prompt {prompt} / completion {completion} / total {total}",
"streaming": "鐢熸垚涓�"
}
- },
- "table": {
- "form": {
- "reset": "閲嶇疆",
- "submit": "鎻愪氦"
- },
- "searchBar": {
- "reset": "閲嶇疆",
- "search": "鏌ヨ",
- "expand": "灞曞紑",
- "collapse": "鏀惰捣",
- "searchInputPlaceholder": "璇疯緭鍏�",
- "searchSelectPlaceholder": "璇烽�夋嫨"
- },
- "selection": "閫夋嫨",
- "sizeOptions": {
- "small": "绱у噾",
- "default": "榛樿",
- "large": "瀹芥澗"
- },
- "column": {
- "selection": "鍕鹃��",
- "expand": "灞曞紑",
- "index": "搴忓彿"
- },
- "index": "搴忓彿",
- "id": "ID",
- "name": "鍚嶇О",
- "code": "缂栫爜",
- "keyword": "鍏抽敭瀛�",
- "operation": "鎿嶄綔",
- "status": "鐘舵��",
- "type": "绫诲瀷",
- "source": "鏉ユ簮",
- "supplier": "渚涘簲鍟�",
- "supplierBatch": "渚涘簲鍟嗘壒娆�",
- "memo": "澶囨敞",
- "remark": "澶囨敞",
- "createBy": "鍒涘缓浜�",
- "updateBy": "鏇存柊浜�",
- "updateTime": "鏇存柊鏃堕棿",
- "createTime": "鍒涘缓鏃堕棿",
- "unit": "鍗曚綅",
- "batch": "鎵规",
- "quantity": "鏁伴噺",
- "materialCode": "鐗╂枡缂栫爜",
- "materialName": "鐗╂枡鍚嶇О",
- "wcs": "WCS",
- "menuType": "鑿滃崟绫诲瀷",
- "iconPreview": "鍥炬爣棰勮",
- "componentKey": "缁勪欢鏍囪瘑",
- "permissionKey": "鏉冮檺鏍囪瘑",
- "sort": "鎺掑簭",
- "zebra": "鏂戦┈绾�",
- "border": "杈规",
- "headerBackground": "琛ㄥご鑳屾櫙",
- "topLevelMenu": "椤剁骇鑿滃崟",
- "emptyText": "鏆傛棤鏁版嵁"
},
"message": {
"requestTimeoutStopped": "璇锋眰瓒呮椂锛屽凡鍋滄绛夊緟",
diff --git a/rsf-design/src/views/auth/login/index.vue b/rsf-design/src/views/auth/login/index.vue
index 2ed47e0..57fe948 100644
--- a/rsf-design/src/views/auth/login/index.vue
+++ b/rsf-design/src/views/auth/login/index.vue
@@ -14,6 +14,7 @@
ref="formRef"
:model="formData"
:rules="rules"
+ :validate-on-rule-change="false"
:key="formKey"
@keyup.enter="handleSubmit"
style="margin-top: 25px"
@@ -74,12 +75,12 @@
</ElButton>
</div>
- <div class="mt-5 text-sm text-gray-600">
- <span>{{ $t('login.noAccount') }}</span>
- <RouterLink class="text-theme" :to="{ name: 'Register' }">{{
- $t('login.register')
- }}</RouterLink>
- </div>
+<!-- <div class="mt-5 text-sm text-gray-600">-->
+<!-- <span>{{ $t('login.noAccount') }}</span>-->
+<!-- <RouterLink class="text-theme" :to="{ name: 'Register' }">{{-->
+<!-- $t('login.register')-->
+<!-- }}</RouterLink>-->
+<!-- </div>-->
</ElForm>
</div>
</div>
@@ -236,6 +237,8 @@
onMounted(async () => {
hydrateRememberedLogin()
await loadLoginSupports()
+ await nextTick()
+ formRef.value?.clearValidate()
})
const showLoginSuccessNotice = () => {
diff --git a/rsf-design/src/views/basic-info/bas-station-area/index.vue b/rsf-design/src/views/basic-info/bas-station-area/index.vue
index 562414f..95f6f39 100644
--- a/rsf-design/src/views/basic-info/bas-station-area/index.vue
+++ b/rsf-design/src/views/basic-info/bas-station-area/index.vue
@@ -404,7 +404,9 @@
} catch (error) {
detailDrawerVisible.value = false
detailData.value = {}
- ElMessage.error(error?.message || t('pages.basicInfo.basStationArea.messages.detailLoadFailed'))
+ ElMessage.error(
+ error?.message || t('pages.basicInfo.basStationArea.messages.detailLoadFailed')
+ )
} finally {
detailLoading.value = false
}
@@ -465,7 +467,9 @@
)
await handleShowDialog('edit', detail)
} catch (error) {
- ElMessage.error(error?.message || t('pages.basicInfo.basStationArea.messages.detailLoadFailed'))
+ ElMessage.error(
+ error?.message || t('pages.basicInfo.basStationArea.messages.detailLoadFailed')
+ )
}
}
@@ -563,39 +567,47 @@
await fetchBasStationAreaPage({
...reportQueryParams.value,
current: 1,
- pageSize: Number(pagination.total) > 0 ? Number(pagination.total) : Number(payload?.pageSize) || 20
+ pageSize:
+ Number(pagination.total) > 0 ? Number(pagination.total) : Number(payload?.pageSize) || 20
})
).records
}
- const { previewVisible, previewRows, previewMeta, handlePreviewVisibleChange, handleExport, handlePrint } =
- usePrintExportPage({
- downloadFileName: 'bas-station-area.xlsx',
- requestExport: (payload) =>
- fetchExportBasStationAreaReport(payload, {
- headers: {
- Authorization: userStore.accessToken || ''
- }
- }),
- resolvePrintRecords,
- buildPreviewRows: (records) =>
- buildBasStationAreaPrintRows(records, {
- t,
- resolveAreaLabel,
- resolveCrossZoneAreaLabel,
- resolveContainerTypeLabel,
- resolveTypeLabel,
- resolveStationAliasLabel,
- resolveUseStatusLabel
- }),
- buildPreviewMeta
- })
+ const {
+ previewVisible,
+ previewRows,
+ previewMeta,
+ handlePreviewVisibleChange,
+ handleExport,
+ handlePrint
+ } = usePrintExportPage({
+ downloadFileName: 'bas-station-area.xlsx',
+ requestExport: (payload) =>
+ fetchExportBasStationAreaReport(payload, {
+ headers: {
+ Authorization: userStore.accessToken || ''
+ }
+ }),
+ resolvePrintRecords,
+ buildPreviewRows: (records) =>
+ buildBasStationAreaPrintRows(records, {
+ t,
+ resolveAreaLabel,
+ resolveCrossZoneAreaLabel,
+ resolveContainerTypeLabel,
+ resolveTypeLabel,
+ resolveStationAliasLabel,
+ resolveUseStatusLabel
+ }),
+ buildPreviewMeta
+ })
const resolvedPreviewMeta = computed(() =>
buildBasStationAreaReportMeta({
previewMeta: previewMeta.value,
count: previewRows.value.length,
- orientation: previewMeta.value?.reportStyle?.orientation || BAS_STATION_AREA_REPORT_STYLE.orientation,
+ orientation:
+ previewMeta.value?.reportStyle?.orientation || BAS_STATION_AREA_REPORT_STYLE.orientation,
t
})
)
--
Gitblit v1.9.1