diff --git a/src/components/custom/tenant-select.vue b/src/components/custom/tenant-select.vue
index 84b846ae..4fd9cc3c 100644
--- a/src/components/custom/tenant-select.vue
+++ b/src/components/custom/tenant-select.vue
@@ -1,17 +1,60 @@
diff --git a/src/hooks/common/form.ts b/src/hooks/common/form.ts
index bc099560..f6296a00 100644
--- a/src/hooks/common/form.ts
+++ b/src/hooks/common/form.ts
@@ -9,7 +9,7 @@ export function useFormRules() {
userName: {
pattern: REG_USER_NAME,
message: $t('form.userName.invalid'),
- trigger: 'change'
+ trigger: ['change', 'blur']
},
phone: {
pattern: REG_PHONE,
@@ -19,7 +19,7 @@ export function useFormRules() {
pwd: {
pattern: REG_PWD,
message: $t('form.pwd.invalid'),
- trigger: 'change'
+ trigger: ['change', 'blur']
},
code: {
pattern: REG_CODE_SIX,
diff --git a/src/layouts/modules/global-header/index.vue b/src/layouts/modules/global-header/index.vue
index 093c2154..139aa950 100644
--- a/src/layouts/modules/global-header/index.vue
+++ b/src/layouts/modules/global-header/index.vue
@@ -48,7 +48,7 @@ watch(tenantId, async () => {
-
+
({
+ url: '/system/tenant/dynamic/clear',
+ method: 'get'
+ });
+}
diff --git a/src/views/_builtin/login/modules/pwd-login.vue b/src/views/_builtin/login/modules/pwd-login.vue
index c43855dd..02b2ca99 100644
--- a/src/views/_builtin/login/modules/pwd-login.vue
+++ b/src/views/_builtin/login/modules/pwd-login.vue
@@ -3,14 +3,12 @@ import { computed, reactive, ref } from 'vue';
import type { SelectOption } from 'naive-ui';
import { useLoading } from '@sa/hooks';
import { fetchCaptchaCode, fetchTenantList } from '@/service/api';
-// import { fetchGetConfigDetail } from '@/service/api/system/config';
import { fetchSocialAuthBinding } from '@/service/api/system';
import { useAuthStore } from '@/store/modules/auth';
import { useRouterPush } from '@/hooks/common/router';
import { useFormRules, useNaiveForm } from '@/hooks/common/form';
import { localStg } from '@/utils/storage';
import { $t } from '@/locales';
-
defineOptions({
name: 'PwdLogin'
});
@@ -19,12 +17,15 @@ const authStore = useAuthStore();
const { toggleLoginModule } = useRouterPush();
const { formRef, validate } = useNaiveForm();
const { loading: codeLoading, startLoading: startCodeLoading, endLoading: endCodeLoading } = useLoading();
+const { loading: tenantLoading, startLoading: startTenantLoading, endLoading: endTenantLoading } = useLoading();
const codeUrl = ref();
const captchaEnabled = ref(false);
-const tenantEnabled = ref(false);
const registerEnabled = ref(false);
const remberMe = ref(false);
+
+const tenantEnabled = ref(false);
+
const tenantOption = ref([]);
const model: Api.Auth.PwdLoginForm = reactive({
@@ -32,7 +33,6 @@ const model: Api.Auth.PwdLoginForm = reactive({
username: '',
password: ''
});
-
type RuleKey = Extract;
const rules = computed>(() => {
@@ -41,13 +41,28 @@ const rules = computed>(() => {
const loginRules: Record = {
username: [...formRules.userName, { required: true }],
- password: [...formRules.pwd, { required: true }],
+ password: [createRequiredRule($t('form.pwd.required'))],
code: captchaEnabled.value ? [createRequiredRule($t('form.code.required'))] : [],
tenantId: tenantEnabled.value ? formRules.tenantId : []
};
return loginRules;
});
+async function handleFetchTenantList() {
+ startTenantLoading();
+ const { data, error } = await fetchTenantList();
+ if (error) return;
+ tenantEnabled.value = data.tenantEnabled;
+ tenantOption.value = data.voList.map(tenant => {
+ return {
+ label: tenant.companyName,
+ value: tenant.tenantId
+ };
+ });
+ endTenantLoading();
+}
+
+handleFetchTenantList();
async function handleSubmit() {
await validate();
@@ -66,20 +81,6 @@ async function handleSubmit() {
}
}
-async function handleFetchTenantList() {
- const { data, error } = await fetchTenantList();
- if (error) return;
- tenantEnabled.value = data.tenantEnabled;
- tenantOption.value = data.voList.map(tenant => {
- return {
- label: tenant.companyName,
- value: tenant.tenantId
- };
- });
-}
-
-handleFetchTenantList();
-
async function handleFetchCaptchaCode() {
startCodeLoading();
const { data, error } = await fetchCaptchaCode();
@@ -121,8 +122,14 @@ async function handleSocialLogin(type: Api.System.SocialSource) {
-
-
+
+
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 2d8e5dbd..d2dd4008 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -1,7 +1,46 @@
-
+
-
+
+
+ {{ $t('page.home.branchDesc') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+