Ver Fonte

添加耕地保护相关接口

DESKTOP-2K9OVK9\siwei há 4 meses atrás
pai
commit
30d6785bcc
36 ficheiros alterados com 3552 adições e 4 exclusões
  1. 2 2
      onemap-api/onemap-api-system/src/main/java/com/onemap/system/api/RemoteFileService.java
  2. 2 2
      onemap-api/onemap-api-system/src/main/java/com/onemap/system/api/factory/RemoteFileFallbackFactory.java
  3. 40 0
      onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/CreateImageExample.java
  4. 41 0
      onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/ImageLegend.java
  5. 35 0
      onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/ImageOverlay.java
  6. 74 0
      onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/ImgTest.java
  7. 109 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/controller/gdbh/TGdbhJctbController.java
  8. 91 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/controller/gdbh/TGdbhJctbHcController.java
  9. 98 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/controller/gdbh/TGdbhJctbHcImagerController.java
  10. 492 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctb.java
  11. 214 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctbFileDTO.java
  12. 107 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctbHc.java
  13. 141 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctbHcImager.java
  14. 147 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TUploadGeomDTO.java
  15. 67 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TUploadGeomDetailsDTO.java
  16. 61 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbFileMapper.java
  17. 62 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbHcImagerMapper.java
  18. 62 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbHcMapper.java
  19. 61 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbMapper.java
  20. 62 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/ITGdbhJctbHcImagerService.java
  21. 62 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/ITGdbhJctbHcService.java
  22. 78 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/ITGdbhJctbService.java
  23. 94 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/impl/TGdbhJctbHcImagerServiceImpl.java
  24. 94 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/impl/TGdbhJctbHcServiceImpl.java
  25. 230 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/impl/TGdbhJctbServiceImpl.java
  26. 139 0
      onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbFileMapper.xml
  27. 88 0
      onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbHcImagerMapper.xml
  28. 78 0
      onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbHcMapper.xml
  29. 162 0
      onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbMapper.xml
  30. 8 0
      onemap-modules/onemap-file/src/main/java/com/onemap/file/controller/SysFileController.java
  31. 105 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/controller/NationalCodeDictController.java
  32. 136 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/domain/NationalCodeDict.java
  33. 62 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/mapper/NationalCodeDictMapper.java
  34. 62 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/service/INationalCodeDictService.java
  35. 94 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/service/impl/NationalCodeDictServiceImpl.java
  36. 92 0
      onemap-modules/onemap-system/src/main/resources/mapper/postgresql/system/NationalCodeDictMapper.xml

+ 2 - 2
onemap-api/onemap-api-system/src/main/java/com/onemap/system/api/RemoteFileService.java

@@ -71,8 +71,8 @@ public interface RemoteFileService {
     RequestResult uploadGeomQuery(@RequestParam("id") String id, @RequestParam("isDetail") Integer isDetail);
 
     @GetMapping("/upload/geom/v1/query")
-    RequestResult uploadGeomQueryV1(@RequestParam("id") String id, @RequestParam("isDetail") Integer isDetail);
+    RequestResult uploadGeomV1Query(@RequestParam("id") String id, @RequestParam("isDetail") Integer isDetail);
 
     @GetMapping("/upload/geom/v1/query/details")
-    RequestResult uploadGeomQueryV1(@RequestParam("id") String id);
+    RequestResult uploadGeomV1QueryDetails(@RequestParam("id") String id);
 }

+ 2 - 2
onemap-api/onemap-api-system/src/main/java/com/onemap/system/api/factory/RemoteFileFallbackFactory.java

@@ -60,12 +60,12 @@ public class RemoteFileFallbackFactory implements FallbackFactory<RemoteFileServ
             }
 
             @Override
