Browse Source

拆分宗地相关

chenendian 3 tuần trước cách đây
mục cha
commit
a55ca9768e

+ 69 - 2
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/impl/ConvergeServiceImpl.java

@@ -13,6 +13,7 @@ import com.siwei.apply.utils.MdbUtil;
 import com.siwei.apply.utils.ServiceFileUtil;
 import com.siwei.common.core.exception.ServiceException;
 import com.siwei.common.core.utils.DateUtils;
+import com.siwei.common.core.utils.bean.BeanUtils;
 import com.siwei.common.core.utils.uuid.IdUtils;
 import com.vividsolutions.jts.geom.Geometry;
 import com.vividsolutions.jts.geom.MultiPolygon;
@@ -22,6 +23,7 @@ import com.vividsolutions.jts.io.WKBReader;
 import com.vividsolutions.jts.io.WKTReader;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.geotools.data.DefaultTransaction;
 import org.geotools.data.Transaction;
@@ -205,7 +207,7 @@ public class ConvergeServiceImpl implements ConvergeService {
 
             fzssFxrwrzHandleService.insertFxrwrz(convergeId, "地籍库管理", "数据已完成提取。。。。", "info");
 
-            String basePath =  convergedir + converge.getName()+"/"+"012345赣江新区"+"/";
+            String basePath =  convergedir + converge.getName()+"/"+"360425赣江新区"+"/";
             List<ConvergeRes> subConvergeTableList = new ArrayList<>();//衍生出的数据
 
             //如果有汇交数据,针对每张表,计算生成路径
@@ -228,8 +230,73 @@ public class ConvergeServiceImpl implements ConvergeService {
                         convergeRes.setFilePath(basePath + "矢量空间数据/统一坐标");
                         convergeRes.setFileName("03" + ConvergeTableEnum.TABLE_3.getTableName());
                         //todo 这里需要对宗地,根据情况进行拆分,出来一个新的List
+
+                        List<Map<String, Object>> zdList = convergeRes.getDataList();
+
+                        //建设用地使用权宗地
+                        List<Map<String, Object>> shyqzd_db_list = zdList.stream().filter(s-> ArrayUtils.contains(ArrayUtils.toArray("3","4","7","8","24","26"),s.get("qllx"))).collect(Collectors.toList());
+
+                        //宅基地使用权宗地
+                        List<Map<String, Object>> zjd_list =  zdList.stream().filter(s-> ArrayUtils.contains(ArrayUtils.toArray("5","6","25"),s.get("qllx"))).collect(Collectors.toList());
+
+                        //国有农用地的使用权
+                        List<Map<String, Object>> gynydsyqzd_list =zdList.stream().filter(s-> ArrayUtils.contains(ArrayUtils.toArray("23"),s.get("qllx"))).collect(Collectors.toList());
+
+                        //集体农用地的使用权
+                        List<Map<String, Object>> jtnydsyqzd_list =zdList.stream().filter(s-> ArrayUtils.contains(ArrayUtils.toArray("30"),s.get("qllx"))).collect(Collectors.toList());
+
+                        //其它使用权
+                        List<Map<String, Object>> qtsyqzd_list = zdList.stream().filter(s-> !ArrayUtils.contains(ArrayUtils.toArray("3","4","7","8","24","26","5","6","25","23","30"),s.get("qllx"))).collect(Collectors.toList());
+
+                        if(CollectionUtils.isNotEmpty(shyqzd_db_list)){
+                            ConvergeRes convergeResTmp = new ConvergeRes();
+                            BeanUtils.copyProperties(convergeRes, convergeResTmp);
+                            convergeResTmp.setDataList(shyqzd_db_list);
+                            convergeResTmp.setFilePath(basePath + "矢量空间数据/统一坐标");
+                            convergeResTmp.setFileName("031" + "shyqzd_db");
+                            subConvergeTableList.add(convergeResTmp);
+                        }
+
+                        if(CollectionUtils.isNotEmpty(zjd_list)){
+                            ConvergeRes convergeResTmp = new ConvergeRes();
+                            BeanUtils.copyProperties(convergeRes, convergeResTmp);
+                            convergeResTmp.setDataList(zjd_list);
+                            convergeResTmp.setFilePath(basePath + "矢量空间数据/统一坐标");
+                            convergeResTmp.setFileName("032" + "zjd");
+                            subConvergeTableList.add(convergeResTmp);
+                        }
+
+
+                        if(CollectionUtils.isNotEmpty(gynydsyqzd_list)){
+                            ConvergeRes convergeResTmp = new ConvergeRes();
+                            BeanUtils.copyProperties(convergeRes, convergeResTmp);
+                            convergeResTmp.setDataList(gynydsyqzd_list);
+                            convergeResTmp.setFilePath(basePath + "矢量空间数据/统一坐标");
+                            convergeResTmp.setFileName("033" + "gynydsyqzd");
+                            subConvergeTableList.add(convergeResTmp);
+                        }
+
+
+                        if(CollectionUtils.isNotEmpty(jtnydsyqzd_list)){
+                            ConvergeRes convergeResTmp = new ConvergeRes();
+                            BeanUtils.copyProperties(convergeRes, convergeResTmp);
+                            convergeResTmp.setDataList(jtnydsyqzd_list);
+                            convergeResTmp.setFilePath(basePath + "矢量空间数据/统一坐标");
+                            convergeResTmp.setFileName("034" + "jtnydsyqzd");
+                            subConvergeTableList.add(convergeResTmp);
+                        }
+
+                        if(CollectionUtils.isNotEmpty(qtsyqzd_list)){
+                            ConvergeRes convergeResTmp = new ConvergeRes();
+                            BeanUtils.copyProperties(convergeRes, convergeResTmp);
+                            convergeResTmp.setDataList(qtsyqzd_list);
+                            convergeResTmp.setFilePath(basePath + "矢量空间数据/统一坐标");
+                            convergeResTmp.setFileName("035" + "qtsyqzd");
+                            subConvergeTableList.add(convergeResTmp);
+                        }
+
                         convergeRes.setValid(-1);
-                        subConvergeTableList.add(convergeRes);
+
                     } else if (ConvergeTableEnum.TABLE_4.getTableName().equals(convergeRes.getTableName())) {
                         //房屋
                         convergeRes.setFilePath(basePath + "矢量空间数据/统一坐标");