569 lines
21 KiB
Vue
569 lines
21 KiB
Vue
<template>
|
|
<div class="navbar">
|
|
<hamburger id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" />
|
|
<!-- 搜索 -->
|
|
<!-- <search2 id="header-search"/> -->
|
|
<!-- <breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!topNav"/> -->
|
|
<div class="user-restpwd-notice" v-if="needRstPwd"><i class="el-icon-warning-outline" /> 您当前密码不安全,请立即<span style="color:blue" @click="goToRstPwd">【修改密码】</span>!</div>
|
|
<div class="user-restpwd-notice" v-if="needRecharge&&$store.getters.ownerSiteCode != '88888'"><i class="el-icon-warning-outline" /> 网点当前余额不足,请立即<span style="color:blue" @click="goToRecharge">【充值】</span>!</div>
|
|
<div class="user-restpwd-notice" v-if="needRechargeWarning&&$store.getters.ownerSiteCode != '88888'"><i class="el-icon-warning-outline" /> 网点当前余额低于预警值,请安排<span style="color:blue" @click="goToRecharge">【充值】</span>!</div>
|
|
|
|
<!-- <top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/> -->
|
|
<!-- <top-nav id="topmenu-container" class="topmenu-container" /> -->
|
|
<div style="line-height: 46px;cursor: pointer;height: 100%;float: left; position: relative;">
|
|
<template v-if="device!=='mobile'">
|
|
<!-- <screenfull id="screenfull" class="right-menu-item hover-effect" /> -->
|
|
|
|
<!-- <el-tooltip content="布局大小" effect="dark" placement="bottom">
|
|
<size-select id="size-select" class="right-menu-item hover-effect" />
|
|
</el-tooltip> -->
|
|
|
|
</template>
|
|
</div>
|
|
<div style="line-height: 46px;cursor: pointer;height: 100%;float: left;max-width: 70%;min-width: 50%; position: relative;">
|
|
<top-tags-view class="topmenu-container" style="left:0px;" />
|
|
</div>
|
|
|
|
<div class="right-menu">
|
|
|
|
<!-- 在线客服 -->
|
|
<div class="right-menu-item hover-effect" style="padding: 0 20px;" @click="showOnlineKefu">
|
|
<span class="kf-agent" title="在线客服">
|
|
<img src="" alt="" style="display: none;">
|
|
</span>
|
|
</div>
|
|
|
|
|
|
<!-- 消息通知 -->
|
|
<div class="right-menu-item hover-effect" style="padding: 0 20px;">
|
|
<top-notice/>
|
|
</div>
|
|
|
|
|
|
<!-- 国际化 -->
|
|
<el-dropdown class="right-menu-item hover-effect" trigger="click">
|
|
<div class="avatar-wrapper" >
|
|
<div style="display: inline-flex;line-height: 20px;padding: 5px;text-align: center; min-width: 35px; border-radius: 30px;" slot="reference">
|
|
<div>
|
|
<svg-icon icon-class="lang" style="width:20px" />
|
|
<!-- <img v-if="i18nLang=='zh'" style="width:20px" src="../../assets/lang_logo/zh-cn.png" /> -->
|
|
<!-- <img v-if="i18nLang=='en'" style="width:20px" src="../../assets/lang_logo/en.png" /> -->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<el-dropdown-menu slot="dropdown" >
|
|
<el-dropdown-item @click.native="changeLanguage('zh-CN')">
|
|
<span v-if="i18nLang=='zh-CN'" style="display:block;color: red;">{{ $t('locale.zh-CN') }}</span>
|
|
<span v-else style="display:block;">{{ $t('locale.zh-CN') }}</span>
|
|
</el-dropdown-item>
|
|
<el-dropdown-item @click.native="changeLanguage('en')">
|
|
<span v-if="i18nLang=='en'" style="display:block;color: red;">{{ $t('locale.en') }}</span>
|
|
<span v-else style="display:block;">{{ $t('locale.en') }}</span>
|
|
</el-dropdown-item>
|
|
<el-dropdown-item @click.native="changeLanguage('vi')">
|
|
<span v-if="i18nLang=='vi'" style="display:block;color: red;">{{ $t('locale.vi') }}</span>
|
|
<span v-else style="display:block;">{{ $t('locale.vi') }}</span>
|
|
</el-dropdown-item>
|
|
</el-dropdown-menu>
|
|
</el-dropdown>
|
|
|
|
<el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
|
|
<div class="avatar-wrapper">
|
|
<div style="display: inline-flex;line-height: 25px;">
|
|
<div><img :src="avatar" class="user-avatar"></div>
|
|
<div style="font-size:12px;color: black;">{{empName}}({{ownerSiteName}})</div>
|
|
</div>
|
|
<i class="el-icon-caret-bottom" />
|
|
</div>
|
|
<el-dropdown-menu slot="dropdown">
|
|
<!-- <el-dropdown-item @click.native="showKfView">
|
|
<span>切换登录网点</span>
|
|
</el-dropdown-item> -->
|
|
<el-dropdown-item @click.native="showAppView">
|
|
<span>下载员工APP</span>
|
|
</el-dropdown-item>
|
|
<el-dropdown-item>
|
|
<router-link to="/user/profile">个人信息</router-link>
|
|
</el-dropdown-item>
|
|
<!-- <el-dropdown-item @click.native="setting = true">
|
|
<span>布局设置</span>
|
|
</el-dropdown-item> -->
|
|
<!-- <el-dropdown-item @click.native="showKfView">
|
|
<span>联系客服</span>
|
|
</el-dropdown-item> -->
|
|
<el-dropdown-item divided @click.native="logout">
|
|
<span>退出登录</span>
|
|
</el-dropdown-item>
|
|
</el-dropdown-menu>
|
|
</el-dropdown>
|
|
</div>
|
|
|
|
<div >
|
|
<!-- 在线客服 -->
|
|
<!-- <div style="position:fixed; top:50px;right:0px;cursor:pointer" @click="showOnlineKefu">
|
|
<span class="kf-agent" title="在线客服">
|
|
<img src="" alt="" style="display: none;">
|
|
</span>
|
|
</div> -->
|
|
|
|
<el-dialog title="在线客服" :visible.sync="openOnlineKefu" width="80%" class="kf-panel" append-to-body>
|
|
<div style="padding:0px;height:500px">
|
|
<iframe frameborder="0" :src="rlKefuURL" width="100%" height="100%" />
|
|
</div>
|
|
</el-dialog>
|
|
</div>
|
|
|
|
<div class="kf_dialog_center">
|
|
<el-dialog title="联系客服" :visible.sync="openKfView" width="400px" append-to-body>
|
|
<div style="padding:30px">
|
|
<img :src="zoneConfig.kfQrImage" width="100%" draggable="false"/>
|
|
<div style="text-align: center;">打开微信扫一扫 添加专属客服</div>
|
|
<div style="text-align: center" >帮助您更全面的了解系统功能</div>
|
|
</div>
|
|
</el-dialog>
|
|
</div>
|
|
|
|
<div class="kf_dialog_center">
|
|
<el-dialog title="下载探路国际速运APP" :visible.sync="openAppView" width="400px" append-to-body>
|
|
<div style="padding:0px;margin-bottom:30px">
|
|
<div style="width:100%;text-align:center;margin-bottom: 30px;">
|
|
<img src="@/assets/logo/short_logo.png" width="60px" draggable="false"/>
|
|
<div>扫二维码下载 探路国际速运APP</div>
|
|
</div>
|
|
<div style="width: 100%;height: 100%;text-align:center;">
|
|
<QrCodeImage width="220" height="220" style="width: 220px;margin:auto" id="shareQrCodeImage" :text="appUrl" />
|
|
</div>
|
|
</div>
|
|
</el-dialog>
|
|
</div>
|
|
|
|
<el-dialog title="当前密码不安全,请立即修改密码" :visible.sync="openRstPwd" width="40%" v-dialogDrag append-to-body>
|
|
<resetPwd :user="user" @on-success="onRstPwdSuccess" @on-close="onRstPwdClose" />
|
|
</el-dialog>
|
|
|
|
<el-dialog title="预充值登记" :visible.sync="openPrepaidRecharge" width="60%" v-dialogDrag append-to-body>
|
|
<SitePrepaidRechargeForm @on-changed="onPrepaidRechargeSuccess" @on-cancel="onPrepaidRechargeClose"></SitePrepaidRechargeForm>
|
|
</el-dialog>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import { mapGetters } from 'vuex'
|
|
import Breadcrumb from '@/components/Breadcrumb'
|
|
import TopNav from '@/components/TopNav'
|
|
import Hamburger from '@/components/Hamburger'
|
|
import Screenfull from '@/components/Screenfull'
|
|
import SizeSelect from '@/components/SizeSelect'
|
|
import Search from '@/components/HeaderSearch'
|
|
import Search2 from '@/components/HeaderSearch/index2'
|
|
import TopTagsView from '../components/TopTagsView'
|
|
import TopNotice from '../components/TopNotice'
|
|
import Cookies from 'js-cookie'
|
|
import { getI18nMessages } from "@/api/common"
|
|
import { checkIsInitPassword,getUserProfile } from "@/api/system/user"
|
|
import { getSiteBalance } from "@/api/emis/emisSiteAccount"
|
|
|
|
import SitePrepaidRechargeForm from '@/views/emis/emisSitePrepaidRecharge/emisSitePrepaidRechargeForm';
|
|
|
|
|
|
import resetPwd from "@/views/system/user/profile/resetPwd";
|
|
import { getLastAppVersion,getKefuSsoToken } from "@/api/emis/emisCommon"
|
|
|
|
import QrCodeImage from '@/components/QrCodeImage'
|
|
|
|
var qimoClientId = null;
|
|
|
|
export default {
|
|
components: {
|
|
Breadcrumb,
|
|
TopNav,
|
|
Hamburger,
|
|
Screenfull,
|
|
SizeSelect,
|
|
Search,
|
|
Search2,
|
|
TopTagsView,
|
|
TopNotice,
|
|
resetPwd,
|
|
QrCodeImage,
|
|
SitePrepaidRechargeForm
|
|
},
|
|
data() {
|
|
return {
|
|
openKfView:false,
|
|
openAppView:false,
|
|
timer: undefined,
|
|
needRstPwd:false,
|
|
openRstPwd:false,
|
|
|
|
rlKefuURL:null,
|
|
|
|
openOnlineKefu:false,
|
|
|
|
needRecharge:false,
|
|
needRechargeWarning:false,
|
|
|
|
openPrepaidRecharge:false,
|
|
|
|
appUrl:null,
|
|
user:{},
|
|
}
|
|
},
|
|
computed: {
|
|
...mapGetters([
|
|
'sidebar',
|
|
'avatar',
|
|
'nickName',
|
|
'empCode',
|
|
'empName',
|
|
'ownerSiteName',
|
|
'device'
|
|
]),
|
|
zoneConfig: {
|
|
get() {
|
|
return this.$store.state.zoneConfig;
|
|
},
|
|
},
|
|
setting: {
|
|
get() {
|
|
return this.$store.state.settings.showSettings
|
|
},
|
|
set(val) {
|
|
this.$store.dispatch('settings/changeSetting', {
|
|
key: 'showSettings',
|
|
value: val
|
|
})
|
|
}
|
|
},
|
|
|
|
topNav: {
|
|
get() {
|
|
return this.$store.state.settings.topNav
|
|
}
|
|
},
|
|
|
|
i18nLang:{
|
|
get() {
|
|
return this.$i18n.locale;
|
|
}
|
|
}
|
|
},
|
|
mounted() {
|
|
this.initKFClient();
|
|
this.checkIsNeedRstPwd();
|
|
this.checkSiteBalance();
|
|
},
|
|
methods: {
|
|
goToRstPwd(){
|
|
getUserProfile().then(response => {
|
|
this.user = response.data;
|
|
this.openRstPwd=true;
|
|
});
|
|
},
|
|
initOnlineKefu(){
|
|
getKefuSsoToken().then(res=>{
|
|
if(res.code==200){
|
|
this.rlKefuURL="https://ykf.7moor.com?token="+res.data;
|
|
}else{
|
|
// this.$modal.msgError("token fail");
|
|
}
|
|
}).catch(error => {
|
|
this.$modal.msgError(error);
|
|
});
|
|
},
|
|
showOnlineKefu(){
|
|
this.initOnlineKefu();
|
|
this.openOnlineKefu=true;
|
|
},
|
|
goToRecharge(){
|
|
this.openPrepaidRecharge=true;
|
|
// /fAZrq2/PrepaidRechargeRegister
|
|
},
|
|
// 初始化客服
|
|
initKFClient(){
|
|
// qimoClientId = {userId: this.empCode, nickName:this.empName,agent:'8000',customField: {}, priority: false}
|
|
// console.log(qimoClientId);
|
|
// this.insertJsScript('https://ykf-weixin01.7moor.com/javascripts/7moorInit.js?accessId=0c6a3ec0-020b-11ef-a016-bf340ef083f1&autoShow=true&language=ZHCN');
|
|
},
|
|
toggleSideBar() {
|
|
this.$store.dispatch('app/toggleSideBar')
|
|
},
|
|
// 检查弱密码
|
|
checkIsNeedRstPwd(){
|
|
checkIsInitPassword().then(res=>{
|
|
if(res.code==200){
|
|
if(res.data=="0"){
|
|
this.needRstPwd=false;
|
|
}else{
|
|
this.needRstPwd=true;
|
|
this.openRstPwd=true;
|
|
}
|
|
}
|
|
}).catch(error => {
|
|
});
|
|
},
|
|
// 检查弱密码
|
|
checkSiteBalance(){
|
|
getSiteBalance().then(res=>{
|
|
if(res.code==200){
|
|
let balanceItem = res.data;
|
|
if(balanceItem.confirmMoney <= balanceItem.closeMoney){
|
|
this.needRecharge=true;
|
|
}
|
|
else if(balanceItem.confirmMoney <= balanceItem.watchMoney){
|
|
this.needRechargeWarning = true;
|
|
}
|
|
}
|
|
}).catch(error => {
|
|
});
|
|
},
|
|
onRstPwdSuccess(){
|
|
this.needRstPwd=false;
|
|
this.openRstPwd=false;
|
|
},
|
|
onRstPwdClose(){
|
|
this.openRstPwd=false;
|
|
},
|
|
onPrepaidRechargeSuccess(){
|
|
this.openPrepaidRecharge=false;
|
|
},
|
|
onPrepaidRechargeClose(){
|
|
this.openPrepaidRecharge=false;
|
|
},
|
|
async logout() {
|
|
this.$confirm('确定注销并退出系统吗?', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning'
|
|
}).then(() => {
|
|
this.$store.dispatch('LogOut').then(() => {
|
|
// location.href = '/index';
|
|
let indexUrl=this.$store.state.permission.indexPage;
|
|
location.href = indexUrl;
|
|
})
|
|
}).catch(() => {});
|
|
},
|
|
async changeLanguage(locale) {
|
|
localStorage.setItem('locale', locale);
|
|
this.$i18n.locale = locale;
|
|
let language = this.$i18n.locale;
|
|
const res = await getI18nMessages(language);
|
|
if(res.code == 200){
|
|
localStorage.setItem("transLang_"+language, JSON.stringify(res.data));
|
|
let oMessages=this.$i18n.getLocaleMessage(language);
|
|
const newMessages = Object.assign(oMessages, res.data)
|
|
this.$i18n.setLocaleMessage(language, newMessages)
|
|
}
|
|
|
|
},
|
|
// key 点的形式转为 json数据
|
|
cvtDataToI18nData(serverDataStr) {
|
|
var serverData = serverDataStr;
|
|
var clientData = {};
|
|
for (var i in serverData) {
|
|
clientData = {};
|
|
var lanData = serverData[i].resourceMap;
|
|
for (var key in lanData) {
|
|
//遍历json对象的每个key/value对,p为key
|
|
var keyArr = key.split(".");
|
|
var lanMsg = lanData[key];
|
|
var itemObj = {};
|
|
for (var j = keyArr.length - 1; j >= 0; j--) {
|
|
var itemKey = keyArr[j];
|
|
var obj = {};
|
|
if (j == keyArr.length - 1) {
|
|
obj[itemKey] = lanMsg;
|
|
} else {
|
|
obj[itemKey] = itemObj;
|
|
}
|
|
itemObj = obj;
|
|
}
|
|
// this.mergeToJson(itemObj, clientData[lanCode]);
|
|
this.mergeToJson(itemObj, clientData);
|
|
}
|
|
}
|
|
return clientData;
|
|
},
|
|
mergeToJson(source, target) {
|
|
for (var key in source) {
|
|
if (target[key]) {
|
|
return this.mergeToJson(source[key], target[key]);
|
|
} else {
|
|
target[key] = source[key];
|
|
}
|
|
}
|
|
return target;
|
|
},
|
|
showKfView(){
|
|
this.openKfView=true;
|
|
},
|
|
showAppView(){
|
|
getLastAppVersion().then(response => {
|
|
const appVersion = response.data;
|
|
this.appUrl=appVersion.apkUrl;
|
|
// new QRCode('qrcode',{
|
|
// width:300,
|
|
// height: 300,
|
|
// text: appVersion.apkUrl
|
|
// })
|
|
});
|
|
this.openAppView=true;
|
|
},
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
.kf-panel > .el-dialog .el-dialog__body {
|
|
margin: 0px!important;
|
|
}
|
|
|
|
.kf-agent {
|
|
display: inline-block;
|
|
float: left;
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
background: url(data:image/png;base64,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) no-repeat 50% 50%;
|
|
background-size: 30px auto;
|
|
overflow: hidden
|
|
}
|
|
|
|
.kf-agent img {
|
|
width: 32px;
|
|
height: 32px;
|
|
background-color: var(--color-text-white)
|
|
}
|
|
|
|
.navbar {
|
|
height: 50px;
|
|
overflow: hidden;
|
|
position: relative;
|
|
// background: #fff;
|
|
// box-shadow: 0 1px 4px rgba(0,21,41,.08);
|
|
|
|
.hamburger-container {
|
|
line-height: 46px;
|
|
height: 100%;
|
|
float: left;
|
|
cursor: pointer;
|
|
transition: background .3s;
|
|
-webkit-tap-highlight-color:transparent;
|
|
|
|
&:hover {
|
|
background: rgba(0, 0, 0, .025)
|
|
}
|
|
}
|
|
|
|
.breadcrumb-container {
|
|
float: left;
|
|
}
|
|
|
|
.topmenu-container {
|
|
position: absolute;
|
|
left: 50px;
|
|
}
|
|
|
|
.errLog-container {
|
|
display: inline-block;
|
|
vertical-align: top;
|
|
}
|
|
|
|
.right-menu {
|
|
float: right;
|
|
// height: 100%;
|
|
// line-height: 50px;
|
|
display: flex;
|
|
flex-shrink: 0;
|
|
padding: 0 12px;
|
|
font-size: 18px;
|
|
height: 100%;
|
|
|
|
&:focus {
|
|
outline: none;
|
|
}
|
|
|
|
.right-menu-item {
|
|
// display: inline-block;
|
|
// padding: 0 8px;
|
|
// height: 100%;
|
|
// font-size: 18px;
|
|
// color: #5a5e66;
|
|
// vertical-align: text-bottom;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
height: 100%;
|
|
padding: 0 12px;
|
|
cursor: pointer;
|
|
|
|
&.hover-effect {
|
|
cursor: pointer;
|
|
transition: background .3s;
|
|
|
|
&:hover {
|
|
background: rgba(0, 0, 0, .025)
|
|
}
|
|
}
|
|
}
|
|
|
|
.avatar-container {
|
|
margin-right: 30px;
|
|
|
|
.avatar-wrapper {
|
|
margin-top: 5px;
|
|
position: relative;
|
|
|
|
.user-avatar {
|
|
cursor: pointer;
|
|
width: 25px;
|
|
height: 25px;
|
|
border-radius: 25px;
|
|
}
|
|
|
|
.el-icon-caret-bottom {
|
|
cursor: pointer;
|
|
position: absolute;
|
|
right: -20px;
|
|
top: 10px;
|
|
font-size: 12px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.user-restpwd-notice {
|
|
line-height: 50px;
|
|
font-size: 14px;
|
|
font-weight: 600;
|
|
color: red;
|
|
cursor: pointer;
|
|
position: absolute;
|
|
top: 0px;
|
|
background: white;
|
|
z-index: 9999;
|
|
width: 70%;
|
|
padding-left: 20px;
|
|
margin-left: 14px;
|
|
}
|
|
|
|
:deep .el-dialog{
|
|
display: flex;
|
|
flex-direction: column;
|
|
margin:0 !important;
|
|
position:absolute;
|
|
top:50%;
|
|
left:50%;
|
|
transform:translate(-50%,-50%);
|
|
max-height:calc(100% - 30px);
|
|
max-width:calc(100% - 30px);
|
|
}
|
|
:deep .el-dialog .el-dialog__body{
|
|
flex:1;
|
|
overflow: auto;
|
|
}
|
|
|
|
}
|
|
</style>
|