面试流程逻辑修改-全流程测试

This commit is contained in:
俞扬
2023-06-24 22:18:59 +08:00
parent d72f99348d
commit 10aceade69
25 changed files with 445 additions and 194 deletions

View File

@@ -1,25 +0,0 @@
package com.cool.store.mapper;
import com.cool.store.entity.HyPartnerInterviewLogDO;
import org.apache.ibatis.annotations.Param;
/**
* @author zhangchenbiao
* @date 2023-05-29 03:52
*/
public interface HyPartnerInterviewLogMapper {
/**
*
* 默认插入方法,只会给有值的字段赋值
* 会对传进来的字段做判空处理如果字段为空则使用数据库默认字段或者null
* dateTime:2023-05-29 03:52
*/
int insertSelective(@Param("record") HyPartnerInterviewLogDO record);
/**
*
* 默认更新方法根据主键更新不会把null值更新到数据库避免覆盖之前有值的
* dateTime:2023-05-29 03:52
*/
int updateByPrimaryKeySelective(@Param("record") HyPartnerInterviewLogDO record);
}

View File

@@ -1,12 +1,14 @@
package com.cool.store.mapper;
import com.cool.store.entity.HyPartnerInterviewDO;
import com.cool.store.request.GetInterviewListReq;
import com.cool.store.vo.EnterInterviewVO;
import com.cool.store.vo.EnterpriseUserBaseInfoVO;
import com.cool.store.vo.PartnerInterviewInfoVO;
import com.cool.store.vo.PartnerPassLetterDetailVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author zhangchenbiao
* @date 2023-06-09 05:51
@@ -60,4 +62,12 @@ public interface HyPartnerInterviewMapper {
* @return
*/
String getVerifyCityByInterviewId(@Param("interviewId") String interviewId);
/**
* 查询面试基本信息列表
* @param request
* @return
*/
List<HyPartnerInterviewDO> getInterviewBaseInfoList(@Param("record") GetInterviewListReq request);
void batchUpdateInterviewStatus(@Param("interviewIds") List<Long> interviewIdList, @Param("interviewStatus") Integer interviewStatus);
}

View File

@@ -102,4 +102,33 @@ public interface HyPartnerInterviewPlanMapper {
* @return
*/
List<HyPartnerInterviewPlanDO> selectBySelective(@Param("record") HyPartnerInterviewPlanDO record);
/**
* 批量软删面试计划
* @param record
* @return
*/
void batchDeleteInterviewPlans(@Param("interviewPlanIds")List<Long> interviewIds);
/**
* 通用更新房间状态方法
* @param record
* @param roomStatus
*/
void updateInterviewRoomStatus(@Param("record") HyPartnerInterviewPlanDO record,@Param("roomStatus")Integer roomStatus);
/**
* 仅适用于开启面试房间
* @param record
* @param roomStatus
*/
void openInterviewRoom(@Param("record") HyPartnerInterviewPlanDO record,@Param("roomStatus")Integer roomStatus);
/**
* 仅适用于关闭面试房间
* @param record
* @param roomStatus
*/
void closeInterviewRoom(@Param("record") HyPartnerInterviewPlanDO record,@Param("roomStatus")Integer roomStatus);
}

View File

@@ -1,88 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cool.store.mapper.HyPartnerInterviewLogMapper">
<resultMap id="BaseResultMap" type="com.cool.store.entity.HyPartnerInterviewLogDO">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="partner_line_id" jdbcType="BIGINT" property="partnerLineId" />
<result column="partner_interview_id" jdbcType="BIGINT" property="partnerInterviewId" />
<result column="message" jdbcType="VARCHAR" property="message" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
</resultMap>
<resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.cool.store.entity.HyPartnerInterviewLogDO">
<result column="change_before_cpoy" jdbcType="LONGVARCHAR" property="changeBeforeCpoy" />
</resultMap>
<sql id="Base_Column_List">
id, partner_line_id, partner_interview_id, message, create_time, update_time
</sql>
<sql id="Blob_Column_List">
change_before_cpoy
</sql>
<insert id="insertSelective" keyColumn="id" keyProperty="record.id" useGeneratedKeys="true">
insert into hy_partner_interview_log
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="record.partnerLineId != null">
partner_line_id,
</if>
<if test="record.partnerInterviewId != null">
partner_interview_id,
</if>
<if test="record.message != null">
message,
</if>
<if test="record.createTime != null">
create_time,
</if>
<if test="record.updateTime != null">
update_time,
</if>
<if test="record.changeBeforeCpoy != null">
change_before_cpoy,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="record.partnerLineId != null">
#{record.partnerLineId},
</if>
<if test="record.partnerInterviewId != null">
#{record.partnerInterviewId},
</if>
<if test="record.message != null">
#{record.message},
</if>
<if test="record.createTime != null">
#{record.createTime},
</if>
<if test="record.updateTime != null">
#{record.updateTime},
</if>
<if test="record.changeBeforeCpoy != null">
#{record.changeBeforeCpoy},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective">
update hy_partner_interview_log
<set>
<if test="record.partnerLineId != null">
partner_line_id = #{record.partnerLineId},
</if>
<if test="record.partnerInterviewId != null">
partner_interview_id = #{record.partnerInterviewId},
</if>
<if test="record.message != null">
message = #{record.message},
</if>
<if test="record.createTime != null">
create_time = #{record.createTime},
</if>
<if test="record.updateTime != null">
update_time = #{record.updateTime},
</if>
<if test="record.changeBeforeCpoy != null">
change_before_cpoy = #{record.changeBeforeCpoy},
</if>
</set>
where id = #{record.id}
</update>
</mapper>

