SaleTargetController.java 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package vip.xiaonuo.sale.controller;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
  5. import com.github.xiaoymin.knife4j.annotations.ApiSupport;
  6. import io.swagger.annotations.Api;
  7. import io.swagger.annotations.ApiOperation;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.validation.annotation.Validated;
  10. import org.springframework.web.bind.annotation.PostMapping;
  11. import org.springframework.web.bind.annotation.RequestBody;
  12. import org.springframework.web.bind.annotation.RequestMapping;
  13. import org.springframework.web.bind.annotation.RestController;
  14. import vip.xiaonuo.common.pojo.CommonResult;
  15. import vip.xiaonuo.sale.entity.SaleCost;
  16. import vip.xiaonuo.sale.entity.SaleTarget;
  17. import vip.xiaonuo.sale.entity.vo.SaleTargetDetailVo;
  18. import vip.xiaonuo.sale.entity.vo.SaleTargetVo;
  19. import vip.xiaonuo.sale.param.SaleCostParam;
  20. import vip.xiaonuo.sale.param.SaleCustomerParam;
  21. import vip.xiaonuo.sale.param.SaleDetailPageParam;
  22. import vip.xiaonuo.sale.param.SaleParam;
  23. import vip.xiaonuo.sale.service.ISaleTargetService;
  24. import java.util.List;
  25. /**
  26. * <p>
  27. * 销售指标 前端控制器
  28. * </p>
  29. *
  30. * @author author
  31. * @since 2024-12-13
  32. */
  33. @RestController
  34. @Api(tags = "销售指标")
  35. @ApiSupport(author = "wang", order = 1)
  36. @Validated
  37. public class SaleTargetController {
  38. @Autowired
  39. private ISaleTargetService targetService;
  40. @PostMapping("/sale-target/getList")
  41. @ApiOperationSupport(order = 1)
  42. @ApiOperation("销售指标ka")
  43. public CommonResult<JSONArray> getList(@RequestBody SaleParam saleParam) {
  44. return CommonResult.data(targetService.getTarget(saleParam));
  45. }
  46. @PostMapping("/sale-target/getTargetScreen")
  47. @ApiOperationSupport(order = 2)
  48. @ApiOperation("大屏销售指标")
  49. public CommonResult<SaleTargetVo> getTargetScreen(@RequestBody SaleParam saleParam) {
  50. return CommonResult.data(targetService.getTargetScreen(saleParam));
  51. }
  52. @PostMapping("/sale-target/getCompleteDetail")
  53. @ApiOperationSupport(order = 3)
  54. @ApiOperation("大屏销售计划完成率详情")
  55. public CommonResult<List<SaleTargetDetailVo>> getCompleteDetail(@RequestBody SaleParam saleParam) {
  56. return CommonResult.data(targetService.getCompleteDetail(saleParam));
  57. }
  58. @PostMapping("/sale-target/getVisitNumDetail")
  59. @ApiOperationSupport(order = 4)
  60. @ApiOperation("大屏客户拜访次数详情")
  61. public CommonResult<List<SaleTargetDetailVo>> getVisitNumDetail(@RequestBody SaleParam saleParam) {
  62. return CommonResult.data(targetService.getVisitNumDetail(saleParam));
  63. }
  64. @PostMapping("/sale-target/getSaleMoneyDetail")
  65. @ApiOperationSupport(order = 5)
  66. @ApiOperation("大屏销售合同金额详情")
  67. public CommonResult<List<SaleTargetDetailVo>> getSaleMoneyDetail(@RequestBody SaleParam saleParam) {
  68. return CommonResult.data(targetService.getSaleMoneyDetail(saleParam));
  69. }
  70. @PostMapping("/sale-target/listTop")
  71. @ApiOperationSupport(order = 6)
  72. @ApiOperation("大屏客户拜访top10,包含全部")
  73. public CommonResult<Page<SaleTarget>> listTop(@RequestBody SaleDetailPageParam customerParam) {
  74. return CommonResult.data(targetService.listTop(customerParam));
  75. }
  76. }