package com.by4cloud.platformx.business.controller; import com.by4cloud.platformx.business.dto.AnalysisCommonDTO; import com.by4cloud.platformx.business.entity.SalesMan; import com.by4cloud.platformx.business.service.StatisticService; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.common.log.annotation.SysLog; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.http.HttpHeaders; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * 统计模块 * * @author syt * @date 2026年5月22日 09:41:29 */ @RestController @RequiredArgsConstructor @RequestMapping("/statistic" ) @Tag(description = "statistic" , name = "统计模块" ) @SecurityRequirement(name = HttpHeaders.AUTHORIZATION) public class StatisticController { private final StatisticService statisticService; /** * 合同金额数据分析 * @return R */ @PostMapping("/contractAmountAnalysis") public R contractAmountAnalysis(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysis(commonDTO); } /** * 子公司合同金额数据分析 * @return R */ @PostMapping("/contractAmountAnalysisByComp") public R contractAmountAnalysisByComp(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysisByComp(commonDTO); } /** * 收入数据分析 * @return R */ @PostMapping("/contractIncomeAnalysis") public R contractIncomeAnalysis(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractIncomeAnalysis(commonDTO); } /** * 子公司收入数据分析 * @return R */ @PostMapping("/contractIncomeAnalysisByComp") public R contractIncomeAnalysisByComp(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractIncomeAnalysisByComp(commonDTO); } /** * 分区域合同金额统计 * @return R */ @PostMapping("/contractAmountAnalysisByArea") public R contractAmountAnalysisByArea(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysisByArea(commonDTO); } /** * 分行业合同金额统计 * @return R */ @PostMapping("/contractAmountAnalysisByIndustry") public R contractAmountAnalysisByIndustry(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysisByIndustry(commonDTO); } /** * 分市场合同金额统计 * @return R */ @PostMapping("/contractAmountAnalysisByMarket") public R contractAmountAnalysisByMarket(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysisByMarket(commonDTO); } /** * 分供应属性业务合同金额统计 * @return R */ @PostMapping("/contractAmountAnalysisBySpcBus") public R contractAmountAnalysisBySpcBus(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysisBySpcBus(commonDTO); } /** * 分出口业务合同金额统计 * @return R */ @PostMapping("/contractAmountAnalysisByExportBus") public R contractAmountAnalysisByExportBus(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysisByExportBus(commonDTO); } /** * 分销售模式合同金额统计 * @return R */ @PostMapping("/contractAmountAnalysisBySaleModel") public R contractAmountAnalysisBySaleModel(@RequestBody AnalysisCommonDTO commonDTO) { return statisticService.contractAmountAnalysisBySaleModel(commonDTO); } }