Pārlūkot izejas kodu

feat:将会员管理列表移动到商城会员管理会员

caoliqin 3 nedēļas atpakaļ
vecāks
revīzija
8c6298b8f1

+ 27 - 27
fs-service-system/src/main/java/com/fs/store/mapper/FsUserMapper.java

@@ -51,33 +51,33 @@ public interface FsUserMapper
      * @param fsUser 用户
      * @param fsUser 用户
      * @return 用户集合
      * @return 用户集合
      */
      */
-    @Select({"<script> " +
-            "select  b.total_amount,b.last_buy_time,p.pay_money as number,p.payment_id,p.pay_time," +
-            " u.* FROM fs_user u LEFT JOIN  (" +
-            " SELECT max(payment_id) as payment_id, max(pay_time) as last_buy_time,SUM(pay_money) as total_amount,user_id " +
-            " FROM fs_store_payment" +
-            " WHERE  status = 1 and user_id is not null group by user_id " +
-            ") b ON u.user_id=b.user_id " +
-            " LEFT JOIN fs_store_payment p ON u.user_id=p.user_id AND b.last_buy_time=p.pay_time AND b.payment_id=p.payment_id"+
-            " WHERE 1=1 " +
-            "<if test = 'maps.nickname != null and  maps.nickname !=\"\"    '> " +
-            "and u.nickname like CONCAT('%',#{maps.nickname},'%') " +
-            "</if>" +
-            "<if test = 'maps.phone != null   and  maps.phone !=\"\"   '> " +
-            "and u.phone=#{maps.phone} " +
-            "</if>" +
-            "<if test = 'maps.registerDate != null and  maps.registerDate !=\"\"'> " +
-            "and  DATE_FORMAT(u.register_date, '%Y-%m-%d')  = DATE_FORMAT(#{maps.registerDate}, '%Y-%m-%d') " +
-            "</if>" +
-            "<if test = 'maps.registerCode != null  and  maps.registerCode !=\"\"   '> " +
-            "and u.register_code=#{maps.registerCode} " +
-            "</if>" +
-            "<if test='maps.status != null  and  maps.status !=\"\"'> and u.status = #{maps.status}</if>"+
-            "<if test='maps.level != null  and  maps.level !=\"\"'> and u.level = #{maps.level}</if>"+
-            "<if test='maps.isPromoter != null  and  maps.isPromoter !=\"\"'> and u.is_promoter = #{maps.isPromoter}</if>" +
-            " order by user_id desc "+
-            "</script>"}
-            )
+//    @Select({"<script> " +
+//            "select  b.total_amount,b.last_buy_time,p.pay_money as number,p.payment_id,p.pay_time," +
+//            " u.* FROM fs_user u LEFT JOIN  (" +
+//            " SELECT max(payment_id) as payment_id, max(pay_time) as last_buy_time,SUM(pay_money) as total_amount,user_id " +
+//            " FROM fs_store_payment" +
+//            " WHERE  status = 1 and user_id is not null group by user_id " +
+//            ") b ON u.user_id=b.user_id " +
+//            " LEFT JOIN fs_store_payment p ON u.user_id=p.user_id AND b.last_buy_time=p.pay_time AND b.payment_id=p.payment_id"+
+//            " WHERE 1=1 " +
+//            "<if test = 'maps.nickname != null and  maps.nickname !=\"\"    '> " +
+//            "and u.nickname like CONCAT('%',#{maps.nickname},'%') " +
+//            "</if>" +
+//            "<if test = 'maps.phone != null   and  maps.phone !=\"\"   '> " +
+//            "and u.phone=#{maps.phone} " +
+//            "</if>" +
+//            "<if test = 'maps.registerDate != null and  maps.registerDate !=\"\"'> " +
+//            "and  DATE_FORMAT(u.register_date, '%Y-%m-%d')  = DATE_FORMAT(#{maps.registerDate}, '%Y-%m-%d') " +
+//            "</if>" +
+//            "<if test = 'maps.registerCode != null  and  maps.registerCode !=\"\"   '> " +
+//            "and u.register_code=#{maps.registerCode} " +
+//            "</if>" +
+//            "<if test='maps.status != null  and  maps.status !=\"\"'> and u.status = #{maps.status}</if>"+
+//            "<if test='maps.level != null  and  maps.level !=\"\"'> and u.level = #{maps.level}</if>"+
+//            "<if test='maps.isPromoter != null  and  maps.isPromoter !=\"\"'> and u.is_promoter = #{maps.isPromoter}</if>" +
+//            " order by user_id desc "+
+//            "</script>"}
+//            )
     public List<FSUserVO> selectFsUserVOList(@Param("maps") FsUser fsUser);
     public List<FSUserVO> selectFsUserVOList(@Param("maps") FsUser fsUser);
 
 
     /**
     /**

+ 15 - 0
fs-service-system/src/main/java/com/fs/store/vo/FSUserVO.java

@@ -3,6 +3,7 @@ package com.fs.store.vo;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fs.common.annotation.Excel;
 import com.fs.common.annotation.Excel;
 import com.fs.store.domain.FsUser;
 import com.fs.store.domain.FsUser;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
@@ -24,4 +25,18 @@ public class FSUserVO extends FsUser implements Serializable
 
 
     /** 关联id */
     /** 关联id */
     private String businessId;
     private String businessId;
