浏览代码

三维报建项目相关接口提交
数据资源汉化配置接口提交

wanger 1 年之前
父节点
当前提交
ec19e56abe

+ 76 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/controller/project/projectController.java

@@ -0,0 +1,76 @@
+package com.onemap.apply.controller.project;
+
+import com.onemap.apply.domain.project.TProjectModel;
+import com.onemap.apply.domain.yzt.PoiSearchDTO;
+import com.onemap.apply.service.project.IProjectService;
+import com.onemap.common.core.web.controller.BaseController;
+import com.onemap.common.core.web.domain.RequestResult;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.Map;
+
+
+@RestController
+@RequestMapping("/project")
+public class projectController extends BaseController {
+
+    @Autowired
+    private IProjectService projectService;
+
+
+    /**
+     * 项目查询查询
+     *
+     * @return
+     */
+    @PostMapping("/list")
+    public RequestResult poi(@RequestBody PoiSearchDTO poiSearchDTO) {
+        return projectService.list(poiSearchDTO);
+    }
+
+    /**
+     * 更新上会状态
+     *
+     * @return
+     */
+    @PostMapping("/updateShzt")
+    public RequestResult updateShzt(@RequestBody Map map) {
+        return projectService.updateShzt(map.get("xmbh").toString(), map.get("shzt").toString());
+    }
+
+    /**
+     * 导入报建模型
+     *
+     * @return
+     */
+    @PostMapping("/importModel")
+    public RequestResult importModel(@RequestBody TProjectModel tProjectModel) {
+        return projectService.importModel(tProjectModel);
+    }
+
+    /**
+     * 上传报建模型压缩文件
+     *
+     * @return
+     */
+    @PostMapping("/uploadModelFile")
+    public RequestResult uploadModelFile(MultipartFile file) {
+        return projectService.uploadModelFile(file);
+    }
+
+    /**
+     * 删除报建方案
+     *
+     * @return
+     */
+    @PostMapping("/deleteModel")
+    public RequestResult deleteModel(@RequestBody Map map) {
+        return projectService.deleteModel(map.get("id").toString());
+    }
+
+}

+ 9 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/yzt/ZymlTreeDataDTO.java

