Explorar el Código

Merge branch 'master' of http://192.168.0.115:3000/xiewenjie/fdkk_meta

xushiting hace 3 años
padre
commit
9f0183f7b2

+ 7 - 7
src/main/java/com/fdkk/fdkkmeta/ctroller/DevController.java

@@ -67,9 +67,9 @@ public class DevController   {
                 BreakpointsEntity breakpointsEntity=new BreakpointsEntity();
                 breakpointsEntity.setAppId("0000000001");
                 PointPO po=new PointPO();
-                po.setX(a.getJSONObject("position").getDoubleValue("x"));
-                po.setY(a.getJSONObject("position").getDoubleValue("y"));
-                po.setZ(a.getJSONObject("position").getDoubleValue("z"));
+                po.setX(a.getJSONObject("position").getDoubleValue("x")*100);
+                po.setY(a.getJSONObject("position").getDoubleValue("y")*100);
+                po.setZ(a.getJSONObject("position").getDoubleValue("z")*100);
                 breakpointsEntity.setPosition(po);
                 breakpointsEntity.setBreakPointId(a.getLong("id"));
 
@@ -79,7 +79,7 @@ public class DevController   {
                 breakpointsService.save(breakpointsEntity);
             }
         }
-
+//        //break*100
 //        File[] ls = FileUtil.ls(path);
 //        for (File l : ls) {
 //            List<File> files = FileUtil.loopFiles(l);
@@ -107,7 +107,7 @@ public class DevController   {
 //                        po.setY(a.getJSONObject("position").getDoubleValue("y"));
 //                        po.setZ(a.getJSONObject("position").getDoubleValue("z"));
 //                        rotateFrameEntity.setCameraPosition(po);
-//                        rotateFrameEntity.setBreakPointId(l.getName());
+//                        rotateFrameEntity.setBreakPointId(Long.parseLong(l.getName()));
 //                        rotateFrameEntity.setAppId("0000000001");
 //                        rotateFrameEntityList.add(rotateFrameEntity);
 //                        }
@@ -136,8 +136,8 @@ public class DevController   {
 //                        moveFrameEntity.setCameraPosition(po);
 //                        String name = file.getName().replace(".json", "");
 //                        String[] s1 = name.split("_");
-//                        moveFrameEntity.setStartBreakPointId(Integer.parseInt(s1[0]));
-//                        moveFrameEntity.setEndBreakPointId(Integer.parseInt(s1[1]));
+//                        moveFrameEntity.setStartBreakPointId(Long.parseLong(s1[0]));
+//                        moveFrameEntity.setEndBreakPointId(Long.parseLong(s1[1]));
 //                        moveFrameEntity.setAngle(Integer.parseInt(s1[2]));
 //                        moveFrameEntity.setFrameIndex(a.getInteger("frame"));
 //                        moveFrameEntity.setDirectory(file.getName().replace(".json",""));

+ 2 - 0
src/main/java/com/fdkk/fdkkmeta/domain/entity/mysql/UserEntity.java

@@ -27,4 +27,6 @@ public class UserEntity extends BaseEntity {
     private AnglePO playerAngle;
 
     private String sessionId;
+
+    private Boolean online;
 }

+ 8 - 5
src/main/java/com/fdkk/fdkkmeta/grpcService/sceneGrpcServer.java

@@ -188,7 +188,7 @@ public class sceneGrpcServer extends SceneGrpcServiceGrpc.SceneGrpcServiceImplBa
             userEntity.setSkinId(skin_id);
             userEntity.setFrameId(1L);
             userEntity.setBreakPointId(1L);
-
+			userEntity.setOnline(true);
           //初始化的时候可以写死
             AnglePO player_angle = new AnglePO();
             player_angle.setPitch(0);
@@ -196,7 +196,10 @@ public class sceneGrpcServer extends SceneGrpcServiceGrpc.SceneGrpcServiceImplBa
             player_angle.setRoll(0);
             userEntity.setPlayerAngle(player_angle);
             userService.save(userEntity);
-    	}
+			//todo 存入redis
+			// redisCache.set("updateFrameMetadata:"+userEntity.getUserId(),a.toJSONString());
+
+		}
     	catch(Exception e) {
     		e.printStackTrace();
     	}
@@ -325,7 +328,7 @@ public class sceneGrpcServer extends SceneGrpcServiceGrpc.SceneGrpcServiceImplBa
             PointPO e=new PointPO();
             e.setX(Double.parseDouble(end.getX()));
             e.setY(Double.parseDouble(end.getY()));
-            e.setZ(Double.parseDouble(end.getY()));
+            e.setZ(Double.parseDouble(end.getZ()));
             po.setE_location(e);
             po.setS_location(s);
             po.setSceneCode(appId);
@@ -438,8 +441,8 @@ public class sceneGrpcServer extends SceneGrpcServiceGrpc.SceneGrpcServiceImplBa
 			//builder.addTraceIds()
 			//.setVehicle(null)
 			builder.setVehicle("");
-			builder.setNewUserStates(0, userState);
-			builder.setActionResponses(0, 0);             //这个要查查
+			builder.addNewUserStates( userState);
+			builder.addActionResponses(0);             //这个要查查
 			builder.setGetStateType(0);
 			builder.setCode(0);
 			builder.setMsg("OK");

+ 3 - 0
src/main/java/com/fdkk/fdkkmeta/service/UserService.java

