UNPKG

zhilian-auto-hi

Version:

智联招聘自动打招呼工具 - 自动化招聘流程的命令行工具

94 lines (93 loc) 2.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.extractGender = extractGender; exports.checkGenderMatch = checkGenderMatch; exports.getGenderDescription = getGenderDescription; exports.getGenderFilterDescription = getGenderFilterDescription; /** * 性别相关工具函数 */ /** * 从姓名中提取性别信息 * @param name 候选人姓名 * @returns 提取到的性别,如果无法识别则返回'unknown' */ function extractGender(name) { if (!name || typeof name !== 'string') { return 'unknown'; } const trimmedName = name.trim(); // 检查是否包含"女士" if (trimmedName.includes('女士')) { return 'female'; } // 检查是否包含"先生" if (trimmedName.includes('先生')) { return 'male'; } // 无法识别性别 return 'unknown'; } /** * 检查性别是否符合筛选条件 * @param extractedGender 提取到的性别 * @param genderFilter 性别筛选条件 * @returns 性别匹配结果 */ function checkGenderMatch(extractedGender, genderFilter) { // 如果没有设置性别筛选,则认为匹配 if (!genderFilter) { return { isMatch: true, extractedGender }; } // 如果无法识别性别,则不匹配 if (extractedGender === 'unknown') { return { isMatch: false, extractedGender }; } // 检查是否匹配筛选条件 const isMatch = extractedGender === genderFilter; return { isMatch, extractedGender }; } /** * 获取性别的中文描述 * @param gender 性别 * @returns 中文描述 */ function getGenderDescription(gender) { switch (gender) { case 'male': return '男性'; case 'female': return '女性'; case 'unknown': return '未知'; default: return '未知'; } } /** * 获取性别筛选条件的中文描述 * @param genderFilter 性别筛选条件 * @returns 中文描述 */ function getGenderFilterDescription(genderFilter) { if (!genderFilter) { return '不限制'; } switch (genderFilter) { case 'male': return '仅男性'; case 'female': return '仅女性'; default: return '不限制'; } }