This commit is contained in:
linfso 2024-05-14 02:15:37 +08:00
parent f98ee3f245
commit 985c287136
5 changed files with 46 additions and 15 deletions

18
README Normal file
View File

@ -0,0 +1,18 @@
SELECT t3.site_code FROM(
SELECT t1.site_code,t1.parent_site_code,t1.site_name,
IF( FIND_IN_SET( parent_site_code, @parent_ids ) > 0, @parent_ids := CONCAT( @parent_ids, ',', site_code ), '0' ) AS cids
FROM ( SELECT * FROM emis_site AS t WHERE t.del_flag = '0' ORDER BY t.site_code ASC ) t1,
( SELECT @parent_ids := #{ownerSite} ) t2
) t3
WHERE cids != '0'
UNION
SELECT #{ownerSite} FROM dual
SELECT t1.site_code FROM (
SELECT * FROM emis_site WHERE parent_site_code IS NOT NULL ) t1,( SELECT @pid :=
#{createSite} ) pd
WHERE FIND_IN_SET( parent_site_code, @pid ) > 0 AND @pid := concat(@pid,',',site_code)
UNION
SELECT #{createSite} FROM dual

View File

@ -161,9 +161,13 @@
<if test="ownerSite != null and ownerSite != ''"> <if test="ownerSite != null and ownerSite != ''">
<!-- 包含子网点 --> <!-- 包含子网点 -->
AND owner_site in ( AND owner_site in (
SELECT t1.site_code FROM ( SELECT t3.site_code FROM(
SELECT * FROM emis_site WHERE parent_site_code IS NOT NULL ) t1,( SELECT @pid :=#{ownerSite} ) pd SELECT t1.site_code,t1.parent_site_code,t1.site_name,
WHERE FIND_IN_SET( parent_site_code, @pid ) > 0 AND @pid := concat(@pid,',',site_code) IF( FIND_IN_SET( parent_site_code, @parent_ids ) > 0, @parent_ids := CONCAT( @parent_ids, ',', site_code ), '0' ) AS cids
FROM ( SELECT * FROM emis_site AS t WHERE t.del_flag = '0' ORDER BY t.site_code ASC ) t1,
( SELECT @parent_ids := #{ownerSite} ) t2
) t3
WHERE cids != '0'
UNION UNION
SELECT #{ownerSite} FROM dual SELECT #{ownerSite} FROM dual
) )

View File

@ -64,10 +64,13 @@
<if test="createSite != null and createSite != ''"> <if test="createSite != null and createSite != ''">
<!-- 包含子网点 --> <!-- 包含子网点 -->
AND use_site_code in ( AND use_site_code in (
SELECT t1.site_code FROM ( SELECT t3.site_code FROM(
SELECT * FROM emis_site WHERE parent_site_code IS NOT NULL ) t1,( SELECT @pid := SELECT t1.site_code,t1.parent_site_code,t1.site_name,
#{createSite} ) pd IF( FIND_IN_SET( parent_site_code, @parent_ids ) > 0, @parent_ids := CONCAT( @parent_ids, ',', site_code ), '0' ) AS cids
WHERE FIND_IN_SET( parent_site_code, @pid ) > 0 AND @pid := concat(@pid,',',site_code) FROM ( SELECT * FROM emis_site AS t WHERE t.del_flag = '0' ORDER BY t.site_code ASC ) t1,
( SELECT @parent_ids := #{createSite} ) t2
) t3
WHERE cids != '0'
UNION UNION
SELECT #{createSite} FROM dual SELECT #{createSite} FROM dual
) )

View File

@ -149,10 +149,13 @@
<if test="useSiteCode != null and useSiteCode != ''"> <if test="useSiteCode != null and useSiteCode != ''">
<!-- 包含子网点 --> <!-- 包含子网点 -->
AND use_site_code in ( AND use_site_code in (
SELECT t1.site_code FROM ( SELECT t3.site_code FROM(
SELECT * FROM emis_site WHERE parent_site_code IS NOT NULL ) t1,( SELECT @pid := SELECT t1.site_code,t1.parent_site_code,t1.site_name,
#{useSiteCode} ) pd IF( FIND_IN_SET( parent_site_code, @parent_ids ) > 0, @parent_ids := CONCAT( @parent_ids, ',', site_code ), '0' ) AS cids
WHERE FIND_IN_SET( parent_site_code, @pid ) > 0 AND @pid := concat(@pid,',',site_code) FROM ( SELECT * FROM emis_site AS t WHERE t.del_flag = '0' ORDER BY t.site_code ASC ) t1,
( SELECT @parent_ids := #{useSiteCode} ) t2
) t3
WHERE cids != '0'
UNION UNION
SELECT #{useSiteCode} FROM dual SELECT #{useSiteCode} FROM dual
) )

View File

@ -65,10 +65,13 @@
<if test="createSite != null and createSite != ''"> <if test="createSite != null and createSite != ''">
<!-- 包含子网点 --> <!-- 包含子网点 -->
AND use_site_code in ( AND use_site_code in (
SELECT t1.site_code FROM ( SELECT t3.site_code FROM(
SELECT * FROM emis_site WHERE parent_site_code IS NOT NULL ) t1,( SELECT @pid := SELECT t1.site_code,t1.parent_site_code,t1.site_name,
#{createSite} ) pd IF( FIND_IN_SET( parent_site_code, @parent_ids ) > 0, @parent_ids := CONCAT( @parent_ids, ',', site_code ), '0' ) AS cids
WHERE FIND_IN_SET( parent_site_code, @pid ) > 0 AND @pid := concat(@pid,',',site_code) FROM ( SELECT * FROM emis_site AS t WHERE t.del_flag = '0' ORDER BY t.site_code ASC ) t1,
( SELECT @parent_ids := #{createSite} ) t2
) t3
WHERE cids != '0'
UNION UNION
SELECT #{createSite} FROM dual SELECT #{createSite} FROM dual
) )