瀏覽代碼

校验手机号码

lyhzzz 2 年之前
父節點
當前提交
05eb4b43b2

+ 3 - 3
src/main/java/com/fdkankan/tk/controller/RoomUserController.java

@@ -2,6 +2,7 @@ package com.fdkankan.tk.controller;
 
 
 import com.fdkankan.tk.common.ResultData;
+import com.fdkankan.tk.httpClient.FdKKService;
 import com.fdkankan.tk.response.RoomAddUserParam;
 import com.fdkankan.tk.service.IRoomUserService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -20,12 +21,11 @@ import org.springframework.web.bind.annotation.*;
 public class RoomUserController {
 
     @Autowired
-    IRoomUserService roomUserService;
+    FdKKService fdKKService;
 
     @GetMapping("/addUserCheck")
     public ResultData addUserCheck(@RequestParam(required = false) String userName){
-        roomUserService.addUserCheck(userName);
-        return ResultData.ok( );
+        return ResultData.ok( fdKKService.checkUser(userName));
     }
 }
 

+ 9 - 3
src/main/java/com/fdkankan/tk/httpClient/FdKKService.java

@@ -6,6 +6,7 @@ import com.fdkankan.tk.httpClient.client.FdKKClient;
 import com.fdkankan.tk.httpClient.request.FdkkLoginRequest;
 import com.fdkankan.tk.httpClient.response.FdkkResponse;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -16,15 +17,20 @@ public class FdKKService {
     @Autowired
     FdKKClient fdKKClient;
 
-    public void checkUser(String userName){
+    public Boolean checkUser(String userName){
+        if( StringUtils.isBlank(userName)){
+            throw new BusinessException(ResultCode.PARAM_MISS);
+        }
+
         try {
             FdkkLoginRequest fdParam = new FdkkLoginRequest(userName,null);
             FdkkResponse fdkkResponse = fdKKClient.checkUser(fdParam);
             if(fdkkResponse.getCode() == 3015){
-                throw new BusinessException(ResultCode.FD_USER_NOT_EXIST);
+                return false;
             }
         }catch ( Exception e){
-            throw new BusinessException(ResultCode.FD_USER_NOT_EXIST);
+            return false;
         }
+        return  true;
     }
 }

+ 4 - 0
src/main/java/com/fdkankan/tk/mapper/IRoomShareLogMapper.java

@@ -2,8 +2,11 @@ package com.fdkankan.tk.mapper;
 
 import com.fdkankan.tk.entity.RoomShareLog;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fdkankan.tk.response.DataCount;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 /**
  * <p>
  *  Mapper 接口
@@ -15,4 +18,5 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface IRoomShareLogMapper extends BaseMapper<RoomShareLog> {
 
+    List<DataCount> getGroupByRoomId();
 }

+ 1 - 0
src/main/java/com/fdkankan/tk/mapper/IRoomVisitLogMapper.java

@@ -29,4 +29,5 @@ public interface IRoomVisitLogMapper extends BaseMapper<RoomVisitLog> {
     List<DataCount> getByDGroupRoomId(@Param("tb") String tb,@Param("roomId") String roomId,
                                      @Param("startTime") String startTime, @Param("endTime") String endTime);
 
+    List<DataCount> getGroupByRoomId();
 }

+ 22 - 3
src/main/java/com/fdkankan/tk/service/DataCountService.java

@@ -1,8 +1,11 @@
 package com.fdkankan.tk.service;
+import cn.hutool.core.date.DateUnit;
+import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fdkankan.tk.common.PageInfo;
 import com.fdkankan.tk.entity.Room;
 import com.fdkankan.tk.entity.RoomNum;
+import com.fdkankan.tk.entity.RoomUser;
 import com.fdkankan.tk.response.*;
 import com.fdkankan.tk.util.DataCountUtil;
 import com.fdkankan.tk.util.Dateutils;
@@ -32,6 +35,8 @@ public class DataCountService {
     IRoomNumService roomNumService;
     @Autowired
     ISceneService sceneService;
+    @Autowired
+    IRoomUserService roomUserService;
 
 
     public Object roomData() {
@@ -160,20 +165,34 @@ public class DataCountService {
             list = sceneService.getListByNumList(new ArrayList<>(numList));
             list.forEach(entity -> sceneMap.put(entity.getNum(),entity));
         }
+
+        List<DataCount> roomList = roomVisitLogService.getGroupByRoomId();
+        HashMap<String,Long> roomManMap = new HashMap<>();
+        roomList.forEach(entity -> roomManMap.put(entity.getDataKey(),entity.getDataCount()));
+
+        List<DataCount> roomShareList = roomShareLogService.getGroupByRoomId();
+        HashMap<String,Long> roomShareMap = new HashMap<>();
+        roomShareList.forEach(entity -> roomShareMap.put(entity.getDataKey(),entity.getDataCount()));
+
         for (Room record : page.getRecords()) {
             List<RoomNum> roomNums = numRoomMap.get(record.getRoomId());
             List<String> sceneTileList = new ArrayList<>();
             roomNums.forEach(entity -> {
                 sceneTileList.add(sceneMap.get(entity.getNum()).getTitle());
             });
+            List<RoomUser> roomUserList = roomUserService.getByRoomId(record.getRoomId());
+            Long minute = Dateutils.getLongTime(record.getUseStartTime(), record.getUseEndTime(),DateUnit.MINUTE);
+            for (RoomUser roomUser : roomUserList) {
+                minute +=  Dateutils.getLongTime(roomUser.getUseStartTime(), roomUser.getUseEndTime(),DateUnit.MINUTE);
+            }
             RoomListDataVo roomListDataVo = new RoomListDataVo();
             roomListDataVo.setRoomTitle(record.getRoomTitle());
             roomListDataVo.setSceneNameList(sceneTileList);
             roomListDataVo.setCreateTime(record.getCreateTime());
             roomListDataVo.setRoomStatus(record.getRoomStatus());
-            roomListDataVo.setLookTime(0L);
-            roomListDataVo.setLookManCount(0L);
-            roomListDataVo.setShareCount(0L);
+            roomListDataVo.setLookTime(minute);
+            roomListDataVo.setLookManCount(roomManMap.get(record.getRoomId()) == null ? 0L:roomManMap.get(record.getRoomId()) );
+            roomListDataVo.setShareCount(roomShareMap.get(record.getRoomId()) == null ? 0L:roomShareMap.get(record.getRoomId()) );
             voList.add(roomListDataVo);
         }
         Page<RoomListDataVo> pageVo = new Page<>(pageNum,pageSize);

+ 5 - 0
src/main/java/com/fdkankan/tk/service/IRoomShareLogService.java

@@ -2,6 +2,9 @@ package com.fdkankan.tk.service;
 
 import com.fdkankan.tk.entity.RoomShareLog;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.fdkankan.tk.response.DataCount;
+
+import java.util.List;
 
 /**
  * <p>
@@ -14,4 +17,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
 public interface IRoomShareLogService extends IService<RoomShareLog> {
 
     void saveLog(String roomId, String userId);
+
+    List<DataCount> getGroupByRoomId();
 }

+ 0 - 1
src/main/java/com/fdkankan/tk/service/IRoomUserService.java

@@ -18,7 +18,6 @@ import java.util.List;
  */
 public interface IRoomUserService extends IService<RoomUser> {
 
-    void addUserCheck(String param);
 
     void updateByUserObjList(List<RoomUser> userObjList, Room room);
 

+ 2 - 0
src/main/java/com/fdkankan/tk/service/IRoomVisitLogService.java

@@ -27,4 +27,6 @@ public interface IRoomVisitLogService extends IService<RoomVisitLog> {
     List<DataCount> getByGroupRoomId(String tb,String roomId, String startTime, String endTime);
 
     List<DataCount> getByDGroupRoomId(String tb, String roomId, String startTime, String endTime);
+
+    List<DataCount> getGroupByRoomId();
 }

+ 7 - 0
src/main/java/com/fdkankan/tk/service/impl/RoomShareLogServiceImpl.java

@@ -1,8 +1,10 @@
 package com.fdkankan.tk.service.impl;
 import java.util.Date;
+import java.util.List;
 
 import com.fdkankan.tk.entity.RoomShareLog;
 import com.fdkankan.tk.mapper.IRoomShareLogMapper;
+import com.fdkankan.tk.response.DataCount;
 import com.fdkankan.tk.service.IRoomShareLogService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
@@ -31,4 +33,9 @@ public class RoomShareLogServiceImpl extends ServiceImpl<IRoomShareLogMapper, Ro
         roomShareLog.setUserId(roomUserId);
         this.save(roomShareLog);
     }
+
+    @Override
+    public List<DataCount> getGroupByRoomId() {
+        return this.getBaseMapper().getGroupByRoomId();
+    }
 }

