package jnpf.tmsController; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jnpf.base.ActionResult; import jnpf.tmsEntity.stats.TmsTrainStatsDetailVO; import jnpf.tmsEntity.stats.TmsTrainStatsQuery; import jnpf.tmsEntity.stats.TmsTrainStatsRowVO; import jnpf.tmsService.TmsTrainStatsService; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; 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; import jakarta.servlet.http.HttpServletResponse; import java.util.List; /** * 培训效果统计。网关 /api/tms/train-stats/** → /train-stats/** */ @Tag(name = "TMS培训效果统计", description = "TrainStats") @RestController @RequestMapping("/train-stats") @RequiredArgsConstructor public class TmsTrainStatsController { private final TmsTrainStatsService trainStatsService; @Operation(summary = "培训效果统计列表") @GetMapping("/list") public ActionResult> list(TmsTrainStatsQuery query) { return ActionResult.success(trainStatsService.list(query)); } @Operation(summary = "培训效果统计维度明细(场次清单)") @GetMapping("/detail") public ActionResult> detail(TmsTrainStatsQuery query) { return ActionResult.success(trainStatsService.detail(query)); } @Operation(summary = "导出培训效果统计") @PostMapping("/export") public void export(@RequestBody(required = false) TmsTrainStatsQuery query, HttpServletResponse response) { trainStatsService.exportExcel(query == null ? new TmsTrainStatsQuery() : query, response); } }