package com.ruoyi.web.controller.system;
|
|
import cn.hutool.core.util.ObjectUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.im.comm.Result;
|
import com.ruoyi.im.service.UserPolicyService;
|
import com.ruoyi.im.service.impl.InsurancePositionServiceImpl;
|
import com.ruoyi.im.util.UserPolicyUtils;
|
import com.ruoyi.system.domain.InsurancePosition;
|
import com.ruoyi.system.domain.UserAccount;
|
import com.ruoyi.system.domain.UserPolicy;
|
import com.ruoyi.system.domain.dto.SubordinateInformationDto;
|
import com.ruoyi.system.domain.out.HomePageStatisticsOut;
|
import com.ruoyi.system.domain.out.UserTeamAndPositionOut;
|
import com.ruoyi.system.service.UserAccountService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.util.CollectionUtils;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
/**
|
* @program: ruoyiim
|
* @description:首页统计
|
* @create: 2025-10-13 17:21
|
**/
|
@RestController
|
@RequestMapping("/system/home")
|
public class HomePageStatisticsController {
|
|
@Autowired
|
UserAccountService userAccountService;
|
|
@Autowired
|
InsurancePositionServiceImpl insurancePositionService;
|
|
@Autowired
|
UserPolicyService userPolicyService;
|
|
/**
|
* 首页统计
|
*/
|
@GetMapping("/getStatistics")
|
public AjaxResult getUserTeamAndPosition() {
|
HomePageStatisticsOut statisticsOut = new HomePageStatisticsOut();
|
|
// 今日注册
|
LambdaQueryWrapper<UserAccount> todayWrapper = new LambdaQueryWrapper<>();
|
todayWrapper.apply("DATE(create_time) = CURDATE()");
|
statisticsOut.setTodayRegister(userAccountService.count(todayWrapper));
|
|
// 总注册
|
statisticsOut.setTotalRegister(userAccountService.count());
|
|
// 今日激活
|
LambdaQueryWrapper<UserPolicy> userPolicyTodayWrapper = new LambdaQueryWrapper<>();
|
userPolicyTodayWrapper.eq(UserPolicy::getApprovalStatus, 1)
|
.apply("DATE(created_at) = CURDATE()");
|
statisticsOut.setTodayActivate(userPolicyService.count(userPolicyTodayWrapper));
|
|
// 总激活
|
LambdaQueryWrapper<UserPolicy> userPolicyTotalWrapper = new LambdaQueryWrapper<>();
|
userPolicyTotalWrapper.eq(UserPolicy::getApprovalStatus, 1);
|
statisticsOut.setTotalActivate(userPolicyService.count(userPolicyTotalWrapper));
|
|
return AjaxResult.success(statisticsOut);
|
}
|
|
}
|