From ae662db7028e64532370ae7d02e84f264ddb9bbd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Sun, 20 Feb 2022 16:02:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=8A=82=E7=82=B9=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E3=80=81=E6=A0=87=E7=AD=BE=E7=AD=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/xm/core/dao/XmMenuMapper.xml | 88 +++++++++++++++++-- 1 file changed, 80 insertions(+), 8 deletions(-) diff --git a/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml b/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml index 2e4871bc..66dea0ea 100644 --- a/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml +++ b/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml @@ -5,16 +5,88 @@ - - and (res.menu_id) in - - ( #{item}) - - - - + + and (res.menu_id) in + + ( #{item}) + + + and + + #{item} like concat(res.pid_paths,'%') + + + and + + find_in_set(#{item},res.tag_ids) + + + + and not + exists ( select 1 from xm_iteration_menu im where im.menu_id=res.menu_id) + + + and not + exists ( select 1 from xm_task t where t.menu_id=res.menu_id) + + and res.menu_name like #{key} + and (res.pmenu_id is null or res.pmenu_id = '') + + + + + + + + + UPDATE xm_menu t + LEFT JOIN ( SELECT count( 1 ) AS children_cnt, tt.pmenu_id AS menu_id FROM xm_menu tt WHERE tt.pmenu_id = #{menuId} ) t2 ON t2.menu_id = t.menu_id + SET t.children_cnt = ifnull( t2.children_cnt, 0 ) + WHERE + t.menu_id = #{menuId} + + + + UPDATE xm_menu t + LEFT JOIN ( SELECT count( 1 ) AS children_cnt, tt.pmenu_id AS menu_id FROM xm_menu tt WHERE + (tt.pmenu_id) in + + ( #{item}) + + group by tt.pmenu_id ) t2 ON t2.menu_id = t.menu_id + SET t.children_cnt = ifnull( t2.children_cnt, 0 ) + WHERE (t.menu_id) in + + ( #{item}) + +