<iftest="params.params != null and params.params.start_time != null and params.params.start_time != '' and params.params.end_time != null and params.params.end_time != ''">
AND a.start_time < #{params.params.end_time}
AND a.end_time >= #{params.params.start_time}
</if>
<!-- 支持按状态过滤(来自 params.params.status) -->
<iftest="params.params != null and params.params.status != null and params.params.status != ''">
AND a.status = #{params.params.status}
</if>
</where>
ORDER BY a.approver_time DESC
ORDER BY FIELD(a.status, 1) DESC, a.submit_time DESC
</select>
<updateid="submit"parameterType="map">
UPDATE jl_key_dm_leave_approval_record
SET status = 1,update_by = #{_user.id}, update_time = NOW()
WHERE leave_id = #{id}
WHERE id = #{id}
</update>
<!-- 撤回:仅限审核中状态撤回,设置 status=0 -->
<!-- 撤回:仅限待审批状态(status=1)撤回,设置 status=0 -->
<updateid="revoke"parameterType="map">
UPDATE jl_key_dm_leave_approval_record
SET status = 0, update_by = #{_user.id}, update_time = NOW()