Przeglądaj źródła

修复geom未转成ewkt

chenendian 4 tygodni temu
rodzic
commit
42f3dc5fc0

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

@@ -17,7 +17,7 @@ public enum DecisionType {
     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_7_1("7", "用地报批数据", "public.c_one_code_ydbp", "node_id", "c_one_code_ydbp", "node_id", "project_name","tdyt");
 
 //    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");

+ 120 - 50
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/impl/DecisionTaskServiceImpl.java

@@ -2,9 +2,11 @@ package com.siwei.apply.service.impl;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.siwei.apply.domain.DecisionTask;
+import com.siwei.apply.domain.LandType;
 import com.siwei.apply.domain.vo.*;
 import com.siwei.apply.enums.DecisionType;
 import com.siwei.apply.mapper.DecisionTaskMapper;
+import com.siwei.apply.mapper.LandTypeMapper;
 import com.siwei.apply.service.DecisionTaskService;
 import com.siwei.apply.service.IImageService;
 import com.siwei.apply.utils.NpoiHelper;
@@ -41,6 +43,11 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
     @Resource
     private IImageService imageService;
 
+    @Autowired
+    private LandTypeMapper landTypeMapper;
+
+
+
     @Override
     public String add(DecisionTaskVo decisionTaskVo) {
         DecisionTask decisionTask = new DecisionTask();
@@ -159,7 +166,6 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
     }
 
 
-
     /**
      *
      * 根据当前任务id,返回此次任务的所有结果,并且需要根据不同类型动态查询
@@ -204,6 +210,16 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
 
             List<Map<String, Object>> dataList = decisionTaskMapper.getDetailsList(param);
             if (CollectionUtils.isNotEmpty(dataList)) {
+                if(decisionType.getCode().equalsIgnoreCase("7")){
+                    //这里把用途转为名称展示
+                    for(Map<String,Object> data : dataList){
+                        if(data.get("tdyt") != null){
+                            String code = data.get("tdyt").toString();
+                            LandType landType = landTypeMapper.selectByCode(code);
+                            data.put("tdyt",landType.getName());
+                        }
+                    }
+                }
                 DecisionDetailsVo vo = new DecisionDetailsVo();
                 vo.setName(decisionType.getName());
                 vo.setType(Integer.parseInt(decisionType.getCode()));
@@ -214,7 +230,6 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
         return resultList;
     }
 
-
     /**
      *
      * 获取当前数据类型的详情数据
@@ -427,7 +442,7 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
         addCatalog(document, "与" + typeName + "分析情况:");
 
         // 根据类型获取对应的表格配置
-        List<NpoiHelper.TableTitle> tableTitles = getTableTitlesByType(type);
+        List<NpoiHelper.TableTitle> tableTitles = getTableTitlesByType(type,typeName);
         
         // 准备表格数据
         List<Map<String, Object>> tableData = prepareTableData(dataList, type);
@@ -498,7 +513,7 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
     /**
      * 根据分析类型获取表格标题配置
      */
-    private List<NpoiHelper.TableTitle> getTableTitlesByType(Integer type) {
+    private List<NpoiHelper.TableTitle> getTableTitlesByType(Integer type,String name) {
         List<NpoiHelper.TableTitle> titles = new ArrayList<>();
 
         // 序号列(所有类型通用)
@@ -544,56 +559,111 @@ public class DecisionTaskServiceImpl implements DecisionTaskService {
 
             case 6: // 供地数据/土地供应数据
                 // 受让方
-                NpoiHelper.TableTitle srfTitle = new NpoiHelper.TableTitle();
-                srfTitle.setKey("srf");
-                srfTitle.setName("受让方");
-                srfTitle.setWidth(2484);
-                srfTitle.setAlign(ParagraphAlignment.CENTER);
-                titles.add(srfTitle);
-
-                // 重叠面积
-                NpoiHelper.TableTitle tdgyAreaTitle = new NpoiHelper.TableTitle();
-                tdgyAreaTitle.setKey("shapearea");
-                tdgyAreaTitle.setName("重叠面积");
-                tdgyAreaTitle.setWidth(1880);
-                tdgyAreaTitle.setAlign(ParagraphAlignment.CENTER);
-                tdgyAreaTitle.setXsw(2);
-                titles.add(tdgyAreaTitle);
-
-                // 供应年份/合同日期
-                NpoiHelper.TableTitle nfTitle = new NpoiHelper.TableTitle();
-                nfTitle.setKey("hbcrht_date");
-                nfTitle.setName("供应年份");
-                nfTitle.setWidth(1880);
-                nfTitle.setAlign(ParagraphAlignment.CENTER);
-                titles.add(nfTitle);
+                if(name.equalsIgnoreCase("供地数据")){
+                    NpoiHelper.TableTitle srfTitle = new NpoiHelper.TableTitle();
+                    srfTitle.setKey("srr");
+                    srfTitle.setName("受让方");
+                    srfTitle.setWidth(2484);
+                    srfTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(srfTitle);
+
+                    // 重叠面积
+                    NpoiHelper.TableTitle tdgyAreaTitle = new NpoiHelper.TableTitle();
+                    tdgyAreaTitle.setKey("shapearea");
+                    tdgyAreaTitle.setName("重叠面积");
+                    tdgyAreaTitle.setWidth(1880);
+                    tdgyAreaTitle.setAlign(ParagraphAlignment.CENTER);
+                    tdgyAreaTitle.setXsw(2);
+                    titles.add(tdgyAreaTitle);
+
+                    // 供应年份/合同日期
+                    NpoiHelper.TableTitle nfTitle = new NpoiHelper.TableTitle();
+                    nfTitle.setKey("nf");
+                    nfTitle.setName("供应年份");
+                    nfTitle.setWidth(1880);
+                    nfTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(nfTitle);
+
+                }else {
+
+                    NpoiHelper.TableTitle srfTitle = new NpoiHelper.TableTitle();
+                    srfTitle.setKey("srf");
+                    srfTitle.setName("受让方");
+                    srfTitle.setWidth(2484);
+                    srfTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(srfTitle);
+
+                    // 重叠面积
+                    NpoiHelper.TableTitle tdgyAreaTitle = new NpoiHelper.TableTitle();
+                    tdgyAreaTitle.setKey("shapearea");
+                    tdgyAreaTitle.setName("重叠面积");
+                    tdgyAreaTitle.setWidth(1880);
+                    tdgyAreaTitle.setAlign(ParagraphAlignment.CENTER);
+                    tdgyAreaTitle.setXsw(2);
+                    titles.add(tdgyAreaTitle);
+
+                    // 合同日期
+                    NpoiHelper.TableTitle htDateTitle = new NpoiHelper.TableTitle();
+                    htDateTitle.setKey("hbcrht_date");
+                    htDateTitle.setName("合同日期");
+                    htDateTitle.setWidth(1880);
+                    htDateTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(htDateTitle);
+                }
                 break;
 
             case 7: // 报批数据/用地报批数据
                 // 项目名称
-                NpoiHelper.TableTitle xmmcTitle = new NpoiHelper.TableTitle();
-                xmmcTitle.setKey("project_name");
-                xmmcTitle.setName("项目名称");
-                xmmcTitle.setWidth(2484);
-                xmmcTitle.setAlign(ParagraphAlignment.CENTER);
-                titles.add(xmmcTitle);
-
-                // 重叠面积
-                NpoiHelper.TableTitle bpAreaTitle = new NpoiHelper.TableTitle();
-                bpAreaTitle.setKey("shapearea");
-                bpAreaTitle.setName("重叠面积");
-                bpAreaTitle.setWidth(1880);
-                bpAreaTitle.setAlign(ParagraphAlignment.CENTER);
-                bpAreaTitle.setXsw(2);
-                titles.add(bpAreaTitle);
-
-                // 项目类型
-                NpoiHelper.TableTitle xmlxTitle = new NpoiHelper.TableTitle();
-                xmlxTitle.setKey("xmlx");
-                xmlxTitle.setName("项目类型");
-                xmlxTitle.setWidth(1880);
-                xmlxTitle.setAlign(ParagraphAlignment.CENTER);
-                titles.add(xmlxTitle);
+                if(name.equalsIgnoreCase("报批数据")) {
+                    NpoiHelper.TableTitle xmmcTitle = new NpoiHelper.TableTitle();
+                    xmmcTitle.setKey("xmmc");
+                    xmmcTitle.setName("项目名称");
+                    xmmcTitle.setWidth(2484);
+                    xmmcTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(xmmcTitle);
+
+                    // 重叠面积
+                    NpoiHelper.TableTitle bpAreaTitle = new NpoiHelper.TableTitle();
+                    bpAreaTitle.setKey("shapearea");
+                    bpAreaTitle.setName("重叠面积");
+                    bpAreaTitle.setWidth(1880);
+                    bpAreaTitle.setAlign(ParagraphAlignment.CENTER);
+                    bpAreaTitle.setXsw(2);
+                    titles.add(bpAreaTitle);
+
+                    // 项目类型
+                    NpoiHelper.TableTitle xmlxTitle = new NpoiHelper.TableTitle();
+                    xmlxTitle.setKey("xmlx");
+                    xmlxTitle.setName("报批用途");
+                    xmlxTitle.setWidth(1880);
+                    xmlxTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(xmlxTitle);
+                }else {
+
+                    NpoiHelper.TableTitle xmmcTitle = new NpoiHelper.TableTitle();
+                    xmmcTitle.setKey("project_name");
+                    xmmcTitle.setName("项目名称");
+                    xmmcTitle.setWidth(2484);
+                    xmmcTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(xmmcTitle);
+
+                    // 重叠面积
+                    NpoiHelper.TableTitle bpAreaTitle = new NpoiHelper.TableTitle();
+                    bpAreaTitle.setKey("shapearea");
+                    bpAreaTitle.setName("重叠面积");
+                    bpAreaTitle.setWidth(1880);
+                    bpAreaTitle.setAlign(ParagraphAlignment.CENTER);
+                    bpAreaTitle.setXsw(2);
+                    titles.add(bpAreaTitle);
+
+                    // 项目类型
+                    NpoiHelper.TableTitle xmlxTitle = new NpoiHelper.TableTitle();
+                    xmlxTitle.setKey("tdyt");
+                    xmlxTitle.setName("报批用途");
+                    xmlxTitle.setWidth(1880);
+                    xmlxTitle.setAlign(ParagraphAlignment.CENTER);
+                    titles.add(xmlxTitle);
+                }
                 break;
 
             default:

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

@@ -129,7 +129,6 @@
     </insert>
 
 
-
     <!--
         根据 taskId + type 查询决策任务详情,JOIN 对应业务表补充扩展字段。
         t_decision_task_details.source_id  对应业务表的 ${joinId} 字段(如 zdjbxx.zddm)。
@@ -166,7 +165,7 @@
     </delete>
 
     <select id="getJoinDetails" resultType="map">
-        SELECT  d.*  FROM  ${tableName}  d  WHERE   d.${fieldName}::varchar = #{fieldValue}
+        SELECT  d.* , public.st_asewkt(geom) geom2  FROM  ${tableName}  d  WHERE   d.${fieldName}::varchar = #{fieldValue}
     </select>
 
 

+ 9 - 2
siwei-modules/siwei-apply/src/main/resources/mapper/cadastre/ZdjbxxMapper.xml

@@ -99,11 +99,18 @@
     </select>
 
     <select id="getListByDjzqdm" resultMap="BaseResultMap">
-        SELECT *
+        SELECT
+            bsm, ysdm, bdcdyh, ybzddm, zddm, xmbh, dzjgh, glh, zdtzm, dclxtzm,
+            zl, zdmj, mjdw, yt, ghytmc, ydyhfl, dj, jg, jgdw, qllx, qlxz, qlsdfs,
+            rjl, jzmd, jzxg, zdszd, zdszn, zdszx, zdszb, tfh, djh, dah, dkdm, bz,
+            zt, djzt, qlrsjsyrlxm, gmjjhyfldm, xmmc, zdmjzyy, tdsjyt, tdsjytmc,
+            blc, zjzjdmj, zjzmj, jgrq, qsdcjs, gygyqk, sm, dcy, dcrq, bdcchjs,
+            cly, clrq, shyj, shr, shrq, dcdwjg, tdzspfwh, tdgywjh, jsydghxkzh,
+            ST_AsEWKT(geom) as geom, valid_flag
         FROM vector.zdjbxx
         <where>
             <if test="djzqdm != null and djzqdm != ''">
-                and  LEFT(zddm, 12) = #{djzqdm}
+                and LEFT(zddm, 12) = #{djzqdm}
             </if>
         </where>
     </select>