wuweihao 2 years ago
parent
commit
ae51dd4280

+ 0 - 97
720yun_fd_manage/gis_domain/src/main/java/com/gis/domain/vo/CatalogSceneTree.java

@@ -1,97 +0,0 @@
-package com.gis.domain.vo;
-
-import com.alibaba.fastjson.annotation.JSONField;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
-@Data
-public class CatalogSceneTree implements Serializable {
-
-    private static final long serialVersionUID = -8093446477843493946L;
-
-    @ApiModelProperty(value = "分组id")
-    private Long id;
-
-    @ApiModelProperty(value = "分组名称")
-    private String name;
-
-    @ApiModelProperty(value = "删除")
-    private Integer isDelete;
-
-    @ApiModelProperty(value = "作品id")
-    private Long workId;
-
-    @ApiModelProperty(value = "父分组id")
-    private Long parentId;
-
-    @ApiModelProperty(value = "场景id")
-    private Long sceneId;
-
-    @ApiModelProperty(value = "场景码")
-    private String sceneCode;
-
-//    @ApiModelProperty(value = "存放地址")
-//    private String path;
-
-    @ApiModelProperty(value = "场景名称")
-    private String sceneTitle;
-
-        @ApiModelProperty(value = "分组Id")
-    private String catalogId;
-
-
-//
-//    @ApiModelProperty(value = "场景url")
-//    private String webSite;
-
-//    @ApiModelProperty(value = "简介")
-//    private String description;
-
-//    @ApiModelProperty(value = "oss存放地址")
-//    private String ossPath;
-
-//    @ApiModelProperty(value = "封面图")
-//    private String icon;
-
-//    @ApiModelProperty(value = "文件名")
-//    private String fileName;
-//
-//    @ApiModelProperty(value = "someData")
-//    private String someData;
-//
-//    @ApiModelProperty(value = "初始场景,0:否, 1:是(排第一)")
-//    private Integer isIndex;
-//
-//    @ApiModelProperty(value = "排序(序号小排前面)")
-//    private Integer sort;
-//
-//    @ApiModelProperty(value =  "初始视觉")
-//    private String initVisual;
-//
-//    @ApiModelProperty(value = "访问量")
-//    private Integer visit;
-//
-//    @ApiModelProperty(value = "是否添加到720, 0:否, 1:是")
-//    private Integer isShow;
-
-
-
-
-//
-//    @ApiModelProperty(value = "类型")
-//    private String type;
-
-
-    @JSONField(serialize = false)
-    @ApiModelProperty(value = "目录层级,最大二级")
-    private Integer level;
-
-
-    /** 默认给空数组*/
-    private List<CatalogSceneTree> children = new ArrayList<>();
-
-}

+ 0 - 26
720yun_fd_manage/gis_domain/src/main/java/com/gis/domain/vo/CatalogVo.java

@@ -1,26 +0,0 @@
-package com.gis.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-/**
- * Created by owen on 2021/3/29 0029 14:58
- *
- * 展示页,需要目录
- */
-@Data
-public class CatalogVo  {
-
-
-    @ApiModelProperty(value = "目录名称")
-    private String CatalogName;
-
-    @ApiModelProperty(value = "目录Id")
-    private Long CatalogId;
-
-    @ApiModelProperty(value = "父目录Id")
-    private Long parentId;
-
-    @ApiModelProperty(value = "父目录名称")
-    private String parentName;
-}

+ 66 - 0
720yun_fd_manage/gis_domain/src/main/java/com/gis/domain/vo/FodderVo.java

@@ -0,0 +1,66 @@
+package com.gis.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.persistence.Transient;
+import java.util.Date;
+
+/**
+ * Created by owen on 2022/12/6 0006 17:26
+ */
+@Data
+public class FodderVo {
+
+    @ApiModelProperty(value = "对象ID")
+    private Long id;
+
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @ApiModelProperty(value = "修改时间")
+    private Date updateTime;
+
+    @ApiModelProperty(value = "名称")
+    private String name;
+
+    @ApiModelProperty(value = "状态 1:切图中, 2:失败, 3:完成")
+    private Integer status;
+
+    @ApiModelProperty(value = "类型, 全景图:pano, 图片:image, 音频:audio, 视频:video")
+    private String type;
+
+    @ApiModelProperty(value = "创建人")
+    private String userId;
+
+    @ApiModelProperty(value = "封面图")
+    private String icon;
+
+    @ApiModelProperty(value = "预览图(全景图使用)")
+    private String previewIcon;
+
+    @ApiModelProperty(value = "文件名")
+    private String fileName;
+
+    @ApiModelProperty(value = "文件大小,单位KB")
+    private String fileSize;
+
+    @ApiModelProperty(value = "场景码")
+    private String sceneCode;
+
+    @ApiModelProperty(value = "分辨率")
+    private String dpi;
+
+
+    @ApiModelProperty(value = "上传临时用的id, 前端需要用")
+    private String tempId;
+
+//    @ApiModelProperty(value = "tour.xml")
+//    private String tour;
+
+    @ApiModelProperty(value = "目录id, 1为跟目录")
+    private Long dirId;
+
+    @ApiModelProperty(value = "目录名称")
+    private String dirName;
+}

