123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- package com.example.entity.house;
- import lombok.Data;
- import org.springframework.util.StringUtils;
- import java.math.BigDecimal;
- import java.math.RoundingMode;
- import java.util.ArrayList;
- import java.util.List;
- @Data
- public class BuildingOfficeAreaStatPo {
- private Integer yearMonth;
- private String areaNo;
- private String areaName;
- private String cityNo;
- private String cityName;
- private BigDecimal buildingAreaSelfUseSum;
- private Integer total;
- private BigDecimal areaAvg;
- private Integer areaOrder;
- private Integer cityOrder;
- private List<BuildingOfficeAreaStatPo> children;
- public BuildingOfficeAreaStatPo() {
- this.areaNo = "";
- this.areaName = "";
- this.cityNo = "";
- this.cityName = "";
- this.buildingAreaSelfUseSum = BigDecimal.ZERO;
- this.total = 0;
- this.areaAvg = BigDecimal.ZERO;
- this.children = new ArrayList<>();
- }
- public BuildingOfficeAreaStatPo(String areaNo, String areaName) {
- this.areaNo = areaNo;
- this.areaName = areaName;
- this.cityNo = areaNo;
- this.cityName = areaName;
- this.buildingAreaSelfUseSum = BigDecimal.ZERO;
- this.total = 0;
- this.areaAvg = BigDecimal.ZERO;
- this.children = new ArrayList<>();
- }
- public void update(BuildingOfficeAreaStatPo po) {
- this.buildingAreaSelfUseSum = this.buildingAreaSelfUseSum.add(po.getBuildingAreaSelfUseSum());
- this.total = this.total + po.getTotal();
- if (total != 0) {
- this.areaAvg = this.buildingAreaSelfUseSum.divide(new BigDecimal(total), 2, RoundingMode.HALF_DOWN);
- }
- if (StringUtils.hasText(po.getCityNo())) {
- this.children.add(po);
- }
- }
- }
|