Jelajahi Sumber

活动热门排序 修改

huZhiHao 5 tahun lalu
induk
melakukan
51b797c368

+ 2 - 2
src/main/java/platform/modules/home/HomeController.java

@@ -874,8 +874,8 @@ public class HomeController extends BaseController {
             response.setContentType("text/html;charset=utf-8");
         }
         this.commonObject(modelMap, false);
-        return BASE_HOME_PATH + "html/login";
-
+//        return BASE_HOME_PATH + "html/login";
+        return "/index";
     }
 
 

+ 40 - 31
src/main/resources/mapper/sys/ActivityDetailDao.xml

@@ -221,6 +221,7 @@
         activity_location,
         activity_starttime,
         activity_endtime,
+        left(activity_starttime,4) start_year,
         (
         IF (
         activity_state = 0,
@@ -253,7 +254,8 @@
         3000000000 - unix_timestamp ( activity_starttime ),
         IF
         (
-        NOW( ) <![CDATA[<]]> activity_starttime, unix_timestamp( activity_starttime ) - 3000000000, IF ( NOW( ) <![CDATA[>]]> activity_endtime,
+        NOW( ) <![CDATA[<]]> activity_starttime, unix_timestamp( activity_starttime ) - 3000000000, IF ( NOW( )
+        <![CDATA[>]]> activity_endtime,
         3000000000 - unix_timestamp ( activity_starttime ),
         unix_timestamp( activity_starttime ) - 3000000000
         )
@@ -411,6 +413,7 @@
             create_time DESC
         </if>
         <if test="activity.sort_criteria == 2 ">
+            start_year DESC,
             can_sign_up DESC,
             reg_num DESC,
             activity_starttime DESC
@@ -582,13 +585,16 @@
         (
         ad.activity_deadline > NOW( ),
         IF
-        ( ( SELECT COUNT( ar.id ) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id = #{userId} ) IS NULL, '可报名', '待参加' ),
+        ( ( SELECT COUNT( ar.id ) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id =
+        #{userId} ) IS NULL, '可报名', '待参加' ),
         IF
-        ( ( SELECT COUNT( ar.id ) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id = #{userId} ) IS NULL, '未开始', '待参加' )
+        ( ( SELECT COUNT( ar.id ) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id =
+        #{userId} ) IS NULL, '未开始', '待参加' )
         ),
         IF( ad.activity_endtime >= now(),
         IF
-        ( ( SELECT COUNT( ar.id ) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id = #{userId} ) IS NULL, '活动中', '待参加' ),
+        ( ( SELECT COUNT( ar.id ) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id =
+        #{userId} ) IS NULL, '活动中', '待参加' ),
         '已结束')
         ) AS activity_status_str
         from ac_activity_detail ad where activity_state = '1'
@@ -603,26 +609,26 @@
         </if>
         order by create_time desc
     </select>
-    
-    
+
+
     <select id="getAllActivityCount" resultType="integer">
         select 
         	count(id) 
         	from ac_activity_detail 
         	where activity_state = '1'
     </select>
-    
+
     <select id="getJoinedActivityCount" resultType="integer">
-        select 
-        	count(id)
-        	from ac_activity_registration ac
-        	where review_state = '1' 
-        	<if test="condition.user_type!=null">
-            	and user_type = #{condition.user_type}
-        	</if>
-        	<if test="condition.street_id != null and condition.street_id !=''">
-            	and user_id = #{condition.street_id}
-        	</if>
+        select
+        count(id)
+        from ac_activity_registration ac
+        where review_state = '1'
+        <if test="condition.user_type!=null">
+            and user_type = #{condition.user_type}
+        </if>
+        <if test="condition.street_id != null and condition.street_id !=''">
+            and user_id = #{condition.street_id}
+        </if>
     </select>
 
     <select id="getHotActivity" resultType="platform.modules.sys.entity.ActivityDetail">
@@ -653,21 +659,24 @@
 
     <select id="findMyActivityPage" resultType="platform.modules.sys.entity.ActivityDetail">
         SELECT
-            ad.id,
-            ad.activity_title,
-            ad.activity_starttime,
-            (SELECT COUNT(ar.id) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id = #{condition.user_id} ) AS registration_number,
-            (SELECT COUNT(ar.id) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id = #{condition.user_id} AND review_state = 1) AS registration_success_number,
-            IF(ad.activity_starttime > now() , 1,
-              IF(ad.activity_endtime <![CDATA[ >= ]]> now() ,2,
-                IF( ( SELECT  count(af.id) FROM ac_activity_feedback af WHERE user_id = #{condition.user_id} AND af.activity_id = ad.id ) IS NULL, 4, 3) )) AS activity_status
+        ad.id,
+        ad.activity_title,
+        ad.activity_starttime,
+        (SELECT COUNT(ar.id) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id =
+        #{condition.user_id} ) AS registration_number,
+        (SELECT COUNT(ar.id) FROM ac_activity_registration ar WHERE ar.activity_id = ad.id AND ar.user_id =
+        #{condition.user_id} AND review_state = 1) AS registration_success_number,
+        IF(ad.activity_starttime > now() , 1,
+        IF(ad.activity_endtime <![CDATA[ >= ]]> now() ,2,
+        IF( ( SELECT count(af.id) FROM ac_activity_feedback af WHERE user_id = #{condition.user_id} AND af.activity_id =
+        ad.id ) IS NULL, 4, 3) )) AS activity_status
         FROM
-            ac_activity_detail ad
+        ac_activity_detail ad
         WHERE
-            ad.id IN ( SELECT DISTINCT activity_id FROM ac_activity_registration WHERE user_id = #{condition.user_id} )
-            <if test="condition.activity_title != null and condition.activity_title !=''">
-                AND ad.activity_title like  CONCAT('%',#{condition.activity_title},'%')
-            </if>
+        ad.id IN ( SELECT DISTINCT activity_id FROM ac_activity_registration WHERE user_id = #{condition.user_id} )
+        <if test="condition.activity_title != null and condition.activity_title !=''">
+            AND ad.activity_title like CONCAT('%',#{condition.activity_title},'%')
+        </if>
     </select>
 
     <select id="findByActivityId" resultType="platform.modules.sys.entity.ActivityDetail">
@@ -687,5 +696,5 @@
     <select id="findHighlyRecommended" resultType="platform.modules.sys.entity.ActivityDetail">
         select id, activity_title from ac_activity_detail where push_level = 1 AND del_flag = 0
     </select>
-    
+
 </mapper>