+ 0 - 40
720yun_fd_manage/gis_domain/src/main/java/com/gis/domain/vo/ProSceneVo.java

@@ -1,40 +0,0 @@
-package com.gis.domain.vo;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 四维看看 实体
- */
-
-@Data
-public class ProSceneVo implements Serializable {
-
-
-    private static final long serialVersionUID = 7905086816704543888L;
-    @ApiModelProperty(value = "场景码")
-    private String num;
-
-
-    @ApiModelProperty(value = "场景名称")
-    private String sceneName;
-
-    @ApiModelProperty(value = "场景url")
-    private String webSite;
-
-    @ApiModelProperty(value = "缩略图")
-    private String thumb;
-
-    @ApiModelProperty(value = "状态 ")
-    private Integer status;
-
-    @ApiModelProperty(value = "该作品下的场景是否已使用")
-    private Integer isUse = 0;
-
-    @ApiModelProperty(value = "创建时间(只需要yyyy-MM-dd)")
-    private String createTime;
-
-
-}

+ 0 - 5
720yun_fd_manage/gis_mapper/src/main/java/com/gis/mapper/DirMapper.java

@@ -3,15 +3,10 @@ package com.gis.mapper;
 
 import com.gis.common.mapper.provider.BaseProvider;
 import com.gis.domain.entity.DirEntity;
-import com.gis.domain.vo.CatalogSceneTree;
-import com.gis.domain.vo.CatalogVo;
 import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Select;
 import org.apache.ibatis.annotations.SelectProvider;
-import org.apache.ibatis.annotations.Update;
 import org.springframework.stereotype.Component;
 
-import java.util.List;
 
 
 @Component

+ 4 - 0
720yun_fd_manage/gis_mapper/src/main/java/com/gis/mapper/FodderMapper.java

@@ -5,6 +5,7 @@ import com.gis.common.mapper.provider.BaseProvider;
 import com.gis.domain.dto.FodderPageDto;
 import com.gis.domain.dto.PageDto;
 import com.gis.domain.entity.FodderEntity;
+import com.gis.domain.vo.FodderVo;
 import com.gis.mapper.provider.FodderProvider;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Select;
@@ -37,4 +38,7 @@ public interface FodderMapper extends IBaseMapper<FodderEntity, Long> {
 
     @SelectProvider(type = BaseProvider.class, method = "selectSql")
     void updateDirId(String strSq);
+
+    @SelectProvider(type = BaseProvider.class, method = "selectSql")
+    List<FodderVo> listAndDir(String strSq);
 }

+ 67 - 7
720yun_fd_manage/gis_service/src/main/java/com/gis/service/impl/FodderServiceImpl.java

@@ -14,6 +14,7 @@ import com.gis.domain.dto.*;
 import com.gis.domain.entity.DirEntity;
 import com.gis.domain.entity.FodderEntity;
 import com.gis.domain.entity.WorkEntity;
+import com.gis.domain.vo.FodderVo;
 import com.gis.mapper.FodderMapper;
 import com.gis.mapper.IBaseMapper;
 import com.gis.oss.util.FileAndOssUtil;
@@ -21,6 +22,8 @@ import com.gis.oss.util.FileUtils;
 import com.gis.service.DirService;
 import com.gis.service.FodderService;
 import com.gis.service.WorkService;
+import com.github.pagehelper.Page;
+import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -368,20 +371,77 @@ public class FodderServiceImpl extends IBaseServiceImpl<FodderEntity, Long> impl
         return Result.success(size);
     }
 
