Parcourir la source

场景模块测试完成

wuweihao il y a 5 ans
Parent
commit
5a8bd9378c
23 fichiers modifiés avec 296 ajouts et 146 suppressions
  1. 1 0
      gis_application/src/main/resources/application-dev.properties
  2. BIN
      gis_application/src/main/resources/data/dacf7dfa24ae47fab8fcebfe4dc41ab9_50k.dam
  3. 17 0
      gis_application/src/main/resources/data/images.json
  4. 3 0
      gis_common/src/main/java/com/gis/common/proto/constant/ConstantCmd.java
  5. 1 0
      gis_common/src/main/java/com/gis/common/util/FileUtils.java
  6. 6 7
      gis_domain/src/main/java/com/gis/domain/entity/NewsEntity.java
  7. 5 0
      gis_domain/src/main/java/com/gis/domain/entity/SceneEntity.java
  8. 0 35
      gis_domain/src/main/java/com/gis/domain/excel/OverTimeExcel.java
  9. 25 0
      gis_domain/src/main/java/com/gis/domain/request/MenuRequest.java
  10. 2 2
      gis_mapper/src/main/java/com/gis/mapper/NewsMapper.java
  11. 2 3
      gis_mapper/src/main/java/com/gis/mapper/OverTimeMapper.java
  12. 13 0
      gis_service/src/main/java/com/gis/service/MenuService.java
  13. 0 13
      gis_service/src/main/java/com/gis/service/NewsService.java
  14. 0 2
      gis_service/src/main/java/com/gis/service/OverTimeService.java
  15. 6 6
      gis_service/src/main/java/com/gis/service/impl/NewsServiceImpl.java
  16. 1 5
      gis_service/src/main/java/com/gis/service/impl/OverTimeServiceImpl.java
  17. 104 47
      gis_web/src/main/java/com/gis/web/controller/ApiController.java
  18. 1 1
      gis_web/src/main/java/com/gis/web/controller/ExceptionController.java
  19. 8 0
      gis_web/src/main/java/com/gis/web/controller/IndexController.java
  20. 73 0
      gis_web/src/main/java/com/gis/web/controller/MenuController.java
  21. 0 24
      gis_web/src/main/java/com/gis/web/controller/TestController.java
  22. 17 0
      gis_web/src/main/resources/data/images.json
  23. 11 1
      help.md

+ 1 - 0
gis_application/src/main/resources/application-dev.properties

@@ -54,4 +54,5 @@ logging.level.com.fdkanfang=debug
 
 # \u672C\u5730\u4FDD\u5B58\u8DEF\u5F84
 file.path=F:\\test\\army\\images
+server.domain =http://192.168.0.135:8101/
 

BIN
gis_application/src/main/resources/data/dacf7dfa24ae47fab8fcebfe4dc41ab9_50k.dam


+ 17 - 0
gis_application/src/main/resources/data/images.json

@@ -0,0 +1,17 @@
+
+{
+"metadata": "{\"camera_mode\":0,\"camera_position\":{\"x\":17.319578170776367,\"y\":0.5689632296562195,\"z\":30.42438507080078},\"camera_quaternion\":{\"x\":-0.0000020361233819675194,\"y\":0.9999978870169733,\"z\":-0.0012442941874225735,\"w\":-0.0016363646960161576},\"ortho_zoom\":-1,\"ss_zoom\":1,\"scan_id\":\"b1498df53a554a0bafec6646639964e6\",\"is_ortho\":false,\"floorVisibility\":[1]}",
+"created": "2019-04-12T01:15:48.811428Z",
+"modified": "2019-04-12T01:15:48.811961Z",
+"sid": "update",
+"name": "04.12.2019_09.15.38",
+"height": 1707,
+"width": 3034,
+"is_hero": true,
+"category": "user",
+"vision_generated_label": "",
+"vision_generated_name": "",
+"vision_image_index": -1,
+"created_by": 4084,
+"rating": null
+}

