<iftest=' excludeIterationId !=null and excludeIterationId !="" and iterationFilterType!=null and iterationFilterType!=""'>
and <iftest='iterationFilterType=="not-join"'> not </if>
exists ( select 1 from XM.xm_iteration_menu im where im.iteration_id=#{excludeIterationId} and im.menu_id=res.menu_id)
</if>
<iftest=' taskFilterType!=null and taskFilterType!="" '>
and <iftest='taskFilterType=="not-join"'> not </if>
exists ( select 1 from XM.xm_task t where t.menu_id=res.menu_id)
</if>
<iftest="key != null and key !='' "> and res.menu_name like #{key} </if>
<iftest=' excludeIterationId !=null and excludeIterationId !="" and excludeIterationAll!="1" '> and not exists ( select 1 from XM.xm_iteration_menu im where im.iteration_id=#{excludeIterationId} and im.menu_id=res.menu_id)</if>
<iftest=' excludeIterationAll =="1" '> and not exists ( select 1 from XM.xm_iteration_menu im where im.menu_id=res.menu_id)</if>