+//    @Override
+//    public Result listAndDir(FodderPageDto param) {
+//
+//        // 目录数据
+//        List<FodderEntity> dirs = findDirAndConvertEntity(param);
+//
+//        startPage(param);
+//
+//        List<FodderEntity> list = myMapperFindAll(param);
+//        list.addAll(0, dirs); // 加到队列最前面
+//
+////        page.addAll(list);
+////        Page<FodderEntity> page = PageHelper.startPage(param.getPageNum(), param.getPageSize());
+//
+//
+//
+//        PageInfo<FodderEntity> pageInfo = new PageInfo<>(list);
+//        log.info("size:{}, dirSize:{}", pageInfo.getSize(), dirs.size());
+//        pageInfo.setPageSize(pageInfo.getSize() + dirs.size());
+//
+//
+//
+//        return Result.success(pageInfo);
+//    }
+
+
     @Override
     public Result listAndDir(FodderPageDto param) {
-        
-        // 目录数据
-        this.startPage(param);
-        List<FodderEntity> dirs = findDirAndConvertEntity(param);
 
-        List<FodderEntity> list = myMapperFindAll(param);
-        list.addAll(0, dirs); // 加到队列最前面
+        String userName = getUserNameForToken();
+        String type = param.getType();
+        String searchKey = param.getSearchKey();
+        StringBuilder builder = new StringBuilder();
+        builder.append("( ");
+        builder.append("select id,create_time,update_time,name, null as status, IFNULL(null,'dir') as type,user_id, null as icon,null as preview_icon, " +
+                "null as file_name, null as file_size,null as scene_code,null as dpi,null as temp_id,null as dir_id, null as dirName from tb_dir where is_delete=0") ;
+        builder.append(" and user_id='").append(userName).append("'");
+        builder.append(" and type='").append(type).append("'");
+
+        if (StrUtil.isNotBlank(searchKey)){
+            searchKey = RegexUtil.sqlReplaceSpecialStr(searchKey);
+            builder.append(" and name like '%").append(searchKey).append("%'");
+        }
+        builder.append(" order By create_time desc");
+
+        builder.append(" ) union all ( ");
 
+        builder.append("select a.id,a.create_time,a.update_time,a.name, a.status,a.type,a.user_id, a.icon,a.preview_icon, a.file_name, " +
+                "a.file_size,a.scene_code,a.dpi,a.temp_id,a.dir_id, b.name as dirName from tb_fodder a left join tb_dir b on b.id=a.dir_id where a.is_delete=0");
 
-        return Result.success(new PageInfo<>(list));
+
+        builder.append(" and a.user_id='").append(userName).append("'");
+        builder.append(" and a.type='").append(type).append("'");
+
+        if (StrUtil.isNotBlank(searchKey)){
+            searchKey = RegexUtil.sqlReplaceSpecialStr(searchKey);
+            builder.append(" and a.name like '%").append(searchKey).append("%'");
+        }
+        builder.append(" order By a.create_time desc ");
+
+
+        builder.append(" )");
+
+        this.startPage(param);
+        List<FodderVo> res = entityMapper.listAndDir(builder.toString());
+        PageInfo<FodderVo> pageInfo = new PageInfo<>(res);
+
+        return Result.success(pageInfo);
     }
 
+
     @Override
     public void updateDirId(Long parentId, String fodderIds) {
         if (StrUtil.isNotBlank(fodderIds)){

+ 20 - 20
720yun_fd_manage/gis_web/src/main/java/com/gis/web/controller/FodderController.java

@@ -54,21 +54,21 @@ public class FodderController extends BaseController {
      * @param tempId
      * @return
      */
-//    @ApiOperation(value = "上传素材", notes = "type:类型, 全景图:pano, 图片:image, 音频:audio, 视频:video, temId: 前端临时Id")
-//    @PostMapping("upload/{type}/{tempId}")
-//    public Result upload(MultipartFile file, @PathVariable String type, @PathVariable String tempId) {
-//
-//        if (file == null) {
-//            log.error("文件不能为空");
-//            return Result.failure(ErrorEnum.FAILURE_CODE_3020.code(),"文件不能为空");
-//        }
-//        FodderUploadDto dto = new FodderUploadDto();
-//        dto.setFile(file);
-//        dto.setTemId(tempId);
-//        dto.setType(type);
-//        dto.setDirId(1L); // 默认跟目录
-//        return fodderService.upload(dto);
-//    }
+    @ApiOperation(value = "上传素材", notes = "type:类型, 全景图:pano, 图片:image, 音频:audio, 视频:video, temId: 前端临时Id")
+    @PostMapping("upload/{type}/{tempId}")
+    public Result upload(MultipartFile file, @PathVariable String type, @PathVariable String tempId) {
+
+        if (file == null) {
+            log.error("文件不能为空");
+            return Result.failure(ErrorEnum.FAILURE_CODE_3020.code(),"文件不能为空");
+        }
+        FodderUploadDto dto = new FodderUploadDto();
+        dto.setFile(file);
+        dto.setTemId(tempId);
+        dto.setType(type);
+        dto.setDirId(1L); // 默认跟目录
+        return fodderService.upload(dto);
+    }
 
 
     /**
@@ -89,11 +89,11 @@ public class FodderController extends BaseController {
      * @param param
      * @return
      */
-//    @ApiOperation(value = "列表", position = 1)
-//    @PostMapping("list")
-//    public Result<FodderEntity> list(@RequestBody FodderPageDto param) {
-//        return fodderService.search(param);
-//    }
+    @ApiOperation(value = "列表", position = 1)
+    @PostMapping("list")
+    public Result<FodderEntity> list(@RequestBody FodderPageDto param) {
+        return fodderService.search(param);
+    }
 
 
     @ApiOperation(value = "修改", position = 1)