import 'babel-polyfill'
import Vue from 'vue'
import 'normalize.css/normalize.css' // A modern alternative to CSS resets
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import '@/styles/index.scss' // global css
import App from './App'
import store from './store'
import router from './router'
import '@/icons' // 引入icon文件夹下所有的svg
// 全局自定义组件
import Pagination from '@/components/pagination/index.vue'
import tabsearch from '@/components/tab-search/index.vue'
import eimage from '@/components/E-image/index.vue'
import moment from 'moment'
import Print from '@/utils/print' // 引入附件的js文件
import request from '@/utils/request'
import { setDefaultOrgPath , setDefaultOrgPathName , setStorage } from './utils/auth.js'
import VueAMap from 'vue-amap'
Vue . use ( ElementUI )
// import '@/permission' //权限控制
Vue . prototype . $userInfo = null // 用户信息
Vue . component ( 'Pagination' , Pagination )
Vue . component ( 'tab-search' , tabsearch )
Vue . component ( 'eimage' , eimage )
Vue . prototype . moment = moment
Vue . filter ( 'dateFormat' , function ( dateStr , pattern = 'YYYY-MM-DD' ) {
return moment ( dateStr ) . format ( pattern )
} )
Vue . use ( Print ) // 注册
Vue . use ( VueAMap )
VueAMap . initAMapApiLoader ( {
key : 'ccda12d8bffc72e9f1a32c599323a876' , // 此处的key,在高德开放平台申请
plugin : [ 'AMap.Scale' , 'AMap.OverView' , 'AMap.ToolBar' , 'AMap.MapType' , 'AMap.PlaceSearch' , 'AMap.Geolocation' , 'AMap.Geocoder' ] , // 此处的插件按需添加
v : '1.4.4' ,
uiVersion : '1.0'
} )
Vue . config . productionTip = false
let token = null
// let token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI4NWUwYWY0Yi1lMGJhLTQyM2UtOTIxMS1kYjI2MDg2NTgwM2YiLCJpc3MiOiJXQksiLCJleHAiOjE2OTgzODc5MTN9.iu23s5M4XCJgIvjaK3y1CAWMUTMvIFmjCIDP5bOAb0A'
token = GetQueryString ( 'token' )
if ( token ) {
setStorage ( token )
const href = window . location . href
// href = href.split(`token=${token}`)[0]
// window.location.href = href.slice(0, href.length - 1)
}
var one = window . location . href . indexOf ( '&organizationData' ) + 18
if ( parseInt ( one ) > 18 ) {
const data = window . location . href . substr ( one ) // url解码unescape()已从web中移除,尽量不使用
var data1 = decodeURIComponent ( data )
if ( data1 !== undefined ) {
const obj = JSON . parse ( data1 )
setDefaultOrgPath ( obj . defaultOrgPath )
setDefaultOrgPathName ( obj . defaultOrgPathName )
}
}
// 获取登录用户信息
function getUserInfo ( ) {
console . log ( '2222' )
return request ( {
url : '/v1/sysuser/loginDetails' ,
method : 'post' ,
headers : {
'Content-Type' : 'application/json'
}
} ) . then ( rep => {
const data = rep . data
console . log ( 'xxxxx' )
const user = {
roleSid : data . roleSid ,
name : data . name ,
userName : data . userName ,
departmentName : data . departmentName , // 部门名称
departmentSid : data . departmentSid , // 部门sid
isAdmin : data . isAdmin ,
staffSid : data . staffSid , // 业务员sid
userSid : data . sid ,
orgSid : data . organizationSid , // 单位sid
Orgname : data . organizationName ,
dwjb : data . dwjb ,
orgNamePath : data . orgNamePath , // 使用组织全路径名称
orgSidPath : data . orgSidPath // 使用组织全路径Sid
}
// 结果存入缓存
window . sessionStorage . setItem ( 'staffSid' , user . staffSid )
window . sessionStorage . setItem ( 'userSid' , user . userSid )
window . sessionStorage . setItem ( 'Orgname' , user . Orgname )
window . sessionStorage . setItem ( 'orgSid' , user . orgSid )
window . sessionStorage . setItem ( 'departmentName' , user . departmentName )
window . sessionStorage . setItem ( 'name' , user . name )
window . sessionStorage . setItem ( 'user' , user )
window . sessionStorage . setItem ( 'departmentName' , user . departmentName )
window . sessionStorage . setItem ( 'departmentSid' , user . departmentSid )
window . sessionStorage . setItem ( 'orgNamePath' , user . orgNamePath )
window . sessionStorage . setItem ( 'orgSidPath' , user . orgSidPath )
new Vue ( {
el : '#app' ,
router ,
store ,
render : h => h ( App )
} )
} )
}
getUserInfo ( )
function GetQueryString ( name ) {
var one = window . location . href . indexOf ( '?token=' ) + 7
if ( one < 7 ) { return null }
var two = window . location . href . lastIndexOf ( '&' ) // + 1
var data = window . location . href . substr ( one )
if ( two > one ) {
data = window . location . href . slice ( one , two )
console . log ( 'token' , data )
}
if ( data ) {
return data
}
return null
// var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)')
// var r = window.location.search.substr(1).match(reg)
// if (r != null) return unescape(r[2]); return null
}