+ 0 - 8
src/main/java/com/fdkankan/tk/service/impl/RoomUserServiceImpl.java

@@ -47,14 +47,6 @@ public class RoomUserServiceImpl extends ServiceImpl<IRoomUserMapper, RoomUser>
     @Autowired
     RedisUtil redisUtil;
 
-    @Override
-    public void addUserCheck(String userName) {
-        if( StringUtils.isBlank(userName)){
-            throw new BusinessException(ResultCode.PARAM_MISS);
-        }
-        fdKKService.checkUser(userName);
-
-    }
 
     @Override
     public void updateByUserObjList(List<RoomUser> userObjList, Room room) {

+ 5 - 0
src/main/java/com/fdkankan/tk/service/impl/RoomVisitLogServiceImpl.java

@@ -84,4 +84,9 @@ public class RoomVisitLogServiceImpl extends ServiceImpl<IRoomVisitLogMapper, Ro
     public List<DataCount> getByDGroupRoomId(String tb,String roomId, String startTime, String endTime) {
         return this.getBaseMapper().getByDGroupRoomId(tb,roomId,startTime,endTime);
     }
+
+    @Override
+    public List<DataCount> getGroupByRoomId() {
+        return this.getBaseMapper().getGroupByRoomId();
+    }
 }

+ 10 - 0
src/main/java/com/fdkankan/tk/util/Dateutils.java

