|
@@ -5,81 +5,100 @@ import {
|
|
} from 'jsencrypt'
|
|
} from 'jsencrypt'
|
|
const publicKey = hexToDec();
|
|
const publicKey = hexToDec();
|
|
const TokenKey = 'Admin-Token'
|
|
const TokenKey = 'Admin-Token'
|
|
|
|
+const CourseTokenKey = 'Course-Token'
|
|
|
|
+const CourseId = 'Course-Id'
|
|
const USER = 'user'
|
|
const USER = 'user'
|
|
const PASW = 'pasw'
|
|
const PASW = 'pasw'
|
|
|
|
|
|
// 提示跳转
|
|
// 提示跳转
|
|
export function openUrl(num) {
|
|
export function openUrl(num) {
|
|
- let url='http://www.baidu.com';
|
|
|
|
- if(num==1){
|
|
|
|
- url='https://www.yuque.com/docs/share/4551830c-25c8-44ae-8130-368c88bac624?# 《A分、B分常见问题》'
|
|
|
|
- }else if(num==2){
|
|
|
|
- url='https://www.yuque.com/docs/share/2300b9bb-84ab-48ae-afd9-a19da38147ba?# 《如何设置自动积分?》'
|
|
|
|
- }else if(num==3){
|
|
|
|
- url='https://www.yuque.com/docs/share/4cb21924-c9ee-4a4d-91f4-58db8be9547b?# 《基础分、工龄分是什么?》'
|
|
|
|
- }else if(num==4){
|
|
|
|
- url='https://www.yuque.com/docs/share/971c4cd7-5498-4fd6-a97c-ef08d62079c1?# 《系统配置》'
|
|
|
|
- }else if(num==5){
|
|
|
|
- url='https://www.yuque.com/docs/share/4551830c-25c8-44ae-8130-368c88bac624?# 《A分、B分常见问题》'
|
|
|
|
- }else if(num==6){
|
|
|
|
- url='https://www.yuque.com/docs/share/8cae70cf-3961-4e91-848d-d903f0323004?# 《如何邀请员工注册并加入企业?》'
|
|
|
|
- }else if(num==7){
|
|
|
|
- url='https://www.yuque.com/docs/share/8f7a1871-a886-48f7-9745-fd2ad13cbbcc?# 《角色权限操作说明(视频)》'
|
|
|
|
- }else if(num==8){
|
|
|
|
- url='https://www.yuque.com/docs/share/bd17afd5-8381-467d-ab65-a10661c73388?# 《积分权限是什么?有什么用?》'
|
|
|
|
- }else if(num==9){
|
|
|
|
- url='https://www.yuque.com/docs/share/2ef16237-4bc3-4ab8-8195-bc506098c0d5?# 《什么是每月奖扣目标,有什么用?》'
|
|
|
|
- }else if(num==10){
|
|
|
|
- url='https://www.yuque.com/docs/share/e8c6c82d-0f9f-4663-ada5-95dbd46ab1db?# 《审批流程说明》'
|
|
|
|
- }else if(num==11){
|
|
|
|
- url='https://www.yuque.com/docs/share/155191a9-fab6-447f-a7da-099506b322e6?# 《第一步:班次管理》'
|
|
|
|
- }else if(num==12){
|
|
|
|
- url='https://www.yuque.com/docs/share/6e16186a-21a1-4f26-bd76-0967cfbcff85?# 《第二步:创建加班规则》'
|
|
|
|
- }else if(num==13){
|
|
|
|
- url='https://www.yuque.com/docs/share/86a48ef0-5b91-416b-8bb4-b51248bab89b?# 《第三步:创建考勤组》'
|
|
|
|
- }else if(num==14){
|
|
|
|
- url='https://www.yuque.com/docs/share/6c233543-b04e-442b-8629-622b41465c56?# 《第四步:创建假期类型》'
|
|
|
|
- }else if(num==15){
|
|
|
|
- url='https://www.yuque.com/docs/share/44aa8b5b-ef80-420b-8fd2-6902a08179ae?# 《自定义B分的使用场景有哪些?》'
|
|
|
|
- }else if(num==16){
|
|
|
|
- url='https://www.yuque.com/docs/share/a3c8a68c-6706-4dbf-9cad-8886a8c904ff?# 《积分规则常见问题》'
|
|
|
|
- }else if(num==17){
|
|
|
|
- url='https://www.yuque.com/docs/share/4551830c-25c8-44ae-8130-368c88bac624?# 《A分、B分常见问题》'
|
|
|
|
- }else if(num==18){
|
|
|
|
- url='https://www.yuque.com/docs/share/2ef16237-4bc3-4ab8-8195-bc506098c0d5?# 《什么是每月奖扣目标,如何使用?》'
|
|
|
|
- }else if(num==19){
|
|
|
|
- url='https://www.yuque.com/docs/share/97a89371-71c4-42c0-b01e-4c51b746ffe0?# 《什么是重复任务》'
|
|
|
|
|
|
+ let url = 'http://www.baidu.com';
|
|
|
|
+ if (num == 1) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/4551830c-25c8-44ae-8130-368c88bac624?# 《A分、B分常见问题》'
|
|
|
|
+ } else if (num == 2) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/2300b9bb-84ab-48ae-afd9-a19da38147ba?# 《如何设置自动积分?》'
|
|
|
|
+ } else if (num == 3) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/4cb21924-c9ee-4a4d-91f4-58db8be9547b?# 《基础分、工龄分是什么?》'
|
|
|
|
+ } else if (num == 4) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/971c4cd7-5498-4fd6-a97c-ef08d62079c1?# 《系统配置》'
|
|
|
|
+ } else if (num == 5) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/4551830c-25c8-44ae-8130-368c88bac624?# 《A分、B分常见问题》'
|
|
|
|
+ } else if (num == 6) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/8cae70cf-3961-4e91-848d-d903f0323004?# 《如何邀请员工注册并加入企业?》'
|
|
|
|
+ } else if (num == 7) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/8f7a1871-a886-48f7-9745-fd2ad13cbbcc?# 《角色权限操作说明(视频)》'
|
|
|
|
+ } else if (num == 8) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/bd17afd5-8381-467d-ab65-a10661c73388?# 《积分权限是什么?有什么用?》'
|
|
|
|
+ } else if (num == 9) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/2ef16237-4bc3-4ab8-8195-bc506098c0d5?# 《什么是每月奖扣目标,有什么用?》'
|
|
|
|
+ } else if (num == 10) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/e8c6c82d-0f9f-4663-ada5-95dbd46ab1db?# 《审批流程说明》'
|
|
|
|
+ } else if (num == 11) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/155191a9-fab6-447f-a7da-099506b322e6?# 《第一步:班次管理》'
|
|
|
|
+ } else if (num == 12) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/6e16186a-21a1-4f26-bd76-0967cfbcff85?# 《第二步:创建加班规则》'
|
|
|
|
+ } else if (num == 13) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/86a48ef0-5b91-416b-8bb4-b51248bab89b?# 《第三步:创建考勤组》'
|
|
|
|
+ } else if (num == 14) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/6c233543-b04e-442b-8629-622b41465c56?# 《第四步:创建假期类型》'
|
|
|
|
+ } else if (num == 15) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/44aa8b5b-ef80-420b-8fd2-6902a08179ae?# 《自定义B分的使用场景有哪些?》'
|
|
|
|
+ } else if (num == 16) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/a3c8a68c-6706-4dbf-9cad-8886a8c904ff?# 《积分规则常见问题》'
|
|
|
|
+ } else if (num == 17) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/4551830c-25c8-44ae-8130-368c88bac624?# 《A分、B分常见问题》'
|
|
|
|
+ } else if (num == 18) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/2ef16237-4bc3-4ab8-8195-bc506098c0d5?# 《什么是每月奖扣目标,如何使用?》'
|
|
|
|
+ } else if (num == 19) {
|
|
|
|
+ url = 'https://www.yuque.com/docs/share/97a89371-71c4-42c0-b01e-4c51b746ffe0?# 《什么是重复任务》'
|
|
}
|
|
}
|
|
|
|
|
|
- window.open(url,'_blank');
|
|
|
|
|
|
+ window.open(url, '_blank');
|
|
}
|
|
}
|
|
|
|
|
|
// 获取唯一标识(uid)
|
|
// 获取唯一标识(uid)
|
|
export function generateUUID() {
|
|
export function generateUUID() {
|
|
- var d = new Date().getTime();
|
|
|
|
- var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
|
|
|
|
- var r = (d + Math.random() * 16) % 16 | 0;
|
|
|
|
- d = Math.floor(d / 16);
|
|
|
|
- return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
|
|
|
|
- });
|
|
|
|
- return uuid;
|
|
|
|
|
|
+ var d = new Date().getTime();
|
|
|
|
+ var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
|
|
+ var r = (d + Math.random() * 16) % 16 | 0;
|
|
|
|
+ d = Math.floor(d / 16);
|
|
|
|
+ return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
|
|
|
|
+ });
|
|
|
|
+ return uuid;
|
|
};
|
|
};
|
|
|
|
|
|
- //将部门链接在一起
|
|
|
|
-export function returnDeptName(arr){
|
|
|
|
- let data=arr.map(item=>{
|
|
|
|
- let str='';
|
|
|
|
- item.dept_list.forEach((e,index)=>{
|
|
|
|
- if(item.dept_list.length-index>1){
|
|
|
|
- str+=e.dept_name+','
|
|
|
|
- }else{
|
|
|
|
- str+=e.dept_name
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- item.deptName=str
|
|
|
|
- return item
|
|
|
|
- })
|
|
|
|
- return data
|
|
|
|
|
|
+// 清楚本地缓存
|
|
|
|
+export function resetStorage(){
|
|
|
|
+ localStorage.removeItem('userInfo')
|
|
|
|
+ localStorage.removeItem('accountToken')
|
|
|
|
+ localStorage.removeItem('SET_POINT_TYPES')
|
|
|
|
+ localStorage.removeItem('SET_EMPLOYEE_MAP_ALL')
|
|
|
|
+ localStorage.removeItem('site_info')
|
|
|
|
+ localStorage.removeItem('dept_tree')
|
|
|
|
+ localStorage.removeItem('account_info')
|
|
|
|
+ localStorage.removeItem('SET_EMPLOYEE_MAP')
|
|
|
|
+ localStorage.removeItem('dept_tree_pin')
|
|
|
|
+ localStorage.removeItem('login_code')
|
|
|
|
+ localStorage.removeItem('loglevel:webpack-dev-server')
|
|
|
|
+ sessionStorage.clear()
|
|
|
|
+ removeAllToken()
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+//将部门链接在一起
|
|
|
|
+export function returnDeptName(arr) {
|
|
|
|
+ let data = arr.map(item => {
|
|
|
|
+ let str = '';
|
|
|
|
+ item.dept_list.forEach((e, index) => {
|
|
|
|
+ if (item.dept_list.length - index > 1) {
|
|
|
|
+ str += e.dept_name + ','
|
|
|
|
+ } else {
|
|
|
|
+ str += e.dept_name
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ item.deptName = str
|
|
|
|
+ return item
|
|
|
|
+ })
|
|
|
|
+ return data
|
|
}
|
|
}
|
|
function hexToDec() {
|
|
function hexToDec() {
|
|
let str =
|
|
let str =
|
|
@@ -112,13 +131,16 @@ export function returnJSEncrypt(data, is = true) {
|
|
export function getCache(key) {
|
|
export function getCache(key) {
|
|
return JSON.parse(localStorage.getItem(key))
|
|
return JSON.parse(localStorage.getItem(key))
|
|
}
|
|
}
|
|
|
|
+export function getLocal(key) {
|
|
|
|
+ return localStorage.getItem(key)
|
|
|
|
+}
|
|
// 设置缓存
|
|
// 设置缓存
|
|
export function setCache(key, data) {
|
|
export function setCache(key, data) {
|
|
localStorage.setItem(key, JSON.stringify(data))
|
|
localStorage.setItem(key, JSON.stringify(data))
|
|
}
|
|
}
|
|
// 清除缓存
|
|
// 清除缓存
|
|
export function removeCache(key) {
|
|
export function removeCache(key) {
|
|
- if (typeof(key) === 'string') {
|
|
|
|
|
|
+ if (typeof (key) === 'string') {
|
|
localStorage.removeItem(key)
|
|
localStorage.removeItem(key)
|
|
} else {
|
|
} else {
|
|
if (key.length > 0) {
|
|
if (key.length > 0) {
|
|
@@ -132,7 +154,7 @@ export function removeCache(key) {
|
|
export function getDept(id) {
|
|
export function getDept(id) {
|
|
if (id) {
|
|
if (id) {
|
|
let map = getCache('dept_tree_pin')[id];
|
|
let map = getCache('dept_tree_pin')[id];
|
|
- return map||{}
|
|
|
|
|
|
+ return map || {}
|
|
} else {
|
|
} else {
|
|
return getCache('dept_tree_pin')
|
|
return getCache('dept_tree_pin')
|
|
}
|
|
}
|
|
@@ -154,13 +176,13 @@ export function getEmployeeMap(status) {
|
|
export function getEmployeeMapAll() {
|
|
export function getEmployeeMapAll() {
|
|
return JSON.parse(localStorage.getItem('SET_EMPLOYEE_MAP_ALL'))
|
|
return JSON.parse(localStorage.getItem('SET_EMPLOYEE_MAP_ALL'))
|
|
}
|
|
}
|
|
-export function getEmployeeMapItem(id){
|
|
|
|
- let map=JSON.parse(localStorage.getItem('SET_EMPLOYEE_MAP_ALL'))
|
|
|
|
- if(map[id]){
|
|
|
|
- return map[id]
|
|
|
|
- }else{
|
|
|
|
- return {}
|
|
|
|
- }
|
|
|
|
|
|
+export function getEmployeeMapItem(id) {
|
|
|
|
+ let map = JSON.parse(localStorage.getItem('SET_EMPLOYEE_MAP_ALL'))
|
|
|
|
+ if (map[id]) {
|
|
|
|
+ return map[id]
|
|
|
|
+ } else {
|
|
|
|
+ return {}
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
// 获取积分类型
|
|
// 获取积分类型
|
|
@@ -168,12 +190,12 @@ export function getTyps(id) {
|
|
if (id) {
|
|
if (id) {
|
|
var arr = getCache('SET_POINT_TYPES')
|
|
var arr = getCache('SET_POINT_TYPES')
|
|
var item = arr.filter(element => {
|
|
var item = arr.filter(element => {
|
|
- return typeof(id) === 'string' ? element.code == id : element.id == id
|
|
|
|
|
|
+ return typeof (id) === 'string' ? element.code == id : element.id == id
|
|
})
|
|
})
|
|
return item[0]
|
|
return item[0]
|
|
} else {
|
|
} else {
|
|
var arr = getCache('SET_POINT_TYPES')
|
|
var arr = getCache('SET_POINT_TYPES')
|
|
- return arr.filter(function(item) {
|
|
|
|
|
|
+ return arr.filter(function (item) {
|
|
return item.code != 'JX';
|
|
return item.code != 'JX';
|
|
});
|
|
});
|
|
}
|
|
}
|
|
@@ -187,14 +209,19 @@ export function getUserData() {
|
|
return store.getters.user_info || getCache('userInfo')
|
|
return store.getters.user_info || getCache('userInfo')
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// 获取当前课程用户详情
|
|
|
|
+export function getCourseUserData() {
|
|
|
|
+ return store.getters.course_user_info || getCache('courseUserData')
|
|
|
|
+}
|
|
|
|
+
|
|
//是否平台管理或者平台创始人
|
|
//是否平台管理或者平台创始人
|
|
export function getIsAdministrator() {
|
|
export function getIsAdministrator() {
|
|
var userInfo = getUserData();
|
|
var userInfo = getUserData();
|
|
- return userInfo.is_site_owner||userInfo.is_site_manager
|
|
|
|
|
|
+ return userInfo.is_site_owner || userInfo.is_site_manager
|
|
}
|
|
}
|
|
|
|
|
|
-function returnRole(str){
|
|
|
|
- return supremeAuthority()==str
|
|
|
|
|
|
+function returnRole(str) {
|
|
|
|
+ return supremeAuthority() == str
|
|
}
|
|
}
|
|
|
|
|
|
//判断是否具有权限
|
|
//判断是否具有权限
|
|
@@ -209,10 +236,10 @@ export function getIsIdentity(key) {
|
|
return is
|
|
return is
|
|
}
|
|
}
|
|
// 返回高权限 str最高权限是否匹配 id指定人员最高权限
|
|
// 返回高权限 str最高权限是否匹配 id指定人员最高权限
|
|
-export function supremeAuthority(str,id) {
|
|
|
|
- if(str){
|
|
|
|
|
|
+export function supremeAuthority(str, id) {
|
|
|
|
+ if (str) {
|
|
return returnRole(str)
|
|
return returnRole(str)
|
|
- }else if (id) {
|
|
|
|
|
|
+ } else if (id) {
|
|
const roleList = getEmployeeMapItem(id).employee_detail.role_list
|
|
const roleList = getEmployeeMapItem(id).employee_detail.role_list
|
|
const roleAll = ['creator', 'admin', 'point_manager', 'dept_manager', 'employee']
|
|
const roleAll = ['creator', 'admin', 'point_manager', 'dept_manager', 'employee']
|
|
const userRole = roleList.map(e => e.name)
|
|
const userRole = roleList.map(e => e.name)
|
|
@@ -242,7 +269,7 @@ export function supremeAuthority(str,id) {
|
|
// _debounce(this.XXX(),1000)
|
|
// _debounce(this.XXX(),1000)
|
|
export function _debounce(fn, delay = 500) {
|
|
export function _debounce(fn, delay = 500) {
|
|
let timer = null
|
|
let timer = null
|
|
- return function() {
|
|
|
|
|
|
+ return function () {
|
|
const arg = arguments
|
|
const arg = arguments
|
|
clearTimeout(timer)
|
|
clearTimeout(timer)
|
|
timer = setTimeout(() => {
|
|
timer = setTimeout(() => {
|
|
@@ -257,6 +284,19 @@ export function setToken(token) {
|
|
export function getToken() {
|
|
export function getToken() {
|
|
return Cookies.get(TokenKey)
|
|
return Cookies.get(TokenKey)
|
|
}
|
|
}
|
|
|
|
+export function setCourseToken(token) {
|
|
|
|
+ return Cookies.set(CourseTokenKey, token)
|
|
|
|
+}
|
|
|
|
+export function getCourseToken() {
|
|
|
|
+ return Cookies.get(CourseTokenKey)
|
|
|
|
+}
|
|
|
|
+export function setCourseId(id) {
|
|
|
|
+ return Cookies.set(CourseId, id)
|
|
|
|
+}
|
|
|
|
+export function getCourseId() {
|
|
|
|
+ return localStorage.getItem('Course-Id')
|
|
|
|
+ // return Cookies.get(CourseId)
|
|
|
|
+}
|
|
export function getUser() {
|
|
export function getUser() {
|
|
return Cookies.get(USER)
|
|
return Cookies.get(USER)
|
|
}
|
|
}
|
|
@@ -278,5 +318,7 @@ export function removeAllToken() {
|
|
Cookies.remove('user')
|
|
Cookies.remove('user')
|
|
Cookies.remove('pasw')
|
|
Cookies.remove('pasw')
|
|
Cookies.remove(TokenKey)
|
|
Cookies.remove(TokenKey)
|
|
|
|
+ Cookies.remove(CourseTokenKey)
|
|
|
|
+ Cookies.remove(CourseId)
|
|
return true
|
|
return true
|
|
}
|
|
}
|