View File

@@ -25,6 +25,7 @@
<result column="approve_time" jdbcType="TIMESTAMP" property="approveTime" />
<result column="partner_enter_time" jdbcType="TIMESTAMP" property="partnerEnterTime" />
<result column="interviewer_enter_time" jdbcType="TIMESTAMP" property="interviewerEnterTime" />
<result column="deleted" jdbcType="BIT" property="deleted" />
</resultMap>
<resultMap id="PartnerInterviewInfoVO" type="com.cool.store.vo.PartnerInterviewInfoVO">
@@ -49,7 +50,7 @@
id, status, partner_line_id, interview_plan_id, partner_id, deadline, interviewer,
recorder, process_info, record_time, summary, auth_code, pass_pdf_url, pass_image_url, expiry_date,
latest_log_message, pass_reason, certify_file, create_time, update_time, approve_time,
partner_enter_time, interviewer_enter_time
partner_enter_time, interviewer_enter_time,deleted
</sql>
<insert id="insertSelective" keyColumn="id" keyProperty="record.id" useGeneratedKeys="true">
insert into hy_partner_interview
@@ -120,6 +121,9 @@
<if test="record.interviewerEnterTime != null">
interviewer_enter_time,
</if>
<if test="record.deleted != null">
deleted,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="record.status != null">
@@ -188,6 +192,9 @@
<if test="record.interviewerEnterTime != null">
#{record.interviewerEnterTime},
</if>
<if test="record.deleted != null">
#{record.deleted},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective">
@@ -265,6 +272,9 @@
<if test="interviewerEnterTime != null">
interviewer_enter_time = #{interviewerEnterTime},
</if>
<if test="deleted != null">
deleted = #{deleted},
</if>
</set>
<where>
1 = 0
@@ -282,7 +292,7 @@
SELECT t1.id interviewId, t1.id interview_id, t2.id as interviewPlanId, `status`, start_time, end_time, room_id, t1.partner_id partnerId, t1.interviewer interviewerId
FROM hy_partner_interview t1
LEFT JOIN hy_partner_interview_plan t2 ON t1.interview_plan_id = t2.id
WHERE t1.partner_id = #{partnerId}
WHERE t1.partner_id = #{partnerId} and deleted = 0
</select>
<select id="queryPartnerName" resultType="string">
SELECT username
@@ -300,14 +310,14 @@
<select id="getInterviewerByInterviewPlanId" resultMap="partnerEnterInterviewVO">
SELECT interviewer, interviewer interviewer_id, partner_id
FROM hy_partner_interview
WHERE interview_plan_id = #{interviewPlanId}
WHERE interview_plan_id = #{interviewPlanId} and deleted = 0
</select>
<!-- 获取通知函详情 -->
<select id="getPassLetterDetail" resultMap="passLetterDetail">
SELECT auth_code, pass_code, pass_pdf_url, pass_image_url, expiry_date, partner_id
FROM hy_partner_interview
WHERE interview_plan_id = #{interviewPlanId}
WHERE interview_plan_id = #{interviewPlanId} and deleted = 0
</select>
<!-- 获取意向开店区域 -->
<select id="getVerifyCity" resultType="string">
@@ -348,6 +358,18 @@
</set>
WHERE id = #{interviewId}
</update>
<update id="batchUpdateInterviewStatus">
UPDATE hy_partner_interview
<set>
<if test="interviewStatus != null and interviewStatus != ''">
status = #{status}
</if>
</set>
WHERE id in
<foreach collection="interviewIds" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</update>
<!-- 根据 interviewId 获取意向区域 -->
<select id="getVerifyCityByInterviewId" resultType="java.lang.String">
@@ -359,9 +381,32 @@
WHERE partner_line_id = (
SELECT partner_line_id
FROM hy_partner_interview
WHERE id = #{interviewId}
WHERE id = #{interviewId} and deleted = 0
)
)
</select>
<select id="getInterviewBaseInfoList" resultType="com.cool.store.entity.HyPartnerInterviewDO">
select
<include refid="Base_Column_List"/>
from hy_partner_interview_plan hpip
left join hy_partner_interview hpi on hpi.interview_plan_id = hpip.id
<where>
<if test="record.status != null">
and hpi.status = #{record.status}
</if>
<if test="record.startTime != null">
and hpip.start_time &gt;= #{record.startTime}
</if>
<if test="record.endTime != null">
and hpip.end_time &lt;= #{record.endTime}
</if>
<if test="record.deleted != null">
and hpi.deleted = #{record.deleted} and hpip.deleted = #{record.deleted}
</if>
<if test="record.isPartnerInterview != null">
and hpip.is_partner_interview = #{record.isPartnerInterview}
</if>
</where>
</select>
</mapper>

