Просмотр исходного кода

Merge branch 'f-xiaogu' into dev

gushoubang 8 месяцев назад
Родитель
Сommit
aba02713ce

+ 52 - 22
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/ReportServiceImpl.java

@@ -175,6 +175,12 @@ public class ReportServiceImpl implements IReportService {
             }
             NpoiHelper.setComTable(document, tabYzTitles, dataTablelist, "表1:选址影响因子", pos++);
 
+            // 添加分页
+            XWPFParagraph pageBreakParagraph0 = document.createParagraph();
+            XWPFRun pageBreakRun0 = pageBreakParagraph0.createRun();
+            pageBreakRun0.addBreak(BreakType.PAGE);
+            pos++;
+
             // TODO 二、选址范围分析
             NpoiHelper.catalog(document, "二、选址范围分析", pos++);
             String fwfx = "\t根据指定选址分析得出,所选范围共" + NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu(geomRes.getArea())) + "亩,其中";
@@ -191,6 +197,11 @@ public class ReportServiceImpl implements IReportService {
                     null, Units.toEMU(reportImage.getUseWidth()), Units.toEMU(reportImage.getUseHeight()));
             pos++;
 
+            // 添加分页
+            XWPFParagraph pageBreakParagraph1 = document.createParagraph();
+            XWPFRun pageBreakRun1 = pageBreakParagraph1.createRun();
+            pageBreakRun1.addBreak(BreakType.PAGE);
+            pos++;
 
             // 三、选址分析
             NpoiHelper.catalog(document, "三、选址分析", pos++);
