1 changed files with 148 additions and 148 deletions
			
			
		@ -1,148 +1,148 @@ | 
				
			|||||||
/** | 
					/** | 
				
			||||||
 * 通用js方法封装处理 | 
					 * 通用js方法封装处理 | 
				
			||||||
 * Copyright (c) 2019 ruoyi | 
					 * Copyright (c) 2019 ruoyi | 
				
			||||||
 */ | 
					 */ | 
				
			||||||
 | 
					
 | 
				
			||||||
const baseURL = process.env.VUE_APP_BASE_API | 
					const baseURL = process.env.VUE_APP_BASE_API | 
				
			||||||
 | 
					
 | 
				
			||||||
// 日期格式化
 | 
					// 日期格式化
 | 
				
			||||||
export function parseTime(time, pattern) { | 
					export function parseTime(time, pattern) { | 
				
			||||||
	if (arguments.length === 0 || !time) { | 
						if (arguments.length === 0 || !time) { | 
				
			||||||
		return null | 
							return null | 
				
			||||||
	} | 
						} | 
				
			||||||
	const format = pattern || '{y}-{m}-{d} {h}:{i}:{s}' | 
						const format = pattern || '{y}-{m}-{d} {h}:{i}:{s}' | 
				
			||||||
	let date | 
						let date | 
				
			||||||
	if (typeof time === 'object') { | 
						if (typeof time === 'object') { | 
				
			||||||
		date = time | 
							date = time | 
				
			||||||
	} else { | 
						} else { | 
				
			||||||
		if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) { | 
							if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) { | 
				
			||||||
			time = parseInt(time) | 
								time = parseInt(time) | 
				
			||||||
		} else if (typeof time === 'string') { | 
							} else if (typeof time === 'string') { | 
				
			||||||
			time = time.replace(new RegExp(/-/gm), '/'); | 
								time = time.replace(new RegExp(/-/gm), '/'); | 
				
			||||||
		} | 
							} | 
				
			||||||
		if ((typeof time === 'number') && (time.toString().length === 10)) { | 
							if ((typeof time === 'number') && (time.toString().length === 10)) { | 
				
			||||||
			time = time * 1000 | 
								time = time * 1000 | 
				
			||||||
		} | 
							} | 
				
			||||||
		date = new Date(time) | 
							date = new Date(time) | 
				
			||||||
	} | 
						} | 
				
			||||||
	const formatObj = { | 
						const formatObj = { | 
				
			||||||
		y: date.getFullYear(), | 
							y: date.getFullYear(), | 
				
			||||||
		m: date.getMonth() + 1, | 
							m: date.getMonth() + 1, | 
				
			||||||
		d: date.getDate(), | 
							d: date.getDate(), | 
				
			||||||
		h: date.getHours(), | 
							h: date.getHours(), | 
				
			||||||
		i: date.getMinutes(), | 
							i: date.getMinutes(), | 
				
			||||||
		s: date.getSeconds(), | 
							s: date.getSeconds(), | 
				
			||||||
		a: date.getDay() | 
							a: date.getDay() | 
				
			||||||
	} | 
						} | 
				
			||||||
	const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => { | 
						const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => { | 
				
			||||||
		let value = formatObj[key] | 
							let value = formatObj[key] | 
				
			||||||
		// Note: getDay() returns 0 on Sunday
 | 
							// Note: getDay() returns 0 on Sunday
 | 
				
			||||||
		if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value] } | 
							if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value] } | 
				
			||||||
		if (result.length > 0 && value < 10) { | 
							if (result.length > 0 && value < 10) { | 
				
			||||||
			value = '0' + value | 
								value = '0' + value | 
				
			||||||
		} | 
							} | 
				
			||||||
		return value || 0 | 
							return value || 0 | 
				
			||||||
	}) | 
						}) | 
				
			||||||
	return time_str | 
						return time_str | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
// 表单重置
 | 
					// 表单重置
 | 
				
			||||||
