|
|
@@ -89,15 +89,44 @@ public class IotRepairController {
|
|
|
pageReqVO.setType("out");
|
|
|
hbOutFee = iotMaintainMapper.getMaintainFee(pageReqVO);
|
|
|
|
|
|
+ workOrderReqVO.setDeptIds(ids);
|
|
|
+ workOrderReqVO.setCreateTime(createTime);
|
|
|
+ List<IotMainWorkOrderDO> tbWorkOrders = iotMainWorkOrderService.workOrders(workOrderReqVO);
|
|
|
+ tbByFee = tbWorkOrders.stream()
|
|
|
+ .map(IotMainWorkOrderDO::getCost)
|
|
|
+ .map(fee -> Objects.isNull(fee) ? BigDecimal.ZERO : fee)
|
|
|
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+
|
|
|
BigDecimal tbTotalFee = new BigDecimal("0");
|
|
|
BigDecimal tbOutFee = new BigDecimal("0");
|
|
|
//获取同比
|
|
|
if ("year".equals(pageReqVO.getTimeType())){
|
|
|
tbTotalFee = hbTotalFee==null?BigDecimal.ZERO:hbTotalFee;
|
|
|
tbOutFee = hbOutFee==null?BigDecimal.ZERO:hbOutFee;
|
|
|
- // 保养 年 无同比环比数据
|
|
|
- hbByFee = hbByFee==null?BigDecimal.ZERO:hbByFee;
|
|
|
- } else if ("month".equals(pageReqVO.getTimeType())){
|
|
|
+ // 环比 当年所有数据 与 去年所有数据 比较
|
|
|
+ int currentYear = startTime.getYear();
|
|
|
+ int lastYear = currentYear - 1;
|
|
|
+ workOrderReqVO.setDeptIds(ids);
|
|
|
+ workOrderReqVO.setCreateTime(null);
|
|
|
+ // 查询当前所选时间年份的数据
|
|
|
+ workOrderReqVO.setYear(currentYear);
|
|
|
+ List<IotMainWorkOrderDO> hbCurrentWorkOrders = iotMainWorkOrderService.workOrders(workOrderReqVO);
|
|
|
+ byFee = hbCurrentWorkOrders.stream()
|
|
|
+ .map(IotMainWorkOrderDO::getCost)
|
|
|
+ .map(fee -> Objects.isNull(fee) ? BigDecimal.ZERO : fee)
|
|
|
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+
|
|
|
+ // 查询当前所选时间年份上一年的保养数据
|
|
|
+ workOrderReqVO.setYear(lastYear);
|
|
|
+ List<IotMainWorkOrderDO> hbLastWorkOrders = iotMainWorkOrderService.workOrders(workOrderReqVO);
|
|
|
+ hbByFee = hbLastWorkOrders.stream()
|
|
|
+ .map(IotMainWorkOrderDO::getCost)
|
|
|
+ .map(fee -> Objects.isNull(fee) ? BigDecimal.ZERO : fee)
|
|
|
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+ // 按照年的同比数据 比较整年数据
|
|
|
+ tbByFee = hbByFee;
|
|
|
+
|
|
|
+ } else if ("month".equals(pageReqVO.getTimeType())) {
|
|
|
LocalDateTime lastMonthStart = startTime.minusMonths(1);
|
|
|
LocalDateTime lastMonthEnd = endTime.minusMonths(1);
|
|
|
LocalDateTime[] monthTime = pageReqVO.getCreateTime();
|
|
|
@@ -115,7 +144,7 @@ public class IotRepairController {
|
|
|
.map(IotMainWorkOrderDO::getCost)
|
|
|
.map(fee -> Objects.isNull(fee) ? BigDecimal.ZERO : fee)
|
|
|
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
- } else if ("day".equals(pageReqVO.getTimeType())){
|
|
|
+ } else if ("day".equals(pageReqVO.getTimeType())) {
|
|
|
LocalDateTime lastDayStart = startTime.minusDays(1);
|
|
|
LocalDateTime lastDayEnd = endTime.minusDays(1);
|
|
|
LocalDateTime[] dayTime = pageReqVO.getCreateTime();
|