Ver Fonte

gd字段调整

liutao há 3 dias atrás
pai
commit
29a6821f68

+ 1 - 1
YHYZT/server/src/main/java/com/zjugis/yzt/beans/entity/GddkRm.java

@@ -11,7 +11,7 @@ import lombok.Data;
 public class GddkRm {
     @TableId(type = IdType.AUTO)
     private Integer objectid;
-    private String dkbh;
+    private String gdsy;
     @TableField
     private String shape;
 }

+ 29 - 27
YHYZT/server/src/main/java/com/zjugis/yzt/service/impl/StGddkServiceImpl.java

@@ -83,11 +83,11 @@ public class StGddkServiceImpl extends ServiceImpl<StGddkMapper, StGddk> impleme
                 // 3. 保存前先删除已存在数据
                 if (gddk.getDkBh() != null) {
                     QueryWrapper<StGddk> queryWrapper = new QueryWrapper<>();
-                    queryWrapper.eq("dk_bh", gddk.getDkBh());
+                    queryWrapper.eq("gdsy", gddk.getGdsy());
                     try {
                         this.remove(queryWrapper);
                     } catch (Exception e) {
-                        String msg = String.format("删除地块编号为 %s 的旧数据失败: %s", gddk.getDkBh(), e.getMessage());
+                        String msg = String.format("删除供地索引为 %s 的旧数据失败: %s", gddk.getGdsy(), e.getMessage());
                         log.error(msg, e);
                         errorList.add(msg);
                     }
@@ -95,13 +95,13 @@ public class StGddkServiceImpl extends ServiceImpl<StGddkMapper, StGddk> impleme
                 // 保存StGddk
                 try {
                     if (!this.save(gddk)) {
-                        String msg = String.format("保存供地数据失败:%s", gddk.getDkBh());
+                        String msg = String.format("保存供地数据失败:%s", gddk.getGdsy());
                         log.error(msg);
                         errorList.add(msg);
                         continue;
                     }
                 } catch (Exception e) {
-                    String msg = String.format("保存供地数据异常:%s,错误:%s", gddk.getDkBh(), e.getMessage());
+                    String msg = String.format("保存供地数据异常:%s,错误:%s", gddk.getGdsy(), e.getMessage());
                     log.error(msg, e);
                     errorList.add(msg);
                     continue;
@@ -109,15 +109,15 @@ public class StGddkServiceImpl extends ServiceImpl<StGddkMapper, StGddk> impleme
                 // 获取保存后的objectid
                 Integer objectId = gddk.getObjectid();
                 if (objectId == null) {
-                    String msg = String.format("获取保存后的objectid失败:%s", gddk.getDkBh());
+                    String msg = String.format("获取保存后的objectid失败:%s", gddk.getGdsy());
                     log.error(msg);
                     errorList.add(msg);
                     continue;
                 }
                 // 解析txt为Geometry并持久化
-                String dkBh = gddk.getDkBh();
-                File txtFile = txtFiles.get(dkBh);
-                updateShape(errorList, objectId, dkBh, txtFile);
+                String gdsy = gddk.getGdsy();
+                File txtFile = txtFiles.get(gdsy);
+                updateShape(errorList, objectId, gdsy, txtFile);
             }
             return errorList;
         } catch (IOException e) {
@@ -148,20 +148,20 @@ public class StGddkServiceImpl extends ServiceImpl<StGddkMapper, StGddk> impleme
         gddk.setDjklx(FileUtils.getString(row, "项目类型(出让/划拨/集体土地)"));
         gddk.setDkBh(FileUtils.getString(row, "批准文号"));
         String htsj = FileUtils.getString(row, "签订日期");
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-        try{
-            if(htsj != null){
-                gddk.setHtsj(sdf.parse(htsj));
+        System.out.println(htsj);
+        try {
+            if (htsj != null) {
+                gddk.setHtsj(FileUtils.parseDate(htsj));
             }
             String ydkgsj = FileUtils.getString(row, "约定开工时间");
-            if(ydkgsj != null){
-                gddk.setYdkgsj(sdf.parse(ydkgsj));
+            if (ydkgsj != null) {
+                gddk.setYdkgsj(FileUtils.parseDate(ydkgsj));
             }
             String ydjgsj = FileUtils.getString(row, "约定竣工时间");
-            if(ydjgsj != null){
-                gddk.setYdjgsj(sdf.parse(ydjgsj));
+            if (ydjgsj != null) {
+                gddk.setYdjgsj(FileUtils.parseDate(ydjgsj));
             }
-        }catch (ParseException e){
+        } catch (ParseException e) {
             e.printStackTrace();
         }
         gddk.setDkMj(FileUtils.getDouble(row, "项目面积(公顷)"));
@@ -180,10 +180,10 @@ public class StGddkServiceImpl extends ServiceImpl<StGddkMapper, StGddk> impleme
      *
      * @param errorList
      * @param objectId
-     * @param dkBh
+     * @param gdsy
      * @param txtFile
      */
-    private void updateShape(List<String> errorList, Integer objectId, String dkBh, File txtFile) {
+    private void updateShape(List<String> errorList, Integer objectId, String gdsy, File txtFile) {
         if (txtFile != null) {
             try (FileInputStream txtInputStream = new FileInputStream(txtFile)) {
                 TxtReader txtReader = new TxtReader(txtInputStream);
@@ -192,37 +192,39 @@ public class StGddkServiceImpl extends ServiceImpl<StGddkMapper, StGddk> impleme
                     String wkt = parseResult.getGeometry().toText();
                     int updateCount = ((StGddkMapper) this.baseMapper).updateShapeById(objectId, wkt, 4528);
                     if (updateCount <= 0) {
-                        String msg = String.format("供地索引 %s 的shape字段持久化失败。", dkBh);
+                        String msg = String.format("供地索引 %s 的shape字段持久化失败。", gdsy);
                         log.warn(msg);
                         errorList.add(msg);
                     } else {
-                        // 1. 判断gddk_rm表中是否存在该dkbh,存在则删除
-                        QueryWrapper<com.zjugis.yzt.beans.entity.GddkRm> rmQueryWrapper = new QueryWrapper<>();
-                        rmQueryWrapper.eq("dkbh", dkBh);
+                        // 1. 判断gddk_rm表中是否存在该gdsy,存在则删除
+                        QueryWrapper<GddkRm> rmQueryWrapper = new QueryWrapper<>();
+                        rmQueryWrapper.eq("gdsy", gdsy);
                         if (gddkRmMapper.selectCount(rmQueryWrapper) > 0) {
                             gddkRmMapper.delete(rmQueryWrapper);
                         }
                         // 2. 插入一条只包含dkbh字段的记录
                         GddkRm gddkRm = new GddkRm();
-                        gddkRm.setDkbh(dkBh);
+                        gddkRm.setGdsy(gdsy);
                         gddkRmMapper.insert(gddkRm);
                         // 3. shape字段用updateShapeById更新
                         gddkRmMapper.updateShapeById(gddkRm.getObjectid(), wkt, 4528);
                     }
                 } else {
-                    String msg = String.format("供地索引 %s 的TXT文件解析失败或未获取到Geometry数据。", dkBh);
+                    String msg = String.format("供地索引 %s 的TXT文件解析失败或未获取到Geometry数据。", gdsy);
                     log.warn(msg);
                     errorList.add(msg);
                 }
             } catch (Exception e) {
-                String msg = String.format("解析供地索引 %s 的TXT文件失败: %s", dkBh, e.getMessage());
+                e.printStackTrace();
+                String msg = String.format("解析供地索引 %s 的TXT文件失败: %s", gdsy, e.getMessage());
                 log.error(msg);
                 errorList.add(msg);
             }
         } else {
-            String msg = String.format("未找到供地索引 %s 对应的TXT界址点文件。", dkBh);
+            String msg = String.format("未找到供地索引 %s 对应的TXT界址点文件。", gdsy);
             log.warn(msg);
             errorList.add(msg);
         }
     }
+
 }

+ 2 - 20
YHYZT/server/src/main/java/com/zjugis/yzt/service/impl/StNzydkServiceImpl.java

@@ -183,7 +183,7 @@ public class StNzydkServiceImpl extends ServiceImpl<StNzydkMapper, StNzydk> impl
             String pzrqStr = batchInfo.containsKey("批准日期") ? String.valueOf(batchInfo.get("批准日期")) : null;
             if (pzrqStr != null && !pzrqStr.isEmpty()) {
                 try {
-                    Date pzrqDate = parseDate(pzrqStr);
+                    Date pzrqDate = FileUtils.parseDate(pzrqStr);
                     java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd");
                     stNzydk.setPzrq(sdf.format(pzrqDate));
                 } catch (Exception e) {
@@ -251,23 +251,5 @@ public class StNzydkServiceImpl extends ServiceImpl<StNzydkMapper, StNzydk> impl
             return null;
         }
     }
-        /**
-     * 解析时间字段
-     * @param dateStr
-     * @return
-     * @throws java.text.ParseException
-     */
-    private static Date parseDate(String dateStr) throws java.text.ParseException {
-        List<SimpleDateFormat> formats = Arrays.asList(
-            new SimpleDateFormat("yyyy/MM/dd"),
-            new SimpleDateFormat("yyyy-MM-dd"),
-            new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.ENGLISH)
-        );
-        for (SimpleDateFormat sdf : formats) {
-            try {
-                return sdf.parse(dateStr);
-            } catch (java.text.ParseException ignored) {}
-        }
-        throw new java.text.ParseException("Unparseable date: \"" + dateStr + "\"", 0);
-    }
+
 } 

+ 4 - 22
YHYZT/server/src/main/java/com/zjugis/yzt/service/impl/TempLandServiceImpl.java

@@ -126,15 +126,15 @@ public class TempLandServiceImpl extends ServiceImpl<TempLandMapper, TempLand> i
         try {
             String approvalDate = FileUtils.getString(row, "审批时间");
             if (approvalDate != null && !approvalDate.isEmpty()) {
-                tempLand.setPzsj(parseDate(approvalDate));
+                tempLand.setPzsj(FileUtils.parseDate(approvalDate));
             }
             String expiryDate = FileUtils.getString(row, "到期时间");
             if (expiryDate != null && !expiryDate.isEmpty()) {
-                tempLand.setDqsj(parseDate(expiryDate));
+                tempLand.setDqsj(FileUtils.parseDate(expiryDate));
             }
             String storageDate = FileUtils.getString(row, "入库时间");
             if (storageDate != null && !storageDate.isEmpty()) {
-                tempLand.setRksj(parseDate(storageDate));
+                tempLand.setRksj(FileUtils.parseDate(storageDate));
             }
         } catch (Exception e) {
             String msg = "日期解析错误: " + e.getMessage();
@@ -184,23 +184,5 @@ public class TempLandServiceImpl extends ServiceImpl<TempLandMapper, TempLand> i
         }
     }
 
-    /**
-     * 解析时间字段
-     * @param dateStr
-     * @return
-     * @throws java.text.ParseException
-     */
-    private static Date parseDate(String dateStr) throws java.text.ParseException {
-        List<SimpleDateFormat> formats = Arrays.asList(
-            new SimpleDateFormat("yyyy/MM/dd"),
-            new SimpleDateFormat("yyyy-MM-dd"),
-            new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.ENGLISH)
-        );
-        for (SimpleDateFormat sdf : formats) {
-            try {
-                return sdf.parse(dateStr);
-            } catch (java.text.ParseException ignored) {}
-        }
-        throw new java.text.ParseException("Unparseable date: \"" + dateStr + "\"", 0);
-    }
+
 }

+ 21 - 2
YHYZT/server/src/main/java/com/zjugis/yzt/utils/FileUtils.java

@@ -8,7 +8,8 @@ import javax.servlet.http.HttpServletResponse;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
-import java.util.Map;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 public class FileUtils {
 
@@ -131,7 +132,25 @@ public class FileUtils {
         Object value = map.get(key);
         return value != null ? String.valueOf(value) : null;
     }
-
+    /**
+     * 解析时间字段
+     * @param dateStr
+     * @return
+     * @throws java.text.ParseException
+     */
+    public static Date parseDate(String dateStr) throws java.text.ParseException {
+        List<SimpleDateFormat> formats = Arrays.asList(
+                new SimpleDateFormat("yyyy/MM/dd"),
+                new SimpleDateFormat("yyyy-MM-dd"),
+                new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.ENGLISH)
+        );
+        for (SimpleDateFormat sdf : formats) {
+            try {
+                return sdf.parse(dateStr);
+            } catch (java.text.ParseException ignored) {}
+        }
+        throw new java.text.ParseException("Unparseable date: \"" + dateStr + "\"", 0);
+    }
     /**
      * Map取Double(null安全)
      */