diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/index/contoller/IndexController.java b/jero-boot-incoming-payment/src/main/java/com/jero/index/contoller/IndexController.java index 1b272966..b54616b5 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/index/contoller/IndexController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/index/contoller/IndexController.java @@ -3,10 +3,7 @@ package com.jero.index.contoller; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.DictPoint; import com.jero.index.service.IndexService; -import com.jero.index.vo.HistogramVO; -import com.jero.index.vo.LineChartListVO; -import com.jero.index.vo.LineChartVO; -import com.jero.index.vo.PieChartVO; +import com.jero.index.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -99,4 +96,11 @@ public class IndexController { return Result.OK(histogramVOS); } + @ApiOperation(value = "未收账款统计") + @GetMapping(value = "/uncollected") + public Result> uncollected() { + List UncollectedPieChartVOS = indexService.uncollected(); + return Result.OK(UncollectedPieChartVOS); + } + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/index/service/IndexService.java b/jero-boot-incoming-payment/src/main/java/com/jero/index/service/IndexService.java index 37f6a209..eb20542a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/index/service/IndexService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/index/service/IndexService.java @@ -12,6 +12,7 @@ import com.jero.index.vo.*; import com.jero.project.mapper.PayWorkingGroupMapper; import com.jero.project.service.IPayWorkingGroupService; import com.jero.statistics.entity.*; +import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -265,4 +266,31 @@ public class IndexService { } return histogramVOList; } + + public List uncollected() { + List uncollectedPieChartVOList = new ArrayList<>(); + UncollectedPieChartVO uncollectedPieChartVO1 = setUncollectedPieChartVO("3月内", null, 90); + uncollectedPieChartVOList.add(uncollectedPieChartVO1); + UncollectedPieChartVO uncollectedPieChartVO2 = setUncollectedPieChartVO("3-6月内", 91, 180); + uncollectedPieChartVOList.add(uncollectedPieChartVO2); + UncollectedPieChartVO uncollectedPieChartVO3 = setUncollectedPieChartVO("6-12月内", 181, 360); + uncollectedPieChartVOList.add(uncollectedPieChartVO3); + UncollectedPieChartVO uncollectedPieChartVO4 = setUncollectedPieChartVO("一年以上", 361, null); + uncollectedPieChartVOList.add(uncollectedPieChartVO4); + return uncollectedPieChartVOList; + } + + private UncollectedPieChartVO setUncollectedPieChartVO(String name, Integer start, Integer end){ + BigDecimal bigDecimal = payWorkingGroupMapper.invoiceAmount(start, end); + BigDecimal bigDecimal1 = payWorkingGroupMapper.arrivalAmount(start, end); + UncollectedPieChartVO uncollectedPieChartVO = new UncollectedPieChartVO(); + uncollectedPieChartVO.setName(name); + if (bigDecimal.compareTo(bigDecimal1) > 0){ + BigDecimal subtract = bigDecimal.subtract(bigDecimal1); + uncollectedPieChartVO.setMoney(String.valueOf(subtract)); + }else { + uncollectedPieChartVO.setMoney("0"); + } + return uncollectedPieChartVO; + } } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/index/vo/UncollectedPieChartVO.java b/jero-boot-incoming-payment/src/main/java/com/jero/index/vo/UncollectedPieChartVO.java index 81f78875..78eba215 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/index/vo/UncollectedPieChartVO.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/index/vo/UncollectedPieChartVO.java @@ -11,8 +11,6 @@ import lombok.Data; public class UncollectedPieChartVO { @ApiModelProperty(value = "分类") private String name; - @ApiModelProperty(value = "值") - private String value; @ApiModelProperty(value = "金额") private String money; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java index 4afcfcf8..18500791 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayWorkingGroupMapper.java @@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.jero.statistics.entity.*; import org.apache.ibatis.annotations.Param; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -244,4 +245,8 @@ public interface PayWorkingGroupMapper extends BaseMapper { List cumulativeListBillMoney(); List cumulativeListComeAllMoney(); + + BigDecimal invoiceAmount(@Param("start") Integer start, @Param("end") Integer end); + + BigDecimal arrivalAmount(@Param("start") Integer start, @Param("end") Integer end); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml index 3c9fe29d..47a76bed 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayWorkingGroupMapper.xml @@ -2699,4 +2699,37 @@ from v_statistical v group by year + + + +