export default { install(Vue) { Vue.mixin({ data() { return { mixinlogical: [{ value: '&&', label: 'AND' },{ value: '||', label: 'OR' }] } }, created() { }, computed: { FieldUserObj() { return this.$store.state.FieldUserObj ? this.$store.state.FieldUserObj.data.fieldList : [] }, FieldUser() { return this.$store.state.FieldUser ? this.$store.state.FieldUser.data.fieldList : [] }, Sourcelist() { return this.$store.state.Sourcelist ? this.$store.state.Sourcelist:[] } }, mounted() {}, methods: { randomAdd(item,is) { if(is||!item){ return } if (item.random) { setTimeout(() => { item.random++ }, 200) } else { // item.random=1 setTimeout(() => { this.$set(item, 'random', 1) }, 200) } }, verificationNameCode(str){ if(str.indexOf('@')!=-1){ this.$message.error('名称和Code均不允许出现 ‘@’ 和 ‘%’ ') return true }else if(str.indexOf('%')!=-1){ this.$message.error('名称和Code均不允许出现 ‘@’ 和 ‘%’ ') return true } return false }, mixinSaveJSON(data, filename){ if(!data) { this.$message.error('保存的数据为空'); return; } if(!filename) filename = 'json.json' if(typeof data === 'object'){ data = JSON.stringify(data, undefined, 4) } var blob = new Blob([data], {type: 'text/json'}), e = document.createEvent('MouseEvents'), a = document.createElement('a') a.download = filename a.href = window.URL.createObjectURL(blob) a.dataset.downloadurl = ['text/json', a.download, a.href].join(':') e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null) a.dispatchEvent(e) }, mixinGetValueTypeByJSONEn(e){ if(!e||e.length==0) return if(!Array.isArray(e)) e=e.split('.') let obj =this.FieldUserObj e.forEach((value,index)=>{ if(index) obj = obj['children'] obj = obj.find(x=>x.value==value) }) return obj.valueType }, mixinGetValueByCn(e) { let num = this.FieldUser.find(x=>x.fieldCn===e) // this.FieldUser.forEach(value => { // if (value.fieldCn === e) { // num = value // } // }) return num }, mixinReGetStorage(){ this.$store.dispatch('reGetfielduser') this.$store.dispatch('reGetRuleList') Object.keys(this.$store.state.cacheList).forEach(value=>{ this.$store.dispatch('regetcache', value) }) }, mixinGetLogical(str){ let num = this.mixinlogical.find(x=>x.value===str) // this.mixinlogical.forEach(value=>{ // if(str==value.value){ // num = value.label // } // }) return num&&num.label }, mixinGetValueById(e) { let num =this.FieldUser.find(x=>x.id===e) // this.FieldUser.forEach(value => { // if (value.id === e) { // num = value // } // }) return num }, mixinGetCnByEn(e) { let num =this.FieldUser.find(x=>x.fieldEn===e) // this.FieldUser.forEach(value => { // if (value.fieldEn === e) { // num = value.fieldCn // } // }) return num&&num.fieldCn }, mixinGetIdByEn(e) { let num =this.FieldUser.find(x=>x.fieldEn===e) // this.FieldUser.forEach(value => { // if (value.fieldEn === e) { // num = value.id // } // }) return num&&num.id }, mixinGetValueTypeByEn(e) { let num =this.FieldUser.find(x=>x.fieldEn===e) // this.FieldUser.forEach(value => { // if (value.fieldEn === e) { // num = value.valueType // } // }) return num&&num.valueType }, mixinGetFieldByEn(e) { let num =this.FieldUser.find(x=>x.fieldEn=== e) // this.FieldUser.forEach(value => { // if (value.fieldEn === e) { // num = value // } // }) return num }, mixinMoveChange(e) { let arr = this.selection.map((value) => { return value.id }) if (arr.length < 1) { this.$message.error('未选择任何文件'); return } let params = { ids: arr, folderId: e } this.getData.updateParent(params).then(res => { if (res.status == "1") { this.clickCurrid(this.currid) this.$message({ message: '移动成功', type: 'success' }); this.selection = [] } }) this.tempMove = "" }, mixinDeepCopy() { let result; if (typeof target === 'object') { if (Array.isArray(target)) { result = []; for (let i in target) { result.push(this.mixinDeepCopy(target[i])) } } else if (target === null) { result = null; } else if (target.constructor === RegExp) { result = target; } else { result = {}; for (let i in target) { result[i] = this.mixinDeepCopy(target[i]); } } } else { result = target; } return result; }, mixinGetvalueType(cont) { let num = this.FieldUser.find(x=>x.id===parseInt(cont)) // this.FieldUser.forEach(value => { // if (value.id === parseInt(cont)) { // num = value.valueType // } // }) return num&&num.valueType }, mixinGetvalueEn(cont) { let num = this.FieldUser.find(x=>x.id===parseInt(cont)) // this.FieldUser.forEach(value => { // if (value.id === parseInt(cont)) { // num = value.fieldEn // } // }) return num&&num.fieldEn }, mixinGetvalueCn(cont) { let num = this.FieldUser.find(x=>x.id===parseInt(cont)) // this.FieldUser.forEach(value => { // if (value.id === parseInt(cont)) { // num = value.fieldCn // } // }) if(!num&&cont!==""&&cont!==null){ console.log(num,cont) num="(此字段丢失)" } return num&&num.fieldCn }, mixinGetvalueCode(cont) { let num = this.FieldUser.find(x=>x.id===parseInt(cont)) return num &&num.fieldCode } } }) } }