3
0
Fork 0

feat(navBar): 移除语言选择下拉框

This commit is contained in:
woody 2025-07-08 11:38:51 +08:00
parent 3c70e9390c
commit db651039dc
2 changed files with 67 additions and 100 deletions

View File

@ -1,6 +1,6 @@
/* /*
* @Descripttion: * @Descripttion:
* @version: * @version:
* @Author: kBank * @Author: kBank
* @Date: 2022-10-24 10:45:39 * @Date: 2022-10-24 10:45:39
*/ */
@ -17,7 +17,7 @@ export function login(data) {
export function getInfo() { export function getInfo() {
return request({ return request({
url: '/system/manage/user/get-info', url: '/system/manage/user/get-info',
method: 'get', method: 'get'
}) })
} }
// 管理员是否登录短信验证 // 管理员是否登录短信验证
@ -63,14 +63,14 @@ export function userCountryList(params) {
export function changeList(id) { export function changeList(id) {
return request({ return request({
url: '/system/manage/user-country/change/' + id, url: '/system/manage/user-country/change/' + id,
method: 'post', method: 'post'
}) })
} }
// 切换系统类型 // 切换系统类型
export function changeSystemList(id) { export function changeSystemList(id) {
return request({ return request({
url: '/system/manage/system-type/change/' + id, url: '/system/manage/system-type/change/' + id,
method: 'post', method: 'post'
}) })
} }
// 切换语言 // 切换语言
@ -81,11 +81,3 @@ export function languages(params) {
params params
}) })
} }
// 切换语言
export function systemTypeList(params) {
return request({
url: '/system/manage/system-type/list',
method: 'get',
params
})
}

View File

