添加岗位相关表

This commit is contained in:
zk
2026-03-18 16:07:22 +08:00
parent d2062c7e07
commit f0eec5fe3e
21 changed files with 576 additions and 3 deletions
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.ChinaRegionsCode;
/**
* 地区Mapper
*
* @author zk
*/
@Mapper
public interface ChinaRegionsCodeMapper extends CommonMapper<ChinaRegionsCode> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.Company;
/**
* 公司Mapper
*
* @author zk
*/
@Mapper
public interface CompanyMapper extends CommonMapper<Company> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.Industry;
/**
* 行业Mapper
*
* @author zk
*/
@Mapper
public interface IndustryMapper extends CommonMapper<Industry> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.JobCategory;
/**
* 岗位类型Mapper
*
* @author zk
*/
@Mapper
public interface JobCategoryMapper extends CommonMapper<JobCategory> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.Job;
/**
* 岗位Mapper
*
* @author zk
*/
@Mapper
public interface JobMapper extends CommonMapper<Job> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.JobRegionRelation;
/**
* 岗位-地区关联Mapper
*
* @author zk
*/
@Mapper
public interface JobRegionRelationMapper extends CommonMapper<JobRegionRelation> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.SkillTag;
/**
* 技能标签Mapper
*
* @author zk
*/
@Mapper
public interface SkillTagMapper extends CommonMapper<SkillTag> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.UserJobApplication;
/**
* 用户投递记录Mapper
*
* @author zk
*/
@Mapper
public interface UserJobApplicationMapper extends CommonMapper<UserJobApplication> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.UserJobDislike;
/**
* 用户不感兴趣记录Mapper
*
* @author zk
*/
@Mapper
public interface UserJobDislikeMapper extends CommonMapper<UserJobDislike> {
}
@@ -0,0 +1,13 @@
package org.jiayunet.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.jiayunet.pojo.po.UserJobFavorite;
/**
* 用户收藏岗位Mapper
*
* @author zk
*/
@Mapper
public interface UserJobFavoriteMapper extends CommonMapper<UserJobFavorite> {
}
@@ -0,0 +1,29 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 地区表(bg_china_regions_code
* <p>行政区划编码,省/市/区三级</p>
*
* @author zk
*/
@Data
@TableName(value = "bg_china_regions_code")
public class ChinaRegionsCode {
/** 行政区划编码(主键) */
@TableId
private String code;
/** 地区名称 */
private String name;
/** 市级编码,省级为null */
private String cityCode;
/** 省级编码,省级为null */
private String provinceCode;
}
@@ -0,0 +1,78 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.Instant;
/**
* 公司表(bg_company
*
* @author zk
*/
@Data
@TableName(value = "bg_company")
public class Company {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 公司名 */
private String name;
/** 公司简称 */
private String shortName;
/** logo地址 */
private String logoUrl;
/** 地区编码 */
private String regionCode;
/** 公司类型(上市企业、独角兽、国企等) */
private String companyType;
/** 行业ID */
private Long industryId;
/** 公司标签(JSON数组) */
private String tags;
/** 公司简要 */
private String summary;
/** 公司描述 */
private String description;
/** 成立时间 */
private String foundedYear;
/** 注册地址 */
private String address;
/** 企业规模(人数) */
private String scale;
/** 官网地址 */
private String website;
/** 融资状态 */
private String financingStage;
/** 最新估值 */
private String latestValuation;
/** 新闻动态(JSON数组) */
private String news;
/** 状态 0=待完善 1=已完善 2=禁用 */
private Integer status;
/** 创建时间 */
private Instant createTime;
/** 更新时间 */
private Instant updateTime;
}
@@ -0,0 +1,32 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 行业字典表(bg_industry
* <p>树形结构,一级/二级分类</p>
*
* @author zk
*/
@Data
@TableName(value = "bg_industry")
public class Industry {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 行业名称 */
private String name;
/** 根节点ID,顶级=自身ID */
private Long rootId;
/** 父级ID0=顶级 */
private Long parentId;
/** 层级 1=一级 2=二级 */
private Integer level;
}
@@ -0,0 +1,75 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.Instant;
/**
* 岗位表(bg_job
*
* @author zk
*/
@Data
@TableName(value = "bg_job")
public class Job {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 岗位名称 */
private String title;
/** 关联公司ID */
private Long companyId;
/** 岗位类型ID */
private Long categoryId;
/** 0=全职 1=兼职 */
private Integer employmentType;
/** 岗位职责 */
private String description;
/** 任职要求 */
private String requirement;
/** 加分项 */
private String bonus;
/** 岗位标签(JSON数组) */
private String tags;
/** 技能标签(JSON数组) */
private String skillTags;
/** 薪资描述,如15-25K·13薪、面议 */
private String salary;
/** 学历要求 0=不限 1=大专 2=本科 3=硕士 4=博士 */
private Integer education;
/** 最低工作年限,0=不要求 */
private Integer minExperience;
/** 行业经验,关联bg_industry */
private Long industryId;
/** 来源链接 */
private String sourceUrl;
/** 爬虫原始数据ID,用于去重 */
private String sourceId;
/** 状态 0=上架 1=下架 2=已失效 */
private Integer status;
/** 创建时间 */
private Instant createTime;
/** 更新时间 */
private Instant updateTime;
}
@@ -0,0 +1,32 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 岗位类型表(bg_job_category
* <p>树形结构,一级/二级分类</p>
*
* @author zk
*/
@Data
@TableName(value = "bg_job_category")
public class JobCategory {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 类型名称 */
private String name;
/** 根节点ID,顶级=自身ID */
private Long rootId;
/** 父级ID0=顶级 */
private Long parentId;
/** 层级 1=一级 2=二级 */
private Integer level;
}
@@ -0,0 +1,30 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.Instant;
/**
* 岗位-地区关联表(bg_job_region_relation
*
* @author zk
*/
@Data
@TableName(value = "bg_job_region_relation")
public class JobRegionRelation {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 岗位ID */
private Long jobId;
/** 地区编码 */
private String regionCode;
/** 创建时间 */
private Instant createTime;
}
@@ -0,0 +1,26 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 技能标签表(bg_skill_tag
* <p>挂在岗位类型下,不分级</p>
*
* @author zk
*/
@Data
@TableName(value = "bg_skill_tag")
public class SkillTag {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 标签名称 */
private String name;
/** 所属岗位类型ID */
private Long categoryId;
}
@@ -0,0 +1,39 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.Instant;
/**
* 用户投递记录表(bg_user_job_application
*
* @author zk
*/
@Data
@TableName(value = "bg_user_job_application")
public class UserJobApplication {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 用户ID */
private Long userId;
/** 岗位ID */
private Long jobId;
/** 投递状态 0=已投递 1=面试中 2=有Offer 3=未通过 4=已结束 */
private Integer status;
/** 投递时间 */
private Instant applyTime;
/** 创建时间 */
private Instant createTime;
/** 更新时间 */
private Instant updateTime;
}
@@ -0,0 +1,42 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.Instant;
/**
* 用户不感兴趣记录表(bg_user_job_dislike
*
* @author zk
*/
@Data
@TableName(value = "bg_user_job_dislike")
public class UserJobDislike {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 用户ID */
private Long userId;
/** 岗位ID */
private Long jobId;
/** 公司ID(冗余,方便按公司过滤) */
private Long companyId;
/** 地区编码(冗余,方便按地区过滤) */
private String regionCode;
/** 行业ID(冗余,方便按行业过滤) */
private Long industryId;
/** 原因 0=对公司不感兴趣 1=对岗位不感兴趣 2=对行业不感兴趣 3=技能不符合 4=地点不合适 5=其他 */
private Integer reason;
/** 创建时间 */
private Instant createTime;
}
@@ -0,0 +1,30 @@
package org.jiayunet.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.Instant;
/**
* 用户收藏岗位表(bg_user_job_favorite
*
* @author zk
*/
@Data
@TableName(value = "bg_user_job_favorite")
public class UserJobFavorite {
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/** 用户ID */
private Long userId;
/** 岗位ID */
private Long jobId;
/** 创建时间 */
private Instant createTime;
}