-            public RequestResult uploadGeomQueryV1(String id, Integer isDetail) {
+            public RequestResult uploadGeomV1Query(String id, Integer isDetail) {
                 return RequestResult.error("内部错误");
             }
 
             @Override
-            public RequestResult uploadGeomQueryV1(String id) {
+            public RequestResult uploadGeomV1QueryDetails(String id) {
                 return RequestResult.error("内部错误");
             }
         };

+ 40 - 0
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/CreateImageExample.java

@@ -0,0 +1,40 @@
+package com.onemap.analyse.service.impl;
+
+import javax.imageio.ImageIO;
+import java.awt.*;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+
+public class CreateImageExample {
+    public static void main(String[] args) {
+        int width = 100; // 图片宽度
+        int height = 100; // 图片高度
+
+        // 创建一个类型为预定义图像类型之一的 BufferedImage
+        BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
+
+        // 获取图形上下文
+        Graphics g = bufferedImage.getGraphics();
+
+        // 设置背景颜色
+        g.setColor(Color.RED);
+        g.fillRect(0, 0, width, height);
+
+        // 设置前景颜色
+//        g.setColor(Color.BLUE);
+//        g.drawOval(10, 10, 80, 80); // 绘制一个蓝色的圆形
+//        g.drawImage(10, 10, 80, 80); // 绘制一个蓝色的圆形
+
+
+        // 释放图形上下文
+        g.dispose();
+
+        // 保存图片到文件
+        try {
+            ImageIO.write(bufferedImage, "png", new File("D:\\onemapfile\\analyse\\images\\ce2dc2baae4449e3957eb0a4beb66f69\\" + System.currentTimeMillis() + ".png"));
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+}

+ 41 - 0
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/ImageLegend.java

@@ -0,0 +1,41 @@
+package com.onemap.analyse.service.impl;
+import javax.imageio.ImageIO;
+import java.awt.*;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+
+public class ImageLegend {
+    public static void main(String[] args) throws IOException {
+        // 读取背景图片
+        BufferedImage backgroundImage = ImageIO.read(new File("D:\\onemapfile\\analyse\\images\\ce2dc2baae4449e3957eb0a4beb66f69\\1732263696315.png"));
+        // 创建图形上下文
+//        Graphics2D g2d = backgroundImage.createGraphics();
+//        // 设置文字属性
+//        g2d.setFont(new Font("微软雅黑", Font.ITALIC, 20));
+//        g2d.setColor(Color.BLACK); // 文字颜色
+//        g2d.drawString("图例文本", 50, 50); // 在图片上添加图例
+
+        Graphics2D pen = backgroundImage.createGraphics();
+
+        // 设置画笔颜色为白色
+
+        // pen.setColor(Color.WHITE);
+
+        pen.setColor(new Color(179, 250, 233, 200));
+
+        // 设置画笔字体样式为微软雅黑,斜体,文字大小为20px
+
+        pen.setFont(new Font("微软雅黑", Font.ITALIC, 20));
+
+        // 写上水印文字和坐标
+
+        pen.drawString("我是图片水印", 30, 50);
+
+        // 释放图形上下文资源
+//        g2d.dispose();
+
+        // 保存新的图片
+        ImageIO.write(backgroundImage, "png", new File("D:\\onemapfile\\analyse\\images\\ce2dc2baae4449e3957eb0a4beb66f69\\" + System.currentTimeMillis() + ".png"));
+    }
+}

+ 35 - 0
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/ImageOverlay.java

@@ -0,0 +1,35 @@
+package com.onemap.analyse.service.impl;
+
+import javax.imageio.ImageIO;
+import java.awt.image.BufferedImage;
+import java.awt.Graphics2D;
+import java.awt.Color;
+import java.io.File;
+import java.io.IOException;
+
+public class ImageOverlay {
+    public static void main(String[] args) {
+        try {
+            // 读取原始图片
+            BufferedImage originalImage = ImageIO.read(new File("D:\\onemapfile\\analyse\\images\\ce2dc2baae4449e3957eb0a4beb66f69\\1732263696315.png"));
+
+            // 创建一个Graphics2D对象
+            Graphics2D g2d = (Graphics2D) originalImage.getGraphics();
+            // 设置纯色
+            g2d.setBackground(new Color(128, 0, 0, 64)); // 半透明红色
+            g2d.clearRect(0, 0, originalImage.getWidth() / 2, originalImage.getHeight() / 2); // 清除原有内容
+
+            // 设置纯色到图片上
+//            g2d.setColor(Color.RED); // 红色
+//            g2d.fillRect(0, 0, originalImage.getWidth() / 2, originalImage.getHeight() / 2);
+
+            // 保存新图片
+            ImageIO.write(originalImage, "png", new File("D:\\onemapfile\\analyse\\images\\ce2dc2baae4449e3957eb0a4beb66f69\\" + System.currentTimeMillis() + ".png"));
+
+            // 释放资源
+            g2d.dispose();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+}

+ 74 - 0
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/ImgTest.java

@@ -0,0 +1,74 @@
+package com.onemap.analyse.service.impl;
+
+
+import java.awt.Color;
+
+import java.awt.Font;
+
+import java.awt.Graphics2D;
+
+import java.awt.image.BufferedImage;
+
+import java.io.File;
+
+import java.io.FileOutputStream;
+
+import java.io.IOException;
+
+import java.net.URL;
+
+
+import javax.imageio.ImageIO;
+
+
+public class ImgTest {
+
+
+    public static void main(String[] args) throws IOException {
+
+        // 读取本地图片文件
+
+        File file1 = new File("D:\\onemapfile\\analyse\\images\\ce2dc2baae4449e3957eb0a4beb66f69\\1732263696315.png");
+
+        System.out.println("图片名称:" + file1.getName());
+
+        System.out.println("图片大小:" + file1.length() / 1024 + " kb");
+
+        // 将文件对象转化为图片对象
+
+        BufferedImage image = ImageIO.read(file1);
+
+        // 获取网络图片
+
+//        URL url = new URL("https://zyq2022.oss-cn-chengdu.aliyuncs.com/test.png");
+//
+//        BufferedImage image = ImageIO.read(url.openStream());
+
+        // 创建画笔
+
+        Graphics2D pen = image.createGraphics();
+
+        // 设置画笔颜色为白色
+
+        // pen.setColor(Color.WHITE);
+
+        pen.setColor(new Color(179, 250, 233, 200));
+
+        // 设置画笔字体样式为微软雅黑,斜体,文字大小为20px
+
+        pen.setFont(new Font("微软雅黑", Font.ITALIC, 20));
+
+        // 写上水印文字和坐标
+
+        pen.drawString("我是图片水印", 30, 50);
+
+        // 创建新图片文件
+
+        File file = new File("D:\\onemapfile\\analyse\\images\\ce2dc2baae4449e3957eb0a4beb66f69\\" + System.currentTimeMillis() + ".png");
+
+        // 将处理好的图片数据写入到新图片文件中
+        FileOutputStream fos = new FileOutputStream(file);
+        ImageIO.write(image, "png", fos);
+
+    }
+}

+ 109 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/controller/gdbh/TGdbhJctbController.java

@@ -0,0 +1,109 @@
+package com.onemap.apply.controller.gdbh;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.onemap.common.core.utils.poi.ExcelUtil;
+import com.onemap.common.core.web.controller.BaseController;
+import com.onemap.common.core.web.domain.AjaxResult;
+import com.onemap.common.core.web.page.TableDataInfo;
+import com.onemap.common.log.annotation.Log;
+import com.onemap.common.log.enums.BusinessType;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.onemap.apply.domain.gdbh.TGdbhJctb;
+import com.onemap.apply.service.gdbh.ITGdbhJctbService;
+
+/**
+ * 耕地保护-检测图标数据详情表Controller
+ *
+ * @author ruoyi
+ * @date 2024-11-26
+ */
+@RestController
+@RequestMapping("/gdbh/jctb")
+public class TGdbhJctbController extends BaseController {
+    @Autowired
+    private ITGdbhJctbService tGdbhJctbService;
+
+    /**
+     * 查询耕地保护-检测图标数据详情表列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(TGdbhJctb tGdbhJctb) {
+        startPage();
+        List<TGdbhJctb> list = tGdbhJctbService.selectTGdbhJctbList(tGdbhJctb);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出耕地保护-检测图标数据详情表列表
+     */
+    @Log(title = "耕地保护-检测图标数据详情表", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, TGdbhJctb tGdbhJctb) {
+        List<TGdbhJctb> list = tGdbhJctbService.selectTGdbhJctbList(tGdbhJctb);
+        ExcelUtil<TGdbhJctb> util = new ExcelUtil<TGdbhJctb>(TGdbhJctb.class);
+        util.exportExcel(response, list, "耕地保护-检测图标数据详情表数据");
+    }
+
+    /**
+     * 获取耕地保护-检测图标数据详情表详细信息
+     */
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") String id) {
+        return success(tGdbhJctbService.selectTGdbhJctbById(id));
+    }
+
+    /**
+     * 新增耕地保护-检测图标数据详情表
+     */
+    @Log(title = "耕地保护-检测图标数据详情表", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody TGdbhJctb tGdbhJctb) {
+        return toAjax(tGdbhJctbService.insertTGdbhJctb(tGdbhJctb));
+    }
+
+    /**
+     * 修改耕地保护-检测图标数据详情表
+     */
+    @Log(title = "耕地保护-检测图标数据详情表", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody TGdbhJctb tGdbhJctb) {
+        return toAjax(tGdbhJctbService.updateTGdbhJctb(tGdbhJctb));
+    }
+
+    /**
+     * 删除耕地保护-检测图标数据详情表
+     */
+    @Log(title = "耕地保护-检测图标数据详情表", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable String[] ids) {
+        return toAjax(tGdbhJctbService.deleteTGdbhJctbByIds(ids));
+    }
+
+
+    /**
+     * 新增耕地保护-检测图标数据入库
+     */
+    @Log(title = "耕地保护-检测图标数据入库", businessType = BusinessType.INSERT)
+    @PostMapping("/store")
+    public AjaxResult addStore(String uploadShpId) {
+        tGdbhJctbService.handleUploadShpGdbhJctb(uploadShpId);
+        return toAjax(1);
+    }
+
+
+    @GetMapping("/date/list")
+    public AjaxResult QueryDateList(Integer yearNumber) {
+        return success(tGdbhJctbService.QueryDateList(yearNumber));
+    }
+
+}

+ 91 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/controller/gdbh/TGdbhJctbHcController.java

@@ -0,0 +1,91 @@
+package com.onemap.apply.controller.gdbh;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHc;
+import com.onemap.apply.service.gdbh.ITGdbhJctbHcService;
+import com.onemap.common.core.utils.poi.ExcelUtil;
+import com.onemap.common.core.web.controller.BaseController;
+import com.onemap.common.core.web.domain.AjaxResult;
+import com.onemap.common.core.web.page.TableDataInfo;
+import com.onemap.common.log.annotation.Log;
+import com.onemap.common.log.enums.BusinessType;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 耕地保护-检测图标核查数据图片信息表Controller
+ *
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+@RestController
+@RequestMapping("/gdbh/jctbhc")
+public class TGdbhJctbHcController extends BaseController {
+    @Autowired
+    private ITGdbhJctbHcService tGdbhJctbHcService;
+
+    /**
+     * 查询耕地保护-检测图标核查数据图片信息表列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(TGdbhJctbHc tGdbhJctbHc) {
+        startPage();
+        List<TGdbhJctbHc> list = tGdbhJctbHcService.selectTGdbhJctbHcList(tGdbhJctbHc);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出耕地保护-检测图标核查数据图片信息表列表
+     */
+    @Log(title = "耕地保护-检测图标核查数据图片信息表", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, TGdbhJctbHc tGdbhJctbHc) {
+        List<TGdbhJctbHc> list = tGdbhJctbHcService.selectTGdbhJctbHcList(tGdbhJctbHc);
+        ExcelUtil<TGdbhJctbHc> util = new ExcelUtil<TGdbhJctbHc>(TGdbhJctbHc.class);
+        util.exportExcel(response, list, "耕地保护-检测图标核查数据图片信息表数据");
+    }
+
+    /**
+     * 获取耕地保护-检测图标核查数据图片信息表详细信息
+     */
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") String id) {
+        return success(tGdbhJctbHcService.selectTGdbhJctbHcById(id));
+    }
+
+    /**
+     * 新增耕地保护-检测图标核查数据图片信息表
+     */
+    @Log(title = "耕地保护-检测图标核查数据图片信息表", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody TGdbhJctbHc tGdbhJctbHc) {
+        return toAjax(tGdbhJctbHcService.insertTGdbhJctbHc(tGdbhJctbHc));
+    }
+
+    /**
+     * 修改耕地保护-检测图标核查数据图片信息表
+     */
+    @Log(title = "耕地保护-检测图标核查数据图片信息表", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody TGdbhJctbHc tGdbhJctbHc) {
+        return toAjax(tGdbhJctbHcService.updateTGdbhJctbHc(tGdbhJctbHc));
+    }
+
+    /**
+     * 删除耕地保护-检测图标核查数据图片信息表
+     */
+    @Log(title = "耕地保护-检测图标核查数据图片信息表", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable String[] ids) {
+        return toAjax(tGdbhJctbHcService.deleteTGdbhJctbHcByIds(ids));
+    }
+}

+ 98 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/controller/gdbh/TGdbhJctbHcImagerController.java

@@ -0,0 +1,98 @@
+package com.onemap.apply.controller.gdbh;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHcImager;
+import com.onemap.apply.service.gdbh.ITGdbhJctbHcImagerService;
+import com.onemap.common.core.utils.poi.ExcelUtil;
+import com.onemap.common.core.web.controller.BaseController;
+import com.onemap.common.core.web.domain.AjaxResult;
+import com.onemap.common.core.web.page.TableDataInfo;
+import com.onemap.common.log.annotation.Log;
+import com.onemap.common.log.enums.BusinessType;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 耕地保护-检测图标核查数据详情表Controller
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+@RestController
+@RequestMapping("/gdbh/jctbhcimager")
+public class TGdbhJctbHcImagerController extends BaseController
+{
+    @Autowired
+    private ITGdbhJctbHcImagerService tGdbhJctbHcImagerService;
+
+    /**
+     * 查询耕地保护-检测图标核查数据详情表列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(TGdbhJctbHcImager tGdbhJctbHcImager)
+    {
+        startPage();
+        List<TGdbhJctbHcImager> list = tGdbhJctbHcImagerService.selectTGdbhJctbHcImagerList(tGdbhJctbHcImager);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出耕地保护-检测图标核查数据详情表列表
+     */
+    @Log(title = "耕地保护-检测图标核查数据详情表", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, TGdbhJctbHcImager tGdbhJctbHcImager)
+    {
+        List<TGdbhJctbHcImager> list = tGdbhJctbHcImagerService.selectTGdbhJctbHcImagerList(tGdbhJctbHcImager);
+        ExcelUtil<TGdbhJctbHcImager> util = new ExcelUtil<TGdbhJctbHcImager>(TGdbhJctbHcImager.class);
+        util.exportExcel(response, list, "耕地保护-检测图标核查数据详情表数据");
+    }
+
+    /**
+     * 获取耕地保护-检测图标核查数据详情表详细信息
+     */
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") String id)
+    {
+        return success(tGdbhJctbHcImagerService.selectTGdbhJctbHcImagerById(id));
+    }
+
+    /**
+     * 新增耕地保护-检测图标核查数据详情表
+     */
+    @Log(title = "耕地保护-检测图标核查数据详情表", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody TGdbhJctbHcImager tGdbhJctbHcImager)
+    {
+        return toAjax(tGdbhJctbHcImagerService.insertTGdbhJctbHcImager(tGdbhJctbHcImager));
+    }
+
+    /**
+     * 修改耕地保护-检测图标核查数据详情表
+     */
+    @Log(title = "耕地保护-检测图标核查数据详情表", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody TGdbhJctbHcImager tGdbhJctbHcImager)
+    {
+        return toAjax(tGdbhJctbHcImagerService.updateTGdbhJctbHcImager(tGdbhJctbHcImager));
+    }
+
+    /**
+     * 删除耕地保护-检测图标核查数据详情表
+     */
+    @Log(title = "耕地保护-检测图标核查数据详情表", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable String[] ids)
+    {
+        return toAjax(tGdbhJctbHcImagerService.deleteTGdbhJctbHcImagerByIds(ids));
+    }
+}

+ 492 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctb.java

@@ -0,0 +1,492 @@
+package com.onemap.apply.domain.gdbh;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * 耕地保护-检测图标数据详情表对象 t_gdbh_jctb
+ *
+ * @author ruoyi
+ * @date 2024-11-26
+ */
+public class TGdbhJctb extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * $column.columnComment
+     */
+    private String id;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String pcsj;
+    private String geom;
+    private String year;
+    private String issuedate;
+    private String batchinfo;
+    private String regioncode;
+    private String shengmc;
+    private String shimc;
+    private String xmc;
+    private String jcbh;
+    private String tblx;
+    private String qlx;
+    private String hlx;
+    private String hlb;
+    private String qsx;
+    private String hsx;
+    private String dqjh;
+    private String lzb;
+    private String bzb;
+    private String cxbh;
+    private String bz;
+    private String jcmj;
+    private String gdmj;
+    private String nydmj;
+    private String dlrdjsydmj;
+    private String yjjbntmj;
+    private String tbxzqdmmax;
+    private String tbxzqmcmax;
+    private String tbxzjxzqdm;
+    private String tbxzjxzqmc;
+    private String tbcjxzqdm;
+    private String tbcjxzqmc;
+    private String nzy2018;
+    private String sklx;
+    private String tskqmj;
+    private String yjkcmj;
+    private String ysxgdmj;
+    private String ysxnydmj;
+    private String ysxjsydmj;
+    private String ysxwlydmj;
+    private String ysxjbntmj;
+    private String wsxgdmj;
+    private String wsxstmj;
+    private String wsxnydmj;
+    private String wsxjsydmj;
+    private String wsxwlydmj;
+    private String wsxjbntmj;
+    private String sfsk;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date startTime;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date endTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getPcsj() {
+        return pcsj;
+    }
+
+    public void setPcsj(String pcsj) {
+        this.pcsj = pcsj;
+    }
+
+    public String getGeom() {
+        return geom;
+    }
+
+    public void setGeom(String geom) {
+        this.geom = geom;
+    }
+
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+
+    public String getIssuedate() {
+        return issuedate;
+    }
+
+    public void setIssuedate(String issuedate) {
+        this.issuedate = issuedate;
+    }
+
+    public String getBatchinfo() {
+        return batchinfo;
+    }
+
+    public void setBatchinfo(String batchinfo) {
+        this.batchinfo = batchinfo;
+    }
+
+    public String getRegioncode() {
+        return regioncode;
+    }
+
+    public void setRegioncode(String regioncode) {
+        this.regioncode = regioncode;
+    }
+
+    public String getShengmc() {
+        return shengmc;
+    }
+
+    public void setShengmc(String shengmc) {
+        this.shengmc = shengmc;
+    }
+
+    public String getShimc() {
+        return shimc;
+    }
+
+    public void setShimc(String shimc) {
+        this.shimc = shimc;
+    }
+
+    public String getXmc() {
+        return xmc;
+    }
+
+    public void setXmc(String xmc) {
+        this.xmc = xmc;
+    }
+
+    public String getJcbh() {
+        return jcbh;
+    }
+
+    public void setJcbh(String jcbh) {
+        this.jcbh = jcbh;
+    }
+
+    public String getTblx() {
+        return tblx;
+    }
+
+    public void setTblx(String tblx) {
+        this.tblx = tblx;
+    }
+
+    public String getQlx() {
+        return qlx;
+    }
+
+    public void setQlx(String qlx) {
+        this.qlx = qlx;
+    }
+
+    public String getHlx() {
+        return hlx;
+    }
+
+    public void setHlx(String hlx) {
+        this.hlx = hlx;
+    }
+
+    public String getHlb() {
+        return hlb;
+    }
+
+    public void setHlb(String hlb) {
+        this.hlb = hlb;
+    }
+
+    public String getQsx() {
+        return qsx;
+    }
+
+    public void setQsx(String qsx) {
+        this.qsx = qsx;
+    }
+
+    public String getHsx() {
+        return hsx;
+    }
+
+    public void setHsx(String hsx) {
+        this.hsx = hsx;
+    }
+
+    public String getDqjh() {
+        return dqjh;
+    }
+
+    public void setDqjh(String dqjh) {
+        this.dqjh = dqjh;
+    }
+
+    public String getLzb() {
+        return lzb;
+    }
+
+    public void setLzb(String lzb) {
+        this.lzb = lzb;
+    }
+
+    public String getBzb() {
+        return bzb;
+    }
+
+    public void setBzb(String bzb) {
+        this.bzb = bzb;
+    }
+
+    public String getCxbh() {
+        return cxbh;
+    }
+
+    public void setCxbh(String cxbh) {
+        this.cxbh = cxbh;
+    }
+
+    public String getBz() {
+        return bz;
+    }
+
+    public void setBz(String bz) {
+        this.bz = bz;
+    }
+
+    public String getJcmj() {
+        return jcmj;
+    }
+
+    public void setJcmj(String jcmj) {
+        this.jcmj = jcmj;
+    }
+
+    public String getGdmj() {
+        return gdmj;
+    }
+
+    public void setGdmj(String gdmj) {
+        this.gdmj = gdmj;
+    }
+
+    public String getNydmj() {
+        return nydmj;
+    }
+
+    public void setNydmj(String nydmj) {
+        this.nydmj = nydmj;
+    }
+
+    public String getDlrdjsydmj() {
+        return dlrdjsydmj;
+    }
+
+    public void setDlrdjsydmj(String dlrdjsydmj) {
+        this.dlrdjsydmj = dlrdjsydmj;
+    }
+
+    public String getYjjbntmj() {
+        return yjjbntmj;
+    }
+
+    public void setYjjbntmj(String yjjbntmj) {
+        this.yjjbntmj = yjjbntmj;
+    }
+
+    public String getTbxzqdmmax() {
+        return tbxzqdmmax;
+    }
+
+    public void setTbxzqdmmax(String tbxzqdmmax) {
+        this.tbxzqdmmax = tbxzqdmmax;
+    }
+
+    public String getTbxzqmcmax() {
+        return tbxzqmcmax;
+    }
+
+    public void setTbxzqmcmax(String tbxzqmcmax) {
+        this.tbxzqmcmax = tbxzqmcmax;
+    }
+
+    public String getTbxzjxzqdm() {
+        return tbxzjxzqdm;
+    }
+
+    public void setTbxzjxzqdm(String tbxzjxzqdm) {
+        this.tbxzjxzqdm = tbxzjxzqdm;
+    }
+
+    public String getTbxzjxzqmc() {
+        return tbxzjxzqmc;
+    }
+
+    public void setTbxzjxzqmc(String tbxzjxzqmc) {
+        this.tbxzjxzqmc = tbxzjxzqmc;
+    }
+
+    public String getTbcjxzqdm() {
+        return tbcjxzqdm;
+    }
+
+    public void setTbcjxzqdm(String tbcjxzqdm) {
+        this.tbcjxzqdm = tbcjxzqdm;
+    }
+
+    public String getTbcjxzqmc() {
+        return tbcjxzqmc;
+    }
+
+    public void setTbcjxzqmc(String tbcjxzqmc) {
+        this.tbcjxzqmc = tbcjxzqmc;
+    }
+
+    public String getNzy2018() {
+        return nzy2018;
+    }
+
+    public void setNzy2018(String nzy2018) {
+        this.nzy2018 = nzy2018;
+    }
+
+    public String getSklx() {
+        return sklx;
+    }
+
+    public void setSklx(String sklx) {
+        this.sklx = sklx;
+    }
+
+    public String getTskqmj() {
+        return tskqmj;
+    }
+
+    public void setTskqmj(String tskqmj) {
+        this.tskqmj = tskqmj;
+    }
+
+    public String getYjkcmj() {
+        return yjkcmj;
+    }
+
+    public void setYjkcmj(String yjkcmj) {
+        this.yjkcmj = yjkcmj;
+    }
+
+    public String getYsxgdmj() {
+        return ysxgdmj;
+    }
+
+    public void setYsxgdmj(String ysxgdmj) {
+        this.ysxgdmj = ysxgdmj;
+    }
+
+    public String getYsxnydmj() {
+        return ysxnydmj;
+    }
+
+    public void setYsxnydmj(String ysxnydmj) {
+        this.ysxnydmj = ysxnydmj;
+    }
+
+    public String getYsxjsydmj() {
+        return ysxjsydmj;
+    }
+
+    public void setYsxjsydmj(String ysxjsydmj) {
+        this.ysxjsydmj = ysxjsydmj;
+    }
+
+    public String getYsxwlydmj() {
+        return ysxwlydmj;
+    }
+
+    public void setYsxwlydmj(String ysxwlydmj) {
+        this.ysxwlydmj = ysxwlydmj;
+    }
+
+    public String getYsxjbntmj() {
+        return ysxjbntmj;
+    }
+
+    public void setYsxjbntmj(String ysxjbntmj) {
+        this.ysxjbntmj = ysxjbntmj;
+    }
+
+    public String getWsxgdmj() {
+        return wsxgdmj;
+    }
+
+    public void setWsxgdmj(String wsxgdmj) {
+        this.wsxgdmj = wsxgdmj;
+    }
+
+    public String getWsxstmj() {
+        return wsxstmj;
+    }
+
+    public void setWsxstmj(String wsxstmj) {
+        this.wsxstmj = wsxstmj;
+    }
+
+    public String getWsxnydmj() {
+        return wsxnydmj;
+    }
+
+    public void setWsxnydmj(String wsxnydmj) {
+        this.wsxnydmj = wsxnydmj;
+    }
+
+    public String getWsxjsydmj() {
+        return wsxjsydmj;
+    }
+
+    public void setWsxjsydmj(String wsxjsydmj) {
+        this.wsxjsydmj = wsxjsydmj;
+    }
+
+    public String getWsxwlydmj() {
+        return wsxwlydmj;
+    }
+
+    public void setWsxwlydmj(String wsxwlydmj) {
+        this.wsxwlydmj = wsxwlydmj;
+    }
+
+    public String getWsxjbntmj() {
+        return wsxjbntmj;
+    }
+
+    public void setWsxjbntmj(String wsxjbntmj) {
+        this.wsxjbntmj = wsxjbntmj;
+    }
+
+    public String getSfsk() {
+        return sfsk;
+    }
+
+    public void setSfsk(String sfsk) {
+        this.sfsk = sfsk;
+    }
+
+    public Date getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(Date startTime) {
+        this.startTime = startTime;
+    }
+
+    public Date getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(Date endTime) {
+        this.endTime = endTime;
+    }
+}

+ 214 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctbFileDTO.java

@@ -0,0 +1,214 @@
+package com.onemap.apply.domain.gdbh;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+import java.util.List;
+
+public class TGdbhJctbFileDTO {
+    private String id;
+    private String name;
+    private String uploaduser;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date uploadtime;
+    private String filepath;
+    private String shppath;
+    private String unzippath;
+    private String filetype;
+    private String geom;
+    private Integer spotsnumber;
+    private Double spotsarea;
+    private Integer sridarea;
+    private String fromroute;
+    private Integer fromtype;
+    private String readstatus;
+    private String readmessage;
+    private String xzqdm;
+    private String xzqmc;
+    private Long spotssize;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date beginTime;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date endTime;
+    private List<TUploadGeomDetailsDTO> tUploadGeomDetailsDTOList;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getUploaduser() {
+        return uploaduser;
+    }
+
+    public void setUploaduser(String uploaduser) {
+        this.uploaduser = uploaduser;
+    }
+
+    public Date getUploadtime() {
+        return uploadtime;
+    }
+
+    public void setUploadtime(Date uploadtime) {
+        this.uploadtime = uploadtime;
+    }
+
+    public String getFilepath() {
+        return filepath;
+    }
+
+    public void setFilepath(String filepath) {
+        this.filepath = filepath;
+    }
+
+    public String getShppath() {
+        return shppath;
+    }
+
+    public void setShppath(String shppath) {
+        this.shppath = shppath;
+    }
+
+    public String getUnzippath() {
+        return unzippath;
+    }
+
+    public void setUnzippath(String unzippath) {
+        this.unzippath = unzippath;
+    }
+
+    public String getFiletype() {
+        return filetype;
+    }
+
+    public void setFiletype(String filetype) {
+        this.filetype = filetype;
+    }
+
+    public String getGeom() {
+        return geom;
+    }
+
+    public void setGeom(String geom) {
+        this.geom = geom;
+    }
+
+    public Integer getSpotsnumber() {
+        return spotsnumber;
+    }
+
+    public void setSpotsnumber(Integer spotsnumber) {
+        this.spotsnumber = spotsnumber;
+    }
+
+    public Double getSpotsarea() {
+        return spotsarea;
+    }
+
+    public void setSpotsarea(Double spotsarea) {
+        this.spotsarea = spotsarea;
+    }
+
+    public String getFromroute() {
+        return fromroute;
+    }
+
+    public void setFromroute(String fromroute) {
+        this.fromroute = fromroute;
+    }
+
+    public Integer getFromtype() {
+        return fromtype;
+    }
+
+    public void setFromtype(Integer fromtype) {
+        this.fromtype = fromtype;
+    }
+
+    public Integer getSridarea() {
+        return sridarea;
+    }
+
+    public void setSridarea(Integer sridarea) {
+        this.sridarea = sridarea;
+    }
+
+    public List<TUploadGeomDetailsDTO> gettUploadGeomDetailsDTOList() {
+        return tUploadGeomDetailsDTOList;
+    }
+
+    public void settUploadGeomDetailsDTOList(List<TUploadGeomDetailsDTO> tUploadGeomDetailsDTOList) {
+        this.tUploadGeomDetailsDTOList = tUploadGeomDetailsDTOList;
+    }
+
+    public String getReadstatus() {
+        return readstatus;
+    }
+
+    public void setReadstatus(String readstatus) {
+        this.readstatus = readstatus;
+    }
+
+    public String getReadmessage() {
+        return readmessage;
+    }
+
+    public void setReadmessage(String readmessage) {
+        this.readmessage = readmessage;
+    }
+
+    public String getXzqdm() {
+        return xzqdm;
+    }
+
+    public void setXzqdm(String xzqdm) {
+        this.xzqdm = xzqdm;
+    }
+
+    public Long getSpotssize() {
+        return spotssize;
+    }
+
+    public void setSpotssize(Long spotssize) {
+        this.spotssize = spotssize;
+    }
+
+    public Date getBeginTime() {
+        return beginTime;
+    }
+
+    public void setBeginTime(Date beginTime) {
+        this.beginTime = beginTime;
+    }
+
+    public Date getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(Date endTime) {
+        this.endTime = endTime;
+    }
+
+    public String getXzqmc() {
+        return xzqmc;
+    }
+
+    public void setXzqmc(String xzqmc) {
+        this.xzqmc = xzqmc;
+    }
+}

+ 107 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctbHc.java

@@ -0,0 +1,107 @@
+package com.onemap.apply.domain.gdbh;
+
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 耕地保护-检测图标核查数据图片信息表对象 t_gdbh_jctb_hc
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public class TGdbhJctbHc extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** $column.columnComment */
+    private String id;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String jcbh;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String wyhsqk;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String sjdldm;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String dcry;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String dcsj;
+
+    public void setId(String id) 
+    {
+        this.id = id;
+    }
+
+    public String getId() 
+    {
+        return id;
+    }
+    public void setJcbh(String jcbh) 
+    {
+        this.jcbh = jcbh;
+    }
+
+    public String getJcbh() 
+    {
+        return jcbh;
+    }
+    public void setWyhsqk(String wyhsqk) 
+    {
+        this.wyhsqk = wyhsqk;
+    }
+
+    public String getWyhsqk() 
+    {
+        return wyhsqk;
+    }
+    public void setSjdldm(String sjdldm) 
+    {
+        this.sjdldm = sjdldm;
+    }
+
+    public String getSjdldm() 
+    {
+        return sjdldm;
+    }
+    public void setDcry(String dcry) 
+    {
+        this.dcry = dcry;
+    }
+
+    public String getDcry() 
+    {
+        return dcry;
+    }
+    public void setDcsj(String dcsj) 
+    {
+        this.dcsj = dcsj;
+    }
+
+    public String getDcsj() 
+    {
+        return dcsj;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("jcbh", getJcbh())
+            .append("wyhsqk", getWyhsqk())
+            .append("sjdldm", getSjdldm())
+            .append("dcry", getDcry())
+            .append("dcsj", getDcsj())
+            .toString();
+    }
+}

+ 141 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TGdbhJctbHcImager.java

@@ -0,0 +1,141 @@
+package com.onemap.apply.domain.gdbh;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+
+/**
+ * 耕地保护-检测图标核查数据详情表对象 t_gdbh_jctb_hc_imager
+ *
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public class TGdbhJctbHcImager extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * $column.columnComment
+     */
+    private String id;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String jcbh;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String imagerPath;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String imagerLzb;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String imagerBzb;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String imagerAngle;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String imagerAngleSm;
+
+    /**
+     * $column.columnComment
+     */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String imagerSj;
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setJcbh(String jcbh) {
+        this.jcbh = jcbh;
+    }
+
+    public String getJcbh() {
+        return jcbh;
+    }
+
+    public void setImagerPath(String imagerPath) {
+        this.imagerPath = imagerPath;
+    }
+
+    public String getImagerPath() {
+        return imagerPath;
+    }
+
+    public void setImagerLzb(String imagerLzb) {
+        this.imagerLzb = imagerLzb;
+    }
+
+    public String getImagerLzb() {
+        return imagerLzb;
+    }
+
+    public void setImagerBzb(String imagerBzb) {
+        this.imagerBzb = imagerBzb;
+    }
+
+    public String getImagerBzb() {
+        return imagerBzb;
+    }
+
+    public void setImagerAngle(String imagerAngle) {
+        this.imagerAngle = imagerAngle;
+    }
+
+    public String getImagerAngle() {
+        return imagerAngle;
+    }
+
+    public void setImagerAngleSm(String imagerAngleSm) {
+        this.imagerAngleSm = imagerAngleSm;
+    }
+
+    public String getImagerAngleSm() {
+        return imagerAngleSm;
+    }
+
+    public void setImagerSj(String imagerSj) {
+        this.imagerSj = imagerSj;
+    }
+
+    public String getImagerSj() {
+        return imagerSj;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("jcbh", getJcbh())
+                .append("imagerPath", getImagerPath())
+                .append("imagerLzb", getImagerLzb())
+                .append("imagerBzb", getImagerBzb())
+                .append("imagerAngle", getImagerAngle())
+                .append("imagerAngleSm", getImagerAngleSm())
+                .append("imagerSj", getImagerSj())
+                .toString();
+    }
+}

