function CommonUtil() {} /** * 如果是null '' 'null' 'undefined' * @param item * @returns */ CommonUtil.isEmptyCheck = function (value) { if (value == null || value === "" || value == "null" || typeof value == "undefined") { return true; } return false; }; /** * 如果不是是null '' 'null' 'undefined' * @param item * @returns */ CommonUtil.isNotEmptyCheck = function (value) { return !this.isEmptyCheck(value); }; var jobTypeArray = [ { id: "0", name: "代理招聘", name2: "代理招聘", value: "0", text: "代理招聘", checked: false }, { id: "1", name: "劳务派遣", name2: "全职", value: "1", text: "劳务派遣", checked: false }, { id: "2", name: "劳务外包", name2: "兼职", value: "2", text: "劳务外包", checked: false }, { id: "4", name: "劳务外包挂靠", name2: "劳务外包挂靠", value: "4", text: "劳务外包挂靠", checked: false }, ]; CommonUtil.getJobTypeArray = function () { return jobTypeArray; }; //初始化picker选中项 CommonUtil.getJobTypeById = function (id) { let str = ""; jobTypeArray.forEach((item) => { if (item.id == id) { str = item.name; } }); return str; }; /** * 工种类型 */ var workTypeArray = [ { id: 0, name: "全职", value: "0", text: "全职", checked: false }, { id: 1, name: "兼职", value: "1", text: "兼职", checked: false }, { id: 3, name: "实习生", value: "3", text: "实习生", checked: false }, { id: 2, name: "寒暑假工", value: "2", text: "寒暑假工", checked: false }, { id: 4, name: "灵活用工", value: "4", text: "灵活用工", checked: false }, ]; CommonUtil.workTypeArray = function () { return workTypeArray; }; CommonUtil.getDistanceName = function (distance) { let str = ""; if (isNotEmptyCheck(distance)) { if (distance > 1000) { var dis = distance / 1000; dis = dis.toFixed(1); str = dis + "km"; if(dis > 1000){ str = "暂无位置" } } else { str = distance + "m"; } } return str; }; CommonUtil.getStoreAddress = function (district, detailPosition) { var res = ""; if (isNotEmptyCheck(district)) { var tmpArr = district.split(","); if (tmpArr.length == 3 && tmpArr[0] == tmpArr[1]) { res += tmpArr[1] + tmpArr[2]; } else { res += district.replace(/,/g, ""); } } if (isNotEmptyCheck(detailPosition)) { res += detailPosition; } return res; }; export function isEmptyCheck(value) { if (value == null || value === "" || value == "null" || typeof value == "undefined") { return true; } return false; } export function isNotEmptyCheck(value) { return !isEmptyCheck(value); } /** * 根据工种类型ID获取名称 */ CommonUtil.getWorkTypeById = function (id) { let str = ""; workTypeArray.forEach((item) => { if (item.id == id) { str = item.name; } }); return str; }; /** * 展示招聘人数 * @param {*} state * @param {*} numType * @param {*} numMale * @param {*} numFemale */ CommonUtil.showStoreJobHireTotalNum2 = function (state, numType, numMale, numFemale) { if (state - 1 != 0) { return "-"; } if (numType == 0) { if (numMale - 0 == 0) { return "暂不缺人"; } return numMale + "人"; } else if (numType == 1) { if (numMale > 0 && numFemale > 0) { return "男" + numMale + "人" + " " + ("女" + numFemale + "人") /* + ' 女' + numFemale */; } else if (numMale > 0) { return "男" + numMale + "人"; } else if (numFemale > 0) { return "女" + numFemale + "人"; } else { return "暂不缺人"; } } return "-"; }; CommonUtil.getSex = function (sex) { if (sex == 1) { return "男"; } else if (sex == 2) { return "女"; } return ""; }; CommonUtil.getAgeFromBirthday = function (birth) { if (this.isEmptyCheck(birth)) { return ""; } var birthday = this.formatDateYMDHMS(birth); var returnAge; var strBirthdayArr = birthday.split("-"); if (strBirthdayArr.length == 1) { var d = new Date(); var nowYear = d.getFullYear(); return nowYear - strBirthdayArr[0] + 1; } var birthYear = strBirthdayArr[0]; var birthMonth = strBirthdayArr[1]; var birthDay = strBirthdayArr[2]; var d = new Date(); var nowYear = d.getFullYear(); var nowMonth = d.getMonth() + 1; var nowDay = d.getDate(); if (nowYear == birthYear) { returnAge = 0; //同年 则为0岁 } else { var ageDiff = nowYear - birthYear; //年之差 if (ageDiff > 0) { if (nowMonth == birthMonth) { var dayDiff = nowDay - birthDay; //日之差 if (dayDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff; } } else { var monthDiff = nowMonth - birthMonth; //月之差 if (monthDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff; } } } else { returnAge = -1; //返回-1 表示出生日期输入错误 晚于今天 } } return returnAge; //返回周岁年龄 }; /** * 时间格式化 2017-01-01 01:01:01 * @param val * @returns {string} */ CommonUtil.formatDateYMDHMS = function (val) { // model -> view,在更新 `` 元素之前格式化值 if ((val != null || val == "") && typeof val == "string") { if (val.indexOf("T")) { val = val.replace("T", " "); //原来L端可能返回的时间格式有带T的格式,处理一下 } val = val.replace("-", "/").replace("-", "/"); } var value = new Date(val); //console.log(val); var fmt = "yyyy-MM-dd HH:mm:ss"; var o = { "M+": value.getMonth() + 1, //月份 "d+": value.getDate(), //日 "H+": value.getHours(), //小时 //"h+": val.getHours()%12 == 0 ? 12 : val.getHours()%12, //小时 "m+": value.getMinutes(), //分 "s+": value.getSeconds(), //秒 //"S": val.getMilliseconds() //毫秒 //"q+": Math.floor((val.getMonth() + 3) / 3) //季度 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (value.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) { if (new RegExp("(" + k + ")").test(fmt)) { fmt = fmt.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); } } return fmt; }; /** * 稍后处理时间选择 */ var notifyTimeArray = [ { id: "0", name: "请选择", name2: "请选择", value: "0", text: "请选择", checked: false }, { id: "10", name: "10分钟后", name2: "10分钟后", value: "10", text: "10分钟后", checked: false }, { id: "20", name: "20分钟后", name2: "20分钟后", value: "20", text: "20分钟后", checked: false }, { id: "30", name: "30分钟后", name2: "30分钟后", value: "30", text: "30分钟后", checked: false }, { id: "60", name: "1小时后", name2: "1小时后", value: "60", text: "1小时后", checked: false }, { id: "120", name: "2小时后", name2: "2小时后", value: "120", text: "2小时后", checked: false }, { id: "240", name: "4小时后", name2: "4小时后", value: "240", text: "4小时后", checked: false }, ]; CommonUtil.getNotifyTimeArray = function () { return notifyTimeArray; }; /** * 获取手机号后四位 */ CommonUtil.getTelAfterFour = function (tel) { var str = ""; if (this.isNotEmptyCheck(tel)) { str = tel.substring(tel.length - 4); } return str; }; //=============================ws=↑================================================ (CommonUtil.returnFeeTypeArray = function (value = 0) { let returnFeeTypeArray = [ { id: 0, value: "0", text: "按时", name: "小时", name1: `${value}元/小时` }, { id: 1, value: "1", text: "按日", name: "天", name1: `${value}元/日` }, { id: 2, value: "2", text: "按月", name: "月", name1: `${value}元/月` }, { id: 3, value: "3", text: "按次", name: "次", name1: `${value}元/次` }, { id: 4, value: "4", text: "按件", name: "件", name1: `${value}元/斤` }, { id: 5, value: "5", text: "百分比", name: "百分比", name1: `工人收入${value}%` }, { id: 6, value: "6", text: "总计", name: "总计", name1: `共${value}元` }, { id: 7, value: "7", text: "费用待定", name: "费用待定", name1: `费用待定` }, ]; return returnFeeTypeArray; }), (CommonUtil.getReturnFeeTypeNameById = function (id) { let str = ""; console.log(id); let array = this.returnFeeTypeArray(); array.forEach((item) => { if (item.id == id) { str = item.name; } }); return str; }), (CommonUtil.getReturnFeeTypeName1ById = function (id, value) { let str = ""; console.log(id); console.log(value); let array = this.returnFeeTypeArray(value); array.forEach((item) => { if (item.id == id) { str = item.name1; } }); return str; }), (CommonUtil.moneyToFixed = function (money, fixed = 2, multiplicator = 100) { if (money != 0 && money != null && money != "" && money != undefined) { return this.cutZero(new Number(money / multiplicator).toFixed(fixed)); } return "0"; }), (CommonUtil.cutZero = function (old) { //拷贝一份 返回去掉零的新串 let newstr = old; //循环变量 小数部分长度 var leng = old.length - old.indexOf(".") - 1; //判断是否有效数 if (old.indexOf(".") > -1) { //循环小数部分 for (var i = leng; i > 0; i--) { //如果newstr末尾有0 if (newstr.lastIndexOf("0") > -1 && newstr.substr(newstr.length - 1, 1) == 0) { var k = newstr.lastIndexOf("0"); //如果小数点后只有一个0 去掉小数点 if (newstr.charAt(k - 1) == ".") { return newstr.substring(0, k - 1); } else { //否则 去掉一个0 newstr = newstr.substring(0, k); } } else { //如果末尾没有0 return newstr; } } } return old; }); /** * 根据薪资类型和薪资值获取薪资展示 */ CommonUtil.getSalaryClassifyValue = function (salaryClassify, salaryClassifyValue) { var hourlyPay = this.moneyToFixed(salaryClassifyValue); // console.log(hourlyPay); // console.log(salaryClassify); if (salaryClassify == 0) { return `${hourlyPay}元/小时`; } else if (salaryClassify == 1) { return `${hourlyPay}元/天`; } else if (salaryClassify == 2) { return `补${hourlyPay}元`; } else if (salaryClassify == 3) { return `返${hourlyPay}元`; } else if (salaryClassify == 4) { return "计件"; } else if (salaryClassify == 5) { return `保底${hourlyPay}元`; } else if (salaryClassify == 6) { return `面议`; } else if (salaryClassify == 7) { return `月薪`; } else { // return '请配置薪资'; return "-"; } }; /* 处理详情地址 */ CommonUtil.setJobListInfoPosition = function (pos) { let city = []; let citys = []; if (this.isNotEmptyCheck(pos)) { city = pos.split(","); } city.forEach((i, index) => { if (this.isNotEmptyCheck(i) && index < 2) { citys.push(i); } }); citys = citys.join(",").replace(/,/g, " | "); return citys || "-"; }; CommonUtil.getCurrentPageUrlWithArgs = function () { const pages = getCurrentPages(); const currentPage = pages[pages.length - 1]; const url = currentPage.route; const options = currentPage.options; let urlWithArgs = `/${url}?`; for (let key in options) { const value = options[key]; urlWithArgs += `${key}=${value}&`; } urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1); return urlWithArgs; }; /** * 根据工种类型ID获取名称 */ CommonUtil.getGenderByMinAge = function (res) { console.log("==================", res); let str = ""; if (res.minAgeMan && res.minAgeWoman) { str = "男女不限"; } else if (res.minAgeMan && !res.minAgeWoman) { str = "仅限男性"; } else if (!res.minAgeMan && res.minAgeWoman) { str = "仅限女性"; } return str; }; /* 处理详情地址 */ CommonUtil.setJobInfoPosition = function(pos) { let city = []; let citys = []; if (isNotEmptyCheck(pos)) { city = pos.split(","); } city.forEach((i) => { if (isNotEmptyCheck(i)) { citys.push(i); } }); citys = citys.join(",").replace(/,/g, " | "); return citys || '-'; } /** * 对象深拷贝 */ CommonUtil.deepClone = function (obj, newObj) { var newObj = newObj || {}; for (let key in obj) { if (typeof obj[key] == 'object') { let isArray = Array.isArray(obj[key]); //判断是否数组 newObj[key] = (isArray == true ? [] : {}) deepClone(obj[key], newObj[key]); } else { newObj[key] = obj[key] } } return newObj; } /** * 代理成员权限 */ CommonUtil.agencyPermissionArray = function() { //查看职位、报名、查看报名、查看老乡、修改密码、修改手机号、新增成员、修改成员信息、删除成员 let workTypeArray = [ { id: 1, name: "查看职位", value: "job:list", text: "查看职位", checked: false }, { id: 2, name: "报名", value: "apply:add", text: "报名", checked: false }, { id: 3, name: "查看报名", value: "apply:list", text: "查看报名", checked: false }, { id: 4, name: "查看老乡", value: "apply:user", text: "查看老乡", checked: false }, { id: 5, name: "修改密码", value: "user:pwd", text: "修改密码", checked: false }, { id: 6, name: "修改手机号", value: "user:tel", text: "修改手机号", checked: false }, { id: 7, name: "新增成员", value: "user:add", text: "新增成员", checked: false }, { id: 8, name: "修改成员信息", value: "user:update", text: "修改成员信息", checked: false }, { id: 9, name: "删除成员", value: "user:del", text: "删除成员", checked: false }, ]; return workTypeArray; } /** * 根据代理权限ID获取名称 */ CommonUtil.getAgencyPermissionNameById = function(permissionStr) { let str = ""; let array = this.agencyPermissionArray(); let names = []; let permissions = permissionStr.split(","); array.forEach((item) => { if (permissions.indexOf(item.value) >= 0) { names.push(item.name); } }); return names.join(","); } /** * 根据代理角色获取权限 */ CommonUtil.getAgencyPermissionsByRole = function(role) { if (role == 1) { return "job:list,apply:add,apply:list,apply:user,user:pwd,user:tel,user:add,user:update,user:del"; } else { return "job:list,apply:add,apply:list,apply:user,user:pwd,user:tel"; } } CommonUtil.nationArray = [ // 民族的数组 { name: "请选择民族", }, { id: "01", name: "汉族", }, { id: "02", name: "蒙古族", }, { id: "03", name: "满族", }, { id: "04", name: "朝鲜族", }, { id: "05", name: "赫哲族", }, { id: "06", name: "达斡尔族", }, { id: "07", name: "鄂温克族", }, { id: "08", name: "鄂伦春族", }, { id: "09", name: "回族", }, { id: "10", name: "东乡族", }, { id: "11", name: "土族", }, { id: "12", name: "撒拉族", }, { id: "13", name: "保安族", }, { id: "14", name: "裕固族", }, { id: "15", name: "维吾尔族", }, { id: "16", name: "哈萨克族", }, { id: "17", name: "柯尔克孜族", }, { id: "18", name: "锡伯族", }, { id: "19", name: "塔吉克族", }, { id: "20", name: "乌孜别克族", }, { id: "21", name: "俄罗斯族", }, { id: "22", name: "塔塔尔族", }, { id: "23", name: "藏族", }, { id: "24", name: "门巴族", }, { id: "25", name: "珞巴族", }, { id: "26", name: "羌族", }, { id: "27", name: "彝族", }, { id: "28", name: "白族", }, { id: "29", name: "哈尼族", }, { id: "30", name: "傣族", }, { id: "31", name: "傈僳族", }, { id: "32", name: "佤族", }, { id: "33", name: "拉祜族", }, { id: "34", name: "纳西族", }, { id: "35", name: "景颇族", }, { id: "36", name: "布朗族", }, { id: "37", name: "阿昌族", }, { id: "38", name: "普米族", }, { id: "39", name: "怒族", }, { id: "40", name: "德昂族", }, { id: "41", name: "独龙族", }, { id: "42", name: "基诺族", }, { id: "43", name: "苗族", }, { id: "44", name: "布依族", }, { id: "45", name: "侗族", }, { id: "46", name: "水族", }, { id: "47", name: "仡佬族", }, { id: "48", name: "壮族", }, { id: "49", name: "瑶族", }, { id: "50", name: "仫佬族", }, { id: "51", name: "毛南族", }, { id: "52", name: "京族", }, { id: "53", name: "土家族", }, { id: "54", name: "黎族", }, { id: "55", name: "畲族", }, { id: "56", name: "高山族", }, ]; module.exports = CommonUtil;