+
+    @ApiModelProperty(value = "看课数量")
+    private Long watchCourseCount;
+
+    @ApiModelProperty(value = "参与营期数量")
+    private Long partCourseCount;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "最后看课时间")
+    private Date lastWatchDate;
+
+    @ApiModelProperty(value = "销售名称")
+    private String companyUserNickName;
+
 }
 }

+ 58 - 0
fs-service-system/src/main/resources/mapper/store/FsUserMapper.xml

@@ -222,6 +222,64 @@
         </where>
         </where>
     </select>
     </select>
 
 
+    <select id="selectFsUserVOList" resultType="com.fs.store.vo.FSUserVO">
+        SELECT
+        b.total_amount,b.last_buy_time,p.pay_money as number,p.payment_id,p.pay_time,
+        u.*,
+        fcc.watch_course_count, fcc.part_course_count, company_user.nick_name AS companyUserNickName, fcc.last_watch_date
+        FROM
+        fs_user u
+        LEFT JOIN (
+        SELECT max( payment_id ) AS payment_id, max( pay_time ) AS last_buy_time, SUM( pay_money ) AS total_amount,
+        user_id
+        FROM
+        fs_store_payment
+        WHERE
+        STATUS = 1
+        AND user_id IS NOT NULL
+        GROUP BY
+        user_id
+        ) b ON u.user_id = b.user_id
+        LEFT JOIN fs_store_payment p ON u.user_id = p.user_id
+        AND b.last_buy_time = p.pay_time
+        AND b.payment_id = p.payment_id
+        LEFT JOIN (
+        SELECT
+        fs_user_course_count.user_id,Max( fs_user_course_count.last_watch_date ) AS last_watch_date,fs_user_course_count.watch_course_count,
+        fs_user_course_count.part_course_count
+        FROM
+        fs_user_course_count
+        GROUP BY fs_user_course_count.user_id
+        ) fcc ON fcc.user_id = u.user_id
+        LEFT JOIN company_user ON company_user.user_id = u.company_user_id
+        <where>
+        1 = 1
+        <if test = "maps.nickname != null and  maps.nickname !='' " >
+            AND u.nickname LIKE CONCAT("%",#{maps.nickname},"%")
+        </if >
+        <if test = "maps.phone != null   and  maps.phone !='' " >
+        AND u.phone = #{maps.phone}
+        </if >
+        <if test = "maps.registerDate != null and  maps.registerDate !=''" >
+        AND DATE_FORMAT( u.register_date, "%Y-%m-%d" ) = DATE_FORMAT(#{maps.registerDate}, "%Y-%m-%d")
+        </if >
+        <if test = "maps.registerCode != null  and  maps.registerCode !=''  " >
+        AND u.register_code = #{maps.registerCode}
+        </if >
+        <if test = "maps.status != null  and  maps.status !=''" >
+        AND u.STATUS = #{maps.status}
+        </if >
+        <if test = "maps.level != null  and  maps.level !=''" >
+        AND u.LEVEL = #{maps.level}
+        </if >
+        <if test = "maps.isPromoter != null  and  maps.isPromoter !=''" >
+        AND u.is_promoter = #{maps.isPromoter}
+        </if >
+        </where>
+        ORDER BY
+        user_id DESC
+    </select>
+
     <insert id="insertFsUser" parameterType="FsUser" useGeneratedKeys="true" keyProperty="userId">
     <insert id="insertFsUser" parameterType="FsUser" useGeneratedKeys="true" keyProperty="userId">
         insert into fs_user
         insert into fs_user
         <trim prefix="(" suffix=")" suffixOverrides=",">
         <trim prefix="(" suffix=")" suffixOverrides=",">