@@ -16,6 +16,7 @@ public class ZymlTreeDataDTO {
     private String type;
     private String url;
     private String source;
+    private String legend;
     private String favorite;
     private Boolean disabled = false;
     private Boolean checked = false;
@@ -23,6 +24,14 @@ public class ZymlTreeDataDTO {
     private Boolean contextmenu = false;
     private List<ZymlTreeDataDTO> children = new ArrayList<>();
 
+    public String getLegend() {
+        return legend;
+    }
+
+    public void setLegend(String legend) {
+        this.legend = legend;
+    }
+
     public String getSource() {
         return source;
     }

+ 25 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/project/ProjectBasicMapper.java

@@ -0,0 +1,25 @@
+package com.onemap.apply.mapper.project;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.onemap.apply.domain.project.TProjectBasic;
+import com.onemap.apply.domain.project.TProjectModel;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 资源目录 数据层
+ *
+ * @author onemap
+ */
+@Mapper
+public interface ProjectBasicMapper extends BaseMapper<TProjectBasic> {
+    List<TProjectBasic> list(@Param("name") String name, @Param("type") String type, @Param("limit") Integer limit, @Param("offset") Integer offset);
+
+    Integer count(@Param("name") String name, @Param("type") String type);
+
+    List<TProjectModel> listmodel(@Param("xmbh") String xmbh);
+
+    void updateShzt(@Param("xmbh") String[] xmbh, @Param("shzt") String shzt);
+}

+ 20 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/project/ProjectModelMapper.java

@@ -0,0 +1,20 @@
+package com.onemap.apply.mapper.project;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.onemap.apply.domain.project.TProjectModel;
+import com.onemap.apply.domain.yzt.PoiDTO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 资源目录 数据层
+ *
+ * @author onemap
+ */
+@Mapper
+public interface ProjectModelMapper extends BaseMapper<TProjectModel> {
+
+
+}

+ 139 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/impl/project/ProjectServiceImpl.java

@@ -0,0 +1,139 @@
+package com.onemap.apply.service.impl.project;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.onemap.apply.domain.project.TProjectBasic;
+import com.onemap.apply.domain.project.TProjectModel;
+import com.onemap.apply.domain.yzt.PoiSearchDTO;
+import com.onemap.apply.mapper.project.ProjectBasicMapper;
+import com.onemap.apply.mapper.project.ProjectModelMapper;
+import com.onemap.apply.service.project.IProjectService;
+import com.onemap.apply.utils.UnPackageUtils;
+import com.onemap.common.core.web.domain.RequestResult;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Service
+public class ProjectServiceImpl implements IProjectService {
+
+    @Autowired
+    private ProjectBasicMapper projectBasicMapper;
+    @Autowired
+    private ProjectModelMapper projectModelMapper;
+    @Value("${tempath}")
+    private String tempath;
+
+
+    @Override
+    public RequestResult list(PoiSearchDTO poiSearchDTO) {
+        try {
+            Map data = new HashMap();
+            Integer count = projectBasicMapper.count(poiSearchDTO.getName(), poiSearchDTO.getType());
+            data.put("count", count);
+            List<TProjectBasic> res = projectBasicMapper.list(poiSearchDTO.getName(), poiSearchDTO.getType(), poiSearchDTO.getLimit(), poiSearchDTO.getOffset());
+            for (int i = 0; i < res.size(); i++) {
+                List<TProjectModel> model = projectBasicMapper.listmodel(res.get(i).getXmbh());
+                res.get(i).setModel(model);
+            }
+            data.put("data", res);
+            return RequestResult.success("查询成功!", data);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return RequestResult.error("查询失败!");
+    }
+
+    @Override
+    public RequestResult updateShzt(String xmbh, String shzt) {
+        try {
+            projectBasicMapper.updateShzt(xmbh.split(","), shzt);
+            return RequestResult.success("更新成功!", 1);
+        } catch (Exception r) {
+            r.printStackTrace();
+        }
+        return RequestResult.error("更新失败!", 0);
+    }
+
+    @Override
+    public RequestResult importModel(TProjectModel tProjectModel) {
+        if (tProjectModel == null) {
+            return RequestResult.error("参数为空!");
+        }
+        try {
+            projectModelMapper.insert(tProjectModel);
+            return RequestResult.success("导入成功!", 1);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return RequestResult.error("导入失败!", 0);
+    }
+
+    @Override
+    public RequestResult uploadModelFile(MultipartFile file) {
+        //获得文件名称
+        String fileName = file.getOriginalFilename();
+        //获得文件后缀名
+        String type = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();
+        //判断上传的是否是压缩包
+        if (!type.equals("zip") && !type.equals("rar")) {
+            return RequestResult.error("请上传压缩包", null);
+        }
+        File dest = new File(tempath + "/" + fileName);
+        //获得上级目录
+        File dir = dest.getParentFile();
+        if (!dir.exists()) {
+            dir.mkdirs();
+        }
+        //获取当前时间的时间戳
+        long timeMillis = System.currentTimeMillis();
+        String filePath = "";
+        try {
+            //上传文件
+            file.transferTo(dest);
+            //解压zip格式
+            if (type.equals("zip")) {
+                new UnPackageUtils().unPackZip(dest, tempath + "/" + timeMillis);
+            } else {
+                //解压rar格式
+                new UnPackageUtils().unPackRar(dest, tempath + "/" + timeMillis);
+            }
+            File[] files = new File(tempath + "/" + timeMillis).listFiles();
+            for (File file1 : files) {
+                if (file1.getAbsolutePath().substring(file1.getAbsolutePath().lastIndexOf(".") + 1).toLowerCase().equals("max")) {
+                    filePath = file1.getAbsolutePath();
+                    break;
+                }
+            }
+            if (!"".equals(filePath)) {
+                return RequestResult.success("上传成功", filePath);
+            } else {
+                return RequestResult.error("未检索到.max文件");
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+            return RequestResult.error("上传失败");
+        }
+    }
+
+    @Override
+    public RequestResult deleteModel(String id) {
+        try{
+            QueryWrapper<TProjectModel> wrapper = new QueryWrapper<>();
+            wrapper.eq("bsm", id);
+            projectModelMapper.delete(wrapper);
+            return RequestResult.success("删除成功", 1);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return RequestResult.error("删除失败");
+    }
+
+
+}

+ 2 - 2
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/impl/yzt/SearchServiceImpl.java

@@ -34,7 +34,7 @@ public class SearchServiceImpl implements ISearchService {
         } catch (Exception e) {
             e.printStackTrace();
         }
-        return RequestResult.error("查询成功!");
+        return RequestResult.error("查询失败!");
     }
 
     @Override
@@ -49,7 +49,7 @@ public class SearchServiceImpl implements ISearchService {
         } catch (Exception e) {
             e.printStackTrace();
         }
-        return RequestResult.error("查询成功!");
+        return RequestResult.error("查询失败!");
     }
 
     @Override

+ 1 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/impl/yzt/ZymlServiceImpl.java

@@ -104,6 +104,7 @@ public class ZymlServiceImpl implements IZymlService {
                 c.setLabel(cur.getName());
                 c.setTitle(cur.getName());
                 c.setType(cur.getType());
+                c.setLegend(cur.getLegend());
                 c.setUrl(cur.getUrl());
                 c.setSource(cur.getSde());
                 c.setFavorite(cur.getMy());

+ 20 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/project/IProjectService.java

@@ -0,0 +1,20 @@
+package com.onemap.apply.service.project;
+
+import com.onemap.apply.domain.project.TProjectModel;
+import com.onemap.apply.domain.yzt.CollectionDTO;
+import com.onemap.apply.domain.yzt.PoiSearchDTO;
+import com.onemap.common.core.web.domain.RequestResult;
+import org.springframework.web.multipart.MultipartFile;
+
+public interface IProjectService {
+
+    RequestResult list(PoiSearchDTO poiSearchDTO);
+
+    RequestResult updateShzt(String xmbh, String shzt);
+
+    RequestResult importModel(TProjectModel tProjectModel);
+
+    RequestResult uploadModelFile(MultipartFile file);
+
+    RequestResult deleteModel(String id);
+}

+ 29 - 0
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/project/ProjectMapper.xml

@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.onemap.apply.mapper.project.ProjectBasicMapper">
+
+
+    <select id="list" parameterType="java.lang.String" resultType="com.onemap.apply.domain.project.TProjectBasic">
+        select t.*,(select count(1) from t_project_model m where m.xmbh = t.xmbh) as modelcount
+        from t_project_basic t where t.shzt = #{type} and t.xmmc like '%'|| #{name} || '%'
+	    limit ${limit} offset ${offset}
+    </select>
+
+    <select id="count" parameterType="java.lang.String" resultType="java.lang.Integer">
+        select count(1) from t_project_basic t where t.shzt = #{type} and t.xmmc like '%'|| #{name} || '%'
+    </select>
+
+    <select id="listmodel" parameterType="java.lang.String" resultType="com.onemap.apply.domain.project.TProjectModel">
+        select t.* from t_project_model t where t.xmbh =  #{xmbh}
+    </select>
+
+    <update id="updateShzt" parameterType="java.lang.String">
+        update t_project_basic set shzt = #{shzt} where xmbh in
+        <foreach collection="xmbh" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </update>
+
+</mapper>