export function resetForm(refName) { | 
					export function resetForm(refName) { | 
				
			||||||
	if (this.$refs[refName]) { | 
						if (this.$refs[refName]) { | 
				
			||||||
		this.$refs[refName].resetFields(); | 
							this.$refs[refName].resetFields(); | 
				
			||||||
	} | 
						} | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
// 添加日期范围
 | 
					// 添加日期范围
 | 
				
			||||||
export function addDateRange(params, dateRange) { | 
					export function addDateRange(params, dateRange) { | 
				
			||||||
	var search = params; | 
						var search = params; | 
				
			||||||
	search.beginTime = ""; | 
						search.beginTime = ""; | 
				
			||||||
	search.endTime = ""; | 
						search.endTime = ""; | 
				
			||||||
	if (null != dateRange && '' != dateRange) { | 
						if (null != dateRange && '' != dateRange) { | 
				
			||||||
		search.beginTime = this.dateRange[0]; | 
							search.beginTime = dateRange[0]; | 
				
			||||||
		search.endTime = this.dateRange[1]; | 
							search.endTime = dateRange[1]; | 
				
			||||||
	} | 
						} | 
				
			||||||
	return search; | 
						return search; | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
// 回显数据字典
 | 
					// 回显数据字典
 | 
				
			||||||
export function selectDictLabel(datas, value) { | 
					export function selectDictLabel(datas, value) { | 
				
			||||||
	var actions = []; | 
						var actions = []; | 
				
			||||||
	Object.keys(datas).some((key) => { | 
						Object.keys(datas).some((key) => { | 
				
			||||||
		if (datas[key].dictValue == ('' + value)) { | 
							if (datas[key].dictValue == ('' + value)) { | 
				
			||||||
			actions.push(datas[key].dictLabel); | 
								actions.push(datas[key].dictLabel); | 
				
			||||||
			return true; | 
								return true; | 
				
			||||||
		} | 
							} | 
				
			||||||
	}) | 
						}) | 
				
			||||||
	return actions.join(''); | 
						return actions.join(''); | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
// 回显数据字典(字符串数组)
 | 
					// 回显数据字典(字符串数组)
 | 
				
			||||||
export function selectDictLabels(datas, value, separator) { | 
					export function selectDictLabels(datas, value, separator) { | 
				
			||||||
	var actions = []; | 
						var actions = []; | 
				
			||||||
	var currentSeparator = undefined === separator ? "," : separator; | 
						var currentSeparator = undefined === separator ? "," : separator; | 
				
			||||||
	var temp = value.split(currentSeparator); | 
						var temp = value.split(currentSeparator); | 
				
			||||||
	Object.keys(value.split(currentSeparator)).some((val) => { | 
						Object.keys(value.split(currentSeparator)).some((val) => { | 
				
			||||||
		Object.keys(datas).some((key) => { | 
							Object.keys(datas).some((key) => { | 
				
			||||||
			if (datas[key].dictValue == ('' + temp[val])) { | 
								if (datas[key].dictValue == ('' + temp[val])) { | 
				
			||||||
				actions.push(datas[key].dictLabel + currentSeparator); | 
									actions.push(datas[key].dictLabel + currentSeparator); | 
				
			||||||
			} | 
								} | 
				
			||||||
		}) | 
							}) | 
				
			||||||
	}) | 
						}) | 
				
			||||||
	return actions.join('').substring(0, actions.join('').length - 1); | 
						return actions.join('').substring(0, actions.join('').length - 1); | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
// 通用下载方法
 | 
					// 通用下载方法
 | 
				
			||||||
export function download(fileName) { | 
					export function download(fileName) { | 
				
			||||||
	window.location.href = baseURL + "/common/download?fileName=" + encodeURI(fileName) + "&delete=" + true; | 
						window.location.href = baseURL + "/common/download?fileName=" + encodeURI(fileName) + "&delete=" + true; | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
// 字符串格式化(%s )
 | 
					// 字符串格式化(%s )
 | 
				
			||||||
export function sprintf(str) { | 
					export function sprintf(str) { | 
				
			||||||
	var args = arguments, flag = true, i = 1; | 
						var args = arguments, flag = true, i = 1; | 
				
			||||||
	str = str.replace(/%s/g, function () { | 
						str = str.replace(/%s/g, function () { | 
				
			||||||
		var arg = args[i++]; | 
							var arg = args[i++]; | 
				
			||||||
		if (typeof arg === 'undefined') { | 
							if (typeof arg === 'undefined') { | 
				
			||||||
			flag = false; | 
								flag = false; | 
				
			||||||
			return ''; | 
								return ''; | 
				
			||||||
		} | 
							} | 
				
			||||||
		return arg; | 
							return arg; | 
				
			||||||
	}); | 
						}); | 
				
			||||||
	return flag ? str : ''; | 
						return flag ? str : ''; | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
// 转换字符串,undefined,null等转化为""
 | 
					// 转换字符串,undefined,null等转化为""
 | 
				
			||||||
export function praseStrEmpty(str) { | 
					export function praseStrEmpty(str) { | 
				
			||||||
	if (!str || str == "undefined" || str == "null") { | 
						if (!str || str == "undefined" || str == "null") { | 
				
			||||||
		return ""; | 
							return ""; | 
				
			||||||
	} | 
						} | 
				
			||||||
	return str; | 
						return str; | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
/** | 
					/** | 
				
			||||||
 * 构造树型结构数据 | 
					 * 构造树型结构数据 | 
				
			||||||
 * @param {*} data 数据源 | 
					 * @param {*} data 数据源 | 
				
			||||||
 * @param {*} id id字段 默认 'id' | 
					 * @param {*} id id字段 默认 'id' | 
				
			||||||
 * @param {*} parentId 父节点字段 默认 'parentId' | 
					 * @param {*} parentId 父节点字段 默认 'parentId' | 
				
			||||||
 * @param {*} children 孩子节点字段 默认 'children' | 
					 * @param {*} children 孩子节点字段 默认 'children' | 
				
			||||||
 * @param {*} rootId 根Id 默认 0 | 
					 * @param {*} rootId 根Id 默认 0 | 
				
			||||||
 */ | 
					 */ | 
				
			||||||
export function handleTree(data, id, parentId, children, rootId) { | 
					export function handleTree(data, id, parentId, children, rootId) { | 
				
			||||||
	id = id || 'id' | 
						id = id || 'id' | 
				
			||||||
	parentId = parentId || 'parentId' | 
						parentId = parentId || 'parentId' | 
				
			||||||
	children = children || 'children' | 
						children = children || 'children' | 
				
			||||||
	rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0 | 
						rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0 | 
				
			||||||
	//对源数据深度克隆
 | 
						//对源数据深度克隆
 | 
				
			||||||
	const cloneData = JSON.parse(JSON.stringify(data)) | 
						const cloneData = JSON.parse(JSON.stringify(data)) | 
				
			||||||
	//循环所有项
 | 
						//循环所有项
 | 
				
			||||||
	const treeData = cloneData.filter(father => { | 
						const treeData = cloneData.filter(father => { | 
				
			||||||
		let branchArr = cloneData.filter(child => { | 
							let branchArr = cloneData.filter(child => { | 
				
			||||||
			//返回每一项的子级数组
 | 
								//返回每一项的子级数组
 | 
				
			||||||
			return father[id] === child[parentId] | 
								return father[id] === child[parentId] | 
				
			||||||
		}); | 
							}); | 
				
			||||||
		branchArr.length > 0 ? father.children = branchArr : ''; | 
							branchArr.length > 0 ? father.children = branchArr : ''; | 
				
			||||||
		//返回第一层
 | 
							//返回第一层
 | 
				
			||||||
		return father[parentId] === rootId; | 
							return father[parentId] === rootId; | 
				
			||||||
	}); | 
						}); | 
				
			||||||
	return treeData != '' ? treeData : data; | 
						return treeData != '' ? treeData : data; | 
				
			||||||
} | 
					} | 
				
			||||||
 | 
				
			|||||||
					Loading…
					
					
				
		Reference in new issue