|
@@ -1,16 +1,36 @@
|
|
|
package com.nokia.financeapi.service.house;
|
|
|
|
|
|
+import cn.hutool.core.net.URLEncodeUtil;
|
|
|
import com.nokia.financeapi.common.R;
|
|
|
import com.nokia.financeapi.dao.house.HouseDataCheckDao;
|
|
|
import com.nokia.financeapi.pojo.dto.GetBuildingAreaDiffDto;
|
|
|
import com.nokia.financeapi.pojo.dto.GetHouseAbnormalDataDto;
|
|
|
import com.nokia.financeapi.pojo.vo.GetBuildingAreaDiffVo;
|
|
|
import com.nokia.financeapi.pojo.vo.GetHouseAbnormalDataVo;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.poi.ss.usermodel.Cell;
|
|
|
+import org.apache.poi.ss.usermodel.CellStyle;
|
|
|
+import org.apache.poi.ss.usermodel.DataFormat;
|
|
|
+import org.apache.poi.ss.usermodel.HorizontalAlignment;
|
|
|
+import org.apache.poi.ss.usermodel.Row;
|
|
|
+import org.apache.poi.ss.usermodel.VerticalAlignment;
|
|
|
+import org.apache.poi.xssf.streaming.SXSSFSheet;
|
|
|
+import org.apache.poi.xssf.streaming.SXSSFWorkbook;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
+import org.springframework.web.context.request.RequestContextHolder;
|
|
|
+import org.springframework.web.context.request.ServletRequestAttributes;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.LinkedHashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.concurrent.atomic.AtomicInteger;
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
+@Slf4j
|
|
|
@Service
|
|
|
public class HouseDataCheckService {
|
|
|
private final HouseDataCheckDao houseDataCheckDao;
|
|
@@ -20,22 +40,42 @@ public class HouseDataCheckService {
|
|
|
}
|
|
|
|
|
|
public R<GetBuildingAreaDiffVo> getBuildingAreaDiff(GetBuildingAreaDiffDto dto) {
|
|
|
- GetBuildingAreaDiffVo vo = houseDataCheckDao.getFirstUnitBuildingAreaDiff();
|
|
|
- List<GetBuildingAreaDiffVo> l2 = houseDataCheckDao.getSecondUnitBuildingAreaDiff();
|
|
|
- vo.setChildren(l2);
|
|
|
- List<GetBuildingAreaDiffVo> l3 = houseDataCheckDao.getThirdUnitBuildingAreaDiff();
|
|
|
- for (GetBuildingAreaDiffVo second : l2) {
|
|
|
- List<GetBuildingAreaDiffVo> l33 = new ArrayList<>();
|
|
|
- second.setChildren(l33);
|
|
|
- for (GetBuildingAreaDiffVo third : l3) {
|
|
|
- if (second.getAreaName().equals(third.getAreaName())) {
|
|
|
- l33.add(third);
|
|
|
- }
|
|
|
- }
|
|
|
+ GetBuildingAreaDiffVo vo = getBuildingAreaDiffVo(dto);
|
|
|
+ if (vo == null) {
|
|
|
+ return R.ok();
|
|
|
}
|
|
|
return R.ok(vo);
|
|
|
}
|
|
|
|
|
|
+ private GetBuildingAreaDiffVo getBuildingAreaDiffVo(GetBuildingAreaDiffDto dto) {
|
|
|
+ if ("全省".equals(dto.getAreaNo())) {
|
|
|
+ dto.setAreaNo(null);
|
|
|
+ dto.setCityNo(null);
|
|
|
+ }
|
|
|
+ // 查询三级单位统计
|
|
|
+ List<GetBuildingAreaDiffVo> pos = houseDataCheckDao.buildingAreaDiff(dto);
|
|
|
+ if (CollectionUtils.isEmpty(pos)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ // 一级单位统计
|
|
|
+ GetBuildingAreaDiffVo firstUnitPo = new GetBuildingAreaDiffVo();
|
|
|
+ firstUnitPo.setAreaName("全省");
|
|
|
+ firstUnitPo.setCityName("全省");
|
|
|
+ firstUnitPo.setUnitName("全省");
|
|
|
+ LinkedHashMap<String, GetBuildingAreaDiffVo> secondUnitPoMap = new LinkedHashMap<>();
|
|
|
+ // 二级单位统计
|
|
|
+ for (GetBuildingAreaDiffVo houseAgeStatPo : pos) {
|
|
|
+ secondUnitPoMap.putIfAbsent(houseAgeStatPo.getAreaNo(),
|
|
|
+ new GetBuildingAreaDiffVo(houseAgeStatPo.getAreaNo(), houseAgeStatPo.getAreaName()));
|
|
|
+ GetBuildingAreaDiffVo secondUnitPo = secondUnitPoMap.get(houseAgeStatPo.getAreaNo());
|
|
|
+ secondUnitPo.update(houseAgeStatPo);
|
|
|
+ }
|
|
|
+ for (GetBuildingAreaDiffVo value : secondUnitPoMap.values()) {
|
|
|
+ firstUnitPo.update(value);
|
|
|
+ }
|
|
|
+ return firstUnitPo;
|
|
|
+ }
|
|
|
+
|
|
|
public R<GetHouseAbnormalDataVo> getHouseAbnormalData(GetHouseAbnormalDataDto dto) {
|
|
|
Integer endDate = dto.getEndDate();
|
|
|
// 账期为空则取最新的账期
|
|
@@ -64,4 +104,283 @@ public class HouseDataCheckService {
|
|
|
}
|
|
|
return R.ok(vo);
|
|
|
}
|
|
|
+
|
|
|
+ public void getBuildingAreaDiffExport(GetBuildingAreaDiffDto dto) {
|
|
|
+ ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder
|
|
|
+ .getRequestAttributes();
|
|
|
+ if (servletRequestAttributes == null) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ HttpServletResponse response = servletRequestAttributes.getResponse();
|
|
|
+ if (response == null) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ String filename = "数据稽查_自用面积比较"
|
|
|
+ + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMdd")) + ".xlsx";
|
|
|
+ response.setHeader("Content-Disposition", "attachment;filename=" + URLEncodeUtil.encode(filename));
|
|
|
+ response.setContentType("application/octet-stream");
|
|
|
+ try (SXSSFWorkbook wb = new SXSSFWorkbook()) {
|
|
|
+ writeBuildingAreaDiff(dto, wb);
|
|
|
+ wb.write(response.getOutputStream());
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage(), e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void writeBuildingAreaDiff(GetBuildingAreaDiffDto dto, SXSSFWorkbook wb) {
|
|
|
+ GetBuildingAreaDiffVo firstPo = getBuildingAreaDiffVo(dto);
|
|
|
+ DataFormat dataFormat = wb.createDataFormat();
|
|
|
+ // 数字样式
|
|
|
+ CellStyle numberCellStyle = wb.createCellStyle();
|
|
|
+ numberCellStyle.setDataFormat(dataFormat.getFormat("#,##0.00"));
|
|
|
+ numberCellStyle.setAlignment(HorizontalAlignment.RIGHT);
|
|
|
+ // 默认样式
|
|
|
+ CellStyle baseCellStyle = wb.createCellStyle();
|
|
|
+ baseCellStyle.setAlignment(HorizontalAlignment.CENTER);
|
|
|
+ baseCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
|
|
|
+// // 百分比样式
|
|
|
+// CellStyle percentCellStyle = wb.createCellStyle();
|
|
|
+// percentCellStyle.setDataFormat(dataFormat.getFormat("0.00%"));
|
|
|
+// percentCellStyle.setAlignment(HorizontalAlignment.RIGHT);
|
|
|
+ SXSSFSheet sheet = wb.createSheet();
|
|
|
+ AtomicInteger rowIndex = new AtomicInteger(0);
|
|
|
+ // 表头
|
|
|
+ Row headerRow = sheet.createRow(rowIndex.getAndIncrement());
|
|
|
+ List<String> headers = Stream.of("资产所属单位(一级)", "资产所属单位(二级)", "资产所属单位(三级)",
|
|
|
+ "2023建筑面积(㎡)", "2023建筑面积-自用(㎡)", "2023建筑面积-闲置(㎡)", "当月建筑面积(㎡)", "当月建筑面积-自用(㎡)",
|
|
|
+ "当月建筑面积-闲置(㎡)", "建筑面积变化(%)", "自用面积变化(%)", "闲置面积变化(%)").toList();
|
|
|
+ int headerLength = headers.size();
|
|
|
+ for (int i = 0; i < headerLength; i++) {
|
|
|
+ Cell cell = headerRow.createCell(i);
|
|
|
+ cell.setCellValue(headers.get(i));
|
|
|
+ cell.setCellStyle(baseCellStyle);
|
|
|
+ // 根据内容长度设置列宽
|
|
|
+ int columnWidth = headers.get(i).length() * 256 * 2 + 256;
|
|
|
+ sheet.setColumnWidth(i, columnWidth);
|
|
|
+ }
|
|
|
+ if (firstPo == null) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ // 数据
|
|
|
+ AtomicInteger columnIndex1 = new AtomicInteger(0);
|
|
|
+ // 一级单位统计
|
|
|
+ Row row1 = sheet.createRow(rowIndex.getAndIncrement());
|
|
|
+ // 资产所属单位(一级)
|
|
|
+ Cell firstUnitCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getAreaName() != null) {
|
|
|
+ firstUnitCell1.setCellValue(firstPo.getAreaName());
|
|
|
+ }
|
|
|
+ // 二级单位
|
|
|
+ Cell areaNameCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+// if (firstPo.getAreaName() != null) {
|
|
|
+// areaNameCell1.setCellValue(firstPo.getAreaName());
|
|
|
+// }
|
|
|
+ // 三级单位
|
|
|
+ Cell cityNameCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+// if (firstPo.getCityName() != null) {
|
|
|
+// cityNameCell1.setCellValue(firstPo.getCityName());
|
|
|
+// }
|
|
|
+ // 2023建筑面积
|
|
|
+ Cell buildingAreaSumLastCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaSumLast() != null) {
|
|
|
+ buildingAreaSumLastCell1.setCellValue(firstPo.getBuildingAreaSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSumLastCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 2023建筑面积-自用
|
|
|
+ Cell buildingAreaSelfUseSumLastCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaSelfUseSumLast() != null) {
|
|
|
+ buildingAreaSelfUseSumLastCell1.setCellValue(firstPo.getBuildingAreaSelfUseSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseSumLastCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 2023建筑面积-闲置
|
|
|
+ Cell buildingAreaIdleSumLastCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaIdleSumLast() != null) {
|
|
|
+ buildingAreaIdleSumLastCell1.setCellValue(firstPo.getBuildingAreaIdleSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleSumLastCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积
|
|
|
+ Cell buildingAreaSumNowCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaSumNow() != null) {
|
|
|
+ buildingAreaSumNowCell1.setCellValue(firstPo.getBuildingAreaSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSumNowCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积-自用
|
|
|
+ Cell buildingAreaSelfUseSumNowCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaSelfUseSumNow() != null) {
|
|
|
+ buildingAreaSelfUseSumNowCell1.setCellValue(firstPo.getBuildingAreaSelfUseSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseSumNowCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积-闲置
|
|
|
+ Cell buildingAreaIdleSumNowCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaIdleSumNow() != null) {
|
|
|
+ buildingAreaIdleSumNowCell1.setCellValue(firstPo.getBuildingAreaIdleSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleSumNowCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 建筑面积变化
|
|
|
+ Cell buildingAreaDiffCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaDiff() != null) {
|
|
|
+ buildingAreaDiffCell1.setCellValue(firstPo.getBuildingAreaDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaDiffCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 自用面积变化
|
|
|
+ Cell buildingAreaSelfUseDiffCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaSelfUseDiff() != null) {
|
|
|
+ buildingAreaSelfUseDiffCell1.setCellValue(firstPo.getBuildingAreaSelfUseDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseDiffCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 闲置面积变化
|
|
|
+ Cell buildingAreaIdleDiffCell1 = row1.createCell(columnIndex1.getAndIncrement());
|
|
|
+ if (firstPo.getBuildingAreaIdleDiff() != null) {
|
|
|
+ buildingAreaIdleDiffCell1.setCellValue(firstPo.getBuildingAreaIdleDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleDiffCell1.setCellStyle(numberCellStyle);
|
|
|
+ // 二级单位统计
|
|
|
+ for (GetBuildingAreaDiffVo secondPo : firstPo.getChildren()) {
|
|
|
+ AtomicInteger columnIndex2 = new AtomicInteger(0);
|
|
|
+ Row row2 = sheet.createRow(rowIndex.getAndIncrement());
|
|
|
+ // 资产所属单位(一级)
|
|
|
+ Cell firstUnitCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+// if (secondPo.getAreaName() != null) {
|
|
|
+// firstUnitCell2.setCellValue(secondPo.getAreaName());
|
|
|
+// }
|
|
|
+ // 二级单位
|
|
|
+ Cell areaNameCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getAreaName() != null) {
|
|
|
+ areaNameCell2.setCellValue(secondPo.getAreaName());
|
|
|
+ }
|
|
|
+ // 三级单位
|
|
|
+ Cell cityNameCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+// if (secondPo.getCityName() != null) {
|
|
|
+// cityNameCell2.setCellValue(secondPo.getCityName());
|
|
|
+// }
|
|
|
+ // 2023建筑面积
|
|
|
+ Cell buildingAreaSumLastCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaSumLast() != null) {
|
|
|
+ buildingAreaSumLastCell2.setCellValue(secondPo.getBuildingAreaSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSumLastCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 2023建筑面积-自用
|
|
|
+ Cell buildingAreaSelfUseSumLastCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaSelfUseSumLast() != null) {
|
|
|
+ buildingAreaSelfUseSumLastCell2.setCellValue(secondPo.getBuildingAreaSelfUseSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseSumLastCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 2023建筑面积-闲置
|
|
|
+ Cell buildingAreaIdleSumLastCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaIdleSumLast() != null) {
|
|
|
+ buildingAreaIdleSumLastCell2.setCellValue(secondPo.getBuildingAreaIdleSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleSumLastCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积
|
|
|
+ Cell buildingAreaSumNowCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaSumNow() != null) {
|
|
|
+ buildingAreaSumNowCell2.setCellValue(secondPo.getBuildingAreaSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSumNowCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积-自用
|
|
|
+ Cell buildingAreaSelfUseSumNowCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaSelfUseSumNow() != null) {
|
|
|
+ buildingAreaSelfUseSumNowCell2.setCellValue(secondPo.getBuildingAreaSelfUseSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseSumNowCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积-闲置
|
|
|
+ Cell buildingAreaIdleSumNowCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaIdleSumNow() != null) {
|
|
|
+ buildingAreaIdleSumNowCell2.setCellValue(secondPo.getBuildingAreaIdleSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleSumNowCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 建筑面积变化
|
|
|
+ Cell buildingAreaDiffCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaDiff() != null) {
|
|
|
+ buildingAreaDiffCell2.setCellValue(secondPo.getBuildingAreaDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaDiffCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 自用面积变化
|
|
|
+ Cell buildingAreaSelfUseDiffCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaSelfUseDiff() != null) {
|
|
|
+ buildingAreaSelfUseDiffCell2.setCellValue(secondPo.getBuildingAreaSelfUseDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseDiffCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 闲置面积变化
|
|
|
+ Cell buildingAreaIdleDiffCell2 = row2.createCell(columnIndex2.getAndIncrement());
|
|
|
+ if (secondPo.getBuildingAreaIdleDiff() != null) {
|
|
|
+ buildingAreaIdleDiffCell2.setCellValue(secondPo.getBuildingAreaIdleDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleDiffCell2.setCellStyle(numberCellStyle);
|
|
|
+ // 三级单位统计
|
|
|
+ for (GetBuildingAreaDiffVo thirdPo : secondPo.getChildren()) {
|
|
|
+ AtomicInteger columnIndex3 = new AtomicInteger(0);
|
|
|
+ Row row3 = sheet.createRow(rowIndex.getAndIncrement());
|
|
|
+ // 资产所属单位(一级)
|
|
|
+ Cell firstUnitCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+// if (thirdPo.getAreaName() != null) {
|
|
|
+// firstUnitCell3.setCellValue(thirdPo.getAreaName());
|
|
|
+// }
|
|
|
+ // 二级单位
|
|
|
+ Cell areaNameCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+// if (thirdPo.getAreaName() != null) {
|
|
|
+// areaNameCell3.setCellValue(thirdPo.getAreaName());
|
|
|
+// }
|
|
|
+ // 三级单位
|
|
|
+ Cell cityNameCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getCityName() != null) {
|
|
|
+ cityNameCell3.setCellValue(thirdPo.getCityName());
|
|
|
+ }
|
|
|
+ // 2023建筑面积
|
|
|
+ Cell buildingAreaSumLastCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaSumLast() != null) {
|
|
|
+ buildingAreaSumLastCell3.setCellValue(thirdPo.getBuildingAreaSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSumLastCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 2023建筑面积-自用
|
|
|
+ Cell buildingAreaSelfUseSumLastCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaSelfUseSumLast() != null) {
|
|
|
+ buildingAreaSelfUseSumLastCell3.setCellValue(thirdPo.getBuildingAreaSelfUseSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseSumLastCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 2023建筑面积-闲置
|
|
|
+ Cell buildingAreaIdleSumLastCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaIdleSumLast() != null) {
|
|
|
+ buildingAreaIdleSumLastCell3.setCellValue(thirdPo.getBuildingAreaIdleSumLast().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleSumLastCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积
|
|
|
+ Cell buildingAreaSumNowCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaSumNow() != null) {
|
|
|
+ buildingAreaSumNowCell3.setCellValue(thirdPo.getBuildingAreaSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSumNowCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积-自用
|
|
|
+ Cell buildingAreaSelfUseSumNowCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaSelfUseSumNow() != null) {
|
|
|
+ buildingAreaSelfUseSumNowCell3.setCellValue(thirdPo.getBuildingAreaSelfUseSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseSumNowCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 当月建筑面积-闲置
|
|
|
+ Cell buildingAreaIdleSumNowCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaIdleSumNow() != null) {
|
|
|
+ buildingAreaIdleSumNowCell3.setCellValue(thirdPo.getBuildingAreaIdleSumNow().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleSumNowCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 建筑面积变化
|
|
|
+ Cell buildingAreaDiffCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaDiff() != null) {
|
|
|
+ buildingAreaDiffCell3.setCellValue(thirdPo.getBuildingAreaDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaDiffCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 自用面积变化
|
|
|
+ Cell buildingAreaSelfUseDiffCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaSelfUseDiff() != null) {
|
|
|
+ buildingAreaSelfUseDiffCell3.setCellValue(thirdPo.getBuildingAreaSelfUseDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaSelfUseDiffCell3.setCellStyle(numberCellStyle);
|
|
|
+ // 闲置面积变化
|
|
|
+ Cell buildingAreaIdleDiffCell3 = row3.createCell(columnIndex3.getAndIncrement());
|
|
|
+ if (thirdPo.getBuildingAreaIdleDiff() != null) {
|
|
|
+ buildingAreaIdleDiffCell3.setCellValue(thirdPo.getBuildingAreaIdleDiff().doubleValue());
|
|
|
+ }
|
|
|
+ buildingAreaIdleDiffCell3.setCellStyle(numberCellStyle);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|