feat: add recruitment fair participant export

This commit is contained in:
2026-07-23 18:35:18 +08:00
parent 3f11837e94
commit e558e70b45
7 changed files with 1013 additions and 0 deletions

View File

@@ -0,0 +1,89 @@
package com.ruoyi.cms.domain.export;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* 招聘会参会企业/岗位导出条件。
*
* <p>线上招聘会和户外招聘会共用这组条件,未被某一类招聘会使用的字段会被忽略。
* 时间条件使用闭区间,便于页面按“开始时间/结束时间”筛选整个招聘会。</p>
*/
@Data
@ApiModel("招聘会参会数据导出条件")
public class RecruitmentFairExportQuery implements Serializable
{
private static final long serialVersionUID = 1L;
@ApiModelProperty("导出类型companies 企业、jobs 岗位、companyJobs 企业及岗位")
private String exportType = "companies";
@ApiModelProperty("招聘会标题")
private String title;
@ApiModelProperty("举办单位")
private String hostUnit;
@ApiModelProperty("招聘会类型")
private String fairType;
@ApiModelProperty("举办区域/区域类型")
private String region;
@ApiModelProperty("场地ID")
private Long venueId;
@ApiModelProperty("场地名称")
private String venueName;
@ApiModelProperty("举办地址")
private String address;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("招聘会开始时间下限")
private Date startTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("招聘会结束时间上限")
private Date endTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("报名开始时间下限")
private Date applyStartTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("报名截止时间上限")
private Date applyEndTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("创建时间下限")
private Date createStartTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("创建时间上限")
private Date createEndTime;
@ApiModelProperty("举办状态NOT_STARTED 未举办ONGOING 正在举办ENDED 已举办")
private String fairStatus;
@ApiModelProperty("是否跨域Y/N仅线上招聘会使用")
private String isCrossDomain;
@ApiModelProperty("是否开启线上申请true/false仅户外招聘会使用")
private Boolean onlineApply;
@ApiModelProperty("参会企业或岗位审核状态0待审核1通过2驳回")
private String reviewStatus;
}

View File

@@ -0,0 +1,66 @@
package com.ruoyi.cms.domain.export;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 招聘会导出行。线上和户外查询统一投影到该结构Excel 层负责字典显示值转换。
*/
@Data
public class RecruitmentFairExportRow implements Serializable
{
private static final long serialVersionUID = 1L;
private String fairId;
private String channel;
private String fairTitle;
private String fairAddress;
private String fairType;
private String fairRegion;
private String fairVenueName;
private String isCrossDomain;
private Boolean onlineApply;
private Date fairStartTime;
private Date fairEndTime;
private Date applyStartTime;
private Date applyEndTime;
private Date fairCreateTime;
private String fairHostUnit;
private String fairHelpUnit;
private String fairOrganizeUnit;
private String fairPhone;
private String fairCategory;
private Long companyId;
private String companyName;
private String companyType;
private String companyIndustry;
private String companyScale;
private String companyLocation;
private String companyCode;
private String contactPerson;
private String contactPhone;
private Integer companyStatus;
private String companyReviewStatus;
private String companyReviewRemark;
private Long jobId;
private String jobTitle;
private Integer minSalary;
private Integer maxSalary;
private String salaryComposition;
private String welfareBenefits;
private String workSchedule;
private String education;
private String experience;
private String jobType;
private String jobCategory;
private String jobLocation;
private String jobAddress;
private Integer vacancies;
private Date postingDate;
private String jobReviewStatus;
private String jobReviewRemark;
}