package com.newyetai.recruit.position.dto; import com.fasterxml.jackson.annotation.JsonFormat; import com.newyetai.common.dto.BaseDTO; import com.newyetai.common.util.IdcardUtils; import com.newyetai.recruit.user.dto.JobExpectDTO; import com.newyetai.recruit.user.dto.ResumeDTO; import com.newyetai.recruit.user.dto.UserCertificateDTO; import org.springframework.format.annotation.DateTimeFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.*; import lombok.experimental.SuperBuilder; import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * 岗位报名信息表 * * @author guixinman * @since 1.0.0 2024-04-15 */ @ApiModel("岗位报名信息表") @Data @SuperBuilder @NoArgsConstructor @AllArgsConstructor @EqualsAndHashCode(callSuper = true) public class PositionRegistrationDTO extends BaseDTO { private static final long serialVersionUID = 1L; @ApiModelProperty("岗位ID") private Long positionId; @ApiModelProperty("用户ID ") private Long userId; @ApiModelProperty("状态:1已报名、2待面试、3面试不通过、4待入职、5已入职、 6已离职、 7结束招聘") private String status; @ApiModelProperty("面试时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date interviewTime; @ApiModelProperty("面试地点") private String interviewLocation; @ApiModelProperty("入职时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date inductionTime; @ApiModelProperty("离职时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date quitTime; @ApiModelProperty("终止时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date terminationTime; @ApiModelProperty("入职薪水") private BigDecimal salary; @ApiModelProperty("备注") private String remark; private String positionName; private Long companyId; private String companyName; private String realName; private String cardNo; private String phone; /** * 招聘专员 */ private String recruitUserName; @ApiModelProperty("性别") private String gender; @ApiModelProperty("年龄") private Integer age; @ApiModelProperty("所在城市") private String cityCode; private String cityCodeName; @ApiModelProperty("简历") private String resumeFileCode; @ApiModelProperty("求职期望") private List jobExpectDTOList; @ApiModelProperty("证书") private List userCertificateDTOList; private Boolean canShow; @ApiModelProperty("所属街道名称") private String streetName; @ApiModelProperty("发布机构名称") private String publishOrgName; /** * 标签 */ private String tag; private ResumeDTO resumeDTO; public void setCardNo(String cardNo) { this.setAge(IdcardUtils.getAgeByIDNumber(cardNo)); this.setGender(IdcardUtils.judgeGender(cardNo)); this.cardNo = cardNo; } }