修复BUG: 修复系统配置在登录页初始会为空bug

pull/60/head
李强 2022-05-28 09:56:22 +08:00
parent 9e5638bea3
commit 7cf8aca29a
3 changed files with 28 additions and 13 deletions

View File

@ -1,9 +1,9 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from django.conf import settings
from django.db import ProgrammingError
from django.db import connection
def is_tenants_mode():
"""
判断是否为租户模式
@ -35,7 +35,7 @@ def _get_all_system_config():
system_config_obj = SystemConfig.objects.filter(status=True, parent_id__isnull=False).values(
'parent__key', 'key', 'value', 'form_item_type').order_by('sort')
for system_config in system_config_obj:
value = system_config.get('value') or ''
value = system_config.get('value', '')
if value and system_config.get('form_item_type') == 7:
value = value[0].get('url')
data[f"{system_config.get('parent__key')}.{system_config.get('key')}"] = value

View File

@ -35,12 +35,13 @@ export default {
*/
async load ({ state, dispatch, commit }) {
// store 赋值
state.data = await dispatch('d2admin/db/get', {
const data = await dispatch('d2admin/db/get', {
dbName: 'sys',
path: 'settings.init',
defaultValue: {},
user: true
}, { root: true })
commit('set', data)
}
},
mutations: {
@ -52,6 +53,16 @@ export default {
*/
async get (state, key, value) {
return state[key]
},
/**
* @description 赋值系统配置
* @param {Object} state state
* @param {Object} value active
*/
async set (state, value) {
state.data = value
state.keepRecord = value['login.keep_record']
return state.data
}
}
}

View File

@ -3,7 +3,7 @@
</template>
<script>
import { mapActions } from 'vuex'
import { mapActions, mapState } from 'vuex'
import localeMixin from '@/locales/mixin.js'
import * as api from '@/views/system/login/api'
@ -15,15 +15,6 @@ export default {
},
data () {
return {
siteName: this.systemConfig('login.site_name'), //
siteLogo: this.systemConfig('login.site_logo') || require('./image/dvadmin.png'), // logo
loginBackground: this.systemConfig('login.login_background') || require('./image/bg.jpg'), //
copyright: this.systemConfig('login.copyright'), //
keepRecord: this.systemConfig('login.keep_record'), //
helpUrl: this.systemConfig('login.help_url'), //
privacyUrl: this.systemConfig('login.privacy_url'), //
clauseUrl: this.systemConfig('login.clause_url'), //
captchaState: this.systemConfig('base.captcha_state') || true, //
processTitle: process.env.VUE_APP_TITLE || 'D2Admin',
backgroundImage: 'url(' + this.loginBackground + ')',
//
@ -67,6 +58,19 @@ export default {
]
}
},
computed: {
...mapState('d2admin', {
siteLogo: state => state.settings.data['login.site_logo'] || require('./image/dvadmin.png'), // logo
keepRecord: state => state.settings.data['login.keep_record'],
siteName: state => state.settings.data['login.site_name'], //
copyright: state => state.settings.data['login.copyright'],
loginBackground: state => state.settings.data['login.login_background'] || require('./image/bg.jpg'), //
helpUrl: state => state.settings.data['login.help_url'], //
privacyUrl: state => state.settings.data['login.privacy_url'], //
clauseUrl: state => state.settings.data['login.clause_url'], //
captchaState: state => state.settings.data['base.captcha_state'] !== undefined ? state.settings.data['base.captcha_state'] : true //
})
},
mounted () {
},
beforeDestroy () {