@@ -206,6 +217,13 @@ public class ReportServiceImpl implements IReportService {
             }
 
             for (int i = 0; i < fzxzJgGisDTOList.size(); i++) {
+                if (i != 0) {
+                    // 添加分页
+                    XWPFParagraph pageBreakParagraph2 = document.createParagraph();
+                    XWPFRun pageBreakRun2 = pageBreakParagraph2.createRun();
+                    pageBreakRun2.addBreak(BreakType.PAGE);
+                    pos++;
+                }
                 SelectionResDTO item = fzxzJgGisDTOList.get(i);
 
                 String dkidStr = item.getDkid().toString();
@@ -217,32 +235,35 @@ public class ReportServiceImpl implements IReportService {
                 optionIsBold.setBold(true);// 加粗
 
                 document.setParagraph(NpoiHelper.newParagraph(document, i + 1 + "、方案" + NumberUtil.int2chineseNum(i + 1), optionIsBold), pos++);
-                XWPFTable table = document.createTable(dkList.size() + 4, 4);// 创建表格
+                XWPFTable table = document.createTable(dkList.size() + 3, 4);// 创建表格
                 table.setWidth(8300);// 总宽度
 
-
                 for (int j = 0; j < dkList.size(); j++) {
                     Map<String, String> rowMap = dkList.get(j);
-                    table.getRow(j).getCell(0).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum0"), null));
-                    table.getRow(j).getCell(1).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum1"), null));
-                    table.getRow(j).getCell(2).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum2"), null));
-                    table.getRow(j).getCell(3).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum3"), null));
+
+                    if (rowMap.size() == 2) {
+                        NpoiHelper.mergeHorizontal(table, j, 1, 3);
+                        table.getRow(j).getCell(0).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum0"), null));
+                        table.getRow(j).getCell(1).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum1"), null));
+                    } else {
+                        table.getRow(j).getCell(0).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum0"), null));
+                        table.getRow(j).getCell(1).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum1"), null));
+                        table.getRow(j).getCell(2).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum2"), null));
+                        table.getRow(j).getCell(3).setParagraph(NpoiHelper.setCellText(table, rowMap.get("colum3"), null));
+                    }
                 }
-                // row
-                // table.getRow(4).getCell(0).setColor("DBE5F1");
-                NpoiHelper.mergeHorizontal(table, dkList.size(), 1, 3);// 合并单元格
-                table.getRow(dkList.size()).getCell(0).setParagraph(NpoiHelper.setCellText(table, "配建机动车位说明", null));
+
 
                 // 准地价预估(万元)
-                NpoiHelper.mergeHorizontal(table, dkList.size() + 1, 1, 3);// 合并单元格
-                table.getRow(dkList.size() + 1).getCell(0).setParagraph(NpoiHelper.setCellText(table, "准地价预估(万元)", null));
+                NpoiHelper.mergeHorizontal(table, dkList.size(), 1, 3);// 合并单元格
+                table.getRow(dkList.size()).getCell(0).setParagraph(NpoiHelper.setCellText(table, "准地价预估(万元)", null));
                 // 地块位置
-                NpoiHelper.mergeHorizontal(table, dkList.size() + 2, 0, 3);
-                table.getRow(dkList.size() + 2).getCell(0).setParagraph(NpoiHelper.setCellText(table, "地块位置", null));
+                NpoiHelper.mergeHorizontal(table, dkList.size() + 1, 0, 3);
+                table.getRow(dkList.size() + 1).getCell(0).setParagraph(NpoiHelper.setCellText(table, "地块位置", null));
 
                 // Table 图片
-                NpoiHelper.mergeHorizontal(table, dkList.size() + 3, 0, 3);
-                XWPFTableRow row = table.getRow(dkList.size() + 3);
+                NpoiHelper.mergeHorizontal(table, dkList.size() + 2, 0, 3);
+                XWPFTableRow row = table.getRow(dkList.size() + 2);
 
                 // 在合并后的单元格中清除所有段落,确保没有多余的段落
                 XWPFTableCell cell = row.getCell(0);
@@ -343,6 +364,10 @@ public class ReportServiceImpl implements IReportService {
         columns.add("jzmdx");
         columns.add("ldld");
         columns.add("ldlx");
+
+        columns.add("jzxgd");
+        columns.add("jzxgx");
+        columns.add("pjjdcwsm");
         Map<String, Object> rawTable = ghdkaMapper.getInfoByColumn(rawTableName, rawItemId.toString(), columns);
 
         List<Map<String, String>> rows = new ArrayList<>();
@@ -362,17 +387,17 @@ public class ReportServiceImpl implements IReportService {
             rows.add(row2ItemMap);
 
             Map<String, String> row3ItemMap = new HashMap<>();
-            row3ItemMap.put("colum0", "用地面积()");
-            row3ItemMap.put("colum1", NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu((Double) rawTable.get("ydmj"))) + "");
-            row3ItemMap.put("colum2", "建筑面积()");
-            row3ItemMap.put("colum3", NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu((Double) rawTable.get("jzmj"))) + "");
+            row3ItemMap.put("colum0", "用地面积(平方米)");
+            row3ItemMap.put("colum1", NumberUtil.double2TwoDecimal((Double) rawTable.get("ydmj")) + "");
+            row3ItemMap.put("colum2", "建筑面积(平方米)");
+            row3ItemMap.put("colum3", NumberUtil.double2TwoDecimal((Double) rawTable.get("jzmj")) + "");
             rows.add(row3ItemMap);
 
             Map<String, String> row4ItemMap = new HashMap<>();
             row4ItemMap.put("colum0", "容积率上限");
-            row4ItemMap.put("colum1", NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu((Double) rawTable.get("rjld"))) + "");
+            row4ItemMap.put("colum1", NumberUtil.double2TwoDecimal((Double) rawTable.get("rjld")) + "");
             row4ItemMap.put("colum2", "容积率下限");
-            row4ItemMap.put("colum3", NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu((Double) rawTable.get("rjlx"))) + "");
+            row4ItemMap.put("colum3", NumberUtil.double2TwoDecimal((Double) rawTable.get("rjlx")) + "");
             rows.add(row4ItemMap);
 
             Map<String, String> row5ItemMap = new HashMap<>();
@@ -403,6 +428,11 @@ public class ReportServiceImpl implements IReportService {
             }
             row7ItemMap.put("colum3", jzxgx);
             rows.add(row7ItemMap);
+
+            Map<String, String> row8ItemMap = new HashMap<>();
+            row8ItemMap.put("colum0", "配建机动车位说明");
+            row8ItemMap.put("colum1", rawTable.get("pjjdcwsm") + "");
+            rows.add(row8ItemMap);
         }
         return rows;
     }