@@ -11,4 +11,7 @@ import java.util.List;
  */
 public interface UserService extends IBaseService<UserEntity> {
     UserEntity findUserId(String userId);
+
+    List<UserEntity> findUserOnline(boolean isOnline);
+
 }

+ 9 - 0
src/main/java/com/fdkk/fdkkmeta/service/impl/UserImpl.java

@@ -10,6 +10,8 @@ import com.fdkk.fdkkmeta.service.UserService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 
 /**
  * Created by Xiewj on 2021/11/23 0026 10:14
@@ -23,4 +25,11 @@ public class UserImpl extends BaseServiceImpl<UserMapper, UserEntity> implements
         wrapper.eq(UserEntity::getUserId, userId);
         return getOne(wrapper);
     }
+
+    @Override
+    public List<UserEntity> findUserOnline(boolean isOnline) {
+        LambdaQueryWrapper<UserEntity> wrapper = Wrappers.lambdaQuery();
+        wrapper.eq(UserEntity::getOnline, isOnline);
+        return list(wrapper);
+    }
 }

+ 0 - 31
src/main/java/com/fdkk/fdkkmeta/task/FFmpegTask.java

@@ -1,31 +0,0 @@
-package com.fdkk.fdkkmeta.task;
-
-import cn.hutool.core.date.DateUtil;
-import com.fdkk.fdkkmeta.redis.RedisCache;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-import java.util.Set;
-
-/**
- * @author Xiewj
- * @date 2022/3/30
- */
-@Component
-@Slf4j
-public class FFmpegTask {
-   @Autowired
-   RedisCache redisCache;
-
-//   @Scheduled(initialDelay=1000, fixedDelay=2000)
-   public void checkFFmpegByPid(){
-      Set<String> allScene = redisCache.getMembers("allScene");
-      for (String sceneCode : allScene) {
-          Set<String> allPid = redisCache.getMembers("scene:"+sceneCode);
-            log.info("allpid{}",allPid);
-      }
-   }
-}

+ 41 - 0
src/main/java/com/fdkk/fdkkmeta/task/UpdateFrameMetaTask.java

@@ -0,0 +1,41 @@
+package com.fdkk.fdkkmeta.task;
+
+import cn.hutool.core.util.ArrayUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.fdkk.fdkkmeta.domain.entity.mysql.UserEntity;
+import com.fdkk.fdkkmeta.redis.RedisCache;
+import com.fdkk.fdkkmeta.service.UserService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author Xiewj
+ * @date 2022/3/30
+ */
+@Component
+@Slf4j
+public class UpdateFrameMetaTask {
+   @Autowired
+   RedisCache redisCache;
+   @Autowired
+    UserService userService;
+
+    @Scheduled(initialDelay=1000, fixedDelay=2000)
+   public void updateFrameMetadata(){
+       List<UserEntity> userOnline = userService.findUserOnline(true);
+       log.info("进入定时任务{}", ArrayUtil.isNotEmpty(userOnline)?userOnline.size():0);
+//        JSONObject a=new JSONObject();
+//        a.put("123123",123123);
+       //使用并行流处理数据
+       userOnline.parallelStream().forEach(
+               userEntity -> {
+//                   redisCache.set("updateFrameMetadata:"+userEntity.getUserId(),a.toJSONString());
+               }
+       );
+
+   }
+}

+ 3 - 3
src/main/java/com/fdkk/fdkkmeta/test/test.java

@@ -143,9 +143,9 @@ public class test {
             po.setId(i );
             if (s.length == 12) {
                 double[] oldPoint = {Double.valueOf(s[0]), Double.valueOf(s[1]), Double.valueOf(s[2])};
-                po.setX(oldPoint[0]);
-                po.setY(oldPoint[1]);
-                po.setZ(oldPoint[2]);
+                po.setX(oldPoint[0]*100);
+                po.setY(oldPoint[1]*100);
+                po.setZ(oldPoint[2]*100);
                 po.setWeight(Double.parseDouble(s[3]));
                 List<String> strings = Arrays.asList(s[4], s[5], s[6], s[7], s[8], s[9], s[10], s[11]);
                 List<Integer> contact = strings.stream().map(a->{

+ 10 - 0
src/main/java/com/fdkk/fdkkmeta/util/kesar/GetRoute.java

@@ -2,6 +2,7 @@ package com.fdkk.fdkkmeta.util.kesar;
 
 import cn.hutool.core.io.LineHandler;
 import cn.hutool.core.io.file.FileReader;
+import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
@@ -108,6 +109,15 @@ public class GetRoute {
         GetRoute.log.info("棋盘获取路线点-开始点{},{}", _start.x, _start.y);
         GetRoute.log.info("棋盘获取路线点-结束点{},{}", _end.x, _end.y);
         //  开始结束点一样就直接返回
+        if (ObjectUtil.isNull(minStartId)){
+            GetRoute.log.info("找不到开始点");
+            return null;
+        }
+        if (ObjectUtil.isNull(minEndId)){
+            GetRoute.log.info("找不到结束点");
+            return null;
+        }
+
         if (minStartId.getId()==minEndId.getId()){
             GetRoute.log.info("超过1.1米就找不到路径startDistance {},endDistance{}", startDistance[0], endDistance[0]);
             GetRoute.log.info("开始最近距离{} ", startDistance[0]);