瀏覽代碼

兼容土地供应与批次报批业务表数据

chenendian 1 月之前
父節點
當前提交
775c75b8ca

+ 2 - 2
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/controller/DecisionTaskController.java

@@ -113,9 +113,9 @@ public class DecisionTaskController extends BaseController {
 
 
     @GetMapping("/joinDetails")
-    public R<Map<String, Object>> joinDetails(@RequestParam("joinId") String joinId,  @RequestParam("type") Integer type) {
+    public R<Map<String, Object>> joinDetails(@RequestParam("joinId") String joinId,@RequestParam("detailsName") String detailsName,  @RequestParam("type") Integer type) {
         try {
-            Map<String, Object> result = decisionTaskService.getJoinDetails(joinId, type);
+            Map<String, Object> result = decisionTaskService.getJoinDetails(joinId,detailsName,type);
             return R.ok(result);
         } catch (Exception e) {
             return R.fail(e.getMessage());

+ 8 - 14
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/enums/DecisionType.java

@@ -7,26 +7,20 @@ import java.util.List;
  * 项目类型
  */
 public enum DecisionType {
-
-//    DECISION_TYPE_1("1", "现状数据", "gj_xzqh_shp", "id", "name"),
-//    DECISION_TYPE_2("2", "三区三线", "sqsx", "id", "name"),
-//    DECISION_TYPE_3("3", "控规数据", "kg", "id", "name"),
-//    DECISION_TYPE_4("4", "所有权宗地", "syqzd", "id", "zl"),
-//    DECISION_TYPE_5("5", "使用权宗地", "jsydsyq", "id", "zl"),
-//    DECISION_TYPE_6("6", "供地数据", "tdgy", "id", "jswz"),
-//    DECISION_TYPE_7("7", "报批数据", "ydbp", "id", "pfwh");
-
     /**
      * extraFields:查询业务表时需要额外返回的字段名列表(动态拼接到 SELECT 中)
      * 字段名需与业务表列名完全一致
      */
-    DECISION_TYPE_4("4", "所有权宗地", "zdjbxx", "zddm", "所有权宗地", "zddm", "qlrsjsyrlxm","zdszx"),
-    DECISION_TYPE_5("5", "使用权宗地", "zdjbxx", "zddm", "使用权宗地", "zddm", "qlrsjsyrlxm","zdszx"),
-    DECISION_TYPE_6("6", "供地数据", "gj_gd_data", "gid", "供地数据", "gid","srr", "nf"),
-    DECISION_TYPE_7("7", "报批数据", "gj_bp_data", "gid", "报批数据", "gid", "xmmc","xmlx");
-
+    DECISION_TYPE_4("4", "所有权宗地", "vector.zdjbxx", "zddm", "zdjbxx", "zddm", "qlrsjsyrlxm","zdszx"),
+    DECISION_TYPE_5("5", "使用权宗地", "vector.zdjbxx", "zddm", "zdjbxx", "zddm", "qlrsjsyrlxm","zdszx"),
+    DECISION_TYPE_6("6", "供地数据", "vector.gj_gd_data", "gid", "gj_gd_data", "gid","srr", "nf"),
+    DECISION_TYPE_7("7", "报批数据", "vector.gj_bp_data", "gid", "gj_bp_data", "gid", "xmmc","xmlx"),
 
+    DECISION_TYPE_6_1("6", "土地供应数据", "public.c_one_code_tdgy", "node_id", "c_one_code_tdgy", "node_id","srf","hbcrht_date"),
+    DECISION_TYPE_7_1("7", "用地报批数据", "public.c_one_code_ydbp", "node_id", "c_one_code_ydbp", "node_id", "project_name");
 
+//    DECISION_TYPE_6_2("6", "供地数据", "c_one_code_tdgy", "node_id", "供地数据2", "project_name","project_code"),
+//    DECISION_TYPE_7_2("7", "报批数据", "c_one_code_ydbp", "node_id", "报批数据2", "node_id", "project_name","project_code");
 
     private final String name;
     private final String code;

+ 1 - 1
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/DecisionTaskService.java

@@ -24,6 +24,6 @@ public interface DecisionTaskService {
 
     List<DecisionDetailsVo>  detailsList(String taskId);
 
-    Map<String,Object> getJoinDetails(String currentId,Integer type);
+    Map<String,Object> getJoinDetails(String currentId,String detailsName,Integer type);
 
     }

+ 22 - 5
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/impl/DecisionTaskServiceImpl.java

@@ -184,7 +184,6 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
             param.setExtraFields(decisionType.getExtraFields());
 
             List<Map<String, Object>> dataList = decisionTaskMapper.getDetailsList(param);
-
             if (CollectionUtils.isNotEmpty(dataList)) {
                 DecisionDetailsVo vo = new DecisionDetailsVo();
                 vo.setName(decisionType.getName());
@@ -193,10 +192,10 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
                 resultList.add(vo);
             }
         }
-
         return resultList;
     }
 
+
     /**
      *
      * 获取当前数据类型的详情数据
@@ -205,17 +204,36 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
      * @return
      */
     @Override
-    public Map<String,Object> getJoinDetails(String currentId,Integer type) {
+    public Map<String,Object> getJoinDetails(String currentId,String detailsName,Integer type) {
         if (StringUtils.isBlank(currentId)) {
             throw new ServiceException("当前关联id不能为空");
         }
+
+        if (StringUtils.isBlank(detailsName)) {
+            throw new ServiceException("当前标识不能为空");
+        }
+
         if (type == null) {
             throw new ServiceException("数据类型不能为空");
         }
-        DecisionType typeEnum = DecisionType.getByCode(String.valueOf(type));
+
+        DecisionType typeEnum = null;
+        if(type == 6 || type == 7) {
+            for (DecisionType decisionType : DecisionType.values()) {
+                if(decisionType.getDetailsName().equalsIgnoreCase(detailsName)){
+                    typeEnum = decisionType;
+                    break;
+                }
+            }
+        }else {
+            typeEnum = DecisionType.getByCode(String.valueOf(type));
+        }
+
         if (typeEnum != null) {
+            //todo 这里需要返回项目信息,根据nodeId
             return decisionTaskMapper.getJoinDetails(typeEnum.getTable(),typeEnum.getSourceId(),currentId);
         }
+
         return null;
     }
 
@@ -224,5 +242,4 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
 
 
 
-
 }

+ 2 - 2
siwei-modules/siwei-apply/src/main/resources/mapper/DecisionTaskMapper.xml

@@ -116,7 +116,7 @@
             inTbale.${sourceId} as source_id,
             #{detailsName} as details_name,
             public.ST_Intersection(inTbale.geom,public.ST_GeomFromEWKT(#{ewkt})) AS geom
-            FROM vector.${tableName} inTbale
+            FROM ${tableName} inTbale
             WHERE public.ST_Intersects(inTbale.geom,public.ST_GeomFromEWKT(#{ewkt}))
 
               <if test="tableIds != null and tableIds.size() > 0">
@@ -150,7 +150,7 @@
                 </foreach>
             </if>
         FROM public.t_decision_task_details d
-        LEFT JOIN vector.${tableName} b
+        INNER JOIN ${tableName} b
             ON b.${joinId}::varchar = d.source_id
         WHERE d.task_id = #{taskId}
           AND d.type = #{type}