From 781c2e20a4bb844dae3f4eafbf5f0e494b942ea8 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 25 五月 2023 18:07:08 +0800
Subject: [PATCH] optimize
---
java110-db/src/main/resources/mapper/user/MenuCatalogV1ServiceDaoImplMapper.xml | 45 +++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 45 insertions(+), 0 deletions(-)
diff --git a/java110-db/src/main/resources/mapper/user/MenuCatalogV1ServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/user/MenuCatalogV1ServiceDaoImplMapper.xml
index b40f115..e594556 100644
--- a/java110-db/src/main/resources/mapper/user/MenuCatalogV1ServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/user/MenuCatalogV1ServiceDaoImplMapper.xml
@@ -117,4 +117,49 @@
</select>
+ <!-- 鏌ヨ鑿滃崟鐩綍鏁伴噺 add by wuxw 2018-07-03 -->
+ <select id="queryMenus" parameterType="Map" resultType="Map">
+ SELECT mm.`m_id` `mId`,mm.name menuName,mm.`g_id` gId,mm.`url`,mm.seq menuSeq,mm.`p_id` pId,
+ mm.`description` menuDescription, mmg.name menuGroupName,mmg.`icon`,mmg.`label`,mmg.`seq` menuGroupSeq,
+ mmg.`description` menuGroupDescription,mm.is_show isShow,mm.description
+ FROM m_menu mm
+ inner join m_menu_group mmg on mm.`g_id` = mmg.`g_id` AND mmg.`status_cd` = '0'
+ <if test="caId !=null and caId != ''">
+ inner join m_menu_group_catalog mgc on mmg.g_id = mgc.g_id and mgc.status_cd = '0'
+ </if>
+ <if test="communityId !=null and communityId != ''">
+ inner join m_menu_group_community mgcy on mgcy.g_id = mmg.g_id and mgcy.status_cd = '0'
+ </if>
+ WHERE
+ mmg.group_type = #{groupType}
+ and mmg.store_type= #{domain}
+ <if test="caId !=null and caId != ''">
+ and mgc.ca_id = #{caId}
+ </if>
+ <if test="communityId !=null and communityId != ''">
+ and mgcy.community_id = #{communityId}
+ </if>
+ AND mm.`status_cd` = '0'
+ AND mm.`m_id` IN (
+ SELECT pp.`m_id` FROM p_privilege_user ppu,p_privilege pp
+ WHERE ppu.`p_id` = pp.`p_id`
+ and pp.domain in (#{domain},'9999')
+ AND ppu.`privilege_flag` = '0'
+ AND ppu.`user_id` = #{userId}
+ AND ppu.`status_cd` = '0'
+ AND pp.`status_cd` = '0'
+ UNION
+ SELECT pp.`m_id` FROM p_privilege_user ppu,p_privilege_group ppg,p_privilege pp,p_privilege_rel ppr
+ WHERE ppu.`p_id` = ppr.pg_id
+ AND ppr.pg_id = ppg.pg_id
+ AND ppr.p_id = pp.`p_id`
+ and pp.domain in (#{domain},'9999')
+ AND ppu.`privilege_flag` = '1'
+ AND ppu.`user_id` = #{userId}
+ AND ppu.`status_cd` = '0'
+ AND pp.`status_cd` = '0'
+ AND ppg.status_cd = '0'
+ AND ppr.status_cd = '0'
+ )
+ </select>
</mapper>
--
Gitblit v1.8.0