From 8b6616572a6c73c3ae25df1302880cd3817d17f7 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期三, 28 一月 2026 15:38:52 +0800
Subject: [PATCH] feat: 进销存大屏数据分析接口
---
src/main/java/com/ruoyi/home/controller/HomeController.java | 83 +++++++++++++++++++++++++++++++++++++++--
1 files changed, 78 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/ruoyi/home/controller/HomeController.java b/src/main/java/com/ruoyi/home/controller/HomeController.java
index edda887..82dc3b3 100644
--- a/src/main/java/com/ruoyi/home/controller/HomeController.java
+++ b/src/main/java/com/ruoyi/home/controller/HomeController.java
@@ -1,7 +1,5 @@
package com.ruoyi.home.controller;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.approve.pojo.ApproveProcess;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
@@ -9,9 +7,7 @@
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.home.dto.*;
import com.ruoyi.home.service.HomeService;
-import com.ruoyi.production.dto.ProductOrderDto;
-import com.ruoyi.production.dto.ProductWorkOrderDto;
-import com.ruoyi.production.dto.SalesLedgerWorkDto;
+import com.ruoyi.dto.MapDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@@ -59,6 +55,82 @@
return AjaxResult.success(count);
}
+ @GetMapping("/deptStaffDistribution")
+ @ApiOperation("鍚勯儴闂ㄤ汉鍛樺垎甯�")
+ public AjaxResult deptStaffDistribution() {
+ DeptStaffDistributionDto dto = homeService.deptStaffDistribution();
+ return AjaxResult.success(dto);
+ }
+
+ @GetMapping("/summaryStatistics")
+ @ApiOperation("鍛樺伐-瀹㈡埛-渚涘簲鍟嗘�绘暟")
+ public AjaxResult summaryStatistics() {
+ HomeSummaryDto homeSummaryDto = homeService.summaryStatistics();
+ return AjaxResult.success(homeSummaryDto);
+ }
+
+ @GetMapping("/supplierPurchaseRanking")
+ @ApiOperation("渚涘簲鍟嗛噰璐帓鍚�")
+ public AjaxResult supplierPurchaseRanking(@RequestParam(value = "type", defaultValue = "1") Integer type) {
+ List<SupplierPurchaseRankingDto> list = homeService.supplierPurchaseRanking(type);
+ return AjaxResult.success(list);
+ }
+
+ @GetMapping("/customerRevenueAnalysis")
+ @ApiOperation("瀹㈡埛钀ユ敹璐$尞鏁板�煎垎鏋�")
+ public AjaxResult customerRevenueAnalysis(@RequestParam("customerId") Long customerId, @RequestParam(value = "type", defaultValue = "1") Integer type) {
+ CustomerRevenueAnalysisDto dto = homeService.customerRevenueAnalysis(customerId, type);
+ return AjaxResult.success(dto);
+ }
+
+ @GetMapping("/productCategoryDistribution")
+ @ApiOperation("浜у搧澶х被鍒嗗竷")
+ public AjaxResult productCategoryDistribution() {
+ ProductCategoryDistributionDto dto = homeService.productCategoryDistribution();
+ return AjaxResult.success(dto);
+ }
+
+ @GetMapping("/customerContributionRanking")
+ @ApiOperation("瀹㈡埛閲戦璐$尞鎺掑悕")
+ public AjaxResult customerContributionRanking(@RequestParam(value = "type", defaultValue = "1") Integer type) {
+ List<CustomerContributionRankingDto> list = homeService.customerContributionRanking(type);
+ return AjaxResult.success(list);
+ }
+
+ @GetMapping("/productSalesAnalysis")
+ @ApiOperation("鍚勪骇鍝侀攢鍞噾棰濆垎鏋�")
+ public AjaxResult productSalesAnalysis() {
+ List<MapDto> list = homeService.productSalesAnalysis();
+ return AjaxResult.success(list);
+ }
+
+ @GetMapping("/rawMaterialPurchaseAmountRatio")
+ @ApiOperation("鍘熸潗鏂欓噰璐噾棰濆崰姣�")
+ public AjaxResult rawMaterialPurchaseAmountRatio(){
+ List<MapDto> list = homeService.rawMaterialPurchaseAmountRatio();
+ return AjaxResult.success(list);
+ }
+
+ @GetMapping("/salesPurchaseStorageProductCount")
+ @ApiOperation("閿�鍞�-閲囪喘-鍌ㄥ瓨浜у搧鏁�")
+ public AjaxResult salesPurchaseStorageProductCount(){
+ List<MapDto> list = homeService.salesPurchaseStorageProductCount();
+ return AjaxResult.success(list);
+ }
+
+ @GetMapping("/productInOutAnalysis")
+ @ApiOperation("浜у搧鍑哄叆搴撳垎鏋�")
+ public AjaxResult productInOutAnalysis(@RequestParam(value = "type", defaultValue = "1") Integer type){
+ List<Map<String, Object>> result = homeService.productInOutAnalysis(type);
+ return AjaxResult.success(result);
+ }
+
+ @GetMapping("/productTurnoverDays")
+ @ApiOperation("浜у搧鍛ㄨ浆澶╂暟")
+ public AjaxResult productTurnoverDays(){
+ List<MapDto> list = homeService.productTurnoverDays();
+ return AjaxResult.success(list);
+ }
/********************************************************钀ラ攢閲囪喘绫�**************************************************/
@GetMapping("/business")
@@ -94,6 +166,7 @@
}
+
/********************************************************璐ㄩ噺绫�*****************************************************/
@GetMapping("/qualityStatistics")
@Log(title = "璐ㄩ噺鍒嗘瀽", businessType = BusinessType.OTHER)
--
Gitblit v1.9.3