|
|
@ -748,7 +748,7 @@ public class DailyReportService extends MybatisBaseService<DailyReportMapper, Da |
|
|
|
|
|
|
|
//按品牌sid分组
|
|
|
|
Map<String, List<DailyReportVo>> groupedByBrandSid = dailyReportVoList.stream() |
|
|
|
.collect(Collectors.groupingBy(DailyReportVo::getBrandSid,LinkedHashMap::new,Collectors.toList())); |
|
|
|
.collect(Collectors.groupingBy(DailyReportVo::getBrandSid, LinkedHashMap::new, Collectors.toList())); |
|
|
|
//遍历分组并组装每组的数据
|
|
|
|
List<FuelTypeVo> row2 = new ArrayList<>(); |
|
|
|
List<String> row4 = new ArrayList<>(); |
|
|
@ -2396,6 +2396,716 @@ public class DailyReportService extends MybatisBaseService<DailyReportMapper, Da |
|
|
|
return rb.success().setData(dailyReportAppVo); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<DailyReportAppBrandVo> list4New(String date, String useOrgSid) { |
|
|
|
ResultBean<DailyReportAppBrandVo> rb = ResultBean.fireFail(); |
|
|
|
QueryWrapper<DailyReport> qw = new QueryWrapper<>(); |
|
|
|
DailyReportAppBrandVo dailyReportAppVo = new DailyReportAppBrandVo(); |
|
|
|
dailyReportAppVo.setTitle("分公司" + date + "日报"); |
|
|
|
qw.like("ddr.createTime", date); |
|
|
|
qw.eq("ddr.useOrgSid", useOrgSid); |
|
|
|
qw.groupBy("ddr.brandSid"); |
|
|
|
qw.groupBy("bm.fuelTypeValue"); |
|
|
|
qw.groupBy("bm.emissionStandardValue"); |
|
|
|
qw.orderByDesc("ddr.brandSid"); |
|
|
|
List<DailyParameterVo> parameterVoList = baseMapper.selectByParameters(useOrgSid); |
|
|
|
parameterVoList.removeAll(Collections.singleton(null)); |
|
|
|
qw = getCommon(parameterVoList, qw); |
|
|
|
List<BrandVo> rows1 = baseMapper.selectByBrand2(useOrgSid, date, qw); |
|
|
|
rows1.removeAll(Collections.singleton(null)); |
|
|
|
if (!rows1.isEmpty()) { |
|
|
|
rows1.forEach(v -> { |
|
|
|
v.setColspan(Integer.parseInt(v.getColspan()) > 0 ? String.valueOf(Integer.parseInt(v.getColspan()) + 1) : v.getColspan()); |
|
|
|
}); |
|
|
|
} |
|
|
|
dailyReportAppVo.setRow1(rows1); |
|
|
|
List<String> brandList = rows1.stream().map(v -> v.getLinkSid()).collect(Collectors.toList()); |
|
|
|
brandList.removeAll(Collections.singleton(null)); |
|
|
|
if (brandList.isEmpty()) { |
|
|
|
return rb.success(); |
|
|
|
} |
|
|
|
qw = new QueryWrapper<>(); |
|
|
|
qw.eq("dr.useOrgSid", useOrgSid); |
|
|
|
qw.like("dr.createTime", date); |
|
|
|
qw.in("dr.brandSid", brandList); |
|
|
|
qw.orderByDesc("dr.brandSid"); |
|
|
|
qw.groupBy("dr.brandSid"); |
|
|
|
qw.groupBy("bm.fuelTypeValue"); |
|
|
|
qw.groupBy("bm.emissionStandardValue"); |
|
|
|
qw.orderByDesc("bm.fuelTypeValue"); |
|
|
|
qw.orderByDesc("bm.emissionStandardValue"); |
|
|
|
qw = getCommon(parameterVoList, qw); |
|
|
|
List<DailyReportVo> dailyReportVoList = baseMapper.selectReport4(brandList, useOrgSid, date, qw); |
|
|
|
//燃料
|
|
|
|
/* List<String> row2 = dailyReportVoList.stream().map(v -> v.getFuelTypeValue()).collect(Collectors.toList()); |
|
|
|
dailyReportAppVo.setRow2(row2);*/ |
|
|
|
//排放标准
|
|
|
|
List<String> row3 = dailyReportVoList.stream().map(v -> v.getEmissionStandardValue()).collect(Collectors.toList()); |
|
|
|
dailyReportAppVo.setRow3(row3); |
|
|
|
//按品牌sid分组
|
|
|
|
Map<String, List<DailyReportVo>> groupedByBrandSid = dailyReportVoList.stream() |
|
|
|
.collect(Collectors.groupingBy(DailyReportVo::getBrandSid, LinkedHashMap::new, Collectors.toList())); |
|
|
|
//遍历分组并组装每组的数据
|
|
|
|
List<FuelTypeVo> row2 = new ArrayList<>(); |
|
|
|
List<String> row4 = new ArrayList<>(); |
|
|
|
List<String> row5 = new ArrayList<>(); |
|
|
|
List<String> row6 = new ArrayList<>(); |
|
|
|
List<String> row7 = new ArrayList<>(); |
|
|
|
List<String> row8 = new ArrayList<>(); |
|
|
|
List<String> row9 = new ArrayList<>(); |
|
|
|
List<String> row10 = new ArrayList<>(); |
|
|
|
List<String> row11 = new ArrayList<>(); |
|
|
|
List<String> row12 = new ArrayList<>(); |
|
|
|
List<String> row13 = new ArrayList<>(); |
|
|
|
List<String> row14 = new ArrayList<>(); |
|
|
|
List<String> row15 = new ArrayList<>(); |
|
|
|
List<String> row16 = new ArrayList<>(); |
|
|
|
List<String> row17 = new ArrayList<>(); |
|
|
|
List<String> row18 = new ArrayList<>(); |
|
|
|
List<String> row19 = new ArrayList<>(); |
|
|
|
List<String> row20 = new ArrayList<>(); |
|
|
|
List<String> row21 = new ArrayList<>(); |
|
|
|
List<String> row22 = new ArrayList<>(); |
|
|
|
List<String> row23 = new ArrayList<>(); |
|
|
|
List<String> row24 = new ArrayList<>(); |
|
|
|
List<String> row25 = new ArrayList<>(); |
|
|
|
List<String> row26 = new ArrayList<>(); |
|
|
|
List<String> row27 = new ArrayList<>(); |
|
|
|
List<String> row28 = new ArrayList<>(); |
|
|
|
List<String> row29 = new ArrayList<>(); |
|
|
|
List<String> row30 = new ArrayList<>(); |
|
|
|
List<String> row31 = new ArrayList<>(); |
|
|
|
List<String> row32 = new ArrayList<>(); |
|
|
|
List<String> row33 = new ArrayList<>(); |
|
|
|
List<String> row34 = new ArrayList<>(); |
|
|
|
List<String> row35 = new ArrayList<>(); |
|
|
|
List<String> row36 = new ArrayList<>(); |
|
|
|
List<String> row37 = new ArrayList<>(); |
|
|
|
List<String> row38 = new ArrayList<>(); |
|
|
|
List<String> row39 = new ArrayList<>(); |
|
|
|
List<String> row40 = new ArrayList<>(); |
|
|
|
List<String> row41 = new ArrayList<>(); |
|
|
|
List<String> row42 = new ArrayList<>(); |
|
|
|
List<String> row43 = new ArrayList<>(); |
|
|
|
List<String> row44 = new ArrayList<>(); |
|
|
|
List<String> row45 = new ArrayList<>(); |
|
|
|
List<String> row46 = new ArrayList<>(); |
|
|
|
List<String> row47 = new ArrayList<>(); |
|
|
|
List<String> row48 = new ArrayList<>(); |
|
|
|
List<String> row49 = new ArrayList<>(); |
|
|
|
List<String> row50 = new ArrayList<>(); |
|
|
|
List<String> row51 = new ArrayList<>(); |
|
|
|
groupedByBrandSid.forEach((brandSid, sameBrandSidList) -> { |
|
|
|
for (int i = 0; i <= sameBrandSidList.size(); i++) { |
|
|
|
if (i == sameBrandSidList.size()) { |
|
|
|
FuelTypeVo fuelTypeVo = new FuelTypeVo(); |
|
|
|
fuelTypeVo.setName("小计"); |
|
|
|
if(parameterVoList.isEmpty()){ |
|
|
|
fuelTypeVo.setRowspan(String.valueOf(2)); |
|
|
|
}else{ |
|
|
|
if(parameterVoList.size()>7){ |
|
|
|
fuelTypeVo.setRowspan(String.valueOf(9)); |
|
|
|
}else{ |
|
|
|
fuelTypeVo.setRowspan(String.valueOf(2+parameterVoList.size())); |
|
|
|
} |
|
|
|
} |
|
|
|
row2.add(fuelTypeVo); |
|
|
|
//小计
|
|
|
|
int saleAllToThreeAll = sameBrandSidList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); |
|
|
|
int stock_totalAll = sameBrandSidList.stream().mapToInt(v -> v.getStock_total()).sum(); |
|
|
|
String saleOfStockRatioString = ""; |
|
|
|
if (saleAllToThreeAll == 0) { |
|
|
|
saleOfStockRatioString = stock_totalAll + ":1"; |
|
|
|
} else { |
|
|
|
saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; |
|
|
|
} |
|
|
|
row4.add(saleOfStockRatioString); |
|
|
|
List<String> row5i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); |
|
|
|
BigDecimal row5All = row5i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row5.add(row5All.toString()); |
|
|
|
List<String> row6i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row6All = row6i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row6.add(row6All.toString()); |
|
|
|
List<String> row7i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row7All = row7i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row7.add(row7All.toString()); |
|
|
|
List<String> row8i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); |
|
|
|
BigDecimal row8All = row8i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row8.add(row8All.toString()); |
|
|
|
List<String> row9i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row9All = row9i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row9.add(row9All.toString()); |
|
|
|
List<String> row10i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row10All = row10i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row10.add(row10All.toString()); |
|
|
|
List<String> row11i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); |
|
|
|
BigDecimal row11All = row11i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row11.add(row11All.toString()); |
|
|
|
List<String> row12i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row12All = row12i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row12.add(row12All.toString()); |
|
|
|
List<String> row13i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row13All = row13i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row13.add(row13All.toString()); |
|
|
|
List<String> row14i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); |
|
|
|
BigDecimal row14All = row14i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row14.add(row14All.toString()); |
|
|
|
List<String> row15i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row15All = row15i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row15.add(row15All.toString()); |
|
|
|
List<String> row16i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row16All = row16i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row16.add(row16All.toString()); |
|
|
|
|
|
|
|
//订车-本日销售订单-贷款
|
|
|
|
List<String> row17i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row17All = row17i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row17.add(row17All.toString()); |
|
|
|
//订车-本日销售订单-全款
|
|
|
|
List<String> row18i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row18All = row18i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row18.add(row18All.toString()); |
|
|
|
//订车-本日销售订单-小计
|
|
|
|
List<String> row19i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row19All = row19i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row19.add(row19All.toString()); |
|
|
|
//订车-本月销售订单-贷款
|
|
|
|
List<String> row20i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row20All = row20i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row20.add(row20All.toString()); |
|
|
|
//订车-本月销售订单-全款
|
|
|
|
List<String> row21i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row21All = row21i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row21.add(row21All.toString()); |
|
|
|
//订车-本月销售订单-小计
|
|
|
|
List<String> row22i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row22All = row22i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row22.add(row22All.toString()); |
|
|
|
//订车-待交车累计总订单
|
|
|
|
List<String> row23i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); |
|
|
|
BigDecimal row23All = row23i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row23.add(row23All.toString()); |
|
|
|
//销售-本日销售-贷款
|
|
|
|
List<String> row24i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row24All = row24i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row24.add(row24All.toString()); |
|
|
|
//销售-本日销售-全款
|
|
|
|
List<String> row25i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row25All = row25i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row25.add(row25All.toString()); |
|
|
|
//销售-本日销售-小计
|
|
|
|
List<String> row26i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row26All = row26i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row26.add(row26All.toString()); |
|
|
|
//销售-本月销售-贷款
|
|
|
|
List<String> row27i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row27All = row27i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row27.add(row27All.toString()); |
|
|
|
//销售-本月销售-全款
|
|
|
|
List<String> row28i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row28All = row28i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row28.add(row28All.toString()); |
|
|
|
//销售-本月销售-小计
|
|
|
|
List<String> row29i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row29All = row29i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row29.add(row29All.toString()); |
|
|
|
//销售-全年销售-贷款
|
|
|
|
List<String> row30i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row30All = row30i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row30.add(row30All.toString()); |
|
|
|
//销售-全年销售-全款
|
|
|
|
List<String> row31i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row31All = row31i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row31.add(row31All.toString()); |
|
|
|
//销售-全年销售-小计
|
|
|
|
List<String> row32i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row32All = row32i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row32.add(row32All.toString()); |
|
|
|
//交付-本日交付-贷款
|
|
|
|
List<String> row33i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row33All = row33i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row33.add(row33All.toString()); |
|
|
|
//交付-本日交付-全款
|
|
|
|
List<String> row34i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row34All = row34i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row34.add(row34All.toString()); |
|
|
|
//交付-本日交付-小计
|
|
|
|
List<String> row35i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row35All = row35i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row35.add(row35All.toString()); |
|
|
|
//交付-本月交付-贷款
|
|
|
|
List<String> row36i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row36All = row36i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row36.add(row36All.toString()); |
|
|
|
//交付-本月交付-全款
|
|
|
|
List<String> row37i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row37All = row37i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row37.add(row37All.toString()); |
|
|
|
//交付-本月交付-小计
|
|
|
|
List<String> row38i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row38All = row38i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row38.add(row38All.toString()); |
|
|
|
//交付-全年交付-贷款
|
|
|
|
List<String> row39i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row39All = row39i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row39.add(row39All.toString()); |
|
|
|
//交付-全年交付-全款
|
|
|
|
List<String> row40i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row40All = row40i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row40.add(row40All.toString()); |
|
|
|
//交付-全年交付-小计
|
|
|
|
List<String> row41i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row41All = row41i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row41.add(row41All.toString()); |
|
|
|
//全年厂家开票数
|
|
|
|
List<String> row42i = sameBrandSidList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row42All = row42i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row42.add(row42All.toString()); |
|
|
|
//买断-本日
|
|
|
|
List<String> row43i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row43All = row43i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row43.add(row43All.toString()); |
|
|
|
//买断-本月
|
|
|
|
List<String> row44i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row44All = row44i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row44.add(row44All.toString()); |
|
|
|
//买断-本年
|
|
|
|
List<String> row45i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row45All = row45i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row45.add(row45All.toString()); |
|
|
|
//欠款出库数量
|
|
|
|
List<String> row46i = sameBrandSidList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); |
|
|
|
BigDecimal row46All = row46i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row46.add(row46All.toString()); |
|
|
|
//欠款出库金额
|
|
|
|
List<String> row47i = sameBrandSidList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); |
|
|
|
BigDecimal row47All = row47i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row47.add(row47All.toString()); |
|
|
|
//金融未放款-数量
|
|
|
|
List<String> row48i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); |
|
|
|
BigDecimal row48All = row48i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row48.add(row48All.toString()); |
|
|
|
//金融未放款-金额
|
|
|
|
List<String> row49i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); |
|
|
|
BigDecimal row49All = row49i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row49.add(row49All.toString()); |
|
|
|
|
|
|
|
//金融未放款-数量-已信审终审
|
|
|
|
List<String> row50i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); |
|
|
|
BigDecimal row50All = row50i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row50.add(row50All.toString()); |
|
|
|
//金融未放款-金额-已信审终审
|
|
|
|
List<String> row51i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); |
|
|
|
BigDecimal row51All = row51i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row51.add(row51All.toString()); |
|
|
|
} else { |
|
|
|
FuelTypeVo fuelTypeVo = new FuelTypeVo(); |
|
|
|
DailyReportVo v = sameBrandSidList.get(i); |
|
|
|
String saleOfStockRatio = ""; |
|
|
|
String saleAllToThree = String.valueOf(v.getSaleAllToThree()); |
|
|
|
String stock_total = String.valueOf(v.getStock_total()); |
|
|
|
if (StringUtils.isBlank(saleAllToThree)) { |
|
|
|
saleOfStockRatio = stock_total + ":1"; |
|
|
|
} else { |
|
|
|
if ("0".equals(saleAllToThree)) { |
|
|
|
saleOfStockRatio = stock_total + ":1"; |
|
|
|
} else { |
|
|
|
saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; |
|
|
|
} |
|
|
|
} |
|
|
|
fuelTypeVo.setName(v.getFuelTypeValue()); |
|
|
|
fuelTypeVo.setRowspan(String.valueOf(1)); |
|
|
|
row2.add(fuelTypeVo); |
|
|
|
row4.add(saleOfStockRatio); |
|
|
|
row5.add(String.valueOf(v.getStock_total())); |
|
|
|
row6.add(String.valueOf(v.getStock_unreserve())); |
|
|
|
row7.add(String.valueOf(v.getStock_reserve())); |
|
|
|
row8.add(String.valueOf(v.getStock_subtotal())); |
|
|
|
row9.add(String.valueOf(v.getStock_buyout_unreserve())); |
|
|
|
row10.add(String.valueOf(v.getStock_buyout_reserve())); |
|
|
|
row11.add(String.valueOf(v.getStock_buyout_subtotal())); |
|
|
|
row12.add(String.valueOf(v.getPcOrder_unreserve())); |
|
|
|
row13.add(String.valueOf(v.getPcOrder_reserve())); |
|
|
|
row14.add(String.valueOf(v.getPcOrder_subtotal())); |
|
|
|
row15.add(String.valueOf(v.getSimpleOrder_day())); |
|
|
|
row16.add(String.valueOf(v.getSimpleOrder_month())); |
|
|
|
row17.add(String.valueOf(v.getSaleOrder_loan_day())); |
|
|
|
row18.add(String.valueOf(v.getSaleOrder_full_day())); |
|
|
|
row19.add(String.valueOf(v.getSaleOrder_subtotal_day())); |
|
|
|
row20.add(String.valueOf(v.getSaleOrder_loan_month())); |
|
|
|
row21.add(String.valueOf(v.getSaleOrder_full_month())); |
|
|
|
row22.add(String.valueOf(v.getSaleOrder_subtotal_month())); |
|
|
|
row23.add(String.valueOf(v.getSaleOrder_waitVeh_total())); |
|
|
|
row24.add(String.valueOf(v.getSale_loan_day())); |
|
|
|
row25.add(String.valueOf(v.getSale_full_day())); |
|
|
|
row26.add(String.valueOf(v.getSale_subtotal_day())); |
|
|
|
row27.add(String.valueOf(v.getSale_loan_month())); |
|
|
|
row28.add(String.valueOf(v.getSale_full_month())); |
|
|
|
row29.add(String.valueOf(v.getSale_subtotal_month())); |
|
|
|
row30.add(String.valueOf(v.getSale_loan_year())); |
|
|
|
row31.add(String.valueOf(v.getSale_full_year())); |
|
|
|
row32.add(String.valueOf(v.getSale_subtotal_year())); |
|
|
|
row33.add(String.valueOf(v.getDeliver_loan_day())); |
|
|
|
row34.add(String.valueOf(v.getDeliver_full_day())); |
|
|
|
row35.add(String.valueOf(v.getDeliver_subtotal_day())); |
|
|
|
row36.add(String.valueOf(v.getDeliver_loan_month())); |
|
|
|
row37.add(String.valueOf(v.getDeliver_full_month())); |
|
|
|
row38.add(String.valueOf(v.getDeliver_subtotal_month())); |
|
|
|
row39.add(String.valueOf(v.getDeliver_loan_year())); |
|
|
|
row40.add(String.valueOf(v.getDeliver_full_year())); |
|
|
|
row41.add(String.valueOf(v.getDeliver_subtotal_year())); |
|
|
|
row42.add(String.valueOf(v.getManufacturer_invoicing_year())); |
|
|
|
row43.add(String.valueOf(v.getBuyout_day())); |
|
|
|
row44.add(String.valueOf(v.getBuyout_month())); |
|
|
|
row45.add(String.valueOf(v.getBuyout_year())); |
|
|
|
row46.add(String.valueOf(v.getArrears_carry_veh_count())); |
|
|
|
row47.add(String.valueOf(v.getArrears_carry_veh_amount())); |
|
|
|
row48.add(String.valueOf(v.getLoan_not_count())); |
|
|
|
row49.add(String.valueOf(v.getLoan_not_amount())); |
|
|
|
row50.add(String.valueOf(v.getLoan_not_counts())); |
|
|
|
row51.add(String.valueOf(v.getLoan_not_amounts())); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
dailyReportAppVo.setRow2(row2); |
|
|
|
int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); |
|
|
|
int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); |
|
|
|
String saleOfStockRatioString = ""; |
|
|
|
if (saleAllToThreeAll == 0) { |
|
|
|
saleOfStockRatioString = stock_totalAll + ":1"; |
|
|
|
} else { |
|
|
|
saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; |
|
|
|
} |
|
|
|
row4.add(saleOfStockRatioString); |
|
|
|
dailyReportAppVo.setRow4(row4); |
|
|
|
|
|
|
|
//库存总计-合计
|
|
|
|
List<String> row5ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); |
|
|
|
BigDecimal row5All = row5ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row5.add(row5All.toString()); |
|
|
|
dailyReportAppVo.setRow5(row5); |
|
|
|
//库存未定-合计
|
|
|
|
List<String> row6ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row6All = row6ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row6.add(row6All.toString()); |
|
|
|
dailyReportAppVo.setRow6(row6); |
|
|
|
//库存-已定-合计
|
|
|
|
List<String> row7ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row7All = row7ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row7.add(row7All.toString()); |
|
|
|
dailyReportAppVo.setRow7(row7); |
|
|
|
//库存-小计-合计
|
|
|
|
List<String> row8ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); |
|
|
|
BigDecimal row8All = row8ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row8.add(row8All.toString()); |
|
|
|
dailyReportAppVo.setRow8(row8); |
|
|
|
//其中买断-未定
|
|
|
|
List<String> row9ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row9All = row9ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row9.add(row9All.toString()); |
|
|
|
dailyReportAppVo.setRow9(row9); |
|
|
|
//其中买断-已定
|
|
|
|
List<String> row10ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row10All = row10ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row10.add(row10All.toString()); |
|
|
|
dailyReportAppVo.setRow10(row10); |
|
|
|
//其中买断-小计
|
|
|
|
List<String> row11ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); |
|
|
|
BigDecimal row11All = row11ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row11.add(row11All.toString()); |
|
|
|
dailyReportAppVo.setRow11(row11); |
|
|
|
//排产-未定
|
|
|
|
List<String> row12ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row12All = row12ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row12.add(row12All.toString()); |
|
|
|
dailyReportAppVo.setRow12(row12); |
|
|
|
//排产-已定
|
|
|
|
List<String> row13ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); |
|
|
|
BigDecimal row13All = row13ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row13.add(row13All.toString()); |
|
|
|
dailyReportAppVo.setRow13(row13); |
|
|
|
//排产-小计
|
|
|
|
List<String> row14ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); |
|
|
|
BigDecimal row14All = row14ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row14.add(row14All.toString()); |
|
|
|
dailyReportAppVo.setRow14(row14); |
|
|
|
//订车-简易订单-本日
|
|
|
|
List<String> row15ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row15All = row15ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row15.add(row15All.toString()); |
|
|
|
dailyReportAppVo.setRow15(row15); |
|
|
|
//订车-简易订单-本月
|
|
|
|
List<String> row16ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row16All = row16ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row16.add(row16All.toString()); |
|
|
|
dailyReportAppVo.setRow16(row16); |
|
|
|
//订车-本日销售订单-贷款
|
|
|
|
List<String> row17ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row17All = row17ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row17.add(row17All.toString()); |
|
|
|
dailyReportAppVo.setRow17(row17); |
|
|
|
//订车-本日销售订单-全款
|
|
|
|
List<String> row18ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row18All = row18ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row18.add(row18All.toString()); |
|
|
|
dailyReportAppVo.setRow18(row18); |
|
|
|
//订车-本日销售订单-小计
|
|
|
|
List<String> row19ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row19All = row19ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row19.add(row19All.toString()); |
|
|
|
dailyReportAppVo.setRow19(row19); |
|
|
|
//订车-本月销售订单-贷款
|
|
|
|
List<String> row20ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row20All = row20ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row20.add(row20All.toString()); |
|
|
|
dailyReportAppVo.setRow20(row20); |
|
|
|
//订车-本月销售订单-全款
|
|
|
|
List<String> row21ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row21All = row21ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row21.add(row21All.toString()); |
|
|
|
dailyReportAppVo.setRow21(row21); |
|
|
|
//订车-本月销售订单-小计
|
|
|
|
List<String> row22ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row22All = row22ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row22.add(row22All.toString()); |
|
|
|
dailyReportAppVo.setRow22(row22); |
|
|
|
//订车-待交车累计总订单
|
|
|
|
List<String> row23ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); |
|
|
|
BigDecimal row23All = row23ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row23.add(row23All.toString()); |
|
|
|
dailyReportAppVo.setRow23(row23); |
|
|
|
//销售-本日销售-贷款
|
|
|
|
List<String> row24ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row24All = row24ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row24.add(row24All.toString()); |
|
|
|
dailyReportAppVo.setRow24(row24); |
|
|
|
//销售-本日销售-全款
|
|
|
|
List<String> row25ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row25All = row25ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row25.add(row25All.toString()); |
|
|
|
dailyReportAppVo.setRow25(row25); |
|
|
|
//销售-本日销售-小计
|
|
|
|
List<String> row26ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row26All = row26ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row26.add(row26All.toString()); |
|
|
|
dailyReportAppVo.setRow26(row26); |
|
|
|
//销售-本月销售-贷款
|
|
|
|
List<String> row27ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row27All = row27ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row27.add(row27All.toString()); |
|
|
|
dailyReportAppVo.setRow27(row27); |
|
|
|
//销售-本月销售-全款
|
|
|
|
List<String> row28ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row28All = row28ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row28.add(row28All.toString()); |
|
|
|
dailyReportAppVo.setRow28(row28); |
|
|
|
//销售-本月销售-小计
|
|
|
|
List<String> row29ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row29All = row29ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row29.add(row29All.toString()); |
|
|
|
dailyReportAppVo.setRow29(row29); |
|
|
|
//销售-全年销售-贷款
|
|
|
|
List<String> row30ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row30All = row30ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row30.add(row30All.toString()); |
|
|
|
dailyReportAppVo.setRow30(row30); |
|
|
|
//销售-全年销售-全款
|
|
|
|
List<String> row31ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row31All = row31ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row31.add(row31All.toString()); |
|
|
|
dailyReportAppVo.setRow31(row31); |
|
|
|
//销售-全年销售-小计
|
|
|
|
List<String> row32ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row32All = row32ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row32.add(row32All.toString()); |
|
|
|
dailyReportAppVo.setRow32(row32); |
|
|
|
//交付-本日交付-贷款
|
|
|
|
List<String> row33ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row33All = row33ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row33.add(row33All.toString()); |
|
|
|
dailyReportAppVo.setRow33(row33); |
|
|
|
//交付-本日交付-全款
|
|
|
|
List<String> row34ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row34All = row34ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row34.add(row34All.toString()); |
|
|
|
dailyReportAppVo.setRow34(row34); |
|
|
|
//交付-本日交付-小计
|
|
|
|
List<String> row35ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row35All = row35ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row35.add(row35All.toString()); |
|
|
|
dailyReportAppVo.setRow35(row35); |
|
|
|
//交付-本月交付-贷款
|
|
|
|
List<String> row36ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row36All = row36ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row36.add(row36All.toString()); |
|
|
|
dailyReportAppVo.setRow36(row36); |
|
|
|
//交付-本月交付-全款
|
|
|
|
List<String> row37ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row37All = row37ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row37.add(row37All.toString()); |
|
|
|
dailyReportAppVo.setRow37(row37); |
|
|
|
//交付-本月交付-小计
|
|
|
|
List<String> row38ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row38All = row38ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row38.add(row38All.toString()); |
|
|
|
dailyReportAppVo.setRow38(row38); |
|
|
|
//交付-全年交付-贷款
|
|
|
|
List<String> row39ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row39All = row39ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row39.add(row39All.toString()); |
|
|
|
dailyReportAppVo.setRow39(row39); |
|
|
|
//交付-全年交付-全款
|
|
|
|
List<String> row40ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row40All = row40ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row40.add(row40All.toString()); |
|
|
|
dailyReportAppVo.setRow40(row40); |
|
|
|
//交付-全年交付-小计
|
|
|
|
List<String> row41ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row41All = row41ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row41.add(row41All.toString()); |
|
|
|
dailyReportAppVo.setRow41(row41); |
|
|
|
//全年厂家开票数
|
|
|
|
List<String> row42ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row42All = row42ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row42.add(row42All.toString()); |
|
|
|
dailyReportAppVo.setRow42(row42); |
|
|
|
//买断-本日
|
|
|
|
List<String> row43ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); |
|
|
|
BigDecimal row43All = row43ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row43.add(row43All.toString()); |
|
|
|
dailyReportAppVo.setRow43(row43); |
|
|
|
//买断-本月
|
|
|
|
List<String> row44ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); |
|
|
|
BigDecimal row44All = row44ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row44.add(row44All.toString()); |
|
|
|
dailyReportAppVo.setRow44(row44); |
|
|
|
//买断-本年
|
|
|
|
List<String> row45ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); |
|
|
|
BigDecimal row45All = row45ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row45.add(row45All.toString()); |
|
|
|
dailyReportAppVo.setRow45(row45); |
|
|
|
//欠款出库数量
|
|
|
|
List<String> row46ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); |
|
|
|
BigDecimal row46All = row46ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row46.add(row46All.toString()); |
|
|
|
dailyReportAppVo.setRow46(row46); |
|
|
|
//欠款出库金额
|
|
|
|
List<String> row47ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); |
|
|
|
BigDecimal row47All = row47ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row47.add(row47All.toString()); |
|
|
|
dailyReportAppVo.setRow47(row47); |
|
|
|
//金融未放款-数量
|
|
|
|
List<String> row48ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); |
|
|
|
BigDecimal row48All = row48ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row48.add(row48All.toString()); |
|
|
|
dailyReportAppVo.setRow48(row48); |
|
|
|
//金融未放款-金额
|
|
|
|
List<String> row49ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); |
|
|
|
BigDecimal row49All = row49ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row49.add(row49All.toString()); |
|
|
|
dailyReportAppVo.setRow49(row49); |
|
|
|
|
|
|
|
//金融未放款-数量-已信审终审
|
|
|
|
List<String> row50ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); |
|
|
|
BigDecimal row50All = row50ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row50.add(row50All.toString()); |
|
|
|
dailyReportAppVo.setRow50(row50); |
|
|
|
//金融未放款-金额-已信审终审
|
|
|
|
List<String> row51ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); |
|
|
|
BigDecimal row51All = row51ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); |
|
|
|
row51.add(row51All.toString()); |
|
|
|
dailyReportAppVo.setRow51(row51); |
|
|
|
List<ParameterVo> dynamicRows = new ArrayList<>(); |
|
|
|
|
|
|
|
int totalRowspan = 3; |
|
|
|
if (!parameterVoList.isEmpty()) { |
|
|
|
for (int i = 0; i < parameterVoList.size(); i++) { |
|
|
|
DailyParameterVo dailyParameterVo = parameterVoList.get(i); |
|
|
|
String tableName = Arrays.asList(dailyParameterVo.getTableNameKey().split("\\.")).get(1); |
|
|
|
ParameterVo parameterVo = new ParameterVo(); |
|
|
|
parameterVo.setName(dailyParameterVo.getColText()); |
|
|
|
|
|
|
|
List<String> columnNames = dailyReportVoList.stream().map(v -> { |
|
|
|
String columnName = ""; |
|
|
|
try { |
|
|
|
Field field = v.getClass().getDeclaredField(dailyParameterVo.getColName()); |
|
|
|
field.setAccessible(true); |
|
|
|
columnName = (String) field.get(v); |
|
|
|
} catch (NoSuchFieldException | IllegalAccessException e) { |
|
|
|
e.printStackTrace(); |
|
|
|
} |
|
|
|
if (StringUtils.isBlank(columnName)) { |
|
|
|
return "-"; |
|
|
|
} else { |
|
|
|
return columnName; |
|
|
|
} |
|
|
|
}).collect(Collectors.toList()); |
|
|
|
parameterVo.setRow(columnNames); |
|
|
|
dynamicRows.add(parameterVo); |
|
|
|
} |
|
|
|
dailyReportAppVo.setDynamicRows(dynamicRows); |
|
|
|
if (!dynamicRows.isEmpty()) { |
|
|
|
for (int i = 0; i < dynamicRows.size(); i++) { |
|
|
|
if (i > 6) { |
|
|
|
break; |
|
|
|
} else { |
|
|
|
ParameterVo parameterVo = dynamicRows.get(i); |
|
|
|
switch (i) { |
|
|
|
case 0: |
|
|
|
if (parameterVo != null) { |
|
|
|
dailyReportAppVo.setRow101(parameterVo); |
|
|
|
totalRowspan = totalRowspan + 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 1: |
|
|
|
if (parameterVo != null) { |
|
|
|
dailyReportAppVo.setRow102(parameterVo); |
|
|
|
totalRowspan = totalRowspan + 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 2: |
|
|
|
if (parameterVo != null) { |
|
|
|
dailyReportAppVo.setRow103(parameterVo); |
|
|
|
totalRowspan = totalRowspan + 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 3: |
|
|
|
if (parameterVo != null) { |
|
|
|
dailyReportAppVo.setRow104(parameterVo); |
|
|
|
totalRowspan = totalRowspan + 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 4: |
|
|
|
if (parameterVo != null) { |
|
|
|
dailyReportAppVo.setRow105(parameterVo); |
|
|
|
totalRowspan = totalRowspan + 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 5: |
|
|
|
if (parameterVo != null) { |
|
|
|
dailyReportAppVo.setRow106(parameterVo); |
|
|
|
totalRowspan = totalRowspan + 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
case 6: |
|
|
|
if (parameterVo != null) { |
|
|
|
dailyReportAppVo.setRow107(parameterVo); |
|
|
|
totalRowspan = totalRowspan + 1; |
|
|
|
} |
|
|
|
break; |
|
|
|
default: |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
dailyReportAppVo.setTotalRowspan(totalRowspan); |
|
|
|
return rb.success().setData(dailyReportAppVo); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public QueryWrapper<DailyReport> getCommon(List<DailyParameterVo> parameterVoList, QueryWrapper<DailyReport> qw) { |
|
|
|
if (!parameterVoList.isEmpty()) { |
|
|
|