|
|
@@ -1821,42 +1821,54 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
</select>
|
|
|
|
|
|
<select id="selectFsUserVOListByProject" resultType="com.fs.his.vo.FsUserVO">
|
|
|
- SELECT distinct
|
|
|
- b.total_amount,b.last_buy_time,p.pay_money as number,p.payment_id,p.pay_time,
|
|
|
- u.user_id, u.nick_name, u.avatar, u.phone, u.integral, u.now_money,
|
|
|
- fcc.watch_course_count, fcc.part_course_count, company_user.nick_name AS companyUserNickName, fcc.last_watch_date
|
|
|
- ,company.company_name,
|
|
|
- ucu.project_id,
|
|
|
- ucu.id as companyUserId,
|
|
|
- ucu.create_time as bindTime,
|
|
|
- ucu.status
|
|
|
- FROM
|
|
|
- fs_user u
|
|
|
+ SELECT DISTINCT
|
|
|
+ b.total_amount,
|
|
|
+ b.last_buy_time,
|
|
|
+ p.pay_money AS number,
|
|
|
+ p.payment_id,
|
|
|
+ p.pay_time,
|
|
|
+ u.user_id,
|
|
|
+ u.nick_name,
|
|
|
+ u.avatar,
|
|
|
+ u.phone,
|
|
|
+ u.integral,
|
|
|
+ u.now_money,
|
|
|
+ fcc.watch_course_count,
|
|
|
+ fcc.part_course_count,
|
|
|
+ company_user.nick_name AS companyUserNickName,
|
|
|
+ fcc.last_watch_date,
|
|
|
+ company.company_name,
|
|
|
+ ucu.project_id,
|
|
|
+ ucu.id AS companyUserId,
|
|
|
+ ucu.create_time AS bindTime,
|
|
|
+ ucu.STATUS
|
|
|
+ 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
|
|
|
+ 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 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
|
|
|
+ SELECT fs_user_course_count.user_id,
|
|
|
+ MAX(fs_user_course_count.last_watch_date) AS last_watch_date,
|
|
|
+ MAX(fs_user_course_count.watch_course_count) AS watch_course_count,
|
|
|
+ MAX(fs_user_course_count.part_course_count) AS part_course_count
|
|
|
+ FROM fs_user_course_count
|
|
|
+ GROUP BY fs_user_course_count.user_id
|
|
|
) fcc ON fcc.user_id = u.user_id
|
|
|
- inner join fs_user_company_user ucu on ucu.user_id = u.user_id
|
|
|
+ INNER JOIN fs_user_company_user ucu ON ucu.user_id = u.user_id
|
|
|
LEFT JOIN company_user ON company_user.user_id = ucu.company_user_id
|
|
|
- LEFT JOIN company on company.company_id = company_user.company_id
|
|
|
+ LEFT JOIN company ON company.company_id = company_user.company_id
|
|
|
<where>
|
|
|
1 = 1 and u.nick_name is not null
|
|
|
and u.is_del = 0
|
|
|
@@ -1890,9 +1902,73 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
AND ucu.project_id = #{maps.projectId}
|
|
|
</if >
|
|
|
</where>
|
|
|
- ORDER BY
|
|
|
- user_id DESC
|
|
|
+ ORDER BY user_id DESC
|
|
|
+ <if test="maps.pageSize != null and maps.pageNum != null">
|
|
|
+ LIMIT #{maps.pageNum}, #{maps.pageSize}
|
|
|
+ </if>
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="selectFsUserVOCountByProject" resultType="java.lang.Integer">
|
|
|
+ SELECT count(u.user_id) 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,
|
|
|
+ MAX(fs_user_course_count.watch_course_count) AS watch_course_count,
|
|
|
+ MAX(fs_user_course_count.part_course_count) AS part_course_count
|
|
|
+ FROM
|
|
|
+ fs_user_course_count
|
|
|
+ GROUP BY
|
|
|
+ fs_user_course_count.user_id
|
|
|
+ ) fcc ON fcc.user_id = u.user_id
|
|
|
+ INNER JOIN fs_user_company_user ucu ON ucu.user_id = u.user_id
|
|
|
+ LEFT JOIN company_user ON company_user.user_id = ucu.company_user_id
|
|
|
+ LEFT JOIN company ON company.company_id = company_user.company_id
|
|
|
+ <where>
|
|
|
+ 1 = 1 and u.nick_name is not null and u.is_del = 0
|
|
|
+ <if test = "maps.nickname != null and maps.nickname !='' " >
|
|
|
+ AND u.nick_name LIKE CONCAT("%",#{maps.nickname},"%")
|
|
|
+ </if >
|
|
|
+ <if test = "maps.userId != null and maps.userId !='' " >
|
|
|
+ AND u.user_id = #{maps.userId}
|
|
|
+ </if >
|
|
|
+ <if test = "maps.phone != null and maps.phone !='' " >
|
|
|
+ AND u.phone LIKE CONCAT("%",#{maps.phone},"%")
|
|
|
+ </if >
|
|
|
+ <if test = "maps.startCreateTime != null and maps.endCreateTime != null" >
|
|
|
+ AND (DATE_FORMAT( ucu.create_time, "%Y-%m-%d" ) >= DATE_FORMAT(#{maps.startCreateTime}, "%Y-%m-%d")
|
|
|
+ and DATE_FORMAT( ucu.create_time, "%Y-%m-%d" ) <= DATE_FORMAT(#{maps.endCreateTime}, "%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 ucu.status = #{maps.status}
|
|
|
+ </if >
|
|
|
+ <if test = "maps.companyId != null and maps.companyId != '' " >
|
|
|
+ AND company.company_id = #{maps.companyId}
|
|
|
+ </if >
|
|
|
+ <if test = "maps.companyUserId != null" >
|
|
|
+ AND company_user.user_id = #{maps.companyUserId}
|
|
|
+ </if >
|
|
|
+ <if test = "maps.projectId != null" >
|
|
|
+ AND ucu.project_id = #{maps.projectId}
|
|
|
+ </if >
|
|
|
+ </where>
|
|
|
</select>
|
|
|
+
|
|
|
<select id="selectCompanyAndDoctor" resultType="com.fs.watch.domain.vo.FsUserAndCompanyAndDoctorVo">
|
|
|
SELECT
|
|
|
f.*,
|