/// <summary> /// 职位的短名称 /// 互联网_开发==》开发 /// </summary> /// <param name="industryPost"></param> /// <returns></returns> public static string ShortName(this IndustryPost industryPost) { // StringBuilder sb = new StringBuilder(); var ss = industryPost.ToString().Split('_'); return(ss[ss.Length - 1]);//返回最后一段 }
/// <summary> /// 职位的'干净'名称 /// 互联网软件_市场营销_营销总监->营销总监 /// </summary> /// <param name="industryPost"></param> /// <returns></returns> public static string PostName(this IndustryPost industryPost) { var name = industryPost.ToString(); int index = name.LastIndexOf('_'); if (index < 0) { return(name); } return(name.Substring(index + 1)); }
/// <summary> /// 判断是否一个数据库行业属于另外一个行业 /// 自身属于自身 /// </summary> /// <param name="industryPost">数据库行业字段</param> /// <param name="upIndustryPost">条件上级行业</param> /// <returns></returns> public static bool BelongTo(this IndustryPost industryPost, IndustryPost upIndustryPost) { //未定义不包含任何其它地区 if (upIndustryPost == IndustryPost.无) { return(false); } if (upIndustryPost.IsIndustryCategory()) //行业分类 { return((int)industryPost >= (int)upIndustryPost && (int)industryPost <= ((int)upIndustryPost | INDUSTRYMASK)); } if (upIndustryPost.IsIndustry()) //行业 { return((int)industryPost >= (int)upIndustryPost && (int)industryPost <= ((int)upIndustryPost | POSTMASK)); } return(industryPost == upIndustryPost); }
/// <summary> /// 得到行业下所有职位列表 /// </summary> /// <param name="industry"></param> /// <returns></returns> public static IEnumerable <IndustryPost> Posts(this IndustryPost industry) { return(GetAllIndustryPosts().Where(r => r.IsPost() && r.BelongTo(industry))); }
/// <summary> /// 得到具体行业,不判断是否合法 /// </summary> /// <param name="industryPost"></param> /// <returns></returns> public static IndustryPost Post(this IndustryPost industryPost) { return((IndustryPost)((int)industryPost & FULLPOSTMASK)); }
/// <summary> /// 判断是否是具体行业 /// </summary> /// <param name="industryPost"></param> /// <returns></returns> public static bool IsPost(this IndustryPost industryPost) { return(((int)industryPost & POSTMASK) != 0 && ((int)industryPost & ~FULLPOSTMASK) == 0); }
/// <summary> /// 得到具体行业,不判断是否合法 /// </summary> /// <param name="industryPost"></param> /// <returns></returns> public static IndustryPost Industry(this IndustryPost industryPost) { return((IndustryPost)((int)industryPost & FULLINDUSTRYMASK)); }
/// <summary> /// 判断是否是具体行业 /// </summary> /// <param name="region"></param> /// <returns></returns> public static bool IsIndustry(this IndustryPost industryPost) { return(((int)industryPost & INDUSTRYMASK) != 0 && ((int)industryPost & ~FULLINDUSTRYMASK) == 0); }
/// <summary> /// 得到行业对应的类别,不判断是否合法 /// </summary> /// <param name="industryPost"></param> /// <returns></returns> public static IndustryPost IndustryCategory(this IndustryPost industryPost) { return((IndustryPost)((int)industryPost & INDUSTRYCATEGORYMASK)); }
/// <summary> /// 判断是否是分类 /// </summary> /// <param name="industryPost"></param> /// <returns></returns> public static bool IsIndustryCategory(this IndustryPost industryPost) { return(((int)industryPost & INDUSTRYCATEGORYMASK) != 0 && ((int)industryPost & ~INDUSTRYCATEGORYMASK) == 0); }