select record_id, register_no, visitor_name, id_card, register_type, interviewee_name, interviewee_dept, receiver_name, receiver_verify_method, visit_area_ids, visit_area_names, plate_no, visit_reason, valid_start_time, valid_end_time, status, register_time, register_source, face_image_url, sign_time, sign_receiver_name, sign_verify_method, sign_image_url, remark from t_visitor_record and del_flag = '0' and interviewee_name like concat('%', #{query.intervieweeName}, '%') and interviewee_name like concat('%', #{query.intervieweeKeyword}, '%') and interviewee_dept = #{query.intervieweeDept} and find_in_set(#{query.areaId}, visit_area_ids) and visit_area_names like concat('%', #{query.visitAreaKeyword}, '%') and valid_end_time >= #{query.validStartTime} and valid_start_time <= #{query.validEndTime} and status = #{query.status} and visitor_name like concat('%', #{query.visitorName}, '%') and ( visitor_name like concat('%', #{query.visitorKeyword}, '%') or id_card like concat('%', #{query.visitorKeyword}, '%') ) and visit_reason like concat('%', #{query.visitReason}, '%') and register_type = #{query.registerType} order by register_time desc, record_id desc update t_visitor_record set status = 'OVERDUE_AUTO_SIGNED_OUT', sign_time = date_sub(date_add(date(valid_end_time), interval 1 day), interval 1 second), sign_verify_method = 'AUTO', update_by = 'system', update_time = sysdate() where del_flag = '0' and status in ('VISITING', 'PENDING_CONFIRM') and valid_end_time is not null and date_add(date(valid_end_time), interval 1 day) <= #{now} update t_visitor_record set status = 'PENDING_CONFIRM', update_time = sysdate() where del_flag = '0' and status = 'VISITING' and valid_end_time is not null and valid_end_time < #{now} and date_add(date(valid_end_time), interval 1 day) > #{now} update t_visitor_record set del_flag = '1', update_by = #{updateBy}, update_time = sysdate() where del_flag = '0' and record_id in #{recordId} insert into t_visitor_record register_no, visitor_name, id_card, register_type, interviewee_name, receiver_verify_method, visit_area_ids, plate_no, visit_reason, valid_start_time, valid_end_time, status, register_time, face_image_url, del_flag, receiver_name, create_time values #{registerNo}, #{visitorName}, #{idCard}, #{registerType}, #{intervieweeName}, #{receiverVerifyMethod}, #{visitAreaIds}, #{plateNo}, #{visitReason}, #{validStartTime}, #{validEndTime}, #{status}, #{registerTime}, #{faceImageUrl}, #{delFlag}, #{receiverName}, now()