function All() {} All.prototype = { timer: '', debounce(fn, delay = 500) { var _this = this return function (arg) { // 获取函数的作用域和变量 const that = this const args = arg clearTimeout(_this.timer) // 清除定时器 _this.timer = setTimeout(() => { fn.call(that, args) }, delay) } }, setCookie(val) { // cookie设置[{key:value}]、获取key、清除['key1','key2'] for (var i = 0, len = val.length; i < len; i++) { for (var key in val[i]) { document.cookie = `${key}=${encodeURIComponent(val[i][key])}; path=/` } } }, getCookie(name) { var strCookie = document.cookie var arrCookie = strCookie.split('; ') for (var i = 0, len = arrCookie.length; i < len; i++) { var arr = arrCookie[i].split('=') if (name == arr[0]) { return decodeURIComponent(arr[1]) } } }, clearCookie(name) { var myDate = new Date() myDate.setTime(-1000) // 设置时间 for (var i = 0, len = name.length; i < len; i++) { document.cookie = `${name[i]}=''; path=/; expires=${myDate.toGMTString()}` } }, // 将负责人的姓名挑出来做成字符串 arrToStr(arr) { if (arr) { return arr.map((item) => { return item.name }).toString() } }, toggleClass(arr, elem, key = 'id') { return arr.some((item) => { return item[key] == elem[key] }) }, toChecked(arr, elem, key = 'id') { console.log('toChecked') var isIncludes = this.toggleClass(arr, elem, key) !isIncludes ? arr.push(elem) : this.removeEle(arr, elem, key) }, removeEle(arr, elem, key = 'id') { var includesIndex arr.map((item, index) => { if (item[key] == elem[key]) { includesIndex = index } }) arr.splice(includesIndex, 1) }, // 设置审批节点的文字 setApproverStr(nodeConfig) { let tempValue = '会签' let strPeople = ' ' if (nodeConfig.selectCustomApprovalType === 'huoqian') { tempValue = '或签' } if (nodeConfig.selectCustomApprovalMethod === 'normal') { if (nodeConfig.nodeUserList && nodeConfig.nodeUserList.length === 1) { strPeople = `由${nodeConfig.nodeUserList[0].name}人负责` } else if (nodeConfig.nodeUserList && nodeConfig.nodeUserList.length > 1) { strPeople = `由${this.arrToStr(nodeConfig.nodeUserList)}人负责(${tempValue})` } return strPeople } else if (nodeConfig.selectCustomApprovalMethod === 'stepBYstep') { let strPeople = ' ' if (nodeConfig.nodeUserList && nodeConfig.nodeUserList.length === 1) { strPeople = `由${nodeConfig.nodeUserList[0].name}人负责(逐级审批)` } else if (nodeConfig.nodeUserList && nodeConfig.nodeUserList.length > 1) { strPeople = `由${this.arrToStr(nodeConfig.nodeUserList)}人负责(逐级审批-${tempValue})` } return strPeople } }, dealStr(str, obj) { const arr = [] const list = str.split(',') for (var elem in obj) { list.map((item) => { if (item == elem) { arr.push(obj[elem].value) } }) } return arr.join('或') }, // 设置条件节点的文字 conditionStr(nodeConfig, index) { var { conditionList, nodeUserList } = nodeConfig.conditionNodes[index] if (conditionList.length == 0) { return (index == nodeConfig.conditionNodes.length - 1) && nodeConfig.conditionNodes[0].conditionList.length != 0 ? '其他条件进入此流程' : '请设置条件' } else { let str = '' for (var i = 0; i < conditionList.length; i++) { var { columnId } = conditionList[i] if (columnId == 0) { if (nodeUserList.length != 0) { str += '发起人属于:' str += `${nodeUserList.map((item) => { return item.name }).join('、')} ` } } } // return str ? str.substring(0, str.length - 4) : '请设置条件' return str || '请设置条件' } }, // 设置抄送人节点文字 copyerStr(nodeConfig) { if (nodeConfig.nodeUserList && nodeConfig.nodeUserList.length != 0) { console.log(this.arrToStr(nodeConfig.nodeUserList)) return this.arrToStr(nodeConfig.nodeUserList) } // else { // if (nodeConfig.ccSelfSelectFlag == 1) { // return '发起人自选' // } // } }, toggleStrClass(item, key) { const a = item.zdy1 ? item.zdy1.split(',') : [] return a.some((item) => { return item == key }) }, } export default new All()