@@ -1,8 +1,11 @@
 package com.fdkankan.tk.util;
 
+import cn.hutool.core.date.DateUnit;
+import cn.hutool.core.date.DateUtil;
 import org.apache.commons.lang3.StringUtils;
 
 import java.text.SimpleDateFormat;
+import java.time.Duration;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Date;
@@ -157,4 +160,11 @@ public class Dateutils {
         return endTime +" 23:59:59";
     }
 
+    public static Long getLongTime(Date useStartTime, Date useEndTime,DateUnit dateUnit) {
+        if(useStartTime == null || useEndTime ==  null){
+            return 0L;
+        }
+       return DateUtil.between(useStartTime, useEndTime, dateUnit);
+    }
+
 }

+ 5 - 0
src/main/resources/mapper/tk/RoomShareLogMapper.xml

@@ -2,4 +2,9 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fdkankan.tk.mapper.IRoomShareLogMapper">
 
+
+    <select id="getGroupByRoomId" resultType="com.fdkankan.tk.response.DataCount">
+        select room_id as dataKey ,count(1) as dataCount from t_room_share_log
+        where tb_status = 0 group by dataKey
+    </select>
 </mapper>

+ 4 - 0
src/main/resources/mapper/tk/RoomVisitLogMapper.xml

@@ -35,4 +35,8 @@
         group by dataKey
 
     </select>
+    <select id="getGroupByRoomId" resultType="com.fdkankan.tk.response.DataCount">
+        select room_id as dataKey ,count(DISTINCT visit_user_id) as dataCount from t_room_visit_log
+        where tb_status = 0 group by dataKey
+    </select>
 </mapper>