package com.ruoyi.staff.controller; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.staff.service.AnalyticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; @RestController @RequestMapping("/staff/analytics") @Api(tags = "员工分析") public class AnalyticsController { @Resource private AnalyticsService analyticsService; @ApiOperation("离职原因分析") @GetMapping("/reason") @Log(title = "离职原因分析", businessType = BusinessType.OTHER) public AjaxResult staffLeaveReasonAnalytics() { return AjaxResult.success(analyticsService.staffLeaveReasonAnalytics()); } @ApiOperation("12个月离职率分析") @GetMapping("/monthly_turnover_rate") @Log(title = "12个月离职率分析", businessType = BusinessType.OTHER) public AjaxResult getMonthlyTurnoverRateFor12Months() { return AjaxResult.success(analyticsService.getMonthlyTurnoverRateFor12Months()); } @ApiOperation("总统计分析") @GetMapping("/total_statistic") @Log(title = "总统计分析", businessType = BusinessType.OTHER) public AjaxResult getTotalStatistic() { return AjaxResult.success(analyticsService.getTotalStatistic()); } }