邀请面试业务逻辑完善
This commit is contained in:
@@ -28,13 +28,13 @@ public class HotakeMeetingCalendarDetail extends BaseEntity
|
||||
@Excel(name = "会议ID")
|
||||
private Long meetingId;
|
||||
|
||||
/** 参会人员ID */
|
||||
@ApiModelProperty("参会人员ID")
|
||||
@Excel(name = "参会人员ID")
|
||||
private Long userId;
|
||||
/** 候选人ID */
|
||||
@ApiModelProperty("候选人ID")
|
||||
@Excel(name = "候选人ID")
|
||||
private Long candidateId;
|
||||
|
||||
@ApiModelProperty("参会人员详细信息")
|
||||
private SysUser user;
|
||||
@ApiModelProperty("候选人详细信息")
|
||||
private SysUser candidateUser;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -25,10 +25,13 @@ public class HotakeMeetingCalendarInfo extends BaseEntity
|
||||
@ApiModelProperty("主键ID")
|
||||
private Long id;
|
||||
|
||||
/** 用户ID */
|
||||
@ApiModelProperty("用户ID")
|
||||
@Excel(name = "用户ID")
|
||||
private Long userId;
|
||||
/** 招聘人ID */
|
||||
@ApiModelProperty("招聘人ID")
|
||||
@Excel(name = "招聘人ID")
|
||||
private Long recruiterId;
|
||||
|
||||
@ApiModelProperty("岗位申请ID")
|
||||
private Long roleApplyId;
|
||||
|
||||
/** 公司名称 */
|
||||
@ApiModelProperty("公司名称")
|
||||
@@ -50,11 +53,18 @@ public class HotakeMeetingCalendarInfo extends BaseEntity
|
||||
@Excel(name = "会议时间")
|
||||
private String times;
|
||||
|
||||
/** 发送消息方式(逗号分隔) */
|
||||
@ApiModelProperty("发送消息方式(逗号分隔)")
|
||||
@Excel(name = "发送消息方式(逗号分隔)")
|
||||
private String messageVia;
|
||||
|
||||
/** 状态(0 取消,1 正常) */
|
||||
@ApiModelProperty("状态(0 取消,1 正常)")
|
||||
@Excel(name = "状态", readConverterExp = "0=,取=消,1,正=常")
|
||||
private String status;
|
||||
|
||||
@ApiModelProperty("岗位基本信息")
|
||||
private HotakeRolesInfo rolesInfo;
|
||||
|
||||
@ApiModelProperty("参会人员")
|
||||
private List<HotakeMeetingCalendarDetail> calendarDetails;
|
||||
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.vetti.hotake.domain.vo;
|
||||
|
||||
import com.vetti.common.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* 面试邀请会议记录
|
||||
*
|
||||
* @author wangxiangshun
|
||||
* @date 2025-12-14
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class HotakeMeetingCalendarInfoVo {
|
||||
|
||||
/** 候选人ID */
|
||||
@ApiModelProperty("候选人ID")
|
||||
@Excel(name = "候选人ID")
|
||||
private Long candidateId;
|
||||
|
||||
/** 会议日期 */
|
||||
@ApiModelProperty("会议日期(年月日)")
|
||||
@Excel(name = "会议日期")
|
||||
private String meetingDate;
|
||||
|
||||
/** 会议时间 */
|
||||
@ApiModelProperty("会议时间")
|
||||
@Excel(name = "会议时间")
|
||||
private String times;
|
||||
|
||||
/** 发送消息方式(逗号分隔) */
|
||||
@ApiModelProperty("发送消息方式(逗号分隔)")
|
||||
@Excel(name = "发送消息方式(逗号分隔)")
|
||||
private String messageVia;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.vetti.hotake.domain.vo;
|
||||
|
||||
import com.vetti.common.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 面试邀请会议
|
||||
*
|
||||
* @author wangxiangshun
|
||||
* @date 2025-12-14
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class HotakeMeetingCalendarVo {
|
||||
|
||||
/** 招聘人ID */
|
||||
@ApiModelProperty("招聘人ID")
|
||||
@Excel(name = "招聘人ID")
|
||||
private Long recruiterId;
|
||||
|
||||
/** 岗位申请ID */
|
||||
@ApiModelProperty("岗位申请ID")
|
||||
@Excel(name = "岗位申请ID")
|
||||
private Long roleApplyId;
|
||||
|
||||
/** 面试邀请数据集合 */
|
||||
@ApiModelProperty("面试邀请数据集合")
|
||||
@Excel(name = "面试邀请数据集合")
|
||||
private List<HotakeMeetingCalendarInfoVo> calendarInfoVoList;
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package com.vetti.hotake.service;
|
||||
|
||||
import java.util.List;
|
||||
import com.vetti.hotake.domain.HotakeMeetingCalendarInfo;
|
||||
import com.vetti.hotake.domain.vo.HotakeMeetingCalendarVo;
|
||||
|
||||
/**
|
||||
* 会议日历记录主Service接口
|
||||
@@ -67,4 +68,14 @@ public interface IHotakeMeetingCalendarInfoService
|
||||
*/
|
||||
public int batchInsertHotakeMeetingCalendarInfo(List<HotakeMeetingCalendarInfo> hotakeMeetingCalendarInfoList);
|
||||
|
||||
|
||||
/**
|
||||
* 保存会议日历记录
|
||||
*
|
||||
* @param calendarVo 面试邀请信息
|
||||
* @return 结果
|
||||
*/
|
||||
public void saveHotakeMeetingCalendarInfo(HotakeMeetingCalendarVo calendarVo);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -8,7 +8,16 @@ import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.vetti.common.core.domain.entity.SysUser;
|
||||
import com.vetti.common.core.service.BaseServiceImpl;
|
||||
import com.vetti.common.enums.FillTypeEnum;
|
||||
import com.vetti.common.enums.MeetingCalendarStatus;
|
||||
import com.vetti.common.enums.StageEnum;
|
||||
import com.vetti.hotake.domain.HotakeMeetingCalendarDetail;
|
||||
import com.vetti.hotake.domain.HotakeRolesApplyInfo;
|
||||
import com.vetti.hotake.domain.HotakeRolesInfo;
|
||||
import com.vetti.hotake.domain.vo.HotakeMeetingCalendarInfoVo;
|
||||
import com.vetti.hotake.domain.vo.HotakeMeetingCalendarVo;
|
||||
import com.vetti.hotake.mapper.HotakeMeetingCalendarDetailMapper;
|
||||
import com.vetti.hotake.mapper.HotakeRolesApplyInfoMapper;
|
||||
import com.vetti.hotake.mapper.HotakeRolesInfoMapper;
|
||||
import com.vetti.hotake.service.IHotakeMeetingCalendarDetailService;
|
||||
import com.vetti.system.service.ISysUserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -28,12 +37,26 @@ import com.vetti.hotake.service.IHotakeMeetingCalendarInfoService;
|
||||
@SuppressWarnings("all")
|
||||
@Service
|
||||
public class HotakeMeetingCalendarInfoServiceImpl extends BaseServiceImpl implements IHotakeMeetingCalendarInfoService {
|
||||
|
||||
private final String meetingName = "Interview Invitation";
|
||||
|
||||
|
||||
@Autowired
|
||||
private HotakeMeetingCalendarInfoMapper hotakeMeetingCalendarInfoMapper;
|
||||
|
||||
@Autowired
|
||||
private HotakeMeetingCalendarDetailMapper hotakeMeetingCalendarDetailMapper;
|
||||
|
||||
@Autowired
|
||||
private IHotakeMeetingCalendarDetailService calendarDetailService;
|
||||
|
||||
@Autowired
|
||||
private HotakeRolesInfoMapper hotakeRolesInfoMapper;
|
||||
|
||||
@Autowired
|
||||
private HotakeRolesApplyInfoMapper hotakeRolesApplyInfoMapper;
|
||||
|
||||
|
||||
@Autowired
|
||||
private ISysUserService userService;
|
||||
|
||||
@@ -47,21 +70,42 @@ public class HotakeMeetingCalendarInfoServiceImpl extends BaseServiceImpl implem
|
||||
@Override
|
||||
public HotakeMeetingCalendarInfo selectHotakeMeetingCalendarInfoById(Long id) {
|
||||
HotakeMeetingCalendarInfo calendarInfo = hotakeMeetingCalendarInfoMapper.selectHotakeMeetingCalendarInfoById(id);
|
||||
|
||||
//查询岗位数据
|
||||
HotakeRolesInfo query = new HotakeRolesInfo();
|
||||
List<HotakeRolesInfo> rolesInfoList = hotakeRolesInfoMapper.selectHotakeRolesInfoList(query);
|
||||
|
||||
//查询岗位数据
|
||||
HotakeRolesApplyInfo queryApply = new HotakeRolesApplyInfo();
|
||||
List<HotakeRolesApplyInfo> applyInfoList = hotakeRolesApplyInfoMapper.selectHotakeRolesApplyInfoList(queryApply);
|
||||
|
||||
//获取对应的参会人员数据
|
||||
HotakeMeetingCalendarDetail queryDetail = new HotakeMeetingCalendarDetail();
|
||||
List<HotakeMeetingCalendarDetail> detailList = calendarDetailService.selectHotakeMeetingCalendarDetailList(queryDetail);
|
||||
if (CollectionUtil.isNotEmpty(detailList)) {
|
||||
|
||||
Map<Long, List<HotakeMeetingCalendarDetail>> mapDetailList = detailList.stream().collect(Collectors.groupingBy(HotakeMeetingCalendarDetail::getMeetingId));
|
||||
SysUser queryUser = new SysUser();
|
||||
List<SysUser> userList = userService.selectUserList(queryUser);
|
||||
List<HotakeMeetingCalendarDetail> calendarDetails = mapDetailList.get(calendarInfo.getId());
|
||||
for (HotakeMeetingCalendarDetail detail : calendarDetails) {
|
||||
List<SysUser> users = userList.stream().filter(e -> e.getUserId() == detail.getUserId()).collect(Collectors.toList());
|
||||
List<SysUser> users = userList.stream().filter(e -> e.getUserId() == detail.getCandidateId()).collect(Collectors.toList());
|
||||
if (CollectionUtil.isNotEmpty(users)) {
|
||||
detail.setUser(users.get(0));
|
||||
detail.setCandidateUser(users.get(0));
|
||||
}
|
||||
}
|
||||
calendarInfo.setCalendarDetails(calendarDetails);
|
||||
//返回岗位数据信息
|
||||
//返回岗位数据信息
|
||||
List<HotakeRolesApplyInfo> applyInfos = applyInfoList.stream().filter(e->e.getId().longValue() == calendarInfo.getRoleApplyId().longValue()).toList();
|
||||
if(CollectionUtil.isNotEmpty(applyInfos)) {
|
||||
HotakeRolesApplyInfo applyInfo = applyInfos.get(0);
|
||||
List<HotakeRolesInfo> rolesInfos = rolesInfoList.stream().filter(e->e.getId().longValue() == applyInfo.getRoleId().longValue()).toList();
|
||||
if(CollectionUtil.isNotEmpty(rolesInfos)) {
|
||||
HotakeRolesInfo rolesInfo = rolesInfos.get(0);
|
||||
calendarInfo.setRolesInfo(rolesInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
return calendarInfo;
|
||||
}
|
||||
@@ -77,6 +121,13 @@ public class HotakeMeetingCalendarInfoServiceImpl extends BaseServiceImpl implem
|
||||
public List<HotakeMeetingCalendarInfo> selectHotakeMeetingCalendarInfoList(HotakeMeetingCalendarInfo hotakeMeetingCalendarInfo) {
|
||||
List<HotakeMeetingCalendarInfo> calendarInfos = hotakeMeetingCalendarInfoMapper.selectHotakeMeetingCalendarInfoList(hotakeMeetingCalendarInfo);
|
||||
if (CollectionUtil.isNotEmpty(calendarInfos)) {
|
||||
//查询岗位数据
|
||||
HotakeRolesInfo query = new HotakeRolesInfo();
|
||||
List<HotakeRolesInfo> rolesInfoList = hotakeRolesInfoMapper.selectHotakeRolesInfoList(query);
|
||||
|
||||
//查询岗位数据
|
||||
HotakeRolesApplyInfo queryApply = new HotakeRolesApplyInfo();
|
||||
List<HotakeRolesApplyInfo> applyInfoList = hotakeRolesApplyInfoMapper.selectHotakeRolesApplyInfoList(queryApply);
|
||||
//获取对应的参会人员数据
|
||||
HotakeMeetingCalendarDetail queryDetail = new HotakeMeetingCalendarDetail();
|
||||
List<HotakeMeetingCalendarDetail> detailList = calendarDetailService.selectHotakeMeetingCalendarDetailList(queryDetail);
|
||||
@@ -87,12 +138,22 @@ public class HotakeMeetingCalendarInfoServiceImpl extends BaseServiceImpl implem
|
||||
for (HotakeMeetingCalendarInfo calendarInfo : calendarInfos) {
|
||||
List<HotakeMeetingCalendarDetail> calendarDetails = mapDetailList.get(calendarInfo.getId());
|
||||
for (HotakeMeetingCalendarDetail detail : calendarDetails) {
|
||||
List<SysUser> users = userList.stream().filter(e -> e.getUserId() == detail.getUserId()).collect(Collectors.toList());
|
||||
List<SysUser> users = userList.stream().filter(e -> e.getUserId() == detail.getCandidateId()).collect(Collectors.toList());
|
||||
if (CollectionUtil.isNotEmpty(users)) {
|
||||
detail.setUser(users.get(0));
|
||||
detail.setCandidateUser(users.get(0));
|
||||
}
|
||||
}
|
||||
calendarInfo.setCalendarDetails(calendarDetails);
|
||||
//返回岗位数据信息
|
||||
List<HotakeRolesApplyInfo> applyInfos = applyInfoList.stream().filter(e->e.getId().longValue() == calendarInfo.getRoleApplyId().longValue()).toList();
|
||||
if(CollectionUtil.isNotEmpty(applyInfos)) {
|
||||
HotakeRolesApplyInfo applyInfo = applyInfos.get(0);
|
||||
List<HotakeRolesInfo> rolesInfos = rolesInfoList.stream().filter(e->e.getId().longValue() == applyInfo.getRoleId().longValue()).toList();
|
||||
if(CollectionUtil.isNotEmpty(rolesInfos)) {
|
||||
HotakeRolesInfo rolesInfo = rolesInfos.get(0);
|
||||
calendarInfo.setRolesInfo(rolesInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -110,7 +171,6 @@ public class HotakeMeetingCalendarInfoServiceImpl extends BaseServiceImpl implem
|
||||
public HotakeMeetingCalendarInfo insertHotakeMeetingCalendarInfo(HotakeMeetingCalendarInfo hotakeMeetingCalendarInfo) {
|
||||
fill(FillTypeEnum.INSERT.getCode(), hotakeMeetingCalendarInfo);
|
||||
hotakeMeetingCalendarInfoMapper.insertHotakeMeetingCalendarInfo(hotakeMeetingCalendarInfo);
|
||||
|
||||
//保存参会人员
|
||||
//1.1 先删除对应的参会人员
|
||||
calendarDetailService.deleteHotakeMeetingCalendarDetailByInfoId(hotakeMeetingCalendarInfo.getId());
|
||||
@@ -182,4 +242,41 @@ public class HotakeMeetingCalendarInfoServiceImpl extends BaseServiceImpl implem
|
||||
public int batchInsertHotakeMeetingCalendarInfo(List<HotakeMeetingCalendarInfo> hotakeMeetingCalendarInfoList) {
|
||||
return hotakeMeetingCalendarInfoMapper.batchInsertHotakeMeetingCalendarInfo(hotakeMeetingCalendarInfoList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存会议日历记录
|
||||
* @param calendarVo 面试邀请信息
|
||||
*/
|
||||
@Override
|
||||
public void saveHotakeMeetingCalendarInfo(HotakeMeetingCalendarVo calendarVo) {
|
||||
//保存面试邀请数据
|
||||
if(CollectionUtil.isNotEmpty(calendarVo.getCalendarInfoVoList())){
|
||||
for(HotakeMeetingCalendarInfoVo calendarInfoVo : calendarVo.getCalendarInfoVoList()){
|
||||
HotakeMeetingCalendarInfo calendarInfo = new HotakeMeetingCalendarInfo();
|
||||
calendarInfo.setRoleApplyId(calendarVo.getRoleApplyId());
|
||||
calendarInfo.setRecruiterId(calendarVo.getRecruiterId());
|
||||
calendarInfo.setMeetingDate(calendarInfoVo.getMeetingDate());
|
||||
calendarInfo.setTimes(calendarInfoVo.getTimes());
|
||||
calendarInfo.setMessageVia(calendarInfoVo.getMessageVia());
|
||||
calendarInfo.setStatus(MeetingCalendarStatus.NORMAL.getCode());
|
||||
calendarInfo.setMeetingName(meetingName);
|
||||
//保存主表数据
|
||||
fill(FillTypeEnum.INSERT.getCode(), calendarInfo);
|
||||
insertHotakeMeetingCalendarInfo(calendarInfo);
|
||||
//保存明细数据
|
||||
HotakeMeetingCalendarDetail hotakeMeetingCalendarDetail = new HotakeMeetingCalendarDetail();
|
||||
hotakeMeetingCalendarDetail.setMeetingId(calendarInfo.getId());
|
||||
hotakeMeetingCalendarDetail.setCandidateId(calendarInfoVo.getCandidateId());
|
||||
fill(FillTypeEnum.INSERT.getCode(), hotakeMeetingCalendarDetail);
|
||||
hotakeMeetingCalendarDetailMapper.insertHotakeMeetingCalendarDetail(hotakeMeetingCalendarDetail);
|
||||
|
||||
//更新申请岗位状态
|
||||
HotakeRolesApplyInfo applyInfo = new HotakeRolesApplyInfo();
|
||||
applyInfo.setId(calendarVo.getRoleApplyId());
|
||||
applyInfo.setStage(StageEnum.INTERVIEW.getCode());
|
||||
hotakeRolesApplyInfoMapper.updateHotakeRolesApplyInfo(applyInfo);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,6 +77,11 @@ public class HotakeRolesApplyInfoServiceImpl extends BaseServiceImpl implements
|
||||
applyInfo.setRolesInfo(rolesInfo);
|
||||
}
|
||||
}
|
||||
if(StrUtil.isNotEmpty(applyInfo.getCvTemplateJson())){
|
||||
HotakeCvInfoDto cvInfoDto = handleAnalysisCvInfo(applyInfo.getCvTemplateJson());
|
||||
applyInfo.setCvInfoDto(cvInfoDto);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
return applyInfoList;
|
||||
|
||||
@@ -7,7 +7,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<resultMap type="HotakeMeetingCalendarDetail" id="HotakeMeetingCalendarDetailResult">
|
||||
<result property="id" column="id" />
|
||||
<result property="meetingId" column="meeting_id" />
|
||||
<result property="userId" column="user_id" />
|
||||
<result property="candidateId" column="candidate_id" />
|
||||
<result property="delFlag" column="del_flag" />
|
||||
<result property="createBy" column="create_by" />
|
||||
<result property="createTime" column="create_time" />
|
||||
@@ -17,14 +17,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectHotakeMeetingCalendarDetailVo">
|
||||
select id, meeting_id, user_id, del_flag, create_by, create_time, update_by, update_time, remark from hotake_meeting_calendar_detail
|
||||
select id, meeting_id, candidate_id, del_flag, create_by, create_time, update_by, update_time, remark from hotake_meeting_calendar_detail
|
||||
</sql>
|
||||
|
||||
<select id="selectHotakeMeetingCalendarDetailList" parameterType="HotakeMeetingCalendarDetail" resultMap="HotakeMeetingCalendarDetailResult">
|
||||
<include refid="selectHotakeMeetingCalendarDetailVo"/>
|
||||
<where>
|
||||
<if test="meetingId != null "> and meeting_id = #{meetingId}</if>
|
||||
<if test="userId != null "> and user_id = #{userId}</if>
|
||||
<if test="candidateId != null "> and candidate_id = #{candidateId}</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
@@ -37,7 +37,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
insert into hotake_meeting_calendar_detail
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="meetingId != null">meeting_id,</if>
|
||||
<if test="userId != null">user_id,</if>
|
||||
<if test="candidateId != null">candidate_id,</if>
|
||||
<if test="delFlag != null">del_flag,</if>
|
||||
<if test="createBy != null">create_by,</if>
|
||||
<if test="createTime != null">create_time,</if>
|
||||
@@ -47,7 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="meetingId != null">#{meetingId},</if>
|
||||
<if test="userId != null">#{userId},</if>
|
||||
<if test="candidateId != null">#{candidateId},</if>
|
||||
<if test="delFlag != null">#{delFlag},</if>
|
||||
<if test="createBy != null">#{createBy},</if>
|
||||
<if test="createTime != null">#{createTime},</if>
|
||||
@@ -61,7 +61,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
update hotake_meeting_calendar_detail
|
||||
<trim prefix="SET" suffixOverrides=",">
|
||||
<if test="meetingId != null">meeting_id = #{meetingId},</if>
|
||||
<if test="userId != null">user_id = #{userId},</if>
|
||||
<if test="candidateId != null">candidate_id = #{candidateId},</if>
|
||||
<if test="delFlag != null">del_flag = #{delFlag},</if>
|
||||
<if test="createBy != null">create_by = #{createBy},</if>
|
||||
<if test="createTime != null">create_time = #{createTime},</if>
|
||||
@@ -88,9 +88,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</delete>
|
||||
|
||||
<insert id="batchInsertHotakeMeetingCalendarDetail">
|
||||
insert into hotake_meeting_calendar_detail( id, meeting_id, user_id, del_flag, create_by, create_time, update_by, update_time, remark) values
|
||||
insert into hotake_meeting_calendar_detail( id, meeting_id, candidate_id, del_flag, create_by, create_time, update_by, update_time, remark) values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
( #{item.id}, #{item.meetingId}, #{item.userId}, #{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
|
||||
( #{item.id}, #{item.meetingId}, #{item.candidateId}, #{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
|
||||
</foreach>
|
||||
</insert>
|
||||
</mapper>
|
||||
@@ -6,12 +6,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
|
||||
<resultMap type="HotakeMeetingCalendarInfo" id="HotakeMeetingCalendarInfoResult">
|
||||
<result property="id" column="id" />
|
||||
<result property="userId" column="user_id" />
|
||||
<result property="recruiterId" column="recruiter_id" />
|
||||
<result property="roleApplyId" column="role_apply_id" />
|
||||
<result property="compName" column="comp_name" />
|
||||
<result property="meetingName" column="meeting_name" />
|
||||
<result property="meetingDate" column="meeting_date" />
|
||||
<result property="times" column="times" />
|
||||
<result property="status" column="status" />
|
||||
<result property="messageVia" column="message_via" />
|
||||
<result property="delFlag" column="del_flag" />
|
||||
<result property="createBy" column="create_by" />
|
||||
<result property="createTime" column="create_time" />
|
||||
@@ -21,13 +23,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectHotakeMeetingCalendarInfoVo">
|
||||
select id, user_id, comp_name, meeting_name, meeting_date, times, status, del_flag, create_by, create_time, update_by, update_time, remark from hotake_meeting_calendar_info
|
||||
select id, recruiter_id,role_apply_id, comp_name, meeting_name, meeting_date, times, status,message_via,
|
||||
del_flag, create_by, create_time, update_by, update_time, remark from hotake_meeting_calendar_info
|
||||
</sql>
|
||||
|
||||
<select id="selectHotakeMeetingCalendarInfoList" parameterType="HotakeMeetingCalendarInfo" resultMap="HotakeMeetingCalendarInfoResult">
|
||||
<include refid="selectHotakeMeetingCalendarInfoVo"/>
|
||||
<where>
|
||||
<if test="userId != null "> and user_id = #{userId}</if>
|
||||
<if test="recruiterId != null "> and recruiter_id = #{recruiterId}</if>
|
||||
<if test="roleApplyId != null "> and role_apply_id = #{roleApplyId}</if>
|
||||
<if test="compName != null and compName != ''"> and comp_name like concat('%', #{compName}, '%')</if>
|
||||
<if test="meetingName != null and meetingName != ''"> and meeting_name like concat('%', #{meetingName}, '%')</if>
|
||||
<if test="meetingDate != null and meetingDate != ''"> and meeting_date = #{meetingDate}</if>
|
||||
@@ -44,12 +48,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<insert id="insertHotakeMeetingCalendarInfo" parameterType="HotakeMeetingCalendarInfo" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into hotake_meeting_calendar_info
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="userId != null">user_id,</if>
|
||||
<if test="recruiterId != null">recruiter_id,</if>
|
||||
<if test="roleApplyId != null">role_apply_id,</if>
|
||||
<if test="compName != null">comp_name,</if>
|
||||
<if test="meetingName != null">meeting_name,</if>
|
||||
<if test="meetingDate != null">meeting_date,</if>
|
||||
<if test="times != null">times,</if>
|
||||
<if test="status != null">status,</if>
|
||||
<if test="messageVia != null">message_via,</if>
|
||||
<if test="delFlag != null">del_flag,</if>
|
||||
<if test="createBy != null">create_by,</if>
|
||||
<if test="createTime != null">create_time,</if>
|
||||
@@ -58,12 +64,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<if test="remark != null">remark,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="userId != null">#{userId},</if>
|
||||
<if test="recruiterId != null">#{recruiterId},</if>
|
||||
<if test="roleApplyId != null">#{roleApplyId},</if>
|
||||
<if test="compName != null">#{compName},</if>
|
||||
<if test="meetingName != null">#{meetingName},</if>
|
||||
<if test="meetingDate != null">#{meetingDate},</if>
|
||||
<if test="times != null">#{times},</if>
|
||||
<if test="status != null">#{status},</if>
|
||||
<if test="messageVia != null">#{messageVia},</if>
|
||||
<if test="delFlag != null">#{delFlag},</if>
|
||||
<if test="createBy != null">#{createBy},</if>
|
||||
<if test="createTime != null">#{createTime},</if>
|
||||
@@ -76,12 +84,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<update id="updateHotakeMeetingCalendarInfo" parameterType="HotakeMeetingCalendarInfo">
|
||||
update hotake_meeting_calendar_info
|
||||
<trim prefix="SET" suffixOverrides=",">
|
||||
<if test="userId != null">user_id = #{userId},</if>
|
||||
<if test="recruiterId != null">recruiter_id = #{recruiterId},</if>
|
||||
<if test="roleApplyId != null">role_apply_id = #{roleApplyId},</if>
|
||||
<if test="compName != null">comp_name = #{compName},</if>
|
||||
<if test="meetingName != null">meeting_name = #{meetingName},</if>
|
||||
<if test="meetingDate != null">meeting_date = #{meetingDate},</if>
|
||||
<if test="times != null">times = #{times},</if>
|
||||
<if test="status != null">status = #{status},</if>
|
||||
<if test="messageVia != null">message_via = #{messageVia},</if>
|
||||
<if test="delFlag != null">del_flag = #{delFlag},</if>
|
||||
<if test="createBy != null">create_by = #{createBy},</if>
|
||||
<if test="createTime != null">create_time = #{createTime},</if>
|
||||
@@ -104,9 +114,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</delete>
|
||||
|
||||
<insert id="batchInsertHotakeMeetingCalendarInfo">
|
||||
insert into hotake_meeting_calendar_info( id, user_id, comp_name, meeting_name, meeting_date, times, status, del_flag, create_by, create_time, update_by, update_time, remark) values
|
||||
insert into hotake_meeting_calendar_info( id, recruiter_id,role_apply_id, comp_name, meeting_name, meeting_date, times,
|
||||
status, message_via,del_flag, create_by, create_time, update_by, update_time, remark) values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
( #{item.id}, #{item.userId}, #{item.compName}, #{item.meetingName}, #{item.meetingDate}, #{item.times}, #{item.status}, #{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
|
||||
( #{item.id}, #{item.recruiterId},#{item.roleApplyId}, #{item.compName}, #{item.meetingName},
|
||||
#{item.meetingDate}, #{item.times}, #{item.status},#{item.messageVia} ,#{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
|
||||
</foreach>
|
||||
</insert>
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user