+ 3 - 0
gis_common/src/main/java/com/gis/common/proto/constant/ConstantCmd.java

@@ -5,6 +5,9 @@ public class ConstantCmd {
 	  //生成模型的命令
 	  public static final String BUILD_MODEL_COMMAND = "bash /home/ubuntu/bin/Launcher.sh ";
 
+	  // 生成切片图
+	  public static final String SLICE_SKYBOX = "bash /home/ubuntu/Skybox/Skybox.sh ";
+
 //	  public static final String BUILD_MODEL_SFM_COMMAND = "bash /home/ubuntu/run_sfm.sh ";
 //
 //	  public static final String REBUILD_MODEL_FLLOR = "bash /home/ubuntu/bin/Panoramix_Floorplan.sh ";

+ 1 - 0
gis_common/src/main/java/com/gis/common/util/FileUtils.java

@@ -93,6 +93,7 @@ public class FileUtils {
 
     /**
      * 获取文件资源路径
+     * 这方法,测试时是用当前类路径,当打包成jar包时时,会变成跟目录下。所以要把资源文件放入口类的资源文件夹
      * @param filePath 文件路径
      * @return
      * @throws IOException

+ 6 - 7
gis_domain/src/main/java/com/gis/domain/entity/NewsEntity.java

@@ -8,17 +8,16 @@ import javax.persistence.Table;
 import java.io.Serializable;
 
 @Data
-@Entity
-@Table(name = "tb_new")
-public class NewsEntity extends BaseEntity implements Serializable {
+@Table(name = "tb_menu")
+public class MenuEntity extends BaseEntity implements Serializable {
 
     private static final long serialVersionUID = -8093446477843493946L;
 
-    @ApiModelProperty(value = "标题")
-    private String title;
+    @ApiModelProperty(value = "名称")
+    private String name;
 
-    @ApiModelProperty(value = "用户id")
-    private Long userId;
+    @ApiModelProperty(value = "排序")
+    private Integer sort;
 
 
 }

+ 5 - 0
gis_domain/src/main/java/com/gis/domain/entity/SceneEntity.java

@@ -20,5 +20,10 @@ public class SceneEntity extends BaseEntity implements Serializable {
     @ApiModelProperty(value = "存放地址")
     private String path;
 
+    @ApiModelProperty(value = "场景名称")
+    private String sceneTitle;
+
+    @ApiModelProperty(value = "场景url")
+    private String webSite;
 
 }

+ 0 - 35
gis_domain/src/main/java/com/gis/domain/excel/OverTimeExcel.java

@@ -1,35 +0,0 @@
-package com.gis.domain.excel;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-
-/**
- * Created by owen on 2020/6/10 0010 17:39
- */
-@Data
-public class OverTimeExcel {
-
-
-    @ApiModelProperty(value = "用户名称(真名)")
-    private String userName;
-
-    @ApiModelProperty(value = "工号" )
-    private String jobNumber;
-
-    @ApiModelProperty(value = "部门名称")
-    private String deptName;
-
-    @ApiModelProperty(value = "职位名称")
-    private String position;
-
-    @ApiModelProperty(value = "加班开始时间, 格式yyyy-MM-dd HH:mm:ss")
-    private String startTime;
-
-    @ApiModelProperty(value = "加班结束时间, 格式yyyy-MM-dd HH:mm:ss")
-    private String endTime;
-
-    @ApiModelProperty(value = "加班时间,单位:分钟")
-    private Long totalMinutes;
-
-}

+ 25 - 0
gis_domain/src/main/java/com/gis/domain/request/MenuRequest.java

@@ -0,0 +1,25 @@
+package com.gis.domain.request;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * Created by owen on 2020/5/9 0009 12:20
+ */
+@Data
+public class MenuRequest {
+
+    @ApiModelProperty(value = "id, 修改时必须传,新增忽略", name = "id")
+    private Long id;
+
+    @NotBlank(message = "名称不能为空")
+    @ApiModelProperty(value = "名称", required = true)
+    private String name;
+
+    @NotNull(message = "排序不能为空")
+    @ApiModelProperty(value = "排序", required = true)
+    private Integer sort;
+}

+ 2 - 2
gis_mapper/src/main/java/com/gis/mapper/NewsMapper.java

@@ -1,12 +1,12 @@
 package com.gis.mapper;
 
 
-import com.gis.domain.entity.NewsEntity;
+import com.gis.domain.entity.MenuEntity;
 import org.apache.ibatis.annotations.Mapper;
 import org.springframework.stereotype.Component;
 
 @Component
 @Mapper
-public interface NewsMapper extends IBaseMapper<NewsEntity, Long> {
+public interface MenuMapper extends IBaseMapper<MenuEntity, Long> {
 
 }

+ 2 - 3
gis_mapper/src/main/java/com/gis/mapper/OverTimeMapper.java

@@ -2,7 +2,6 @@ package com.gis.mapper;
 
 
 import com.gis.domain.entity.OverTimeEntity;
-import com.gis.domain.excel.OverTimeExcel;
 import com.gis.domain.request.PageDateRequest;
 import com.gis.mapper.provider.OverTimeProvider;
 import org.apache.ibatis.annotations.Mapper;
@@ -18,6 +17,6 @@ public interface OverTimeMapper extends IBaseMapper<OverTimeEntity, Long> {
 
 //    @Select(value = "select * from tb_over_time where rec_status = 'A' ")
 
-    @SelectProvider(type = OverTimeProvider.class, method = "findBySearchKey")
-    List<OverTimeExcel> findExcel(PageDateRequest param);
+//    @SelectProvider(type = OverTimeProvider.class, method = "findBySearchKey")
+//    List<OverTimeExcel> findExcel(PageDateRequest param);
 }

+ 13 - 0
gis_service/src/main/java/com/gis/service/MenuService.java

@@ -0,0 +1,13 @@
+package com.gis.service;
+
+
+import com.gis.domain.entity.MenuEntity;
+
+
+/**
+ * Created by owen on 2020/3/11 0011 16:14
+ */
+public interface MenuService extends IBaseService<MenuEntity, Long> {
+
+
+}

+ 0 - 13
gis_service/src/main/java/com/gis/service/NewsService.java

@@ -1,13 +0,0 @@
-package com.gis.service;
-
-
-import com.gis.domain.entity.NewsEntity;
-
-
-/**
- * Created by owen on 2020/3/11 0011 16:14
- */
-public interface NewsService extends IBaseService<NewsEntity, Long> {
-
-
-}

+ 0 - 2
gis_service/src/main/java/com/gis/service/OverTimeService.java

@@ -2,7 +2,6 @@ package com.gis.service;
 
 
 import com.gis.domain.entity.OverTimeEntity;
-import com.gis.domain.excel.OverTimeExcel;
 import com.gis.domain.request.PageDateRequest;
 import org.apache.ibatis.annotations.SelectProvider;
 
@@ -15,5 +14,4 @@ import java.util.List;
 public interface OverTimeService extends IBaseService<OverTimeEntity, Long> {
 
 
-    List<OverTimeExcel> findExcel(PageDateRequest param);
 }

+ 6 - 6
gis_service/src/main/java/com/gis/service/impl/NewsServiceImpl.java

@@ -1,9 +1,9 @@
 package com.gis.service.impl;
 
-import com.gis.domain.entity.NewsEntity;
+import com.gis.domain.entity.MenuEntity;
 import com.gis.mapper.IBaseMapper;
-import com.gis.mapper.NewsMapper;
-import com.gis.service.NewsService;
+import com.gis.mapper.MenuMapper;
+import com.gis.service.MenuService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -12,13 +12,13 @@ import org.springframework.stereotype.Service;
  * Created by owen on 2020/3/11 0011 16:16
  */
 @Service
-public class NewsServiceImpl extends IBaseServiceImpl<NewsEntity, Long> implements NewsService {
+public class MenuServiceImpl extends IBaseServiceImpl<MenuEntity, Long> implements MenuService {
 
     @Autowired
-    private NewsMapper entityMapper;
+    private MenuMapper entityMapper;
 
     @Override
-    public IBaseMapper<NewsEntity, Long> getBaseMapper() {
+    public IBaseMapper<MenuEntity, Long> getBaseMapper() {
         return this.entityMapper;
     }
 

+ 1 - 5
gis_service/src/main/java/com/gis/service/impl/OverTimeServiceImpl.java

@@ -1,7 +1,6 @@
 package com.gis.service.impl;
 
 import com.gis.domain.entity.OverTimeEntity;
-import com.gis.domain.excel.OverTimeExcel;
 import com.gis.domain.request.PageDateRequest;
 import com.gis.mapper.OverTimeMapper;
 import com.gis.mapper.IBaseMapper;
@@ -27,8 +26,5 @@ public class OverTimeServiceImpl extends IBaseServiceImpl<OverTimeEntity, Long>
     }
 
 
-    @Override
-    public List<OverTimeExcel> findExcel(PageDateRequest param) {
-        return entityMapper.findExcel(param);
-    }
+
 }

+ 104 - 47
gis_web/src/main/java/com/gis/web/controller/ApiController.java

@@ -2,7 +2,9 @@ package com.gis.web.controller;
 
 
 import cn.hutool.core.io.FileUtil;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.gis.common.proto.constant.ConstantCmd;
 import com.gis.common.proto.constant.ConstantFileName;
 import com.gis.common.proto.util.CreateObjUtil;
 import com.gis.common.util.FileUtils;
@@ -36,36 +38,11 @@ public class ApiController extends BaseController {
     @Autowired
     private SceneService sceneService;
 
-//    @ApiImplicitParams({
-//            @ApiImplicitParam(name = "file", value = "文件", required = true),
-//            @ApiImplicitParam(name = "savePath", value = "文件保存路径", required = true),
-//    })
-//    @ApiOperation("上传")
-//    @PostMapping("upload")
-//    public Result upload(MultipartFile file, String savePath) throws IOException {
-//        if (StringUtils.isBlank(savePath)) {
-//            log.error("保存路径不能为空");
-//            return Result.failure("保存路径不能为空");
-//        }
-//
-//        if (file == null) {
-//            log.error("文件不能为空");
-//            return Result.failure("文件不能为空");
-//        }
-//
-//        savePath = FILE_PATH + savePath;
-//        log.warn("savePath: {}", savePath);
-//
-//
-//        boolean upload = FileUtils.upload(file, savePath);
-//        return upload? Result.success() : Result.failure("上传失败");
-//    }
-
-
 
     @ApiOperation("Map表单上传多文件,指定保存路径,需要用postman测试")
     @PostMapping("uploads")
-    public Result uploads(@RequestParam Map<String, MultipartFile> param) {
+    public Result uploads(@RequestParam Map<String, MultipartFile> param, String sceneTitle, String sceneCode) throws Exception {
+
         param.forEach((path, file)->{
 
             if (StringUtils.isBlank(path)) {
@@ -86,7 +63,34 @@ public class ApiController extends BaseController {
 
         });
 
-        return Result.success();
+        SceneEntity entity = new SceneEntity();
+        entity.setSceneCode(sceneCode);
+        entity.setPath(FILE_PATH + sceneCode);
+        entity.setSceneTitle(sceneTitle);
+
+
+
+
+        // 调用算法图片转换
+        String cmd = ConstantCmd.SLICE_SKYBOX + entity.getPath();
+        log.info("cmd:{}", cmd);
+        CreateObjUtil.callshell(cmd);
+        log.info("算法切片完成");
+
+        // 转换文件
+        convert(entity.getPath(), sceneCode, sceneTitle);
+        log.info("文件转换完成");
+
+        // 场景url
+        String webSite = SERVER_DOMAIN + "SuperTwo/index.html?m=" + sceneCode;
+        log.info("webSite: {}", webSite);
+
+
+        entity.setWebSite(webSite);
+        sceneService.save(entity);
+
+
+        return Result.success(entity.getWebSite());
     }
 
 
@@ -95,14 +99,7 @@ public class ApiController extends BaseController {
     public Result getSceneCode() {
         String sceneCode = RandomUtils.randowString(9);
         sceneCode = "ar_" +sceneCode;
-
-        SceneEntity entity = new SceneEntity();
-        entity.setSceneCode(sceneCode);
-        entity.setPath(FILE_PATH + sceneCode);
-
-        sceneService.save(entity);
-
-        return Result.success(entity.getSceneCode());
+        return Result.success(sceneCode);
     }
 
 
@@ -113,8 +110,8 @@ public class ApiController extends BaseController {
         SceneEntity entity = sceneService.findBySceneCode(sceneCode);
         assert entity != null;
 
-        Object webSite = SERVER_DOMAIN + "SuperTwo/index.html?m=" + sceneCode;
-        return Result.success(webSite);
+//        Object webSite = SERVER_DOMAIN + "SuperTwo/index.html?m=" + sceneCode;
+        return Result.success(entity.getWebSite());
     }
 
 
@@ -133,16 +130,52 @@ public class ApiController extends BaseController {
     }
 
 
+    /**
+     * 文件转换
+     * @param sceneCode
+     * @throws Exception
+     */
+    private void convert(String basePath, String sceneCode, String sceneTitle) throws Exception {
+
+
+        // 1. 将XXX_50k.dam写到服务器
+        String resourceUrl = FileUtils.getResourceUrl("data/" + ConstantFileName.modelUUID + "_50k.dam");
+        log.info("_50k.dam path: {}", resourceUrl);
+        // 复制一份
+        FileUtil.copy(resourceUrl, basePath+ "/"+ConstantFileName.modelUUID+"_50k.dam", true);
+
+
+        if(!FileUtil.exist(basePath+"/vision.txt")){
+            log.error("文件不存在: " + basePath+"/vision.txt");
+            Result.failure("文件不存在: " + basePath+"/vision.txt");
+        }
+
+        // 2.vision.txt转vision.modeldata
+        CreateObjUtil.convertTxtToVisionmodeldata(basePath+"/vision.txt", basePath+"/vision.modeldata");
+
+        // 3. 生成一个空的data2.js, 里面是一个空的json
+        FileUtil.writeUtf8String("{}",basePath+"/data2.js");
+
+        // 4. 创建someData.json, 修改sid值为场景码目录
+        createSomeData(basePath, sceneCode, sceneTitle);
+
+
+    }
+
+
+
     @ApiOperation("文件转换")
-    @GetMapping(value = "convert")
-    public Result convert(String sceneCode) throws Exception {
+    @GetMapping(value = "convert/{sceneCode}")
+    public Result convert1(@PathVariable  String sceneCode) throws Exception {
         SceneEntity entity = sceneService.findBySceneCode(sceneCode);
         assert entity != null;
         String basePath = entity.getPath();
         log.info("filePath: {}", basePath);
 
         // 1. 将XXX_50k.dam写到服务器
-        FileUtils.fielWrite("", basePath+ "/"+ConstantFileName.modelUUID+"_50k.dam");
+//        FileUtils.fielWrite("", basePath+ "/"+ConstantFileName.modelUUID+"_50k.dam");
+        String resourceUrl = FileUtils.getResourceUrl(ConstantFileName.modelUUID + "_50k.dam");
+        FileUtil.writeUtf8String(resourceUrl, basePath+ "/"+ConstantFileName.modelUUID+"_50k.dam");
 
 
         if(!FileUtil.exist(basePath+"/vision.txt")){
@@ -157,7 +190,8 @@ public class ApiController extends BaseController {
         FileUtil.writeUtf8String("{}",basePath+"/data2.js");
 
         // 4. 创建someData.json, 修改sid值为场景码目录
-        createSomeData(basePath, sceneCode);
+        String sceneTitle = "1111111111111";
+        createSomeData(basePath, sceneCode, sceneTitle);
 
         return Result.success();
     }
@@ -173,7 +207,7 @@ public class ApiController extends BaseController {
     /**
      * 创建someData.json
      */
-    public static void createSomeData(String basePath, String sceneCode) throws FileNotFoundException {
+    private static void createSomeData(String basePath, String sceneCode, String sceneTitle) throws IOException {
         log.info("run createSomeData" );
         String path = ResourceUtils.getURL("classpath:").getPath();
         path = path + "data/someData.json";
@@ -181,23 +215,46 @@ public class ApiController extends BaseController {
         String os = FileUtil.readUtf8String(path);
         JSONObject jsonObject = JSONObject.parseObject(os);
         JSONObject model = jsonObject.getJSONObject("model");
+
+
+        // 更新images json
+        JSONArray imagesJson = updateImagesData(sceneCode);
+        model.put("images", imagesJson);
+
         // 修改sid值
         model.put("sid", sceneCode);
+        model.put("name", sceneTitle);
 
         // 更新json
         jsonObject.put("model", model);
 
+
         FileUtil.writeUtf8String(jsonObject.toJSONString(), basePath+"/someData.json");
         log.info("end createSomeData" );
 
     }
 
-    public static void main(String[] args) throws FileNotFoundException {
-//        String path = ResourceUtils.getURL("classpath:").getPath();
-//        System.out.println(path);
+    public static void main(String[] args) throws IOException {
+//        createSomeData("F:\\test\\army\\convert\\", "1111111");
+//        updateImagesData("33333");
+
+    }
+
+
+    /**
+     * 创建images.json
+     * 如果数据格式有变动,要作出响应的修改
+     */
+    private static JSONArray updateImagesData(String sceneCode) throws IOException {
+        String resourceUrl = FileUtils.getResourceUrl("data/images.json");
+        String os = FileUtil.readUtf8String(resourceUrl);
+        JSONObject imageObject = JSONObject.parseObject(os);
+        imageObject.put("sid", sceneCode);
 
-//        this.class.getResourceAsStream("/com/test/demo/test.properties")
+        JSONArray imagesArray = new JSONArray();
+        imagesArray.set(0, imageObject);
 
+        return imagesArray;
     }
 
 

+ 1 - 1
gis_web/src/main/java/com/gis/web/controller/ExceptionController.java

@@ -23,7 +23,7 @@ import javax.validation.ValidationException;
  * 这里只可以捕获controller层的异常。
  */
 @Log4j2
-@RestControllerAdvice
+//@RestControllerAdvice
 public class ExceptionController {
 
     // 捕捉shiro的异常

+ 8 - 0
gis_web/src/main/java/com/gis/web/controller/IndexController.java

@@ -17,8 +17,10 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.validation.Valid;
+import java.time.LocalDateTime;
 import java.util.HashMap;
 import java.util.concurrent.TimeUnit;
 
@@ -104,6 +106,12 @@ public class IndexController extends BaseController{
     }
 
 
+    @ApiIgnore
+    @GetMapping("admin/test")
+    public String test(){
+        return LocalDateTime.now().toString();
+    }
+
 
 
 }

+ 73 - 0
gis_web/src/main/java/com/gis/web/controller/MenuController.java

@@ -0,0 +1,73 @@
+package com.gis.web.controller;
+
+import com.gis.common.util.Result;
+import com.gis.domain.entity.MenuEntity;
+import com.gis.domain.entity.SysDeptEntity;
+import com.gis.domain.request.DeptRequest;
+import com.gis.domain.request.MenuRequest;
+import com.gis.domain.request.PageRequest;
+import com.gis.service.MenuService;
+import com.github.pagehelper.PageInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import springfox.documentation.annotations.ApiIgnore;
+
+import javax.validation.Valid;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * Created by owen on 2020/5/8 0008 9:54
+ */
+@Api(tags = "菜单管理")
+@RestController
+@RequestMapping("manage/menu")
+public class MenuController extends BaseController {
+
+    @Autowired
+    private MenuService menuService;
+
+    @ApiOperation("列表")
+    @PostMapping("list")
+    public Result<MenuEntity> list(@RequestBody PageRequest param) {
+        startPage(param);
+        PageInfo<MenuEntity> page = new PageInfo<>(menuService.findAll());
+        return Result.success(page);
+    }
+
+    @ApiOperation("新增/修改部信息")
+    @PostMapping("save")
+    public Result save(@Valid @RequestBody MenuRequest param) {
+
+        MenuEntity entity = null;
+        if (param.getId() == null) {
+            entity = new MenuEntity();
+            BeanUtils.copyProperties(param, entity);
+            menuService.save(entity);
+        } else {
+            entity = menuService.findById(param.getId());
+            if (entity == null) {
+                return Result.failure("对象id不存在");
+            }
+
+            BeanUtils.copyProperties(param, entity);
+            entity.setUpdateTime(new Date());
+            menuService.update(entity);
+
+        }
+
+        return Result.success();
+    }
+
+
+    @ApiOperation("删除")
+    @GetMapping("removes/{ids}")
+    public Result detail(@PathVariable String ids) {
+        menuService.deleteByIds(ids);
+
+        return Result.success();
+    }
+}

+ 0 - 24
gis_web/src/main/java/com/gis/web/controller/TestController.java

@@ -1,24 +0,0 @@
-package com.gis.web.controller;
-
-import io.swagger.annotations.Api;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import springfox.documentation.annotations.ApiIgnore;
-
-import java.time.LocalDateTime;
-
-/**
- * Created by owen on 2020/5/8 0008 9:54
- */
-@ApiIgnore
-@Api(tags = "测试")
-@RestController
-@RequestMapping
-public class TestController {
-
-    @GetMapping
-    public String test(){
-        return LocalDateTime.now().toString();
-    }
-}

+ 17 - 0
gis_web/src/main/resources/data/images.json

@@ -0,0 +1,17 @@
+
+{
+"metadata": "{\"camera_mode\":0,\"camera_position\":{\"x\":17.319578170776367,\"y\":0.5689632296562195,\"z\":30.42438507080078},\"camera_quaternion\":{\"x\":-0.0000020361233819675194,\"y\":0.9999978870169733,\"z\":-0.0012442941874225735,\"w\":-0.0016363646960161576},\"ortho_zoom\":-1,\"ss_zoom\":1,\"scan_id\":\"b1498df53a554a0bafec6646639964e6\",\"is_ortho\":false,\"floorVisibility\":[1]}",
+"created": "2019-04-12T01:15:48.811428Z",
+"modified": "2019-04-12T01:15:48.811961Z",
+"sid": "update",
+"name": "04.12.2019_09.15.38",
+"height": 1707,
+"width": 3034,
+"is_hero": true,
+"category": "user",
+"vision_generated_label": "",
+"vision_generated_name": "",
+"vision_image_index": -1,
+"created_by": 4084,
+"rating": null
+}

+ 11 - 1
help.md

@@ -8,4 +8,14 @@
     访问url:
         http://192.168.0.163:8101/    
         
- #data文件夹
+ #data文件夹
+ 
+        --ar_WTJ1ooJDD 场景码
+            - xxx_50k_texture_jpg(文通)
+            - vision.txt(文通)
+            
+            - vision.modeldata(java通过是vision.txt转的)
+            - data2.js(java生成的空json)
+            - someData.json(java生成)
+            - xxx_50k.dan(java生成)
+