diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/domain/DevInfo.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/domain/DevInfo.java index 394e865..486af11 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/domain/DevInfo.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/domain/DevInfo.java @@ -63,9 +63,12 @@ public class DevInfo extends BaseEntity { @ApiModelProperty(value = "设备数量") private Integer deviceCount; - @ApiModelProperty(value = "比例范围") + @ApiModelProperty(value = "比率的范围,比如: x%-y%") private String ratioRange; + @ApiModelProperty(value = "比率,比如: 80%") + private double ratio; + @ApiModelProperty(value = "单位") @NotBlank(message = "单位不能为空") private String unitName; diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/mapper/DevInfoMapper.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/mapper/DevInfoMapper.java index 2bf35da..cffd44c 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/mapper/DevInfoMapper.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/device/mapper/DevInfoMapper.java @@ -213,5 +213,7 @@ public interface DevInfoMapper { int updateTotalDevLeaseDay(); List getIdleDevRatio(); + + List getLeaseCountByTypeName(); } diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/largeScreen/controller/LargeScreenController.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/largeScreen/controller/LargeScreenController.java index 8772404..ce0f093 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/largeScreen/controller/LargeScreenController.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/largeScreen/controller/LargeScreenController.java @@ -51,6 +51,19 @@ public class LargeScreenController { return AjaxResult.success(list); } + @ApiOperation("出租装备分类占比") + @GetMapping("/getLeaseCountByTypeName") + public AjaxResult getLeaseCountByTypeName() { + List list = devInfoMapper.getLeaseCountByTypeName(); + Integer total = list.stream().mapToInt(DevInfo::getDeviceCount).sum(); + list.forEach(item -> { + double ratio = total == 0 ? 0 : (double) item.getDeviceCount() / total; + double ratioPercent = ratio * 100; + item.setRatio(ratioPercent); + }); + return AjaxResult.success(list); + } + @ApiOperation("订单数据") @GetMapping("/orderData") diff --git a/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/device/DevInfoMapper.xml b/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/device/DevInfoMapper.xml index cdf7330..9163445 100644 --- a/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/device/DevInfoMapper.xml +++ b/bonus-modules/bonus-material-mall/src/main/resources/mapper/material/device/DevInfoMapper.xml @@ -990,4 +990,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY ratio_range + +