|  | @@ -378,7 +378,14 @@
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      <select id="selectFsUserPageListNew" resultType="FsUserPageListVO">
 | 
	
		
			
				|  |  |          SELECT
 | 
	
		
			
				|  |  | -        fs_user.*,
 | 
	
		
			
				|  |  | +        fs_user.user_id,
 | 
	
		
			
				|  |  | +        fs_user.nickname,
 | 
	
		
			
				|  |  | +        fs_user.avatar,
 | 
	
		
			
				|  |  | +        fs_user.phone,
 | 
	
		
			
				|  |  | +        fs_user.status,
 | 
	
		
			
				|  |  | +        fs_user.create_time,
 | 
	
		
			
				|  |  | +        fs_user.remark,
 | 
	
		
			
				|  |  | +        fs_user.company_user_id,
 | 
	
		
			
				|  |  |          fs_user_course_count.id,
 | 
	
		
			
				|  |  |          fs_user_course_count.watch_course_count,
 | 
	
		
			
				|  |  |          fs_user_course_count.miss_course_count,
 | 
	
	
		
			
				|  | @@ -391,120 +398,102 @@
 | 
	
		
			
				|  |  |          fs_user_course_count.complete_watch_date,
 | 
	
		
			
				|  |  |          GROUP_CONCAT(DISTINCT company_tag.tag) AS tag,
 | 
	
		
			
				|  |  |          GROUP_CONCAT(DISTINCT company_tag.tag_id) AS tagIds,
 | 
	
		
			
				|  |  | -        company_user.nick_name as companyUserNickName,
 | 
	
		
			
				|  |  | -        if(fs_user.company_user_id = #{pcLoginUserId} or company_user.parent_id = #{pcLoginUserId}, 1, 0) as isCurrentCompanyUser
 | 
	
		
			
				|  |  | -        FROM
 | 
	
		
			
				|  |  | -        (SELECT
 | 
	
		
			
				|  |  | -        fu.user_id
 | 
	
		
			
				|  |  | +        company_user.nick_name as companyUserNickName
 | 
	
		
			
				|  |  |          FROM
 | 
	
		
			
				|  |  | -        fs_user fu
 | 
	
		
			
				|  |  | -        LEFT JOIN company_user cu ON fu.company_user_id = cu.user_id
 | 
	
		
			
				|  |  | -        LEFT JOIN fs_user_course_count fucc ON fu.user_id = fucc.user_id
 | 
	
		
			
				|  |  | -        LEFT JOIN company_tag_user ctu ON fu.user_id = ctu.user_id
 | 
	
		
			
				|  |  | -        <where>
 | 
	
		
			
				|  |  | -            <if test="userId != null and userId !='' ">
 | 
	
		
			
				|  |  | -                AND (cu.user_id = #{userId} OR cu.parent_id = #{userId})
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="companyUserId != null and companyUserId !='' ">
 | 
	
		
			
				|  |  | -                AND cu.user_id = #{companyUserId}
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -<!--            <choose>-->
 | 
	
		
			
				|  |  | -<!--                <when test = "isBlack">-->
 | 
	
		
			
				|  |  | -<!--                    AND fu.status = 0-->
 | 
	
		
			
				|  |  | -<!--                </when>-->
 | 
	
		
			
				|  |  | -<!--                <otherwise>-->
 | 
	
		
			
				|  |  | -<!--                    AND fu.status = 1-->
 | 
	
		
			
				|  |  | -<!--                </otherwise>-->
 | 
	
		
			
				|  |  | -<!--            </choose>-->
 | 
	
		
			
				|  |  | -            <if test="keyword != null and keyword !='' ">
 | 
	
		
			
				|  |  | -                AND (fu.nickname LIKE concat('%',#{keyword},'%')
 | 
	
		
			
				|  |  | -                OR fu.phone LIKE concat('%',#{keyword},'%')
 | 
	
		
			
				|  |  | -                )
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="registerStartTime != null and registerStartTime !='' ">
 | 
	
		
			
				|  |  | -                AND fu.create_time >= #{registerStartTime}
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="registerEndTime != null and registerEndTime !='' ">
 | 
	
		
			
				|  |  | -                AND fu.create_time <= #{registerEndTime}
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="tagIds != null and tagIds.length > 0">
 | 
	
		
			
				|  |  | -                AND
 | 
	
		
			
				|  |  | -                <foreach collection="tagIds" item="item" index="index" open="(" separator="or" close=")">
 | 
	
		
			
				|  |  | -                    ctu.tag_ids LIKE concat('%"',#{item},'"%')
 | 
	
		
			
				|  |  | -                </foreach>
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="tabValue != null and tabValue !='' ">
 | 
	
		
			
				|  |  | -                <choose>
 | 
	
		
			
				|  |  | -                    <when test = "tabValue == 1">
 | 
	
		
			
				|  |  | -                        AND DAY(fu.create_time) = DAY(NOW())
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                    <when test = "tabValue == 2">
 | 
	
		
			
				|  |  | -                        AND DAY(fucc.complete_watch_date) = DAY(NOW())
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                    <when test = "tabValue == 3">
 | 
	
		
			
				|  |  | -                        AND fucc.status = 3
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                </choose>
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="watchCourseType != null and watchCourseType !='' ">
 | 
	
		
			
				|  |  | -                <choose>
 | 
	
		
			
				|  |  | -                    <when test = "watchCourseType == 1">
 | 
	
		
			
				|  |  | -                        AND fucc.status = 3
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                    <when test = "watchCourseType == 2">
 | 
	
		
			
				|  |  | -                        AND fucc.status = 1
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                    <when test = "watchCourseType == 3">
 | 
	
		
			
				|  |  | -                        AND fucc.status = 2
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                </choose>
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="missCourseStatus != null and missCourseStatus !='' ">
 | 
	
		
			
				|  |  | -                <choose>
 | 
	
		
			
				|  |  | -                    <when test = "missCourseStatus == 1">
 | 
	
		
			
				|  |  | -                        AND fucc.miss_course_status = 1
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                    <when test = "missCourseStatus == 2">
 | 
	
		
			
				|  |  | -                        AND fucc.miss_course_status = 2
 | 
	
		
			
				|  |  | -                    </when>
 | 
	
		
			
				|  |  | -                </choose>
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="nickname !=null and nickname != ''">
 | 
	
		
			
				|  |  | -                AND fu.nickname like concat(#{nickname},'%')
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="phone != null and phone !=''">
 | 
	
		
			
				|  |  | -                AND fu.phone like concat(#{phone},'%')
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -            <if test="companyId != null">
 | 
	
		
			
				|  |  | -                AND fu.company_id = ${companyId}
 | 
	
		
			
				|  |  | -            </if>
 | 
	
		
			
				|  |  | -        </where>
 | 
	
		
			
				|  |  | -        GROUP BY fu.user_id
 | 
	
		
			
				|  |  | +        fs_user
 | 
	
		
			
				|  |  | +        left join company_user on fs_user.company_user_id = company_user.user_id
 | 
	
		
			
				|  |  | +        LEFT JOIN fs_user_course_count ON fs_user.user_id = fs_user_course_count.user_id
 | 
	
		
			
				|  |  | +        LEFT JOIN company_tag_user ON fs_user.user_id = company_tag_user.user_id
 | 
	
		
			
				|  |  | +        LEFT JOIN company_tag ON FIND_IN_SET(company_tag.tag_id, company_tag_user.tag_ids) > 0
 | 
	
		
			
				|  |  | +        where fs_user.is_del = 0
 | 
	
		
			
				|  |  | +        <if test="userId != null and userId !='' ">
 | 
	
		
			
				|  |  | +            -- 当前销售下面的用户 或者下级销售的会员
 | 
	
		
			
				|  |  | +            and (company_user.user_id = #{userId} OR company_user.parent_id = #{userId} )
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <if test="companyUserId != null and companyUserId !='' ">
 | 
	
		
			
				|  |  | +            and company_user.user_id = #{companyUserId}
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <choose>
 | 
	
		
			
				|  |  | +            <when test = "isBlack">
 | 
	
		
			
				|  |  | +                AND fs_user.status = 0
 | 
	
		
			
				|  |  | +            </when>
 | 
	
		
			
				|  |  | +            <otherwise>
 | 
	
		
			
				|  |  | +                AND fs_user.status = 1
 | 
	
		
			
				|  |  | +            </otherwise>
 | 
	
		
			
				|  |  | +        </choose>
 | 
	
		
			
				|  |  | +        <if test="keyword != null and keyword !='' ">
 | 
	
		
			
				|  |  | +            AND (fs_user.nickname LIKE concat('%',#{keyword},'%')
 | 
	
		
			
				|  |  | +            or  fs_user.phone LIKE concat('%',#{keyword},'%')
 | 
	
		
			
				|  |  | +            )
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <if test="registerStartTime != null and registerStartTime !='' ">
 | 
	
		
			
				|  |  | +            AND fs_user.create_time >= #{registerStartTime}
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <if test="registerEndTime != null and registerEndTime !='' ">
 | 
	
		
			
				|  |  | +            AND fs_user.create_time <= #{registerEndTime}
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <if test="tagIds != null and tagIds.length > 0">
 | 
	
		
			
				|  |  | +            AND
 | 
	
		
			
				|  |  | +            <foreach collection="tagIds" item="item" index="index" open="(" separator="or" close=")">
 | 
	
		
			
				|  |  | +                company_tag_user.tag_ids LIKE concat('%"',#{item},'"%')
 | 
	
		
			
				|  |  | +            </foreach>
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <if test="tabValue != null and tabValue !='' ">
 | 
	
		
			
				|  |  | +            <choose>
 | 
	
		
			
				|  |  | +                <when test = "tabValue == 1">
 | 
	
		
			
				|  |  | +                    AND DAY(fs_user.create_time) = DAY(NOW())
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +                <when test = "tabValue == 2">
 | 
	
		
			
				|  |  | +                    AND DAY(fs_user_course_count.complete_watch_date) = DAY(NOW())
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +                <when test = "tabValue == 3">
 | 
	
		
			
				|  |  | +                    AND (fs_user_course_count.status = 3 or fs_user_course_count.status is null)
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +            </choose>
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <if test="watchCourseType != null and watchCourseType !='' ">
 | 
	
		
			
				|  |  | +            <choose>
 | 
	
		
			
				|  |  | +                <when test = "watchCourseType == 1">
 | 
	
		
			
				|  |  | +                    AND (fs_user_course_count.status = 3 or fs_user_course_count.status is null)
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +                <when test = "watchCourseType == 2">
 | 
	
		
			
				|  |  | +                    AND fs_user_course_count.status = 1
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +                <when test = "watchCourseType == 3">
 | 
	
		
			
				|  |  | +                    AND fs_user_course_count.status = 2
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +            </choose>
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +        <if test="missCourseStatus != null and missCourseStatus !='' ">
 | 
	
		
			
				|  |  | +            <choose>
 | 
	
		
			
				|  |  | +                <when test = "missCourseStatus == 1">
 | 
	
		
			
				|  |  | +                    AND fs_user_course_count.miss_course_status = 1
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +                <when test = "missCourseStatus == 2">
 | 
	
		
			
				|  |  | +                    AND (fs_user_course_count.miss_course_status = 2 or fs_user_course_count.miss_course_status is null )
 | 
	
		
			
				|  |  | +                </when>
 | 
	
		
			
				|  |  | +            </choose>
 | 
	
		
			
				|  |  | +        </if>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        group by fs_user.user_id
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          <if test="continueMissCourseSort != null and continueMissCourseSort !='' ">
 | 
	
		
			
				|  |  | -            ORDER BY
 | 
	
		
			
				|  |  | +            order by
 | 
	
		
			
				|  |  |              <choose>
 | 
	
		
			
				|  |  |                  <when test = "continueMissCourseSort == 0">
 | 
	
		
			
				|  |  | -                    fucc.miss_course_days DESC
 | 
	
		
			
				|  |  | +                    fs_user_course_count.miss_course_days desc
 | 
	
		
			
				|  |  |                  </when>
 | 
	
		
			
				|  |  |                  <when test = "continueMissCourseSort == 1">
 | 
	
		
			
				|  |  | -                    fucc.miss_course_days ASC
 | 
	
		
			
				|  |  | +                    fs_user_course_count.miss_course_days asc
 | 
	
		
			
				|  |  |                  </when>
 | 
	
		
			
				|  |  |                  <when test = "continueMissCourseSort == 2">
 | 
	
		
			
				|  |  | -                    fu.create_time DESC
 | 
	
		
			
				|  |  | +                    fs_user.create_time desc
 | 
	
		
			
				|  |  |                  </when>
 | 
	
		
			
				|  |  |                  <when test = "continueMissCourseSort == 3">
 | 
	
		
			
				|  |  | -                    fu.nickname ASC
 | 
	
		
			
				|  |  | +                    fs_user.nickname asc
 | 
	
		
			
				|  |  |                  </when>
 | 
	
		
			
				|  |  |              </choose>
 | 
	
		
			
				|  |  |          </if>
 | 
	
		
			
				|  |  | -        LIMIT ${(pageNum-1)*pageSize},${pageSize}
 | 
	
		
			
				|  |  | -        ) temp_user_ids
 | 
	
		
			
				|  |  | -        JOIN fs_user ON temp_user_ids.user_id = fs_user.user_id
 | 
	
		
			
				|  |  | -        LEFT JOIN company_user ON fs_user.company_user_id = company_user.user_id
 | 
	
		
			
				|  |  | -        LEFT JOIN fs_user_course_count ON fs_user.user_id = fs_user_course_count.user_id
 | 
	
		
			
				|  |  | -        LEFT JOIN company_tag_user ON fs_user.user_id = company_tag_user.user_id
 | 
	
		
			
				|  |  | -        LEFT JOIN company_tag ON FIND_IN_SET(company_tag.tag_id, company_tag_user.tag_ids) > 0
 | 
	
		
			
				|  |  | -        GROUP BY fs_user.user_id
 | 
	
		
			
				|  |  |      </select>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      <select id="selectFsUserPageList" resultType="FsUserPageListVO">
 | 
	
	
		
			
				|  | @@ -769,7 +758,7 @@
 | 
	
		
			
				|  |  |      <select id="countTag" resultType="FsUserSummaryCountTagVO">
 | 
	
		
			
				|  |  |          SELECT
 | 
	
		
			
				|  |  |              company_tag.tag AS tagName,
 | 
	
		
			
				|  |  | -            count( fs_user.user_id ) AS userCount
 | 
	
		
			
				|  |  | +            count( fs_user.user_id ) AS number
 | 
	
		
			
				|  |  |          FROM
 | 
	
		
			
				|  |  |              company_tag_user
 | 
	
		
			
				|  |  |                  LEFT JOIN fs_user ON fs_user.user_id = company_tag_user.user_id
 |