+ 147 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TUploadGeomDTO.java

@@ -0,0 +1,147 @@
+package com.onemap.apply.domain.gdbh;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+import java.util.List;
+
+public class TUploadGeomDTO {
+    private String id;
+    private String name;
+    private String uploaduser;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date uploadtime;
+    private String filepath;
+    private String shppath;
+    private String unzippath;
+    private String filetype;
+    private String geom;
+    private Integer spotsnumber;
+    private Double spotsarea;
+    private Integer sridarea;
+    private String fromroute;
+    private Integer fromtype;
+    private List<TUploadGeomDetailsDTO> tUploadGeomDetailsDTOList;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getUploaduser() {
+        return uploaduser;
+    }
+
+    public void setUploaduser(String uploaduser) {
+        this.uploaduser = uploaduser;
+    }
+
+    public Date getUploadtime() {
+        return uploadtime;
+    }
+
+    public void setUploadtime(Date uploadtime) {
+        this.uploadtime = uploadtime;
+    }
+
+    public String getFilepath() {
+        return filepath;
+    }
+
+    public void setFilepath(String filepath) {
+        this.filepath = filepath;
+    }
+
+    public String getShppath() {
+        return shppath;
+    }
+
+    public void setShppath(String shppath) {
+        this.shppath = shppath;
+    }
+
+    public String getUnzippath() {
+        return unzippath;
+    }
+
+    public void setUnzippath(String unzippath) {
+        this.unzippath = unzippath;
+    }
+
+    public String getFiletype() {
+        return filetype;
+    }
+
+    public void setFiletype(String filetype) {
+        this.filetype = filetype;
+    }
+
+    public String getGeom() {
+        return geom;
+    }
+
+    public void setGeom(String geom) {
+        this.geom = geom;
+    }
+
+    public Integer getSpotsnumber() {
+        return spotsnumber;
+    }
+
+    public void setSpotsnumber(Integer spotsnumber) {
+        this.spotsnumber = spotsnumber;
+    }
+
+    public Double getSpotsarea() {
+        return spotsarea;
+    }
+
+    public void setSpotsarea(Double spotsarea) {
+        this.spotsarea = spotsarea;
+    }
+
+    public String getFromroute() {
+        return fromroute;
+    }
+
+    public void setFromroute(String fromroute) {
+        this.fromroute = fromroute;
+    }
+
+    public Integer getFromtype() {
+        return fromtype;
+    }
+
+    public void setFromtype(Integer fromtype) {
+        this.fromtype = fromtype;
+    }
+
+    public Integer getSridarea() {
+        return sridarea;
+    }
+
+    public void setSridarea(Integer sridarea) {
+        this.sridarea = sridarea;
+    }
+
+    public List<TUploadGeomDetailsDTO> gettUploadGeomDetailsDTOList() {
+        return tUploadGeomDetailsDTOList;
+    }
+
+    public void settUploadGeomDetailsDTOList(List<TUploadGeomDetailsDTO> tUploadGeomDetailsDTOList) {
+        this.tUploadGeomDetailsDTOList = tUploadGeomDetailsDTOList;
+    }
+}

