|
|
@@ -0,0 +1,212 @@
|
|
|
+package com.jzg.mapper;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.jzg.entity.PartnerUser;
|
|
|
+import com.jzg.entity.param.AppHomeParams;
|
|
|
+import com.jzg.entity.param.CommissionValidityPeriod;
|
|
|
+import com.jzg.entity.param.PartnerApp;
|
|
|
+import com.jzg.entity.param.QueryVo;
|
|
|
+import com.jzg.entity.vo.*;
|
|
|
+import org.apache.ibatis.annotations.*;
|
|
|
+
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
+
|
|
|
+@Mapper
|
|
|
+public interface PartnerUserMapper extends BaseMapper<PartnerUser> {
|
|
|
+
|
|
|
+ //分页查询
|
|
|
+ IPage<PartnerUserVo> queryPage(Page page, @Param("queryVo") QueryVo queryVo);
|
|
|
+
|
|
|
+ @MapKey("userId")
|
|
|
+ List<Map<String, String>> selectRecommender(@Param("level") String level);
|
|
|
+
|
|
|
+ List<RelationalVo> selectByUserId(@Param("id")String id, @Param("grade")Integer grade);
|
|
|
+
|
|
|
+ TodayOverview selectTodayOverview(@Param("params") AppHomeParams params);
|
|
|
+
|
|
|
+ List<TeamOverviewVo> selectTeamOverview(@Param("params") AppHomeParams params);
|
|
|
+
|
|
|
+
|
|
|
+ @Delete("delete from partner_user where user_id=#{id}")
|
|
|
+ void deleteByUserId(String id);
|
|
|
+
|
|
|
+ Object selectStatisticsMap(@Param("grade") String grade,@Param("params")AppHomeParams params);
|
|
|
+
|
|
|
+ SelectUserVo selectUser(AppHomeParams params);
|
|
|
+
|
|
|
+
|
|
|
+ Integer userCountVo(@Param("userId")String userId,@Param("params")AppHomeParams params,@Param("grade")Integer grade);
|
|
|
+
|
|
|
+
|
|
|
+ @Select("select MIN(grade) as grade from partner_user where user_id= #{userId} ")
|
|
|
+ Integer selectGradeMin(String userId);
|
|
|
+
|
|
|
+ @Select("select MIN(grade) as grade from partner_user where grade != 1 and identity_status = 0 and user_id= #{userId} ")
|
|
|
+ Integer selectGradeIntMin(String userId);
|
|
|
+
|
|
|
+
|
|
|
+ List<String> selectJuniorList(@Param("grade") Integer grade,@Param("ids") List<String> ids,@Param("params")AppHomeParams params);
|
|
|
+
|
|
|
+ @MapKey("createTime")
|
|
|
+ List<Map<String, String>> userCountVo2(@Param("userId")List<String> userId,@Param("params")AppHomeParams params);
|
|
|
+
|
|
|
+
|
|
|
+ List<PartnerUser> selectJuniorListUser(@Param("grade")Integer grade,@Param("ids") List<String> currentUserIds,@Param("params") AppHomeParams params);
|
|
|
+
|
|
|
+ @Select("SELECT GROUP_CONCAT( r.grade_name ORDER BY u.grade) FROM partner_user u LEFT JOIN partner_rule r ON r.grade = u.grade WHERE user_id = #{userId}")
|
|
|
+ String selectByUserIdGrade(String userId);
|
|
|
+
|
|
|
+ @Select("SELECT `name` FROM partner_user WHERE user_id = #{userId} LIMIT 1")
|
|
|
+ String selectByUserIdUserName(String userId);
|
|
|
+
|
|
|
+ Integer userCountIdsVo(@Param("ids") List<String> ids,@Param("params") AppHomeParams params);
|
|
|
+
|
|
|
+
|
|
|
+ List<RelationalVo> selectByReferrerId(@Param("userId") String userId,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ List<RelationalVo> selectQuerySuperiors(@Param("userId") String userId,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ JSONObject myPerformanceTotal(@Param("map")Map<String, String> map, @Param("list") Set<String> list);
|
|
|
+
|
|
|
+ Page<JSONObject> queryDataList(Page page,@Param("map") PartnerApp partnerApp);
|
|
|
+
|
|
|
+
|
|
|
+ Integer selectNumber(@Param("userId") String userId, @Param("number") String number,@Param("period") CommissionValidityPeriod period);
|
|
|
+
|
|
|
+
|
|
|
+ @Select("SELECT assessment_time FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ Date selectAssessmentTime(@Param("userId") String userId, @Param("grade")String grade);
|
|
|
+
|
|
|
+
|
|
|
+ @Select("SELECT fixed_cycle_time FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ Date selectFixedCycleTime(@Param("userId") String userId, @Param("grade")String grade);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET assessment_time =( SELECT DATE ( partner_review_time) FROM sys_user_jzg_info_salesman WHERE `partner_status` = 3 AND user_id = " +
|
|
|
+ " ( SELECT info.id FROM sys_user_jzg_info info WHERE info.user_id = #{userId} ) LIMIT 1 ) WHERE user_id = #{userId} ")
|
|
|
+ void updateAssessmentTime(String userId);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET fixed_cycle_time = ( " +
|
|
|
+ " SELECT DATE(approve_time) FROM sys_user_track WHERE `status` = 1 AND user_id = #{userId} LIMIT 1 " +
|
|
|
+ " ) WHERE user_id = #{userId} ")
|
|
|
+ void updateFixedCycleTime(String userId);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET assessment_time = #{date} WHERE user_id = #{userId} AND grade =#{grade} ")
|
|
|
+ void updateAssessmentTimeByDate(@Param("userId") String userId,@Param("date") Date date,@Param("grade")String grade);
|
|
|
+
|
|
|
+ Integer selectByUserIdNumber(@Param("userId") String userId,@Param("number") String number, @Param("period") CommissionValidityPeriod period);
|
|
|
+
|
|
|
+ PartnerUser queryUser(@Param("referrerId")String referrerId,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ Integer selectNumber4(@Param("userId") String userId,@Param("number") String number,@Param("period") CommissionValidityPeriod period);
|
|
|
+
|
|
|
+ List<PartnerUser> queryByUserId(String userId);
|
|
|
+
|
|
|
+ @Select("SELECT * FROM partner_user WHERE user_id = #{userId} ORDER BY grade DESC LIMIT 1")
|
|
|
+ PartnerUser selectMaxGradeUserId(String userId);
|
|
|
+
|
|
|
+ @Select("SELECT upgrade_time FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ Date selectUpgradeTime(String userId, String grade);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET upgrade_time = #{date} WHERE user_id = #{userId} and grade = #{grade}")
|
|
|
+ void updateUpgradeTimeByDate(@Param("userId") String userId,@Param("date") Date date,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET upgrade_time = ( " +
|
|
|
+ " SELECT DATE(approve_time) FROM sys_user_track WHERE `status` = 1 AND user_id = #{userId} LIMIT 1 " +
|
|
|
+ " ) WHERE user_id = #{userId} and grade = #{grade} ")
|
|
|
+ void updateUpgradeTime(@Param("userId")String userId,@Param("grade") String grade);
|
|
|
+
|
|
|
+
|
|
|
+ int assessment(@Param("userId") String userId,@Param("grade") String grade, @Param("period")CommissionValidityPeriod period);
|
|
|
+
|
|
|
+ String querySuperiors(@Param("userId") String userId,@Param("grade") Integer grade,@Param("original") String original);
|
|
|
+
|
|
|
+ @Select("SELECT * FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ PartnerUser getLevelUserId(@Param("userId") String userId,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ Set<String> querySubordinateUserId(@Param("levelUserId") String levelUserId);
|
|
|
+
|
|
|
+ Set<String> querySubordinate(String levelUserId);
|
|
|
+
|
|
|
+ Set<String> getLevelAllUserId(String userId);
|
|
|
+
|
|
|
+
|
|
|
+ @Select(" SELECT p.id,p.user_id,p.grade,p.name,p.create_time FROM partner_user p LEFT JOIN sys_user u ON u.id = p .user_id ${ew.customSqlSegment}")
|
|
|
+ Page<PartnerUser> selectListVo(@Param("page") Page page ,@Param("ew") QueryWrapper<PartnerUser> queryWrapper);
|
|
|
+
|
|
|
+ @Select(" SELECT p.id,p.user_id,p.grade,p.name,p.create_time FROM partner_user p LEFT JOIN sys_user u ON u.id = p .user_id ${ew.customSqlSegment}")
|
|
|
+ List<PartnerUser> selectListDb(@Param("ew") QueryWrapper<PartnerUser> queryWrapper);
|
|
|
+
|
|
|
+ @Select(" SELECT p.id,p.user_id,p.grade,p.name,p.create_time FROM partner_user p LEFT JOIN sys_user u ON u.id = p .user_id ${ew.customSqlSegment}")
|
|
|
+ List<PartnerUser> selectAllListVo(@Param("ew") QueryWrapper<PartnerUser> queryWrapper);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET identity_status = #{identityStatus},upgrade_time = DATE_FORMAT(NOW(), '%Y-%m-%d 00:00:00'),upgrade_cycle_start_time = DATE_FORMAT(NOW(), '%Y-%m-%d 00:00:00') WHERE user_id = #{userId} and grade = #{originalLevel} ")
|
|
|
+ void updateIdentityStatus(@Param("userId") String userId,@Param("originalLevel") String originalLevel,@Param("identityStatus")int identityStatus);
|
|
|
+
|
|
|
+ UserRuleVo queryUserRuleVo(@Param("userId") String userId, @Param("grade")Integer grade,@Param("period") CommissionValidityPeriod period);
|
|
|
+
|
|
|
+ @Select("SELECT upgrade_cycle_start_time as startDate FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ CommissionValidityPeriod selectUpgradeCycleStartTime(@Param("userId") String userId,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET upgrade_cycle_start_time = #{newDate} WHERE user_id = #{userId} and grade = #{grade} ")
|
|
|
+ void updateUpgradeCycleStartTime(@Param("userId") String userId, @Param("newDate")Date newDate,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+
|
|
|
+ BigDecimal selectOwnSumPremium(@Param("userId") String userId, @Param("period") CommissionValidityPeriod period);
|
|
|
+
|
|
|
+ @Select("SELECT upgrade_cycle_start_time FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ Date selectUpgradeStartTime(@Param("userId") String userId,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET upgrade_cycle_start_time = ( " +
|
|
|
+ " SELECT DATE_ADD(DATE(approve_time), INTERVAL 1 DAY) FROM sys_user_track WHERE `status` = 1 AND user_id = #{userId} LIMIT 1 " +
|
|
|
+ " ) WHERE user_id = #{userId} and grade = #{grade} ")
|
|
|
+ void updateUpgradeStartTime(@Param("userId") String userId,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ BigDecimal subordinateMembersInsurancePremiums(@Param("userId") String userId, @Param("grade")String grade,@Param("period") CommissionValidityPeriod period);
|
|
|
+
|
|
|
+ @Select("SELECT commission_rate FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ BigDecimal selectFixedRatio(@Param("userId") String userId, @Param("grade") String grade);
|
|
|
+
|
|
|
+
|
|
|
+ @Select("SELECT p.* FROM partner_user p LEFT JOIN sys_user u ON u.id = p.user_id WHERE u.`status` = 1 " +
|
|
|
+ "AND( p.grade, p.user_id) IN ( SELECT MIN( grade ) grade, user_id FROM partner_user WHERE grade IN ( '2', '3', '4' ) AND identity_status = 0 GROUP BY user_id )" +
|
|
|
+ " ORDER BY p.create_time DESC")
|
|
|
+ List<PartnerUser> queryDowngradedData();
|
|
|
+
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET commission_rate = null WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ void resetFixedRatio(@Param("userId") String userId, @Param("grade")Integer grade);
|
|
|
+
|
|
|
+ @Select("SELECT max(grade) FROM partner_user WHERE user_id = #{userId}")
|
|
|
+ Integer selectByUserIdMax(String referrerId);
|
|
|
+
|
|
|
+ @Select("SELECT dept_id FROM partner_user WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ String queryDeptIdByUserId(@Param("userId") String id,@Param("grade") Integer grade);
|
|
|
+
|
|
|
+ List<JSONObject> queryDataList(@Param("map")PartnerApp partnerApp);
|
|
|
+
|
|
|
+
|
|
|
+ @Select("SELECT max(grade) FROM partner_user WHERE identity_status = 1 and user_id = #{id}")
|
|
|
+ Integer selectMax(String id);
|
|
|
+
|
|
|
+ @Select("SELECT min(grade) FROM partner_user WHERE identity_status = 1 and user_id = #{id}")
|
|
|
+ Integer selectMin(String id);
|
|
|
+
|
|
|
+ @Select("SELECT identity_time FROM partner_user WHERE user_id = #{userId} AND grade = #{originalLevel}")
|
|
|
+ Date selectLockTime(@Param("userId") String userId, @Param("originalLevel")String originalLevel);
|
|
|
+
|
|
|
+ @Select(" SELECT user_id,grade,name,mobile,dept_id,dept_name,identity_time FROM partner_user WHERE identity_status = 1 AND DATE(DATE_ADD(identity_time, INTERVAL (#{expireDays} + 1) DAY)) <= CURDATE() ")
|
|
|
+ List<PartnerUser> queryExpiredRecords(Integer expireDays);
|
|
|
+
|
|
|
+ @Update("UPDATE partner_user SET upgrade_cycle_start_time = #{date} WHERE user_id = #{userId} AND grade = #{grade}")
|
|
|
+ void updateNextLevelAssessmentTime(@Param("userId") String userId, @Param("grade") Integer grade,@Param("date") Date date);
|
|
|
+
|
|
|
+ PartnerDetailsVo partnerDetails(@Param("userId") String userId);
|
|
|
+}
|