@ -5,7 +5,7 @@
<breadcrumb class="breadcrumb-container" /> <breadcrumb class="breadcrumb-container" />
<div class="right-menu"> <div class="right-menu">
<div class="check" v-if="user.userType != 9"> <div v-if="user.userType != 9" class="check">
<!-- <el-select v-model="languageItem" <!-- <el-select v-model="languageItem"
@change="setLanguage" @change="setLanguage"
popper-class="selectCls" popper-class="selectCls"
@ -16,32 +16,19 @@
:value="item.value"> :value="item.value">
</el-option> </el-option>
</el-select> --> </el-select> -->
<el-select
v-model="systemItem"
@change="setSystem"
popper-class="selectCls"
size="mini"
>
<el-option
v-for="item in systemTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
<el-dropdown trigger="click" placement="bottom-start"> <el-dropdown trigger="click" placement="bottom-start">
<div class="kuang"> <div class="kuang">
<div class="dropdown_i"> <div class="dropdown_i">
<img :src="ruleForm.nationalFlag2" alt="" /> <img :src="ruleForm.nationalFlag2" alt="">
<div>{{ ruleForm.name }}</div> <div>{{ ruleForm.name }}</div>
</div> </div>
<i slot="suffix" class="el-icon-arrow-down"></i> <i slot="suffix" class="el-icon-arrow-down" />
</div> </div>
<el-dropdown-menu slot="dropdown" class="dropdown-container"> <el-dropdown-menu slot="dropdown" class="dropdown-container">
<el-dropdown-item v-for="(item, i) in countryList" :key="i"> <el-dropdown-item v-for="(item, i) in countryList" :key="i">
<div class="dropdown_i" @click="handleClick(item)"> <div class="dropdown_i" @click="handleClick(item)">
<img :src="item.nationalFlag2" alt="" /> <img :src="item.nationalFlag2" alt="">
<div>{{ item.name }}</div> <div>{{ item.name }}</div>
</div> </div>
</el-dropdown-item> </el-dropdown-item>
@ -71,114 +58,102 @@
</template> </template>
<script> <script>
import { mapGetters } from "vuex"; import { mapGetters } from 'vuex'
import Breadcrumb from "@/components/Breadcrumb"; import Breadcrumb from '@/components/Breadcrumb'
import Hamburger from "@/components/Hamburger"; import Hamburger from '@/components/Hamburger'
import { Message } from "element-ui"; import { Message } from 'element-ui'
import { import {
userCountryList, userCountryList,
changeList, changeList,
languages, languages,
changeSystemList, changeSystemList
systemTypeList, } from '@/api/user'
} from "@/api/user";
export default { export default {
components: { components: {
Breadcrumb, Breadcrumb,
Hamburger, Hamburger
}, },
computed: { computed: {
...mapGetters(["sidebar", "avatar", "user"]), ...mapGetters(['sidebar', 'avatar', 'user'])
}, },
data() { data() {
return { return {
countryList: [], countryList: [],
ruleForm: { ruleForm: {
pkCountry: "", pkCountry: '',
nationalFlag2: "", nationalFlag2: '',
name: "", name: ''
}, },
languageList: [], languageList: [],
languageItem: 0, languageItem: 0,
systemItem: "", systemItem: ''
systemTypeList: [], }
};
}, },
mounted() { mounted() {
let that = this; const that = this
setTimeout(() => { setTimeout(() => {
// //
that.getJScountry(); that.getJScountry()
// //
that.getLanguages(); that.getLanguages()
that.getSystem(); that.getSystem()
}, 10); }, 10)
this.systemItem = localStorage.getItem("systemItem") || 2; this.systemItem = localStorage.getItem('systemItem') || 2
}, },
methods: { methods: {
getJScountry() { getJScountry() {
userCountryList().then((res) => { userCountryList().then((res) => {
this.countryList = res.data; this.countryList = res.data
this.ruleForm.pkCountry = this.user.pkCountry; this.ruleForm.pkCountry = this.user.pkCountry
this.countryList.forEach((item) => { this.countryList.forEach((item) => {
if (item.pkCountry == this.ruleForm.pkCountry) { if (item.pkCountry == this.ruleForm.pkCountry) {
this.ruleForm.nationalFlag2 = item.nationalFlag2; this.ruleForm.nationalFlag2 = item.nationalFlag2
this.ruleForm.name = item.name; this.ruleForm.name = item.name
} }
}); })
}); })
},
getSystem() {
systemTypeList().then((res) => {
res.data.forEach((item) => {
if (item.value == localStorage.getItem("systemItem")) {
this.systemItem = item.value;
}
});
this.systemTypeList = res.data;
});
}, },
getLanguages() { getLanguages() {
languages().then((res) => { languages().then((res) => {
res.data.forEach((item) => { res.data.forEach((item) => {
if (item.field == localStorage.getItem("lang")) { if (item.field == localStorage.getItem('lang')) {
this.languageItem = item.value; this.languageItem = item.value
} }
}); })
if ( if (
localStorage.getItem("lang") == undefined || localStorage.getItem('lang') == undefined ||
localStorage.getItem("lang") == "undefined" localStorage.getItem('lang') == 'undefined'
) { ) {
localStorage.setItem("lang", "zh-CN"); localStorage.setItem('lang', 'zh-CN')
} }
this.languageList = res.data; this.languageList = res.data
}); })
}, },
handleClick(item) { handleClick(item) {
this.ruleForm.nationalFlag2 = item.nationalFlag2; this.ruleForm.nationalFlag2 = item.nationalFlag2
this.ruleForm.name = item.name; this.ruleForm.name = item.name
changeList(item.pkCountry).then((res) => { changeList(item.pkCountry).then((res) => {
this.$store.dispatch("user/getInfo").then((response) => { this.$store.dispatch('user/getInfo').then((response) => {
this.$router.go(0); this.$router.go(0)
}); })
}); })
}, },
changeSelection(e) {}, changeSelection(e) {},
setSystem(e) { setSystem(e) {
console.log(e, "eeee"); console.log(e, 'eeee')
this.systemItem = e; this.systemItem = e
changeSystemList(e).then((res) => { changeSystemList(e).then((res) => {
if (res.code == 200) { if (res.code == 200) {
Message({ Message({
message: res.msg, message: res.msg,
type: "success", type: 'success'
}); })
localStorage.setItem("systemItem", e); localStorage.setItem('systemItem', e)
location.reload(); location.reload()
} }
}); })
}, },
// setLanguage(e) { // setLanguage(e) {
// this.languageList.forEach((item) => { // this.languageList.forEach((item) => {
@ -197,20 +172,20 @@ export default {
// this.$router.push(`/login?redirect=${this.$route.fullPath}`) // this.$router.push(`/login?redirect=${this.$route.fullPath}`)
// }, // },
async logout() { async logout() {
this.$confirm("确定注销并退出系统吗?", this.$t("w_0034"), { this.$confirm('确定注销并退出系统吗?', this.$t('w_0034'), {
confirmButtonText: this.$t("w_0035"), confirmButtonText: this.$t('w_0035'),
cancelButtonText: this.$t("ENU_P_TYPE0"), cancelButtonText: this.$t('ENU_P_TYPE0'),
type: "warning", type: 'warning'
}) })
.then(() => { .then(() => {
this.$store.dispatch("user/LogOut").then(() => { this.$store.dispatch('user/LogOut').then(() => {
this.$router.push(`/login?redirect=${this.$route.fullPath}`); this.$router.push(`/login?redirect=${this.$route.fullPath}`)
}); })
}) })
.catch(() => {}); .catch(() => {})
}, }
}, }
}; }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>