helixiao 1 рік тому
батько
коміт
a8b0f2b7a0

+ 4 - 2
src/main/java/com/ydtech/modules/admin/controller/SysUserController.java

@@ -560,8 +560,10 @@ public class SysUserController extends BaseController {
         SysUserTrack sysUserTrack = new SysUserTrack(sysUser);
         sysUserTrack.setApproveMess(reason);
         sysUserTrackService.save(sysUserTrack);
-
-        sysUserService.sendMsgPantner(sysUser.getMobile());
+        Integer type = sysUser.getType();
+        if (type != null && type !=0 ) {
+            sysUserService.sendMsgPantner(sysUser.getMobile());
+        }
 
         return HttpResult.ok(sysUserService.updateById(sysUser));
 

+ 2 - 0
src/main/java/com/ydtech/modules/admin/dao/SysPartnerMapper.java

@@ -40,7 +40,9 @@ public interface SysPartnerMapper extends BaseMapper<SysPartner> {
     List<SysPartner> queryByLoginId(@Param("userId") String userId);
 
     List<CountUserNumVo> queryDeptByTime(@Param("userId") String userId, @Param("dto") CountUserDto countUserDto);
+    List<CountUserNumVo> queryDeptByTimes(@Param("userId") String userId, @Param("dto") CountUserDto countUserDto);
 
+    List<CountUserNumVo> queryUserByTimes(@Param("deptIds") List<String> deptIds,@Param("dto") CountUserDto countUserDto);
     List<CountUserNumVo> queryUserByTime(@Param("deptIds") List<String> deptIds,@Param("dto") CountUserDto countUserDto);
 }
 

+ 15 - 3
src/main/java/com/ydtech/modules/admin/service/impl/SysPartnerServiceImpl.java

@@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional;
 import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.ZoneId;
@@ -1884,6 +1885,9 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
     public CountUserVo getCountUser(CountUserDto countUserDto) {
         CountUserVo countUserVo = new CountUserVo();
         String userId = BaseController.getUserId();
+        //原始参数
+        String startTime1 = countUserDto.getBeginTime();
+        String endTime1 = countUserDto.getEndTime();
 
         List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
                 .eq(SysUser::getReferrerId,userId)
@@ -1911,12 +1915,20 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
         List<CountUserNumVo> countUserNumVoList = null;
         int type = countUserDto.getType();
         if (type == 1) {
-            countUserNumVoList = sysPartnerMapper.queryDeptByTime(userId,countUserDto);
-            countUserVo.setCountUserNumVoList(countUserNumVoList);
+            if (StringUtils.isNotEmpty(startTime1) && startTime1.equals(endTime1)) {
+                countUserNumVoList = sysPartnerMapper.queryDeptByTimes(userId,countUserDto);
+            }else {
+                countUserNumVoList = sysPartnerMapper.queryDeptByTime(userId,countUserDto);
+            }
         }else {
             List<String> deptIds = sysUsers.stream().map(SysUser::getDeptId).collect(Collectors.toList());
+            if (StringUtils.isNotEmpty(startTime1) && startTime1.equals(endTime1)){
 
-            countUserNumVoList = sysPartnerMapper.queryUserByTime(deptIds,countUserDto);
+                countUserNumVoList = sysPartnerMapper.queryUserByTimes(deptIds,countUserDto);
+            }else {
+
+                countUserNumVoList = sysPartnerMapper.queryUserByTime(deptIds,countUserDto);
+            }
 
         }
         countUserVo.setCountUserNumVoList(countUserNumVoList);

+ 8 - 8
src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java

@@ -312,20 +312,20 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         } else if (type == 3) {
             type1 = "团队长申请";
         }
-        Random rand = new Random();
-        // randNumber 将被赋值为一个 MIN 和 MAX 范围内的随机数
-        int randNumber = rand.nextInt(9999 - 1000 + 1) + 1000;
-        // 保存验证码到redis
-        redisTemplate.opsForValue().set(PHONE_VERIFICATION_CODE_KEY + phone, String.valueOf(randNumber), PHONE_VERIFICATION_CODE_KEY_TIME
-                , TimeUnit.MINUTES);
+//        Random rand = new Random();
+//        // randNumber 将被赋值为一个 MIN 和 MAX 范围内的随机数
+//        int randNumber = rand.nextInt(9999 - 1000 + 1) + 1000;
+//        // 保存验证码到redis
+//        redisTemplate.opsForValue().set(PHONE_VERIFICATION_CODE_KEY + phone, String.valueOf(randNumber), PHONE_VERIFICATION_CODE_KEY_TIME
+//                , TimeUnit.MINUTES);
 
         String result = null;
         String url = "http://v.juhe.cn/sms/send";//请求接口地址
         Map params = new HashMap();//请求参数
         params.put("mobile", phone);//接收短信的手机号码
         params.put("tpl_id", "71853");//短信模板ID,请参考个人中心短信模板设置
-        String textVal = "#code#=" + randNumber ;
-        params.put("tpl_value", textVal);//变量名和变量值对。如果你的变量名或者变量值中带有#&=中的任意一个特殊符号,请先分别进行urlencode编码后再传递,<a href="http://www.juhe.cn/news/index/id/50"
+//        String textVal = "#code#=" + randNumber ;
+//        params.put("tpl_value", textVal);//变量名和变量值对。如果你的变量名或者变量值中带有#&=中的任意一个特殊符号,请先分别进行urlencode编码后再传递,<a href="http://www.juhe.cn/news/index/id/50"
         params.put("user_id", userId);
         params.put("timeCreate", createTime);
         params.put("apprveMess", apprveMess);

+ 53 - 2
src/main/resources/mapper/modules/admin/SysPartnerMapper.xml

@@ -75,11 +75,35 @@
         left join sys_relation_person srp on srp.agency_leader_id=sal.user_id
         where srp.type = 0 and srp.suggest_id = #{userId}
     </select>
+
+
+    <select id="queryDeptByTimes" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.user_id) as countNum
+        from(
+        SELECT
+            s.user_id,DATE_FORMAT(s.create_time, '%Y-%m-%d %H' ) as time
+        FROM sys_user  s
+        <where>
+            s.type = 3 and s.status in (1, 4, 5, 6, 7)
+            <if test="userId != null ">
+                and s.referrer_id = #{userId}
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d' ) like CONCAT( DATE_FORMAT( #{dto.startTime}, '%Y-%m-%d' ), '%' ))
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+    </select>
+
     <select id="queryDeptByTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
         select spa.time, COUNT(spa.user_id) as countNum
         from(
         SELECT
-            s.user_id,DATE_FORMAT(s.operation_time, '%Y-%m-%d' ) as time
+            s.user_id,DATE_FORMAT(s.create_time, '%Y-%m-%d' ) as time
         FROM sys_user  s
         <where>
             s.type = 3 and s.status in (1, 4, 5, 6, 7)
@@ -96,11 +120,38 @@
         ORDER BY
         spa.time ASC
     </select>
+
+    <select id="queryUserByTimes" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.user_id) as countNum
+        from(
+        SELECT
+            s.user_id,DATE_FORMAT(s.create_time, '%Y-%m-%d %H' ) as time
+        FROM sys_user  s
+        <where>
+            s.status in (1, 4, 5, 6, 7)
+            <if test="deptIds != null and deptIds != '' and deptIds.size() > 0">
+                AND s.dept_id  in
+                <foreach collection="deptIds" item="deptId" open="(" separator="," close=")">
+                    #{deptId}
+                </foreach>
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d' ) like CONCAT( DATE_FORMAT( #{dto.startTime}, '%Y-%m-%d' ), '%' ))
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+
+    </select>
+
     <select id="queryUserByTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
         select spa.time, COUNT(spa.user_id) as countNum
         from(
         SELECT
-            s.user_id,DATE_FORMAT(s.operation_time, '%Y-%m-%d' ) as time
+            s.user_id,DATE_FORMAT(s.create_time, '%Y-%m-%d' ) as time
         FROM sys_user  s
         <where>
             s.status in (1, 4, 5, 6, 7)