View File

@@ -190,7 +190,70 @@
</set>
where id = #{record.id}
</update>
<update id="batchDeleteInterviewPlans">
update hy_partner_interview_plan
set deleted = 1
where id in
<foreach collection="interviewPlanIds" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</update>
<update id="updateInterviewRoomStatus">
update hy_partner_interview_plan
set room_status = #{roomStatus},update_time = now()
<where>
<if test="record.roomStatus !=null and record.roomStatus!=''">
and hpip.room_status = #{record.roomStatus}
</if>
<if test="record.startTime !=null and record.startTime!=''">
and hpip.start_time &gt;= #{record.startTime}
</if>
<if test="record.endTime !=null and record.endTime!=''">
and hpip.end_time &lt;= #{record.endTime}
</if>
<if test="record.deleted !=null and record.deleted!=''">
and hpip.deleted = #{deleted}
</if>
</where>
</update>
<update id="openInterviewRoom">
update hy_partner_interview_plan
set room_status = #{roomStatus},update_time = now()
<where>
<if test="record.roomStatus !=null and record.roomStatus!=''">
and hpip.room_status = #{record.roomStatus}
</if>
<if test="record.startTime !=null and record.startTime!=''">
and hpip.start_time &gt;= #{record.startTime}
</if>
<if test="record.endTime !=null and record.endTime!=''">
and hpip.start_time &lt;= #{record.endTime}
</if>
<if test="record.deleted !=null and record.deleted!=''">
and hpip.deleted = #{deleted}
</if>
</where>
</update>
<update id="closeInterviewRoom">
update hy_partner_interview_plan
set room_status = #{roomStatus},update_time = now()
<where>
<if test="record.roomStatus !=null and record.roomStatus!=''">
and hpip.room_status = #{record.roomStatus}
</if>
<if test="record.startTime !=null and record.startTime!=''">
and hpip.end_time &gt;= #{record.startTime}
</if>
<if test="record.endTime !=null and record.endTime!=''">
and hpip.end_time &lt;= #{record.endTime}
</if>
<if test="record.deleted !=null and record.deleted!=''">
and hpip.deleted = #{deleted}
</if>
</where>
</update>
<select id="getCurrentDateInterviewCount" resultType="java.lang.Integer">
select count(1) from hy_partner_interview_plan
<where>
@@ -296,6 +359,9 @@
<if test="record.endTime !=null and record.endTime!=''">
and hpip.end_time &lt;= #{record.endTime}
</if>
<if test="record.deleted !=null and record.deleted!=''">
and hpip.deleted = #{deleted}
</if>
</where>
</select>
@@ -333,7 +399,7 @@
left join hy_partner_user_info hpui on hpui.partner_id = hpip.partner_id
left join hy_partner_interview hpi on hpip.id = hpi.interview_plan_id
left join hy_partner_certification_info hpci on hpci.partner_interview_id = hpi.id
where hpip.id = #{interviewPlanId}
where hpip.id = #{interviewPlanId} and hpip.deleted = 0 and hpi.deleted = 0
</select>
<select id="selectBySelective" resultType="com.cool.store.entity.HyPartnerInterviewPlanDO">
select
@@ -370,6 +436,9 @@
<if test="record.interviewDate !=null and record.interviewDate!=''">
and interview_date = #{record.interviewDate}
</if>
<if test="record.deleted !=null">
and deleted = #{record.deleted}
</if>
</where>
</select>