longz
2026-07-02 6b9df2b72f776578c3b4f6217e9288d8989439d2
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java
@@ -19,6 +19,7 @@
import com.dsh.course.feignClient.other.SiteClient;
import com.dsh.course.feignClient.other.StoreClient;
import com.dsh.course.feignClient.other.model.GameDataQuery;
import com.dsh.course.feignClient.other.model.Site;
import com.dsh.course.feignClient.other.model.TGameRecord;
import com.dsh.course.model.MoneyBack;
import com.dsh.guns.config.UserExt;
@@ -52,47 +53,71 @@
@RequestMapping("/data")
public class DataStatisticsController extends BaseController {
    private String PREFIX = "/system/dataStatistics/";
    private Integer resolveOperatorId(Integer operatorId) {
        Integer objectType = UserExt.getUser().getObjectType();
        if (Integer.valueOf(2).equals(objectType)) {
            return UserExt.getUser().getObjectId();
        }
        return operatorId;
    }
    private Integer resolveStoreId(Integer storeId) {
        Integer objectType = UserExt.getUser().getObjectType();
        if (Integer.valueOf(3).equals(objectType)) {
            return UserExt.getUser().getObjectId();
        }
        if (!Integer.valueOf(2).equals(objectType) || storeId == null) {
            return storeId;
        }
        TStore store = storeService.getById(storeId);
        if (store != null && UserExt.getUser().getObjectId().equals(store.getOperatorId())) {
            return storeId;
        }
        return null;
    }
    @Autowired
    private ICityService cityService;
    @Autowired
    @Resource
    private CityManagerClient cityManagerClient;
    @Autowired
    private IUserService sysUserService;
    @Autowired
    @Resource
    private AppUserClient appUserClient;
    @Autowired
    @Resource
    private CourseClient courseClient;
    @Autowired
    private IStoreService storeService;
    @Autowired
    @Resource
    private VipPaymentClient vipPaymentClient;
    @Autowired
    @Resource
    private FinanceClient financeClient;
    @Autowired
    @Resource
    private CoursePackagePaymentClient coursePackagePaymentClient;
    @Autowired
    @Resource
    private CompetitionClient competitionClient;
    @Autowired
    private ISiteBookingService siteBookingService;
    @Autowired
    @Resource
    private StoreClient storeClient;
    @Autowired
    @Resource
    private SiteClient siteClient;
    @Autowired
    @Resource
    private PointMercharsClient pointMercharsClient;
    @Autowired
    @Resource
    private RefundCoursePackageClient refundCoursePackageClient;
    @Resource
    private CourseStuddentClient courseStuddentClient;
    @Autowired
    @Resource
    private CoursePackageClient coursePackageClient;
    @Autowired
    private TOperatorService operatorService;
    @Autowired
    @Resource
    private BallClient ballClient;
    /**
     * 跳转到平台统计数据页面
@@ -114,6 +139,19 @@
    @RequestMapping(value = "/getIncomeData")
    @ResponseBody
    public Object getIncomeData(Integer operatorId,Integer storeId) {
//        operatorId = resolveOperatorId(operatorId);
//        storeId = resolveStoreId(operatorId);
        Integer objectId = UserExt.getUser().getObjectId();
        List<Integer> cityManagerId= new ArrayList<>();
        if(objectId>0){
            operatorId=objectId;
            if(storeId==null){
                cityManagerId= storeService.list(new QueryWrapper<TStore>().eq("cityManagerId", objectId)).stream().map(TStore::getId).collect(Collectors.toList());
            }else {
                cityManagerId.add(storeId);
            }
        }
        // 报名课程查询query
        RegisterOrderQuery query = new RegisterOrderQuery();
        // 充值记录查询query
@@ -140,7 +178,11 @@
            }
        }else {
            List<Integer> list = new ArrayList<>();
            list.add(storeId);
            query.setStoresIds(list);
            siteBookingQuery.setStoreIds(list);
            competitionQuery.setStoreId(storeId);
@@ -234,7 +276,16 @@
        }
        // 积分商品
        List<PointMerchandiseIncomeVo> amount = pointMercharsClient.getAmount();
        List<Integer> pointMerchandiseStoreIds = Collections.emptyList();
        if (storeId != null) {
            pointMerchandiseStoreIds = Collections.singletonList(storeId);
        } else if (operatorId != null) {
            pointMerchandiseStoreIds = storeIds;
            if (pointMerchandiseStoreIds.size() == 0) {
                pointMerchandiseStoreIds = Collections.singletonList(-1);
            }
        }
        List<PointMerchandiseIncomeVo> amount = pointMercharsClient.getAmount(pointMerchandiseStoreIds);
        for (PointMerchandiseIncomeVo pointMerchandiseIncomeVo : amount) {
            IncomeVO temp = new IncomeVO();
            if (pointMerchandiseIncomeVo==null) continue;
@@ -652,6 +703,7 @@
    @RequestMapping(value = "/backYys")
    @ResponseBody
    public Object backYys(Integer id) {
        id = resolveOperatorId(id);
        HashMap<String, Object> map = new HashMap<>();
        List<Integer> userPt = appUserClient.getUserYYs(id);
        if(userPt.size()==0){
@@ -756,21 +808,28 @@
    @RequestMapping(value = "/backStore")
    @ResponseBody
    public Object backStore(Integer id) {
        if(UserExt.getUser().getObjectType()==3){
            id = UserExt.getUser().getObjectId();
        }
        id = resolveStoreId(id);
        List<Integer> collect1 = Arrays.asList(id == null ? -1 : id);
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = new HashMap<>();
        List<Integer> userPt = appUserClient.getUserStore(id);
        if(userPt.size()==0){
            userPt.add(-1);
        }
        ArrayList<Object> integers = new ArrayList<>();
        int year = DateUtil.year(new Date());
        List<TBackRecord> thisYear = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, year).in(TBackRecord::getUserId,userPt));
        List<TBackRecord> thisYear = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, year).in(TBackRecord::getUserId,list));
        double sum5 = thisYear.stream().mapToDouble(TBackRecord::getMoney).sum();
        map.put("thisYear",sum5);
        List<TBackRecord> thisMonth = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, new SimpleDateFormat("yyyy-MM").format(new Date())).in(TBackRecord::getUserId,userPt));
        List<TBackRecord> thisMonth = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, new SimpleDateFormat("yyyy-MM").format(new Date())).in(TBackRecord::getUserId,list));
        double sum6= thisMonth.stream().mapToDouble(TBackRecord::getMoney).sum();
        map.put("thisMonth",sum6);
@@ -779,14 +838,14 @@
        for (int i = 0; i < 10; i++) {
            integers.add(year-i);
        }
        List<Object> collect = integers.stream().sorted().collect(Collectors.toList());
        List<Object> collectw = integers.stream().sorted().collect(Collectors.toList());
        // 年
        ArrayList<Double> years = new ArrayList<>();
        for (Object o : collect) {
        for (Object o : collectw) {
            double sum=0.0;
            String s = o.toString();
            List<TBackRecord> list = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, s).in(TBackRecord::getUserId,userPt));
            sum = list.stream().mapToDouble(TBackRecord::getMoney).sum();
            List<TBackRecord> lists = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, s).in(TBackRecord::getUserId,list));
            sum = lists.stream().mapToDouble(TBackRecord::getMoney).sum();
            years.add(sum);
        }
        ArrayList<Double> months = new ArrayList<>();
@@ -798,8 +857,8 @@
                m="0"+i;
            }
            String s = year + "-" + m;
            List<TBackRecord> list = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, s).in(TBackRecord::getUserId,userPt));
            sum = list.stream().mapToDouble(TBackRecord::getMoney).sum();
            List<TBackRecord> lists = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().like(TBackRecord::getTime, s).in(TBackRecord::getUserId,list));
            sum = lists.stream().mapToDouble(TBackRecord::getMoney).sum();
            months.add(sum);
        }
@@ -820,14 +879,14 @@
        String s7 = minNow.minusDays(27).toString();
        String s8 = maxNow.minusDays(20).toString();
        List<TBackRecord> list = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s7,s8).in(TBackRecord::getUserId,userPt));
        double sum = list.stream().mapToDouble(TBackRecord::getMoney).sum();
        List<TBackRecord> lists = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s7,s8).in(TBackRecord::getUserId,list));
        double sum = lists.stream().mapToDouble(TBackRecord::getMoney).sum();
        List<TBackRecord> list1 = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s5,s6).in(TBackRecord::getUserId,userPt));
        double sum1 = list1.stream().mapToDouble(TBackRecord::getMoney).sum();
        List<TBackRecord> list2 = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s3,s4).in(TBackRecord::getUserId,userPt));
        double sum2 = list2.stream().mapToDouble(TBackRecord::getMoney).sum();
        List<TBackRecord> list3 = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s1,s2).in(TBackRecord::getUserId,userPt));
        List<TBackRecord> lists1 = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s5,s6).in(TBackRecord::getUserId,list));
        double sum1 = lists1.stream().mapToDouble(TBackRecord::getMoney).sum();
        List<TBackRecord> lists2 = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s3,s4).in(TBackRecord::getUserId,list));
        double sum2 = lists2.stream().mapToDouble(TBackRecord::getMoney).sum();
        List<TBackRecord> list3 = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s1,s2).in(TBackRecord::getUserId,list));
        double sum3 = list3.stream().mapToDouble(TBackRecord::getMoney).sum();
        map.put("thisWeek",sum3);
@@ -844,7 +903,7 @@
        for (int i = 6; i >= 0; i--) {
            String s = minNow.minusDays(i).toString();
            String s9 = maxNow.minusDays(i).toString();
            List<TBackRecord> day = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s,s9).in(TBackRecord::getUserId,userPt));
            List<TBackRecord> day = backRecordService.list(new LambdaQueryWrapper<TBackRecord>().between(TBackRecord::getTime, s,s9).in(TBackRecord::getUserId,list));
            double sum4 = day.stream().mapToDouble(TBackRecord::getMoney).sum();
            days.add(sum4);
            if(i==0){
@@ -879,13 +938,40 @@
    @RequestMapping(value = "/stuYys")
    @ResponseBody
    public Object stuYys(Integer id) {
        HashMap<String, Object> map = appUserClient.stuYys(id);
        id = resolveOperatorId(id);
        List<TStore> list4 = storeService.list(new QueryWrapper<TStore>().eq("operatorId", id).eq("state", 1));
        List<Integer> collect1 = list4.stream().map(TStore::getId).collect(Collectors.toList());
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = appUserClient.stuYys(list);
        return map;
    }
    @RequestMapping(value = "/stuStores")
    @ResponseBody
    public Object stuStores(Integer id) {
        HashMap<String, Object> map = appUserClient.stuStores(id);
        id = resolveStoreId(id);
        List<Integer> collect1 = Arrays.asList(id == null ? -1 : id);
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = appUserClient.stuStores(list);
        return map;
    }
@@ -901,6 +987,7 @@
    @RequestMapping(value = "/courseYys")
    @ResponseBody
    public Object courseYys(Integer id) {
        id = resolveOperatorId(id);
        List<Integer> userPt = appUserClient.getUserYYs(id);
        HashMap<String, Object> map = coursePackagePaymentClient.coursePt(userPt);
        return map;
@@ -909,7 +996,8 @@
    @RequestMapping(value = "/courseStore")
    @ResponseBody
    public Object courseStore(Integer id) {
        List<Integer> userPt = appUserClient.getUserPt(Arrays.asList(id));
        id = resolveStoreId(id);
        List<Integer> userPt = appUserClient.getUserPt(Arrays.asList(id == null ? -1 : id));
        HashMap<String, Object> map = coursePackagePaymentClient.coursePt(userPt);
        return map;
    }
@@ -917,16 +1005,40 @@
    @RequestMapping(value = "/userAndVipYys")
    @ResponseBody
    public Object userAndVipYys(Integer id) {
        HashMap<String, Object> map = appUserClient.userAndVipYys(id);
        id = resolveOperatorId(id);
        List<TStore> list4 = storeService.list(new QueryWrapper<TStore>().eq("operatorId", id).eq("state", 1));
        List<Integer> collect1 = list4.stream().map(TStore::getId).collect(Collectors.toList());
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = appUserClient.userAndVipYys(list);
        return map;
    }
    @RequestMapping(value = "/userAndVipStore")
    @ResponseBody
    public Object userAndVipStore(Integer id) {
        if(UserExt.getUser().getObjectType()==3){
            id = UserExt.getUser().getObjectId();
        }
        HashMap<String, Object> map = appUserClient.userAndVipStore(id);
        id = resolveStoreId(id);
        List<Integer> collect1 = Arrays.asList(id == null ? -1 : id);
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = appUserClient.userAndVipStore(list);
        return map;
    }
    @RequestMapping(value = "/actPt")
@@ -959,16 +1071,30 @@
    @RequestMapping(value = "/actYys")
    @ResponseBody
    public Object actYys(Integer id) {
        id = resolveOperatorId(id);
        CompetionVO competionVO = new CompetionVO();
        List<TStore> list4 = storeService.list(new QueryWrapper<TStore>().eq("operatorId", id).eq("state", 1));
        List<Integer> collect1 = list4.stream().map(TStore::getId).collect(Collectors.toList());
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        List<Integer> userPt = appUserClient.getUserYYs(id);
        competionVO.setIds(userPt);
        competionVO.setIds(list2);
        competionVO.setOperatorId(id);
        competionVO.setStoreIds(collect1);
        HashMap<String, Object> map = competitionClient.actYys(competionVO);
        List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getOperatorId, id));
        List<TStore> lists = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getOperatorId, id));
        long l1=0;
        for (TStore tStore : list) {
        for (TStore tStore : lists) {
            long l = DateUtil.betweenDay(tStore.getCreateTime(), new Date(), true);
            String startTime = tStore.getStartTime();
            String endTime = tStore.getEndTime();
@@ -990,18 +1116,24 @@
    @RequestMapping(value = "/actStore")
    @ResponseBody
    public Object actStore(Integer id) {
        id = resolveStoreId(id);
        List<Integer> collect1 = Arrays.asList(id == null ? -1 : id);
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = competitionClient.actPt(list);
        Integer objectType = UserExt.getUser().getObjectType();
        if(objectType==3){
            id = UserExt.getUser().getObjectId();
        }
        List<Integer> userPt = appUserClient.getUserStore(id);
        HashMap<String, Object> map = competitionClient.actPt(userPt);
        List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getOperatorId, 0));
        List<TStore> lists = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getOperatorId, 0));
        long l1=0;
        for (TStore tStore : list) {
        for (TStore tStore : lists) {
            long l = DateUtil.betweenDay(tStore.getCreateTime(), new Date(), true);
            String startTime = tStore.getStartTime();
            String endTime = tStore.getEndTime();
@@ -1046,20 +1178,15 @@
    @ResponseBody
    @RequestMapping("/selectYys")
    public Object selectYys(Integer id,String time) {
        id = resolveOperatorId(id);
        HashMap<String, Object> map = new HashMap<>();
        // 找出平台的用户
        List<User> list = sysUserService.list(new LambdaQueryWrapper<User>().eq(User::getObjectType, 2));
        List<Integer> ids = list.stream().map(User::getId).collect(Collectors.toList());
        List<Integer> userIds = appUserClient.getUserYYs(id);
        QueryDataFee queryDataFee = new QueryDataFee(time, userIds);
        // 会员费
        HashMap<String, Object> map1 = appUserClient.queryFee(queryDataFee);
        Object fee1 = map1.get("fee1");
        map.put("fee1",fee1);
        //玩湃比
        Object fee2 = map1.get("fee2");
        map.put("fee2",fee2);
//        List<User> list = sysUserService.list(new LambdaQueryWrapper<User>().eq(User::getObjectType, 2));
//        List<Integer> ids = list.stream().map(User::getId).collect(Collectors.toList());
//        List<Integer> userIds = appUserClient.getUserYYs(id);
        List<TStore> list4 = storeService.list(new QueryWrapper<TStore>().eq("operatorId", id).eq("state", 1));
        List<Integer> collect1 = list4.stream().map(TStore::getId).collect(Collectors.toList());
        QueryDataFee queryDataFee = new QueryDataFee(time, collect1);
        // 课程收入
        HashMap<String, Object> map3 = courseClient.queryFee(queryDataFee);
        map.put("fee3",map3.get("fee"));
@@ -1072,8 +1199,15 @@
        map.put("fee4",aDouble1);
        // 订场
        if(ids.size()==0){
        List<Integer> ids = new ArrayList<>();
        if(collect1.size()==0){
            ids.add(-1);
        }else{
            List<TSite> list = siteService.list(new QueryWrapper<TSite>().in("storeId", collect1).eq("state", 1));
            ids = list.stream().map(TSite::getId).collect(Collectors.toList());
            if(collect1.size()==0){
                ids.add(-1);
            }
        }
        LambdaQueryWrapper<SiteBooking> vipPaymentLambdaQueryWrapper = new LambdaQueryWrapper<>();
        if(ToolUtil.isNotEmpty(time)){
@@ -1081,10 +1215,7 @@
            String etime = time.split(" - ")[1]+" 23:59:59";
            vipPaymentLambdaQueryWrapper.between(SiteBooking::getInsertTime,stime,etime);
        }
        if(userIds.size()==0){
            userIds.add(-1);
        }
        vipPaymentLambdaQueryWrapper.in(SiteBooking::getAppUserId,userIds);
        vipPaymentLambdaQueryWrapper.in(SiteBooking::getSiteId,ids);
        vipPaymentLambdaQueryWrapper.ne(SiteBooking::getStatus,0);
        ArrayList<Integer> objects = new ArrayList<>();
        objects.add(1);
@@ -1155,15 +1286,20 @@
    @RequestMapping("/selectStore")
    public Object selectStore(Integer id,String time) {
        HashMap<String, Object> map = new HashMap<>();
        // 找出平台的用户
        List<User> list = sysUserService.list(new LambdaQueryWrapper<User>().eq(User::getObjectType, 2));
        List<Integer> ids = list.stream().map(User::getId).collect(Collectors.toList());
        Integer objectType = UserExt.getUser().getObjectType();
        if(objectType==3){
            id = UserExt.getUser().getObjectId();
        }
        List<Integer> userIds = appUserClient.getUserStore(id);
        QueryDataFee queryDataFee = new QueryDataFee(time, userIds);
        id = resolveStoreId(id);
        List<Integer> collect1 = Arrays.asList(id == null ? -1 : id);
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        QueryDataFee queryDataFee = new QueryDataFee(time, list);
        // 会员费
        HashMap<String, Object> map1 = appUserClient.queryFee(queryDataFee);
        Object fee1 = map1.get("fee1");
@@ -1184,34 +1320,28 @@
        map.put("fee4",aDouble1);
        // 订场
        if(ids.size()==0){
            ids.add(-1);
        }
        LambdaQueryWrapper<SiteBooking> vipPaymentLambdaQueryWrapper = new LambdaQueryWrapper<>();
        if(ToolUtil.isNotEmpty(time)){
            String stime = time.split(" - ")[0]+" 00:00:00";
            String etime = time.split(" - ")[1]+" 23:59:59";
            vipPaymentLambdaQueryWrapper.between(SiteBooking::getInsertTime,stime,etime);
        }
        if(userIds.size()==0){
            userIds.add(-1);
        }
        vipPaymentLambdaQueryWrapper.in(SiteBooking::getAppUserId,userIds);
        vipPaymentLambdaQueryWrapper.in(SiteBooking::getAppUserId,list);
        vipPaymentLambdaQueryWrapper.ne(SiteBooking::getStatus,0);
        ArrayList<Integer> objects = new ArrayList<>();
        objects.add(1);
        objects.add(2);
        vipPaymentLambdaQueryWrapper.in(SiteBooking::getPayType,objects);
        List<SiteBooking> list1 = siteBookingService.list(vipPaymentLambdaQueryWrapper);
        double sum = list1.stream().mapToDouble(SiteBooking::getPayMoney).sum();
        List<SiteBooking> lists1 = siteBookingService.list(vipPaymentLambdaQueryWrapper);
        double sum = lists1.stream().mapToDouble(SiteBooking::getPayMoney).sum();
        map.put("fee5",sum);
        List<Integer> collect = list1.stream().map(SiteBooking::getSiteId).collect(Collectors.toList());
        if(collect.size()==0){
        List<Integer> collects = list1.stream().map(SiteBooking::getSiteId).collect(Collectors.toList());
        if(collects.size()==0){
            collect.add(-1);
        }
        List<TSite> list3 = siteService.list(new LambdaQueryWrapper<TSite>().in(TSite::getId, collect));
        List<TSite> list3 = siteService.list(new LambdaQueryWrapper<TSite>().in(TSite::getId, collects));
        for (SiteBooking siteBooking : list1) {
            for (TSite tSite : list3) {
                if(siteBooking.getSiteId().equals(tSite.getId())){
@@ -1221,16 +1351,16 @@
        }
        List<TSiteType> list2 = siteTypeService.list();
        List<TSiteType> lists2 = siteTypeService.list();
        List<Map<String,Object>> mapList = new ArrayList<>();
        for (TSiteType tSiteType : list2) {
        for (TSiteType tSiteType : lists2) {
            HashMap<String, Object> map2 = new HashMap<>();
            map2.put("name",tSiteType.getName());
            double a =0;
            for (SiteBooking siteBooking : list1) {
                if(tSiteType.getId().equals(siteBooking.getType())){
                if(null != siteBooking.getType() && tSiteType.getId().equals(siteBooking.getType()) && null != siteBooking.getPayMoney()){
                    a += siteBooking.getPayMoney();
                }
            }
@@ -1428,36 +1558,62 @@
    @RequestMapping("/stuUserDataYys")
    @ResponseBody
    public Object stuUserDataYys(Integer id) {
        ArrayList<Integer> objects = new ArrayList<>();
        objects.add(1);
        HashMap<String, Object> map = appUserClient.queryUserAgeYys(operatorService.getById(id).getId());
        id = resolveOperatorId(id);
        List<TStore> list4 = storeService.list(new QueryWrapper<TStore>().eq("operatorId", id).eq("state", 1));
        List<Integer> collect1 = list4.stream().map(TStore::getId).collect(Collectors.toList());
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = appUserClient.queryUserAgeYys(list);
        return map;
    }
    @RequestMapping("/stuUserDataStore")
    @ResponseBody
    public Object stuUserDataStore(Integer id) {
        if(UserExt.getUser().getObjectType()==3){
            id = UserExt.getUser().getObjectId();
        }
        ArrayList<Integer> objects = new ArrayList<>();
        objects.add(1);
        HashMap<String, Object> map = appUserClient.queryUserAgeStore(id);
        id = resolveStoreId(id);
        List<Integer> collect1 = Arrays.asList(id == null ? -1 : id);
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map = appUserClient.queryUserAgeStore(list);
        return map;
    }
    @RequestMapping("/selectYysJx")
    @ResponseBody
    public Object selectYysJx(Integer id) {
        ArrayList<Integer> objects = new ArrayList<>();
        objects.add(1);
        HashMap<String, Object> map1 = appUserClient.queryUserAgeYys1(id);
        // 找出运营商的用户
        List<Integer> userYYs = appUserClient.getUserYYs(id);
        id = resolveOperatorId(id);
        List<TStore> list4 = storeService.list(new QueryWrapper<TStore>().eq("operatorId", id).eq("state", 1));
        List<Integer> collect1 = list4.stream().map(TStore::getId).collect(Collectors.toList());
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        List<Map<String, Object>> mapList = coursePackagePaymentClient.queryCourseData(userYYs);
        HashMap<String, Object> map1 = appUserClient.queryUserAgeYys1(list);
        List<Map<String, Object>> mapList = coursePackagePaymentClient.queryCourseData(list);
        ArrayList<Object> objects2 = new ArrayList<>();
        ArrayList<Object> objects3 = new ArrayList<>();
        for (Map<String, Object> map : mapList) {
@@ -1476,18 +1632,22 @@
    @RequestMapping("/selectStoreJx")
    @ResponseBody
    public Object selectStoreJx(Integer id) {
        Integer objectType = UserExt.getUser().getObjectType();
        if(objectType==3){
            id = UserExt.getUser().getObjectId();
        }
        ArrayList<Integer> objects = new ArrayList<>();
        objects.add(1);
        HashMap<String, Object> map1 = appUserClient.queryUserAgeStore1(id);
        // 找出运营商的用户
        List<Integer> userYYs = appUserClient.getUserYYs(id);
        id = resolveStoreId(id);
        List<Integer> collect1 = Arrays.asList(id == null ? -1 : id);
        //课程
        List<Integer> list = coursePackagePaymentClient.queryPaymentCoursePackage(collect1);
        //场地
        List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", collect1).eq("state", 1));
        List<Integer> collect = list1.stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
        list.addAll(collect);
        //赛事
        List<Integer> list2 = competitionClient.queryAppUserId(collect1);
        list.addAll(list2);
        //门票
        HashMap<String, Object> map1 = appUserClient.queryUserAgeStore1(list);
        List<Map<String, Object>> mapList = coursePackagePaymentClient.queryCourseData(userYYs);
        List<Map<String, Object>> mapList = coursePackagePaymentClient.queryCourseData(list);
        ArrayList<Object> objects2 = new ArrayList<>();
        ArrayList<Object> objects3 = new ArrayList<>();
        for (Map<String, Object> map : mapList) {