+ 67 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/gdbh/TUploadGeomDetailsDTO.java

@@ -0,0 +1,67 @@
+package com.onemap.apply.domain.gdbh;
+
+public class TUploadGeomDetailsDTO {
+    private String id;
+    private String uploadId;
+    private String geom;
+    private Double geomarea;
+    private String geomJson;
+    private Integer sort;
+    private Integer sridarea;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getUploadId() {
+        return uploadId;
+    }
+
+    public void setUploadId(String uploadId) {
+        this.uploadId = uploadId;
+    }
+
+    public String getGeom() {
+        return geom;
+    }
+
+    public void setGeom(String geom) {
+        this.geom = geom;
+    }
+
+    public String getGeomJson() {
+        return geomJson;
+    }
+
+    public void setGeomJson(String geomJson) {
+        this.geomJson = geomJson;
+    }
+
+    public Integer getSort() {
+        return sort;
+    }
+
+    public void setSort(Integer sort) {
+        this.sort = sort;
+    }
+
+    public Integer getSridarea() {
+        return sridarea;
+    }
+
+    public void setSridarea(Integer sridarea) {
+        this.sridarea = sridarea;
+    }
+
+    public Double getGeomarea() {
+        return geomarea;
+    }
+
+    public void setGeomarea(Double geomarea) {
+        this.geomarea = geomarea;
+    }
+}

+ 61 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbFileMapper.java

