|
@@ -155,46 +155,56 @@
|
|
|
<if test="4 == type">
|
|
|
c.spID = #{serviceProviderId}
|
|
|
AND sp.status = 90 and (u.userOrganizeID IN(0,1) or u.clubStatus != 92) and u.userOrganizeID != 4
|
|
|
- AND (u.loginTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH) OR c.clubId= (select aa.clubId
|
|
|
- FROM ((select
|
|
|
- c.clubId
|
|
|
+ AND (u.loginTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH) OR c.clubId= (select a.clubId
|
|
|
+ FROM ((
|
|
|
+ select
|
|
|
+ c.clubId,ccr.addTime AS time,c.spID
|
|
|
FROM club c
|
|
|
+ LEFT JOIN user u ON u.userID = c.userID
|
|
|
LEFT JOIN cm_club_remarks ccr ON ccr.clubId = c.clubId
|
|
|
LEFT JOIN serviceprovider sp ON sp.serviceProviderID = c.spID
|
|
|
where c.status=90 and sp.status=90
|
|
|
and ccr.addTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
|
|
|
+ GROUP BY c.clubId
|
|
|
)UNION(
|
|
|
- select c.clubId
|
|
|
+ select c.clubId,cr.orderTime AS time,c.spID
|
|
|
FROM club c
|
|
|
+ LEFT JOIN user u ON u.userID = c.userID
|
|
|
LEFT JOIN cm_order cr ON cr.clubId = c.clubId
|
|
|
LEFT JOIN serviceprovider sp ON sp.serviceProviderID = c.spID
|
|
|
where c.status=90 and sp.status=90
|
|
|
and cr.orderTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
|
|
|
- )) aa
|
|
|
- where aa.clubId=c.clubId
|
|
|
- GROUP BY aa.clubId LIMIT 0,1))
|
|
|
+ GROUP BY c.clubId
|
|
|
+ )) a where a.time is not null
|
|
|
+ and a.spID=#{serviceProviderId}
|
|
|
+ GROUP BY a.clubId))
|
|
|
</if>
|
|
|
<if test="5 == type">
|
|
|
c.spID = #{serviceProviderId}
|
|
|
AND sp.status = 90 and (u.userOrganizeID IN(0,1) or u.clubStatus != 92) and u.userOrganizeID != 4
|
|
|
- AND (u.loginTime <![CDATA[ < ]]> DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH) OR c.clubId!= (select aa.clubId
|
|
|
- FROM ((select
|
|
|
- c.clubId
|
|
|
+ AND (u.loginTime <![CDATA[ < ]]> DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH) or u.loginTime is null)and c.clubId not in (select a.clubId
|
|
|
+ FROM ((
|
|
|
+ select
|
|
|
+ c.clubId,ccr.addTime AS time,c.spID
|
|
|
FROM club c
|
|
|
+ LEFT JOIN user u ON u.userID = c.userID
|
|
|
LEFT JOIN cm_club_remarks ccr ON ccr.clubId = c.clubId
|
|
|
LEFT JOIN serviceprovider sp ON sp.serviceProviderID = c.spID
|
|
|
where c.status=90 and sp.status=90
|
|
|
and ccr.addTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
|
|
|
+ GROUP BY c.clubId
|
|
|
)UNION(
|
|
|
- select c.clubId
|
|
|
+ select c.clubId,cr.orderTime AS time,c.spID
|
|
|
FROM club c
|
|
|
+ LEFT JOIN user u ON u.userID = c.userID
|
|
|
LEFT JOIN cm_order cr ON cr.clubId = c.clubId
|
|
|
LEFT JOIN serviceprovider sp ON sp.serviceProviderID = c.spID
|
|
|
where c.status=90 and sp.status=90
|
|
|
and cr.orderTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
|
|
|
- )) aa
|
|
|
- where aa.clubId=c.clubId
|
|
|
- GROUP BY aa.clubId LIMIT 0,1))
|
|
|
+ GROUP BY c.clubId
|
|
|
+ )) a where a.time is not null
|
|
|
+ and a.spID=#{serviceProviderId}
|
|
|
+ GROUP BY a.clubId )
|
|
|
</if>
|
|
|
<if test="6 == type">
|
|
|
c.spID = #{serviceProviderId}
|
|
@@ -219,35 +229,44 @@
|
|
|
|
|
|
<select id="findSpUserLoginSum" resultType="java.util.HashMap" parameterType="string">
|
|
|
select
|
|
|
- ifnull(COUNT( CASE WHEN a.time >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH) THEN 1 END),0) AS loginSum,
|
|
|
- ifnull(COUNT( CASE WHEN a.time <![CDATA[ < ]]> DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH) THEN 1 END),0) AS not_loginSum
|
|
|
+ COUNT( CASE WHEN a.time=1 THEN 1 END) AS loginSum,
|
|
|
+ ((SELECT count(1) from club
|
|
|
+ WHERE status=90
|
|
|
+ <if test="spID != null">
|
|
|
+ and spID=#{spID}
|
|
|
+ </if>
|
|
|
+ )-COUNT( CASE WHEN a.time=1 THEN 1 END)) AS not_loginSum
|
|
|
FROM (select a.*
|
|
|
- FROM (
|
|
|
- (select
|
|
|
- c.clubId,u.loginTime AS time,c.spID
|
|
|
+ FROM ((
|
|
|
+ select
|
|
|
+ c.clubId,1 AS time,c.spID
|
|
|
FROM club c
|
|
|
LEFT JOIN user u ON u.userID = c.userID
|
|
|
LEFT JOIN serviceprovider sp ON sp.serviceProviderID = c.spID
|
|
|
- where c.status=90 and sp.status=90 and (u.userOrganizeID IN(0,1) or u.clubStatus != 92) and u.userOrganizeID != 4
|
|
|
+ where c.status=90 and sp.status=90 and (u.userOrganizeID IN(0,1) or u.clubStatus != 92) and u.userOrganizeID != 4
|
|
|
+ and u.loginTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
|
|
|
+ GROUP BY c.clubId
|
|
|
)UNION(
|
|
|
select
|
|
|
- c.clubId,ccr.addTime AS time,c.spID
|
|
|
+ c.clubId,1 AS time,c.spID
|
|
|
FROM club c
|
|
|
LEFT JOIN user u ON u.userID = c.userID
|
|
|
LEFT JOIN cm_club_remarks ccr ON ccr.clubId = c.clubId
|
|
|
LEFT JOIN serviceprovider sp ON sp.serviceProviderID = c.spID
|
|
|
- where c.status=90 and sp.status=90 and (u.userOrganizeID IN(0,1) or u.clubStatus != 92) and u.userOrganizeID != 4
|
|
|
+ where c.status=90 and sp.status=90 and (u.userOrganizeID IN(0,1) or u.clubStatus != 92) and u.userOrganizeID != 4
|
|
|
and ccr.addTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
|
|
|
+ GROUP BY c.clubId
|
|
|
)UNION(
|
|
|
- select c.clubId,cr.orderTime AS time,c.spID
|
|
|
+ select c.clubId,1 AS time,c.spID
|
|
|
FROM club c
|
|
|
LEFT JOIN user u ON u.userID = c.userID
|
|
|
LEFT JOIN cm_order cr ON cr.clubId = c.clubId
|
|
|
LEFT JOIN serviceprovider sp ON sp.serviceProviderID = c.spID
|
|
|
where c.status=90 and sp.status=90 and (u.userOrganizeID IN(0,1) or u.clubStatus != 92) and u.userOrganizeID != 4
|
|
|
and cr.orderTime >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
|
|
|
+ GROUP BY c.clubId
|
|
|
)
|
|
|
- ) a where a.time is not null
|
|
|
+ ) a where 1=1
|
|
|
<if test="spID != null">
|
|
|
and a.spID=#{spID}
|
|
|
</if>
|