@@ -0,0 +1,61 @@
+package com.onemap.apply.mapper.gdbh;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbFileDTO;
+
+import java.util.List;
+
+/**
+ * 耕地保护-检测图标上传详情表Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-11-26
+ */
+public interface TGdbhJctbFileMapper {
+    /**
+     * 查询耕地保护-检测图标数据详情表
+     *
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 耕地保护-检测图标数据详情表
+     */
+    public TGdbhJctbFileDTO selectTGdbhJctbFileById(String id);
+
+    /**
+     * 查询耕地保护-检测图标数据详情表列表
+     *
+     * @param TGdbhJctbFile 耕地保护-检测图标数据详情表
+     * @return 耕地保护-检测图标数据详情表集合
+     */
+    public List<TGdbhJctbFileDTO> selectTGdbhJctbFileList(TGdbhJctbFileDTO TGdbhJctbFile);
+
+    /**
+     * 新增耕地保护-检测图标数据详情表
+     *
+     * @param TGdbhJctbFile 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    public int insertTGdbhJctbFile(TGdbhJctbFileDTO TGdbhJctbFile);
+
+    /**
+     * 修改耕地保护-检测图标数据详情表
+     *
+     * @param TGdbhJctbFile 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    public int updateTGdbhJctbFile(TGdbhJctbFileDTO TGdbhJctbFile);
+
+    /**
+     * 删除耕地保护-检测图标数据详情表
+     *
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 结果
+     */
+    public int deleteTGdbhJctbFileById(String id);
+
+    /**
+     * 批量删除耕地保护-检测图标数据详情表
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteTGdbhJctbFileByIds(String[] ids);
+}

+ 62 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbHcImagerMapper.java

@@ -0,0 +1,62 @@
+package com.onemap.apply.mapper.gdbh;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHcImager;
+
+import java.util.List;
+
+/**
+ * 耕地保护-检测图标核查数据详情表Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public interface TGdbhJctbHcImagerMapper 
+{
+    /**
+     * 查询耕地保护-检测图标核查数据详情表
+     * 
+     * @param id 耕地保护-检测图标核查数据详情表主键
+     * @return 耕地保护-检测图标核查数据详情表
+     */
+    public TGdbhJctbHcImager selectTGdbhJctbHcImagerById(String id);
+
+    /**
+     * 查询耕地保护-检测图标核查数据详情表列表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 耕地保护-检测图标核查数据详情表集合
+     */
+    public List<TGdbhJctbHcImager> selectTGdbhJctbHcImagerList(TGdbhJctbHcImager tGdbhJctbHcImager);
+
+    /**
+     * 新增耕地保护-检测图标核查数据详情表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 结果
+     */
+    public int insertTGdbhJctbHcImager(TGdbhJctbHcImager tGdbhJctbHcImager);
+
+    /**
+     * 修改耕地保护-检测图标核查数据详情表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 结果
+     */
+    public int updateTGdbhJctbHcImager(TGdbhJctbHcImager tGdbhJctbHcImager);
+
+    /**
+     * 删除耕地保护-检测图标核查数据详情表
+     * 
+     * @param id 耕地保护-检测图标核查数据详情表主键
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcImagerById(String id);
+
+    /**
+     * 批量删除耕地保护-检测图标核查数据详情表
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcImagerByIds(String[] ids);
+}

+ 62 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbHcMapper.java

@@ -0,0 +1,62 @@
+package com.onemap.apply.mapper.gdbh;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHc;
+
+import java.util.List;
+
+/**
+ * 耕地保护-检测图标核查数据图片信息表Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public interface TGdbhJctbHcMapper 
+{
+    /**
+     * 查询耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param id 耕地保护-检测图标核查数据图片信息表主键
+     * @return 耕地保护-检测图标核查数据图片信息表
+     */
+    public TGdbhJctbHc selectTGdbhJctbHcById(String id);
+
+    /**
+     * 查询耕地保护-检测图标核查数据图片信息表列表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 耕地保护-检测图标核查数据图片信息表集合
+     */
+    public List<TGdbhJctbHc> selectTGdbhJctbHcList(TGdbhJctbHc tGdbhJctbHc);
+
+    /**
+     * 新增耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 结果
+     */
+    public int insertTGdbhJctbHc(TGdbhJctbHc tGdbhJctbHc);
+
+    /**
+     * 修改耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 结果
+     */
+    public int updateTGdbhJctbHc(TGdbhJctbHc tGdbhJctbHc);
+
+    /**
+     * 删除耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param id 耕地保护-检测图标核查数据图片信息表主键
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcById(String id);
+
+    /**
+     * 批量删除耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcByIds(String[] ids);
+}

+ 61 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/gdbh/TGdbhJctbMapper.java

@@ -0,0 +1,61 @@
+package com.onemap.apply.mapper.gdbh;
+
+import java.util.List;
+import com.onemap.apply.domain.gdbh.TGdbhJctb;
+
+/**
+ * 耕地保护-检测图标数据详情表Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2024-11-26
+ */
+public interface TGdbhJctbMapper 
+{
+    /**
+     * 查询耕地保护-检测图标数据详情表
+     * 
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 耕地保护-检测图标数据详情表
+     */
+    public TGdbhJctb selectTGdbhJctbById(String id);
+
+    /**
+     * 查询耕地保护-检测图标数据详情表列表
+     * 
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 耕地保护-检测图标数据详情表集合
+     */
+    public List<TGdbhJctb> selectTGdbhJctbList(TGdbhJctb tGdbhJctb);
+
+    /**
+     * 新增耕地保护-检测图标数据详情表
+     * 
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    public int insertTGdbhJctb(TGdbhJctb tGdbhJctb);
+
+    /**
+     * 修改耕地保护-检测图标数据详情表
+     * 
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    public int updateTGdbhJctb(TGdbhJctb tGdbhJctb);
+
+    /**
+     * 删除耕地保护-检测图标数据详情表
+     * 
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 结果
+     */
+    public int deleteTGdbhJctbById(String id);
+
+    /**
+     * 批量删除耕地保护-检测图标数据详情表
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteTGdbhJctbByIds(String[] ids);
+}

+ 62 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/ITGdbhJctbHcImagerService.java

@@ -0,0 +1,62 @@
+package com.onemap.apply.service.gdbh;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHcImager;
+
+import java.util.List;
+
+/**
+ * 耕地保护-检测图标核查数据详情表Service接口
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public interface ITGdbhJctbHcImagerService 
+{
+    /**
+     * 查询耕地保护-检测图标核查数据详情表
+     * 
+     * @param id 耕地保护-检测图标核查数据详情表主键
+     * @return 耕地保护-检测图标核查数据详情表
+     */
+    public TGdbhJctbHcImager selectTGdbhJctbHcImagerById(String id);
+
+    /**
+     * 查询耕地保护-检测图标核查数据详情表列表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 耕地保护-检测图标核查数据详情表集合
+     */
+    public List<TGdbhJctbHcImager> selectTGdbhJctbHcImagerList(TGdbhJctbHcImager tGdbhJctbHcImager);
+
+    /**
+     * 新增耕地保护-检测图标核查数据详情表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 结果
+     */
+    public int insertTGdbhJctbHcImager(TGdbhJctbHcImager tGdbhJctbHcImager);
+
+    /**
+     * 修改耕地保护-检测图标核查数据详情表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 结果
+     */
+    public int updateTGdbhJctbHcImager(TGdbhJctbHcImager tGdbhJctbHcImager);
+
+    /**
+     * 批量删除耕地保护-检测图标核查数据详情表
+     * 
+     * @param ids 需要删除的耕地保护-检测图标核查数据详情表主键集合
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcImagerByIds(String[] ids);
+
+    /**
+     * 删除耕地保护-检测图标核查数据详情表信息
+     * 
+     * @param id 耕地保护-检测图标核查数据详情表主键
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcImagerById(String id);
+}

+ 62 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/ITGdbhJctbHcService.java

@@ -0,0 +1,62 @@
+package com.onemap.apply.service.gdbh;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHc;
+
+import java.util.List;
+
+/**
+ * 耕地保护-检测图标核查数据图片信息表Service接口
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public interface ITGdbhJctbHcService 
+{
+    /**
+     * 查询耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param id 耕地保护-检测图标核查数据图片信息表主键
+     * @return 耕地保护-检测图标核查数据图片信息表
+     */
+    public TGdbhJctbHc selectTGdbhJctbHcById(String id);
+
+    /**
+     * 查询耕地保护-检测图标核查数据图片信息表列表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 耕地保护-检测图标核查数据图片信息表集合
+     */
+    public List<TGdbhJctbHc> selectTGdbhJctbHcList(TGdbhJctbHc tGdbhJctbHc);
+
+    /**
+     * 新增耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 结果
+     */
+    public int insertTGdbhJctbHc(TGdbhJctbHc tGdbhJctbHc);
+
+    /**
+     * 修改耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 结果
+     */
+    public int updateTGdbhJctbHc(TGdbhJctbHc tGdbhJctbHc);
+
+    /**
+     * 批量删除耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param ids 需要删除的耕地保护-检测图标核查数据图片信息表主键集合
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcByIds(String[] ids);
+
+    /**
+     * 删除耕地保护-检测图标核查数据图片信息表信息
+     * 
+     * @param id 耕地保护-检测图标核查数据图片信息表主键
+     * @return 结果
+     */
+    public int deleteTGdbhJctbHcById(String id);
+}

+ 78 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/ITGdbhJctbService.java

@@ -0,0 +1,78 @@
+package com.onemap.apply.service.gdbh;
+
+import java.util.List;
+import java.util.Map;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctb;
+
+/**
+ * 耕地保护-检测图标数据详情表Service接口
+ *
+ * @author ruoyi
+ * @date 2024-11-26
+ */
+public interface ITGdbhJctbService {
+    /**
+     * 查询耕地保护-检测图标数据详情表
+     *
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 耕地保护-检测图标数据详情表
+     */
+    public TGdbhJctb selectTGdbhJctbById(String id);
+
+    /**
+     * 查询耕地保护-检测图标数据详情表列表
+     *
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 耕地保护-检测图标数据详情表集合
+     */
+    public List<TGdbhJctb> selectTGdbhJctbList(TGdbhJctb tGdbhJctb);
+
+    /**
+     * 新增耕地保护-检测图标数据详情表
+     *
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    public int insertTGdbhJctb(TGdbhJctb tGdbhJctb);
+
+    /**
+     * 修改耕地保护-检测图标数据详情表
+     *
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    public int updateTGdbhJctb(TGdbhJctb tGdbhJctb);
+
+    /**
+     * 批量删除耕地保护-检测图标数据详情表
+     *
+     * @param ids 需要删除的耕地保护-检测图标数据详情表主键集合
+     * @return 结果
+     */
+    public int deleteTGdbhJctbByIds(String[] ids);
+
+    /**
+     * 删除耕地保护-检测图标数据详情表信息
+     *
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 结果
+     */
+    public int deleteTGdbhJctbById(String id);
+
+    /**
+     * 新增耕地保护-检测图标数据入库-shp文件
+     *
+     * @return 结果
+     */
+    public int handleUploadShpGdbhJctb(String uploadShpId);
+
+
+    /**
+     * 获取年份历史
+     *
+     * @param yearNumber
+     * @return
+     */
+    public List<Map<String, Object>> QueryDateList(Integer yearNumber);
+}

+ 94 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/impl/TGdbhJctbHcImagerServiceImpl.java

@@ -0,0 +1,94 @@
+package com.onemap.apply.service.gdbh.impl;
+
+import java.util.List;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHcImager;
+import com.onemap.apply.mapper.gdbh.TGdbhJctbHcImagerMapper;
+import com.onemap.apply.service.gdbh.ITGdbhJctbHcImagerService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 耕地保护-检测图标核查数据详情表Service业务层处理
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+@Service
+public class TGdbhJctbHcImagerServiceImpl implements ITGdbhJctbHcImagerService
+{
+    @Autowired
+    private TGdbhJctbHcImagerMapper tGdbhJctbHcImagerMapper;
+
+    /**
+     * 查询耕地保护-检测图标核查数据详情表
+     * 
+     * @param id 耕地保护-检测图标核查数据详情表主键
+     * @return 耕地保护-检测图标核查数据详情表
+     */
+    @Override
+    public TGdbhJctbHcImager selectTGdbhJctbHcImagerById(String id)
+    {
+        return tGdbhJctbHcImagerMapper.selectTGdbhJctbHcImagerById(id);
+    }
+
+    /**
+     * 查询耕地保护-检测图标核查数据详情表列表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 耕地保护-检测图标核查数据详情表
+     */
+    @Override
+    public List<TGdbhJctbHcImager> selectTGdbhJctbHcImagerList(TGdbhJctbHcImager tGdbhJctbHcImager)
+    {
+        return tGdbhJctbHcImagerMapper.selectTGdbhJctbHcImagerList(tGdbhJctbHcImager);
+    }
+
+    /**
+     * 新增耕地保护-检测图标核查数据详情表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 结果
+     */
+    @Override
+    public int insertTGdbhJctbHcImager(TGdbhJctbHcImager tGdbhJctbHcImager)
+    {
+        return tGdbhJctbHcImagerMapper.insertTGdbhJctbHcImager(tGdbhJctbHcImager);
+    }
+
+    /**
+     * 修改耕地保护-检测图标核查数据详情表
+     * 
+     * @param tGdbhJctbHcImager 耕地保护-检测图标核查数据详情表
+     * @return 结果
+     */
+    @Override
+    public int updateTGdbhJctbHcImager(TGdbhJctbHcImager tGdbhJctbHcImager)
+    {
+        return tGdbhJctbHcImagerMapper.updateTGdbhJctbHcImager(tGdbhJctbHcImager);
+    }
+
+    /**
+     * 批量删除耕地保护-检测图标核查数据详情表
+     * 
+     * @param ids 需要删除的耕地保护-检测图标核查数据详情表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTGdbhJctbHcImagerByIds(String[] ids)
+    {
+        return tGdbhJctbHcImagerMapper.deleteTGdbhJctbHcImagerByIds(ids);
+    }
+
+    /**
+     * 删除耕地保护-检测图标核查数据详情表信息
+     * 
+     * @param id 耕地保护-检测图标核查数据详情表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTGdbhJctbHcImagerById(String id)
+    {
+        return tGdbhJctbHcImagerMapper.deleteTGdbhJctbHcImagerById(id);
+    }
+}

+ 94 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/impl/TGdbhJctbHcServiceImpl.java

@@ -0,0 +1,94 @@
+package com.onemap.apply.service.gdbh.impl;
+
+import java.util.List;
+
+import com.onemap.apply.domain.gdbh.TGdbhJctbHc;
+import com.onemap.apply.mapper.gdbh.TGdbhJctbHcMapper;
+import com.onemap.apply.service.gdbh.ITGdbhJctbHcService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 耕地保护-检测图标核查数据图片信息表Service业务层处理
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+@Service
+public class TGdbhJctbHcServiceImpl implements ITGdbhJctbHcService
+{
+    @Autowired
+    private TGdbhJctbHcMapper tGdbhJctbHcMapper;
+
+    /**
+     * 查询耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param id 耕地保护-检测图标核查数据图片信息表主键
+     * @return 耕地保护-检测图标核查数据图片信息表
+     */
+    @Override
+    public TGdbhJctbHc selectTGdbhJctbHcById(String id)
+    {
+        return tGdbhJctbHcMapper.selectTGdbhJctbHcById(id);
+    }
+
+    /**
+     * 查询耕地保护-检测图标核查数据图片信息表列表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 耕地保护-检测图标核查数据图片信息表
+     */
+    @Override
+    public List<TGdbhJctbHc> selectTGdbhJctbHcList(TGdbhJctbHc tGdbhJctbHc)
+    {
+        return tGdbhJctbHcMapper.selectTGdbhJctbHcList(tGdbhJctbHc);
+    }
+
+    /**
+     * 新增耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 结果
+     */
+    @Override
+    public int insertTGdbhJctbHc(TGdbhJctbHc tGdbhJctbHc)
+    {
+        return tGdbhJctbHcMapper.insertTGdbhJctbHc(tGdbhJctbHc);
+    }
+
+    /**
+     * 修改耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param tGdbhJctbHc 耕地保护-检测图标核查数据图片信息表
+     * @return 结果
+     */
+    @Override
+    public int updateTGdbhJctbHc(TGdbhJctbHc tGdbhJctbHc)
+    {
+        return tGdbhJctbHcMapper.updateTGdbhJctbHc(tGdbhJctbHc);
+    }
+
+    /**
+     * 批量删除耕地保护-检测图标核查数据图片信息表
+     * 
+     * @param ids 需要删除的耕地保护-检测图标核查数据图片信息表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTGdbhJctbHcByIds(String[] ids)
+    {
+        return tGdbhJctbHcMapper.deleteTGdbhJctbHcByIds(ids);
+    }
+
+    /**
+     * 删除耕地保护-检测图标核查数据图片信息表信息
+     * 
+     * @param id 耕地保护-检测图标核查数据图片信息表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTGdbhJctbHcById(String id)
+    {
+        return tGdbhJctbHcMapper.deleteTGdbhJctbHcById(id);
+    }
+}

+ 230 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/gdbh/impl/TGdbhJctbServiceImpl.java

@@ -0,0 +1,230 @@
+package com.onemap.apply.service.gdbh.impl;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.TypeReference;
+import com.onemap.apply.domain.gdbh.TGdbhJctbFileDTO;
+import com.onemap.apply.domain.gdbh.TUploadGeomDTO;
+import com.onemap.apply.domain.gdbh.TUploadGeomDetailsDTO;
+import com.onemap.apply.mapper.gdbh.TGdbhJctbFileMapper;
+import com.onemap.apply.service.gdbh.ITGdbhJctbService;
+import com.onemap.common.core.utils.DateUtils;
+import com.onemap.common.core.web.domain.RequestResult;
+import com.onemap.system.api.RemoteFileService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.onemap.apply.mapper.gdbh.TGdbhJctbMapper;
+import com.onemap.apply.domain.gdbh.TGdbhJctb;
+
+import javax.annotation.Resource;
+
+/**
+ * 耕地保护-检测图标数据详情表Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-11-26
+ */
+@Service
+public class TGdbhJctbServiceImpl implements ITGdbhJctbService {
+    @Resource
+    private TGdbhJctbMapper tGdbhJctbMapper;
+
+    @Resource
+    private RemoteFileService fileService;
+
+    @Resource
+    private TGdbhJctbFileMapper gdbhJctbFileMapper;
+
+    /**
+     * 查询耕地保护-检测图标数据详情表
+     *
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 耕地保护-检测图标数据详情表
+     */
+    @Override
+    public TGdbhJctb selectTGdbhJctbById(String id) {
+        return tGdbhJctbMapper.selectTGdbhJctbById(id);
+    }
+
+    /**
+     * 查询耕地保护-检测图标数据详情表列表
+     *
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 耕地保护-检测图标数据详情表
+     */
+    @Override
+    public List<TGdbhJctb> selectTGdbhJctbList(TGdbhJctb tGdbhJctb) {
+        return tGdbhJctbMapper.selectTGdbhJctbList(tGdbhJctb);
+    }
+
+    /**
+     * 新增耕地保护-检测图标数据详情表
+     *
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    @Override
+    public int insertTGdbhJctb(TGdbhJctb tGdbhJctb) {
+        return tGdbhJctbMapper.insertTGdbhJctb(tGdbhJctb);
+    }
+
+    /**
+     * 修改耕地保护-检测图标数据详情表
+     *
+     * @param tGdbhJctb 耕地保护-检测图标数据详情表
+     * @return 结果
+     */
+    @Override
+    public int updateTGdbhJctb(TGdbhJctb tGdbhJctb) {
+        return tGdbhJctbMapper.updateTGdbhJctb(tGdbhJctb);
+    }
+
+    /**
+     * 批量删除耕地保护-检测图标数据详情表
+     *
+     * @param ids 需要删除的耕地保护-检测图标数据详情表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTGdbhJctbByIds(String[] ids) {
+        return tGdbhJctbMapper.deleteTGdbhJctbByIds(ids);
+    }
+
+    /**
+     * 删除耕地保护-检测图标数据详情表信息
+     *
+     * @param id 耕地保护-检测图标数据详情表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTGdbhJctbById(String id) {
+        return tGdbhJctbMapper.deleteTGdbhJctbById(id);
+    }
+
+    /**
+     * 新增耕地保护-检测图标数据入库-shp文件
+     *
+     * @return 结果
+     */
+    public int handleUploadShpGdbhJctb(String uploadShpId) {
+        RequestResult resultGeom = fileService.uploadGeomV1Query(uploadShpId, 1);
+        if (resultGeom.isError()) {
+            return 0;
+        }
+        String jsonString = JSON.toJSONString(resultGeom.get(RequestResult.DATA_TAG));
+        TUploadGeomDTO tUploadGeomDTO = JSON.parseObject(jsonString, TUploadGeomDTO.class);
+        TGdbhJctbFileDTO gdbhJctbFileDTO = new TGdbhJctbFileDTO();
+        gdbhJctbFileDTO.setId(tUploadGeomDTO.getId());
+        gdbhJctbFileDTO.setGeom(tUploadGeomDTO.getGeom());
+        gdbhJctbFileDTO.setName(tUploadGeomDTO.getName());
+        gdbhJctbFileDTO.setUploaduser(tUploadGeomDTO.getUploaduser());
+        gdbhJctbFileDTO.setUploadtime(tUploadGeomDTO.getUploadtime());
+        gdbhJctbFileDTO.setShppath(tUploadGeomDTO.getShppath());
+        gdbhJctbFileDTO.setUnzippath(tUploadGeomDTO.getUnzippath());
+        gdbhJctbFileDTO.setFiletype(tUploadGeomDTO.getFiletype());
+        gdbhJctbFileDTO.setSpotsnumber(tUploadGeomDTO.getSpotsnumber());
+        gdbhJctbFileDTO.setSpotsarea(tUploadGeomDTO.getSpotsarea());
+        gdbhJctbFileDTO.setFromtype(1);
+        gdbhJctbFileDTO.setReadstatus("0");
+
+        String shpFilePath = tUploadGeomDTO.getShppath();
+        //获取文件夹
+        String shpFileParemtPath = new File(shpFilePath).getParentFile().getAbsolutePath();
+//        if (!(new File(shpFileParemtPath + "/QDOM").exists())) {
+//            //验证QDOM
+//            gdbhJctbFileDTO.setReadstatus("1");
+//            gdbhJctbFileDTO.setReadmessage("验证QDOM文件夹缺失");
+//        } else if (!(new File(shpFileParemtPath + "/DDOM").exists())) {
+//            //验证DDOM
+//            gdbhJctbFileDTO.setReadstatus("1");
+//            gdbhJctbFileDTO.setReadmessage("验证DDOM文件夹缺失");
+//        }
+        gdbhJctbFileMapper.insertTGdbhJctbFile(gdbhJctbFileDTO);
+        if ("0".equals(gdbhJctbFileDTO.getReadstatus())) {
+            List<TUploadGeomDetailsDTO> detailsList = tUploadGeomDTO.gettUploadGeomDetailsDTOList();
+            for (TUploadGeomDetailsDTO d_dto : detailsList) {
+                Map<String, Object> d_dto_map = JSON.parseObject(d_dto.getGeomJson(), Map.class);
+                String XZQDM = String.valueOf(d_dto_map.get("XZQDM"));
+                String XMC = String.valueOf(d_dto_map.get("XMC"));
+                String JCBH = String.valueOf(d_dto_map.get("JCBH"));
+                String JGDJ = String.valueOf(d_dto_map.get("JGDJ"));
+                String TBLX = String.valueOf(d_dto_map.get("TBLX"));
+                String QLX = String.valueOf(d_dto_map.get("QLX"));
+                String HLX = String.valueOf(d_dto_map.get("HLX"));
+                String HLB = String.valueOf(d_dto_map.get("HLB"));
+                String QSX = String.valueOf(d_dto_map.get("QSX"));
+                String HSX = String.valueOf(d_dto_map.get("HSX"));
+                String DQJH = String.valueOf(d_dto_map.get("DQJH"));
+                String LZB = String.valueOf(d_dto_map.get("LZB"));
+                String BZB = String.valueOf(d_dto_map.get("BZB"));
+                String JCMJ = String.valueOf(d_dto_map.get("JCMJ"));
+                String CXBH = String.valueOf(d_dto_map.get("CXBH"));
+                String WQBH = String.valueOf(d_dto_map.get("WQBH"));
+                String BZ = String.valueOf(d_dto_map.get("BZ"));
+                TGdbhJctb tGdbhJctb = new TGdbhJctb();
+                tGdbhJctb.setPcsj(gdbhJctbFileDTO.getId());
+                tGdbhJctb.setGeom(d_dto.getGeom());
+                tGdbhJctb.setId(d_dto.getId());
+//                tGdbhJctb.setQsxtif();
+                tGdbhJctbMapper.insertTGdbhJctb(tGdbhJctb);
+            }
+        }
+        return 1;
+    }
+
+    public List<Map<String, Object>> QueryDateList(Integer yearNumber) {
+        if (null == yearNumber) {
+            yearNumber = 5;
+        }
+        String dateTime = DateUtils.dateTimeNow("yyyy-MM");
+        Integer year = Integer.valueOf(dateTime.substring(0, 4));
+        Double mor = Math.ceil(Double.parseDouble(dateTime.substring(5, 7)) / 3);
+
+        List<Map<String, Object>> retList = new ArrayList<>();
+        for (Integer yearN = year; yearN > year - yearNumber; yearN--) {
+            if (!year.equals(yearN)) {
+                mor = 4d;
+            }
+            Map<String, Object> d_map0 = new HashMap<>();
+            d_map0.put("year", yearN);
+            d_map0.put("quarter", year);
+            d_map0.put("startTime", yearN + "-01-01 00:00:00");
+            d_map0.put("endTime", yearN + "-12-31 23:59:59");
+            retList.add(d_map0);
+            for (int i = 1; i <= mor; i++) {
+                Map<String, Object> d_map = new HashMap<>();
+                d_map.put("year", yearN);
+                String d_quarter = null;
+                String d_startTime = null;
+                String d_endTime = null;
+                if (i == 1) {
+                    d_quarter = "-" + yearN + "年第一季度";
+                    d_startTime = "-01-01 00:00:00";
+                    d_endTime = "-03-31 23:59:59";
+                } else if (i == 2) {
+                    d_quarter = "-" + yearN + "年第二季度";
+                    d_startTime = "-04-01 00:00:00";
+                    d_endTime = "-06-30 23:59:59";
+                } else if (i == 3) {
+                    d_quarter = "-" + yearN + "年第三季度";
+                    d_startTime = "-07-01 00:00:00";
+                    d_endTime = "-09-30 23:59:59";
+                } else if (i == 4) {
+                    d_quarter = "-" + yearN + "年第四季度";
+                    d_startTime = "-10-01 00:00:00";
+                    d_endTime = "-12-31 23:59:59";
+                }
+                d_map.put("quarter", d_quarter);
+                d_map.put("startTime", yearN + d_startTime);
+                d_map.put("endTime", yearN + d_endTime);
+                retList.add(d_map);
+            }
+        }
+        return retList;
+    }
+}

+ 139 - 0
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbFileMapper.xml

@@ -0,0 +1,139 @@
+<?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.gdbh.TGdbhJctbFileMapper">
+    
+    <resultMap type="TGdbhJctbFileDTO" id="TGdbhJctbFileDTOResult">
+        <result property="id"    column="id"    />
+        <result property="name"    column="name"    />
+        <result property="uploaduser"    column="uploaduser"    />
+        <result property="uploadtime"    column="uploadtime"    />
+        <result property="filepath"    column="filepath"    />
+        <result property="shppath"    column="shppath"    />
+        <result property="unzippath"    column="unzippath"    />
+        <result property="filetype"    column="filetype"    />
+        <result property="xzqdm"    column="xzqdm"    />
+        <result property="xzqmc"    column="xzqmc"    />
+        <result property="spotsnumber"    column="spotsnumber"    />
+        <result property="spotsarea"    column="spotsarea"    />
+        <result property="spotssize"    column="spotssize"    />
+        <result property="readstatus"    column="readstatus"    />
+        <result property="readmessage"    column="readmessage"    />
+        <result property="envelopegeom"    column="envelopegeom"    />
+        <result property="centroidgeom"    column="centroidgeom"    />
+        <result property="beginTime"    column="beginTime"    />
+        <result property="endTime"    column="endTime"    />
+    </resultMap>
+
+    <sql id="selectTGdbhJctbFileVo">
+        select id, name, uploaduser, uploadtime, filepath, shppath, proxypath, unzippath, filetype, xzqdm, spotsnumber, spotsarea,
+               spotssize,readstatus,readmessage  ,public.st_asewkt(envelopegeom) envelopegeom,filetime,
+               public.st_asewkt(public.st_centroid(envelopegeom)) centroidgeom
+        from t_gdbh_jctb_file
+    </sql>
+
+    <select id="selectTGdbhJctbFileList" parameterType="TGdbhJctbFileDTO" resultMap="TGdbhJctbFileDTOResult">
+       select t0.*,t1.dept_name as xzqmc from (
+        <include refid="selectTGdbhJctbFileVo"/>
+        <where>
+            <if test="id != null  and id != ''"> and id = #{id}</if>
+            <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
+            <if test="uploaduser != null  and uploaduser != ''"> and uploaduser = #{uploaduser}</if>
+            <if test="uploadtime != null "> and uploadtime = #{uploadtime}</if>
+            <if test="filepath != null  and filepath != ''"> and filepath = #{filepath}</if>
+            <if test="shppath != null  and shppath != ''"> and shppath = #{shppath}</if>
+            <if test="proxypath != null  and proxypath != ''"> and proxypath = #{proxypath}</if>
+            <if test="unzippath != null  and unzippath != ''"> and unzippath = #{unzippath}</if>
+            <if test="filetype != null  and filetype != ''"> and filetype = #{filetype}</if>
+            <if test="xzqdm != null  and xzqdm!=0 "> and xzqdm like concat(#{xzqdm}, '%')</if>
+            <if test="spotsnumber != null "> and spotsnumber = #{spotsnumber}</if>
+            <if test="spotsarea != null "> and spotsarea = #{spotsarea}</if>
+            <if test="spotssize != null "> and spotssize = #{spotssize}</if>
+            <if test="readstatus != null"> and readstatus = #{readstatus}</if>
+            <if test="filetime != null"> and filetime = #{filetime}</if>
+            <if test="beginTime != null"> and filetime &gt;= #{beginTime}</if>
+            <if test="endTime != null"> and filetime &lt;= #{endTime}</if>
+        </where>
+        order by uploadtime desc
+        )t0 left join sys_dept t1 on t1.district = t0.xzqdm
+    </select>
+
+    <select id="selectTGdbhJctbFileById" parameterType="String" resultMap="TGdbhJctbFileDTOResult">
+        <include refid="selectTGdbhJctbFileVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTGdbhJctbFile" parameterType="TGdbhJctbFileDTO">
+        insert into t_gdbh_jctb_file
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="name != null">name,</if>
+            <if test="uploaduser != null">uploaduser,</if>
+            <if test="uploadtime != null">uploadtime,</if>
+            <if test="filepath != null">filepath,</if>
+            <if test="shppath != null">shppath,</if>
+            <if test="unzippath != null">unzippath,</if>
+            <if test="filetype != null">filetype,</if>
+            <if test="xzqdm != null">xzqdm,</if>
+            <if test="spotsnumber != null">spotsnumber,</if>
+            <if test="spotsarea != null">spotsarea,</if>
+            <if test="spotssize != null">spotssize,</if>
+            <if test="readstatus != null">readstatus,</if>
+            <if test="readmessage != null">readmessage,</if>
+            <if test="geom != null"> geom,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="name != null">#{name},</if>
+            <if test="uploaduser != null">#{uploaduser},</if>
+            <if test="uploadtime != null">#{uploadtime},</if>
+            <if test="filepath != null">#{filepath},</if>
+            <if test="shppath != null">#{shppath},</if>
+            <if test="unzippath != null">#{unzippath},</if>
+            <if test="filetype != null">#{filetype},</if>
+            <if test="xzqdm != null">#{xzqdm},</if>
+            <if test="spotsnumber != null">#{spotsnumber},</if>
+            <if test="spotsarea != null">#{spotsarea},</if>
+            <if test="spotssize != null">#{spotssize},</if>
+            <if test="readstatus != null">#{readstatus},</if>
+            <if test="readmessage != null">#{readmessage},</if>
+            <if test="geom != null"> public.st_transform(public.st_geomfromewkt(#{geom}), 4326),</if>
+        </trim>
+    </insert>
+
+    <update id="updateTGdbhJctbFile" parameterType="TGdbhJctbFileDTO">
+        update t_gdbh_jctb_file
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="name != null">name = #{name},</if>
+            <if test="uploaduser != null">uploaduser = #{uploaduser},</if>
+            <if test="uploadtime != null">uploadtime = #{uploadtime},</if>
+            <if test="filepath != null">filepath = #{filepath},</if>
+            <if test="shppath != null">shppath = #{shppath},</if>
+            <if test="proxypath != null">proxypath = #{proxypath},</if>
+            <if test="unzippath != null">unzippath = #{unzippath},</if>
+            <if test="filetype != null">filetype = #{filetype},</if>
+            <if test="xzqdm != null">xzqdm = #{xzqdm},</if>
+            <if test="spotsnumber != null">spotsnumber = #{spotsnumber},</if>
+            <if test="spotsarea != null">spotsarea = #{spotsarea},</if>
+            <if test="spotssize != null">spotssize = #{spotssize},</if>
+            <if test="readstatus != null">readstatus = #{readstatus},</if>
+            <if test="readmessage != null">readmessage = SUBSTRING(#{readmessage},0,290),</if>
+            <if test="filetime != null">filetime = #{filetime},</if>
+            <if test="geom != null">geom = public.ST_GeomFromEWKT(#{geom}),</if>
+
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTGdbhJctbFileById" parameterType="String">
+        delete from t_gdbh_jctb_file where id = #{id}
+    </delete>
+
+    <delete id="deleteTGdbhJctbFileByIds" parameterType="String">
+        delete from t_gdbh_jctb_file where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 88 - 0
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbHcImagerMapper.xml

@@ -0,0 +1,88 @@
+<?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.gdbh.TGdbhJctbHcImagerMapper">
+    
+    <resultMap type="TGdbhJctbHcImager" id="TGdbhJctbHcImagerResult">
+        <result property="id"    column="id"    />
+        <result property="jcbh"    column="jcbh"    />
+        <result property="imagerPath"    column="imager_path"    />
+        <result property="imagerLzb"    column="imager_lzb"    />
+        <result property="imagerBzb"    column="imager_bzb"    />
+        <result property="imagerAngle"    column="imager_angle"    />
+        <result property="imagerAngleSm"    column="imager_angle_sm"    />
+        <result property="imagerSj"    column="imager_sj"    />
+    </resultMap>
+
+    <sql id="selectTGdbhJctbHcImagerVo">
+        select id, jcbh, imager_path, imager_lzb, imager_bzb, imager_angle, imager_angle_sm, imager_sj from t_gdbh_jctb_hc_imager
+    </sql>
+
+    <select id="selectTGdbhJctbHcImagerList" parameterType="TGdbhJctbHcImager" resultMap="TGdbhJctbHcImagerResult">
+        <include refid="selectTGdbhJctbHcImagerVo"/>
+        <where>  
+            <if test="jcbh != null  and jcbh != ''"> and jcbh = #{jcbh}</if>
+            <if test="imagerPath != null  and imagerPath != ''"> and imager_path = #{imagerPath}</if>
+            <if test="imagerLzb != null  and imagerLzb != ''"> and imager_lzb = #{imagerLzb}</if>
+            <if test="imagerBzb != null  and imagerBzb != ''"> and imager_bzb = #{imagerBzb}</if>
+            <if test="imagerAngle != null  and imagerAngle != ''"> and imager_angle = #{imagerAngle}</if>
+            <if test="imagerAngleSm != null  and imagerAngleSm != ''"> and imager_angle_sm = #{imagerAngleSm}</if>
+            <if test="imagerSj != null  and imagerSj != ''"> and imager_sj = #{imagerSj}</if>
+        </where>
+    </select>
+    
+    <select id="selectTGdbhJctbHcImagerById" parameterType="String" resultMap="TGdbhJctbHcImagerResult">
+        <include refid="selectTGdbhJctbHcImagerVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTGdbhJctbHcImager" parameterType="TGdbhJctbHcImager">
+        insert into t_gdbh_jctb_hc_imager
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="jcbh != null">jcbh,</if>
+            <if test="imagerPath != null">imager_path,</if>
+            <if test="imagerLzb != null">imager_lzb,</if>
+            <if test="imagerBzb != null">imager_bzb,</if>
+            <if test="imagerAngle != null">imager_angle,</if>
+            <if test="imagerAngleSm != null">imager_angle_sm,</if>
+            <if test="imagerSj != null">imager_sj,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="jcbh != null">#{jcbh},</if>
+            <if test="imagerPath != null">#{imagerPath},</if>
+            <if test="imagerLzb != null">#{imagerLzb},</if>
+            <if test="imagerBzb != null">#{imagerBzb},</if>
+            <if test="imagerAngle != null">#{imagerAngle},</if>
+            <if test="imagerAngleSm != null">#{imagerAngleSm},</if>
+            <if test="imagerSj != null">#{imagerSj},</if>
+         </trim>
+    </insert>
+
+    <update id="updateTGdbhJctbHcImager" parameterType="TGdbhJctbHcImager">
+        update t_gdbh_jctb_hc_imager
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="jcbh != null">jcbh = #{jcbh},</if>
+            <if test="imagerPath != null">imager_path = #{imagerPath},</if>
+            <if test="imagerLzb != null">imager_lzb = #{imagerLzb},</if>
+            <if test="imagerBzb != null">imager_bzb = #{imagerBzb},</if>
+            <if test="imagerAngle != null">imager_angle = #{imagerAngle},</if>
+            <if test="imagerAngleSm != null">imager_angle_sm = #{imagerAngleSm},</if>
+            <if test="imagerSj != null">imager_sj = #{imagerSj},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTGdbhJctbHcImagerById" parameterType="String">
+        delete from t_gdbh_jctb_hc_imager where id = #{id}
+    </delete>
+
+    <delete id="deleteTGdbhJctbHcImagerByIds" parameterType="String">
+        delete from t_gdbh_jctb_hc_imager where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 78 - 0
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbHcMapper.xml

@@ -0,0 +1,78 @@
+<?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.gdbh.TGdbhJctbHcMapper">
+
+    <resultMap type="TGdbhJctbHc" id="TGdbhJctbHcResult">
+        <result property="id"    column="id"    />
+        <result property="jcbh"    column="jcbh"    />
+        <result property="wyhsqk"    column="wyhsqk"    />
+        <result property="sjdldm"    column="sjdldm"    />
+        <result property="dcry"    column="dcry"    />
+        <result property="dcsj"    column="dcsj"    />
+    </resultMap>
+
+    <sql id="selectTGdbhJctbHcVo">
+        select id, jcbh, wyhsqk, sjdldm, dcry, dcsj from t_gdbh_jctb_hc
+    </sql>
+
+    <select id="selectTGdbhJctbHcList" parameterType="TGdbhJctbHc" resultMap="TGdbhJctbHcResult">
+        <include refid="selectTGdbhJctbHcVo"/>
+        <where>
+            <if test="jcbh != null  and jcbh != ''"> and jcbh = #{jcbh}</if>
+            <if test="wyhsqk != null  and wyhsqk != ''"> and wyhsqk = #{wyhsqk}</if>
+            <if test="sjdldm != null  and sjdldm != ''"> and sjdldm = #{sjdldm}</if>
+            <if test="dcry != null  and dcry != ''"> and dcry = #{dcry}</if>
+            <if test="dcsj != null  and dcsj != ''"> and dcsj = #{dcsj}</if>
+        </where>
+    </select>
+
+    <select id="selectTGdbhJctbHcById" parameterType="String" resultMap="TGdbhJctbHcResult">
+        <include refid="selectTGdbhJctbHcVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTGdbhJctbHc" parameterType="TGdbhJctbHc">
+        insert into t_gdbh_jctb_hc
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null and id != ''">id,</if>
+            <if test="jcbh != null">jcbh,</if>
+            <if test="wyhsqk != null">wyhsqk,</if>
+            <if test="sjdldm != null">sjdldm,</if>
+            <if test="dcry != null">dcry,</if>
+            <if test="dcsj != null">dcsj,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null and id != ''">#{id},</if>
+            <if test="jcbh != null">#{jcbh},</if>
+            <if test="wyhsqk != null">#{wyhsqk},</if>
+            <if test="sjdldm != null">#{sjdldm},</if>
+            <if test="dcry != null">#{dcry},</if>
+            <if test="dcsj != null">#{dcsj},</if>
+         </trim>
+    </insert>
+
+    <update id="updateTGdbhJctbHc" parameterType="TGdbhJctbHc">
+        update t_gdbh_jctb_hc
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="jcbh != null">jcbh = #{jcbh},</if>
+            <if test="wyhsqk != null">wyhsqk = #{wyhsqk},</if>
+            <if test="sjdldm != null">sjdldm = #{sjdldm},</if>
+            <if test="dcry != null">dcry = #{dcry},</if>
+            <if test="dcsj != null">dcsj = #{dcsj},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTGdbhJctbHcById" parameterType="String">
+        delete from t_gdbh_jctb_hc where id = #{id}
+    </delete>
+
+    <delete id="deleteTGdbhJctbHcByIds" parameterType="String">
+        delete from t_gdbh_jctb_hc where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 162 - 0
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/gdbh/TGdbhJctbMapper.xml

@@ -0,0 +1,162 @@
+<?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.gdbh.TGdbhJctbMapper">
+
+    <resultMap type="TGdbhJctb" id="TGdbhJctbResult">
+        <result property="id" column="id"/>
+        <result property="pcsj" column="pcsj"/>
+        <result property="geom" column="geom"/>
+        <result property="year" column="year"/>
+        <result property="issuedate" column="issuedate"/>
+        <result property="batchinfo" column="batchinfo"/>
+        <result property="regioncode" column="regioncode"/>
+        <result property="shengmc" column="shengmc"/>
+        <result property="shimc" column="shimc"/>
+        <result property="xmc" column="xmc"/>
+        <result property="jcbh" column="jcbh"/>
+        <result property="tblx" column="tblx"/>
+        <result property="qlx" column="qlx"/>
+        <result property="hlx" column="hlx"/>
+        <result property="hlb" column="hlb"/>
+        <result property="qsx" column="qsx"/>
+        <result property="hsx" column="hsx"/>
+        <result property="dqjh" column="dqjh"/>
+        <result property="lzb" column="lzb"/>
+        <result property="bzb" column="bzb"/>
+        <result property="cxbh" column="cxbh"/>
+        <result property="bz" column="bz"/>
+        <result property="jcmj" column="jcmj"/>
+        <result property="gdmj" column="gdmj"/>
+        <result property="nydmj" column="nydmj"/>
+        <result property="dlrdjsydmj" column="dlrdjsydmj"/>
+        <result property="yjjbntmj" column="yjjbntmj"/>
+        <result property="tbxzqdmmax" column="tbxzqdmmax"/>
+        <result property="tbxzqmcmax" column="tbxzqmcmax"/>
+        <result property="tbxzjxzqdm" column="tbxzjxzqdm"/>
+        <result property="tbxzjxzqmc" column="tbxzjxzqmc"/>
+        <result property="tbcjxzqdm" column="tbcjxzqdm"/>
+        <result property="tbcjxzqmc" column="tbcjxzqmc"/>
+        <result property="nzy2018" column="nzy2018"/>
+        <result property="sklx" column="sklx"/>
+        <result property="tskqmj" column="tskqmj"/>
+        <result property="yjkcmj" column="yjkcmj"/>
+        <result property="ysxgdmj" column="ysxgdmj"/>
+        <result property="ysxnydmj" column="ysxnydmj"/>
+        <result property="ysxjsydmj" column="ysxjsydmj"/>
+        <result property="ysxwlydmj" column="ysxwlydmj"/>
+        <result property="ysxjbntmj" column="ysxjbntmj"/>
+        <result property="wsxgdmj" column="wsxgdmj"/>
+        <result property="wsxstmj" column="wsxstmj"/>
+        <result property="wsxnydmj" column="wsxnydmj"/>
+        <result property="wsxjsydmj" column="wsxjsydmj"/>
+        <result property="wsxwlydmj" column="wsxwlydmj"/>
+        <result property="wsxjbntmj" column="wsxjbntmj"/>
+        <result property="sfsk" column="sfsk"/>
+        <result property="startTime" column="startTime"/>
+        <result property="endTime" column="endTime"/>
+    </resultMap>
+
+    <sql id="selectTGdbhJctbVo">
+        select id,
+               pcsj,
+               public.st_asewkt(geom) geom, year, issuedate, batchinfo, regioncode, shengmc, shimc, xmc, jcbh, tblx, qlx, hlx, hlb, qsx, hsx, dqjh, lzb, bzb, cxbh, bz, jcmj, gdmj, nydmj, dlrdjsydmj, yjjbntmj, tbxzqdmmax, tbxzqmcmax, tbxzjxzqdm, tbxzjxzqmc, tbcjxzqdm, tbcjxzqmc, nzy2018, sklx, tskqmj, yjkcmj, ysxgdmj, ysxnydmj, ysxjsydmj, ysxwlydmj, ysxjbntmj, wsxgdmj, wsxstmj, wsxnydmj, wsxjsydmj, wsxwlydmj, wsxjbntmj, sfsk
+        from t_gdbh_jctb
+    </sql>
+
+    <select id="selectTGdbhJctbList" parameterType="TGdbhJctb" resultMap="TGdbhJctbResult">
+        <include refid="selectTGdbhJctbVo"/>
+        <where>
+            <if test="jcbh != null  and jcbh != ''">and jcbh like concat('%',#{jcbh},'%')</if>
+            <if test="regioncode != null  and regioncode != ''">and regioncode like concat(#{regioncode},'%')</if>
+            <if test="hlx != null  and hlx != ''">and hlx = #{hlx}</if>
+            <if test="startTime != null ">and to_date(hsx , 'YYYYMMDD') &gt;= #{startTime}</if>
+            <if test="endTime != null ">and to_date(hsx , 'YYYYMMDD') &lt;= #{endTime}</if>
+        </where>
+    </select>
+
+    <select id="selectTGdbhJctbById" parameterType="String" resultMap="TGdbhJctbResult">
+        <include refid="selectTGdbhJctbVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTGdbhJctb" parameterType="TGdbhJctb">
+        insert into t_gdbh_jctb
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="pcsj != null and pcsj != ''">pcsj,</if>
+            <if test="xzqhdm != null">xzqhdm,</if>
+            <if test="xmc != null">xmc,</if>
+            <if test="jcbh != null and jcbh != ''">jcbh,</if>
+            <if test="qlx != null">qlx,</if>
+            <if test="qlxmc != null">qlxmc,</if>
+            <if test="hlx != null">hlx,</if>
+            <if test="hlxmc != null">hlxmc,</if>
+            <if test="lzb != null">lzb,</if>
+            <if test="bzb != null">bzb,</if>
+            <if test="jcmj != null">jcmj,</if>
+            <if test="qsx != null">qsx,</if>
+            <if test="hsx != null">hsx,</if>
+            <if test="geom != null">geom,</if>
+            <if test="qsxtif != null">qsxtif,</if>
+            <if test="hsxtif != null">hsxtif,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="pcsj != null and pcsj != ''">#{pcsj},</if>
+            <if test="xzqhdm != null">#{xzqhdm},</if>
+            <if test="xmc != null">#{xmc},</if>
+            <if test="jcbh != null and jcbh != ''">#{jcbh},</if>
+            <if test="qlx != null">#{qlx},</if>
+            <if test="qlxmc != null">#{qlxmc},</if>
+            <if test="hlx != null">#{hlx},</if>
+            <if test="hlxmc != null">#{hlxmc},</if>
+            <if test="lzb != null">#{lzb},</if>
+            <if test="bzb != null">#{bzb},</if>
+            <if test="jcmj != null">#{jcmj},</if>
+            <if test="qsx != null">#{qsx},</if>
+            <if test="hsx != null">#{hsx},</if>
+            <if test="geom != null">public.st_transform(public.st_geomfromewkt(#{geom}), 4326),</if>
+            <if test="qsxtif != null">#{qsxtif},</if>
+            <if test="hsxtif != null">#{hsxtif},</if>
+        </trim>
+    </insert>
+
+    <update id="updateTGdbhJctb" parameterType="TGdbhJctb">
+        update t_gdbh_jctb
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="pcsj != null and pcsj != ''">pcsj = #{pcsj},</if>
+            <if test="xzqhdm != null">xzqhdm = #{xzqhdm},</if>
+            <if test="xmc != null">xmc = #{xmc},</if>
+            <if test="jcbh != null and jcbh != ''">jcbh = #{jcbh},</if>
+            <if test="qlx != null">qlx = #{qlx},</if>
+            <if test="qlxmc != null">qlxmc = #{qlxmc},</if>
+            <if test="hlx != null">hlx = #{hlx},</if>
+            <if test="hlxmc != null">hlxmc = #{hlxmc},</if>
+            <if test="lzb != null">lzb = #{lzb},</if>
+            <if test="bzb != null">bzb = #{bzb},</if>
+            <if test="jcmj != null">jcmj = #{jcmj},</if>
+            <if test="qsx != null">qsx = #{qsx},</if>
+            <if test="hsx != null">hsx = #{hsx},</if>
+            <if test="geom != null">geom = #{geom},</if>
+            <if test="qsxtif != null">qsxtif = #{qsxtif},</if>
+            <if test="hsxtif != null">hsxtif = #{hsxtif},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTGdbhJctbById" parameterType="String">
+        delete
+        from t_gdbh_jctb
+        where id = #{id}
+    </delete>
+
+    <delete id="deleteTGdbhJctbByIds" parameterType="String">
+        delete from t_gdbh_jctb where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+
+</mapper>

+ 8 - 0
onemap-modules/onemap-file/src/main/java/com/onemap/file/controller/SysFileController.java

@@ -249,6 +249,14 @@ public class SysFileController {
         }
     }
 
+    /**
+     * 根据ID查询空间信息,
+     *
+     * @param id
+     * @param isDetail 是否查询详情,1是 其他否
+     * @return
+     * @throws Exception
+     */
     @GetMapping("/upload/geom/v1/query")
     public RequestResult uploadGeomQueryV1(String id, Integer isDetail) {
         return RequestResult.success("执行成功!", spaceFileRecordService.selectTUploadGeomById(id, isDetail));

+ 105 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/controller/NationalCodeDictController.java

@@ -0,0 +1,105 @@
+package com.onemap.system.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.onemap.common.core.utils.poi.ExcelUtil;
+import com.onemap.common.core.web.controller.BaseController;
+import com.onemap.common.core.web.domain.AjaxResult;
+import com.onemap.common.core.web.page.TableDataInfo;
+import com.onemap.common.log.annotation.Log;
+import com.onemap.common.log.enums.BusinessType;
+import com.onemap.common.security.annotation.RequiresPermissions;
+import com.onemap.system.domain.NationalCodeDict;
+import com.onemap.system.service.INationalCodeDictService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 字典数据表Controller
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+@RestController
+@RequestMapping("/national/code")
+public class NationalCodeDictController extends BaseController
+{
+    @Autowired
+    private INationalCodeDictService nationalCodeDictService;
+
+    /**
+     * 查询字典数据表列表
+     */
+//    @RequiresPermissions("@ss.hasPermi('system:dict:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(NationalCodeDict nationalCodeDict)
+    {
+        startPage();
+        List<NationalCodeDict> list = nationalCodeDictService.selectNationalCodeDictList(nationalCodeDict);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出字典数据表列表
+     */
+//    @RequiresPermissions("@ss.hasPermi('system:dict:export')")
+    @Log(title = "字典数据表", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, NationalCodeDict nationalCodeDict)
+    {
+        List<NationalCodeDict> list = nationalCodeDictService.selectNationalCodeDictList(nationalCodeDict);
+        ExcelUtil<NationalCodeDict> util = new ExcelUtil<NationalCodeDict>(NationalCodeDict.class);
+        util.exportExcel(response, list, "字典数据表数据");
+    }
+
+    /**
+     * 获取字典数据表详细信息
+     */
+//    @RequiresPermissions("@ss.hasPermi('system:dict:query')")
+    @GetMapping(value = "/{dictCode}")
+    public AjaxResult getInfo(@PathVariable("dictCode") String dictCode)
+    {
+        return success(nationalCodeDictService.selectNationalCodeDictByDictCode(dictCode));
+    }
+
+    /**
+     * 新增字典数据表
+     */
+//    @RequiresPermissions("@ss.hasPermi('system:dict:add')")
+    @Log(title = "字典数据表", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody NationalCodeDict nationalCodeDict)
+    {
+        return toAjax(nationalCodeDictService.insertNationalCodeDict(nationalCodeDict));
+    }
+
+    /**
+     * 修改字典数据表
+     */
+//    @RequiresPermissions("@ss.hasPermi('system:dict:edit')")
+    @Log(title = "字典数据表", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody NationalCodeDict nationalCodeDict)
+    {
+        return toAjax(nationalCodeDictService.updateNationalCodeDict(nationalCodeDict));
+    }
+
+    /**
+     * 删除字典数据表
+     */
+//    @RequiresPermissions("@ss.hasPermi('system:dict:remove')")
+    @Log(title = "字典数据表", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{dictCodes}")
+    public AjaxResult remove(@PathVariable String[] dictCodes)
+    {
+        return toAjax(nationalCodeDictService.deleteNationalCodeDictByDictCodes(dictCodes));
+    }
+}

+ 136 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/domain/NationalCodeDict.java

@@ -0,0 +1,136 @@
+package com.onemap.system.domain;
+
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 字典数据表对象 national_code_dict
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public class NationalCodeDict extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** $column.columnComment */
+    private String dictCode;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private Long dictSort;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String dictLabel;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String dictValue;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String parentDictLabel;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String dictType;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String status;
+
+    /** $column.columnComment */
+    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+    private String dictColor;
+
+    public void setDictCode(String dictCode) 
+    {
+        this.dictCode = dictCode;
+    }
+
+    public String getDictCode() 
+    {
+        return dictCode;
+    }
+    public void setDictSort(Long dictSort) 
+    {
+        this.dictSort = dictSort;
+    }
+
+    public Long getDictSort() 
+    {
+        return dictSort;
+    }
+    public void setDictLabel(String dictLabel) 
+    {
+        this.dictLabel = dictLabel;
+    }
+
+    public String getDictLabel() 
+    {
+        return dictLabel;
+    }
+    public void setDictValue(String dictValue) 
+    {
+        this.dictValue = dictValue;
+    }
+
+    public String getDictValue() 
+    {
+        return dictValue;
+    }
+    public void setParentDictLabel(String parentDictLabel) 
+    {
+        this.parentDictLabel = parentDictLabel;
+    }
+
+    public String getParentDictLabel() 
+    {
+        return parentDictLabel;
+    }
+    public void setDictType(String dictType) 
+    {
+        this.dictType = dictType;
+    }
+
+    public String getDictType() 
+    {
+        return dictType;
+    }
+    public void setStatus(String status) 
+    {
+        this.status = status;
+    }
+
+    public String getStatus() 
+    {
+        return status;
+    }
+    public void setDictColor(String dictColor) 
+    {
+        this.dictColor = dictColor;
+    }
+
+    public String getDictColor() 
+    {
+        return dictColor;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("dictCode", getDictCode())
+            .append("dictSort", getDictSort())
+            .append("dictLabel", getDictLabel())
+            .append("dictValue", getDictValue())
+            .append("parentDictLabel", getParentDictLabel())
+            .append("dictType", getDictType())
+            .append("status", getStatus())
+            .append("remark", getRemark())
+            .append("dictColor", getDictColor())
+            .toString();
+    }
+}

+ 62 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/mapper/NationalCodeDictMapper.java

@@ -0,0 +1,62 @@
+package com.onemap.system.mapper;
+
+import com.onemap.system.domain.NationalCodeDict;
+
+import java.util.List;
+
+/**
+ * 字典数据表Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public interface NationalCodeDictMapper 
+{
+    /**
+     * 查询字典数据表
+     * 
+     * @param dictCode 字典数据表主键
+     * @return 字典数据表
+     */
+    public NationalCodeDict selectNationalCodeDictByDictCode(String dictCode);
+
+    /**
+     * 查询字典数据表列表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 字典数据表集合
+     */
+    public List<NationalCodeDict> selectNationalCodeDictList(NationalCodeDict nationalCodeDict);
+
+    /**
+     * 新增字典数据表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 结果
+     */
+    public int insertNationalCodeDict(NationalCodeDict nationalCodeDict);
+
+    /**
+     * 修改字典数据表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 结果
+     */
+    public int updateNationalCodeDict(NationalCodeDict nationalCodeDict);
+
+    /**
+     * 删除字典数据表
+     * 
+     * @param dictCode 字典数据表主键
+     * @return 结果
+     */
+    public int deleteNationalCodeDictByDictCode(String dictCode);
+
+    /**
+     * 批量删除字典数据表
+     * 
+     * @param dictCodes 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteNationalCodeDictByDictCodes(String[] dictCodes);
+}

+ 62 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/service/INationalCodeDictService.java

@@ -0,0 +1,62 @@
+package com.onemap.system.service;
+
+import com.onemap.system.domain.NationalCodeDict;
+
+import java.util.List;
+
+/**
+ * 字典数据表Service接口
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+public interface INationalCodeDictService 
+{
+    /**
+     * 查询字典数据表
+     * 
+     * @param dictCode 字典数据表主键
+     * @return 字典数据表
+     */
+    public NationalCodeDict selectNationalCodeDictByDictCode(String dictCode);
+
+    /**
+     * 查询字典数据表列表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 字典数据表集合
+     */
+    public List<NationalCodeDict> selectNationalCodeDictList(NationalCodeDict nationalCodeDict);
+
+    /**
+     * 新增字典数据表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 结果
+     */
+    public int insertNationalCodeDict(NationalCodeDict nationalCodeDict);
+
+    /**
+     * 修改字典数据表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 结果
+     */
+    public int updateNationalCodeDict(NationalCodeDict nationalCodeDict);
+
+    /**
+     * 批量删除字典数据表
+     * 
+     * @param dictCodes 需要删除的字典数据表主键集合
+     * @return 结果
+     */
+    public int deleteNationalCodeDictByDictCodes(String[] dictCodes);
+
+    /**
+     * 删除字典数据表信息
+     * 
+     * @param dictCode 字典数据表主键
+     * @return 结果
+     */
+    public int deleteNationalCodeDictByDictCode(String dictCode);
+}

+ 94 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/service/impl/NationalCodeDictServiceImpl.java

@@ -0,0 +1,94 @@
+package com.onemap.system.service.impl;
+
+import java.util.List;
+
+import com.onemap.system.domain.NationalCodeDict;
+import com.onemap.system.mapper.NationalCodeDictMapper;
+import com.onemap.system.service.INationalCodeDictService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 字典数据表Service业务层处理
+ * 
+ * @author ruoyi
+ * @date 2024-12-04
+ */
+@Service
+public class NationalCodeDictServiceImpl implements INationalCodeDictService
+{
+    @Autowired
+    private NationalCodeDictMapper nationalCodeDictMapper;
+
+    /**
+     * 查询字典数据表
+     * 
+     * @param dictCode 字典数据表主键
+     * @return 字典数据表
+     */
+    @Override
+    public NationalCodeDict selectNationalCodeDictByDictCode(String dictCode)
+    {
+        return nationalCodeDictMapper.selectNationalCodeDictByDictCode(dictCode);
+    }
+
+    /**
+     * 查询字典数据表列表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 字典数据表
+     */
+    @Override
+    public List<NationalCodeDict> selectNationalCodeDictList(NationalCodeDict nationalCodeDict)
+    {
+        return nationalCodeDictMapper.selectNationalCodeDictList(nationalCodeDict);
+    }
+
+    /**
+     * 新增字典数据表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 结果
+     */
+    @Override
+    public int insertNationalCodeDict(NationalCodeDict nationalCodeDict)
+    {
+        return nationalCodeDictMapper.insertNationalCodeDict(nationalCodeDict);
+    }
+
+    /**
+     * 修改字典数据表
+     * 
+     * @param nationalCodeDict 字典数据表
+     * @return 结果
+     */
+    @Override
+    public int updateNationalCodeDict(NationalCodeDict nationalCodeDict)
+    {
+        return nationalCodeDictMapper.updateNationalCodeDict(nationalCodeDict);
+    }
+
+    /**
+     * 批量删除字典数据表
+     * 
+     * @param dictCodes 需要删除的字典数据表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteNationalCodeDictByDictCodes(String[] dictCodes)
+    {
+        return nationalCodeDictMapper.deleteNationalCodeDictByDictCodes(dictCodes);
+    }
+
+    /**
+     * 删除字典数据表信息
+     * 
+     * @param dictCode 字典数据表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteNationalCodeDictByDictCode(String dictCode)
+    {
+        return nationalCodeDictMapper.deleteNationalCodeDictByDictCode(dictCode);
+    }
+}

+ 92 - 0
onemap-modules/onemap-system/src/main/resources/mapper/postgresql/system/NationalCodeDictMapper.xml

@@ -0,0 +1,92 @@
+<?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.system.mapper.NationalCodeDictMapper">
+    
+    <resultMap type="NationalCodeDict" id="NationalCodeDictResult">
+        <result property="dictCode"    column="dict_code"    />
+        <result property="dictSort"    column="dict_sort"    />
+        <result property="dictLabel"    column="dict_label"    />
+        <result property="dictValue"    column="dict_value"    />
+        <result property="parentDictLabel"    column="parent_dict_label"    />
+        <result property="dictType"    column="dict_type"    />
+        <result property="status"    column="status"    />
+        <result property="remark"    column="remark"    />
+        <result property="dictColor"    column="dict_color"    />
+    </resultMap>
+
+    <sql id="selectNationalCodeDictVo">
+        select dict_code, dict_sort, dict_label, dict_value, parent_dict_label, dict_type, status, remark, dict_color from national_code_dict
+    </sql>
+
+    <select id="selectNationalCodeDictList" parameterType="NationalCodeDict" resultMap="NationalCodeDictResult">
+        <include refid="selectNationalCodeDictVo"/>
+        <where>  
+            <if test="dictSort != null "> and dict_sort = #{dictSort}</if>
+            <if test="dictLabel != null  and dictLabel != ''"> and dict_label = #{dictLabel}</if>
+            <if test="dictValue != null  and dictValue != ''"> and dict_value = #{dictValue}</if>
+            <if test="parentDictLabel != null  and parentDictLabel != ''"> and parent_dict_label = #{parentDictLabel}</if>
+            <if test="dictType != null  and dictType != ''"> and dict_type = #{dictType}</if>
+            <if test="status != null  and status != ''"> and status = #{status}</if>
+            <if test="dictColor != null  and dictColor != ''"> and dict_color = #{dictColor}</if>
+        </where>
+    </select>
+    
+    <select id="selectNationalCodeDictByDictCode" parameterType="String" resultMap="NationalCodeDictResult">
+        <include refid="selectNationalCodeDictVo"/>
+        where dict_code = #{dictCode}
+    </select>
+
+    <insert id="insertNationalCodeDict" parameterType="NationalCodeDict">
+        insert into national_code_dict
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="dictCode != null">dict_code,</if>
+            <if test="dictSort != null">dict_sort,</if>
+            <if test="dictLabel != null">dict_label,</if>
+            <if test="dictValue != null">dict_value,</if>
+            <if test="parentDictLabel != null">parent_dict_label,</if>
+            <if test="dictType != null">dict_type,</if>
+            <if test="status != null and status != ''">status,</if>
+            <if test="remark != null">remark,</if>
+            <if test="dictColor != null">dict_color,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="dictCode != null">#{dictCode},</if>
+            <if test="dictSort != null">#{dictSort},</if>
+            <if test="dictLabel != null">#{dictLabel},</if>
+            <if test="dictValue != null">#{dictValue},</if>
+            <if test="parentDictLabel != null">#{parentDictLabel},</if>
+            <if test="dictType != null">#{dictType},</if>
+            <if test="status != null and status != ''">#{status},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="dictColor != null">#{dictColor},</if>
+         </trim>
+    </insert>
+
+    <update id="updateNationalCodeDict" parameterType="NationalCodeDict">
+        update national_code_dict
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="dictSort != null">dict_sort = #{dictSort},</if>
+            <if test="dictLabel != null">dict_label = #{dictLabel},</if>
+            <if test="dictValue != null">dict_value = #{dictValue},</if>
+            <if test="parentDictLabel != null">parent_dict_label = #{parentDictLabel},</if>
+            <if test="dictType != null">dict_type = #{dictType},</if>
+            <if test="status != null and status != ''">status = #{status},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="dictColor != null">dict_color = #{dictColor},</if>
+        </trim>
+        where dict_code = #{dictCode}
+    </update>
+
+    <delete id="deleteNationalCodeDictByDictCode" parameterType="String">
+        delete from national_code_dict where dict_code = #{dictCode}
+    </delete>
+
+    <delete id="deleteNationalCodeDictByDictCodes" parameterType="String">
+        delete from national_code_dict where dict_code in 
+        <foreach item="dictCode" collection="array" open="(" separator="," close=")">
+            #{dictCode}
+        </foreach>
+    </delete>
+</mapper>