From eb6b6dbb35a9f029e0b7d269773685c19fd40976 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 11 七月 2024 10:47:51 +0800 Subject: [PATCH] 玩湃微信商户认证代码 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java | 579 ++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 401 insertions(+), 178 deletions(-) diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java index a1bce98..714ce55 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/DataStatisticsController.java @@ -3,18 +3,24 @@ import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dsh.course.entity.CoursePackageOrderStudent; import com.dsh.course.feignClient.account.*; import com.dsh.course.feignClient.account.model.*; import com.dsh.course.feignClient.activity.PointMercharsClient; import com.dsh.course.feignClient.competition.CompetitionClient; +import com.dsh.course.feignClient.competition.model.CompetionVO; import com.dsh.course.feignClient.competition.model.Competition; import com.dsh.course.feignClient.competition.model.CompetitionQuery; import com.dsh.course.feignClient.competition.model.PaymentCompetition; import com.dsh.course.feignClient.course.*; import com.dsh.course.feignClient.course.model.TCoursePackage; import com.dsh.course.feignClient.course.model.TCoursePackagePayment; +import com.dsh.course.feignClient.other.BallClient; 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; import com.dsh.guns.core.base.controller.BaseController; @@ -49,44 +55,46 @@ private String PREFIX = "/system/dataStatistics/"; @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; + @Resource + private BallClient ballClient; /** * 跳转到平台统计数据页面 */ @@ -94,15 +102,9 @@ public String index(Model model) { Object o = type1(null); model.addAttribute("data",o); - - - // 教学统计 HashMap<String, Object> map = appUserClient.queryUserAge(); model.addAttribute("stuData",map); - - - return PREFIX + "platformIncome.html"; } @@ -115,22 +117,34 @@ public Object getIncomeData(Integer operatorId,Integer storeId) { // 报名课程查询query RegisterOrderQuery query = new RegisterOrderQuery(); -// 充值记录查询query + // 充值记录查询query RechargeRecordsQuery rechargeRecordsQuery = new RechargeRecordsQuery(); // 赛事活动查询query CompetitionQuery competitionQuery = new CompetitionQuery(); - // 会员支付查询query IncomeQuery incomeQuery = new IncomeQuery(); // 场地预约记录查询query SiteBookingQuery siteBookingQuery = new SiteBookingQuery(); + // 智慧球场查询query + GameDataQuery gameDataQuery = new GameDataQuery(); + // 筛选运营商的是时候使用 + List<Integer> storeIds = new ArrayList<>(); // 根据运营商ID 查询运营商下的所有门店 - if (operatorId!=null){ - List<TStore> stores = storeService.list(new QueryWrapper<TStore>().eq("operatorId", operatorId)); - // 拿到该运营商下的门店id集合 - List<Integer> storeIds = stores.stream().map(TStore::getId).collect(Collectors.toList()); - query.setStoresIds(storeIds); - siteBookingQuery.setStoreIds(storeIds); + if (storeId==null){ + if (operatorId!=null){ + List<TStore> stores = storeService.list(new QueryWrapper<TStore>().eq("operatorId", operatorId)); + // 拿到该运营商下的门店id集合 + storeIds = stores.stream().map(TStore::getId).collect(Collectors.toList()); + query.setStoresIds(storeIds); + siteBookingQuery.setStoreIds(storeIds); + competitionQuery.setOperatorId(operatorId); + } + }else { + List<Integer> list = new ArrayList<>(); + list.add(storeId); + query.setStoresIds(list); + siteBookingQuery.setStoreIds(list); + competitionQuery.setStoreId(storeId); } @@ -139,13 +153,14 @@ query.setInsertType(roleType); competitionQuery.setInsertType(roleType); incomeQuery.setInsertType(roleType); + rechargeRecordsQuery.setObjectId(UserExt.getUser().getObjectId()); List<IncomeVO> incomeVOS = new ArrayList<>(); // 会员支付记录 List<VipPayment> vipPayments = vipPaymentClient.registrationList(incomeQuery); for (VipPayment vipPayment : vipPayments) { IncomeVO temp = new IncomeVO(); - if (vipPayment.getPayStatus()==1){ - temp.setInsertTime(vipPayment.getInsertTime()); + if (vipPayment.getState()!=3){ + temp.setInsertTime(vipPayment.getPayTime()); incomeVOS.add(temp); } if (vipPayment.getAmount() != null) { @@ -156,14 +171,13 @@ List<RechargeRecordsVO> rechargeRecordsVOS = financeClient.rechargeList(rechargeRecordsQuery); for (RechargeRecordsVO rechargeRecordsVO : rechargeRecordsVOS) { IncomeVO temp = new IncomeVO(); - temp.setInsertTime(rechargeRecordsVO.getInsertTime()); + temp.setInsertTime(rechargeRecordsVO.getPayTime()); if (rechargeRecordsVO.getAmount() != null) { temp.setAmount(rechargeRecordsVO.getAmount()); } - if (rechargeRecordsVO.getPayStatus() ==1){ + if (rechargeRecordsVO.getState() !=3){ incomeVOS.add(temp); } - } // 报名课程记录 List<RegisterOrderVO> registerOrderVOS = coursePackagePaymentClient.listAllRegister(query); @@ -180,6 +194,10 @@ incomeVOS.add(temp); } } + // query权限设置 获取运营商下的门店集合 + if (roleType==2){ + competitionQuery.setOperatorId(UserExt.getUser().getObjectId()); + } // 报名活动 List<PaymentCompetition> competitions = competitionClient.listAllPayment(competitionQuery); for (PaymentCompetition competition : competitions) { @@ -189,40 +207,74 @@ if (competition.getPayType()==3 || competition.getPayType()==4){ continue; } + if (competition.getState()==3)continue; IncomeVO temp = new IncomeVO(); - temp.setInsertTime(competition.getInsertTime()); + temp.setInsertTime(competition.getPayTime()); if (competition.getAmount() != null) { temp.setAmount(new BigDecimal(competition.getAmount().toString())); } incomeVOS.add(temp); } // 预约场地 - if (operatorId!=null){ - if (siteBookingQuery.getStoreIds().size()==0){ - }else{ - List<SiteBooking> siteBookings = siteClient.listAll(siteBookingQuery); - for (SiteBooking siteBooking : siteBookings) { - IncomeVO temp = new IncomeVO(); - if(siteBooking.getStatus()!=3){ - continue; - } - temp.setInsertTime(siteBooking.getPayTime()); - if (siteBooking.getPayMoney() != null) { - temp.setAmount(new BigDecimal(siteBooking.getPayMoney().toString())); - } - incomeVOS.add(temp); + // 说明当前运营商下没有门店 + if (operatorId!=null && storeIds.size()==0){ + }else{ + List<SiteBooking> siteBookings = siteClient.listAll(siteBookingQuery); + for (SiteBooking siteBooking : siteBookings) { + IncomeVO temp = new IncomeVO(); + if(siteBooking.getStatus()==0 || siteBooking.getStatus()==5){ + continue; } + if (siteBooking.getPayType() ==3 || siteBooking.getPayType() ==4)continue; + temp.setInsertTime(siteBooking.getPayTime()); + if (siteBooking.getPayMoney() != null) { + temp.setAmount(new BigDecimal(siteBooking.getPayMoney().toString())); + } + incomeVOS.add(temp); } - } // 积分商品 List<PointMerchandiseIncomeVo> amount = pointMercharsClient.getAmount(); for (PointMerchandiseIncomeVo pointMerchandiseIncomeVo : amount) { IncomeVO temp = new IncomeVO(); + if (pointMerchandiseIncomeVo==null) continue; temp.setInsertTime(pointMerchandiseIncomeVo.getInsertTime()); if (pointMerchandiseIncomeVo.getCash()!=null){ temp.setAmount(pointMerchandiseIncomeVo.getCash()); + incomeVOS.add(temp); + } + } + // 平台智慧球场 + if (storeId==null&&operatorId==null){ + gameDataQuery.setObjectId(0); + List<TGameRecord> data = ballClient.getData(gameDataQuery); + for (TGameRecord datum : data) { + IncomeVO temp = new IncomeVO(); + temp.setAmount(datum.getMoney()); + temp.setInsertTime(datum.getTime()); + incomeVOS.add(temp); + } + } + // 运营商 + if (operatorId!=null && storeId==null){ + gameDataQuery.setObjectId(operatorId); + List<TGameRecord> data = ballClient.getData(gameDataQuery); + for (TGameRecord datum : data) { + IncomeVO temp = new IncomeVO(); + temp.setAmount(datum.getMoney()); + temp.setInsertTime(datum.getTime()); + incomeVOS.add(temp); + } + } + // 门店 + if (storeId!=null){ + gameDataQuery.setStoreId(storeId); + List<TGameRecord> data = ballClient.getData(gameDataQuery); + for (TGameRecord datum : data) { + IncomeVO temp = new IncomeVO(); + temp.setAmount(datum.getMoney()); + temp.setInsertTime(datum.getTime()); incomeVOS.add(temp); } } @@ -265,7 +317,7 @@ int years = DateUtil.year(new Date()); for (int i = 0; i < 10; i++) { integers1.add(years-i); - } + } List<Object> collect = integers1.stream().sorted().collect(Collectors.toList()); List<Object> objects1 = new ArrayList<>(); for (Object o : collect) { @@ -435,39 +487,39 @@ List<MoneyBack> refund = refundCoursePackageClient.getRefund(); for (MoneyBack moneyBack : refund) { - List<TCoursePackagePayment> coursePackagePayments = courseStuddentClient.queryByIds(moneyBack.getIds()); + List<CoursePackageOrderStudent> coursePackagePayments = courseStuddentClient.queryByIds(moneyBack.getIds()); BigDecimal totalAmount = BigDecimal.ZERO; - for (TCoursePackagePayment payment : coursePackagePayments){ - //课包名称 - TCoursePackage tCoursePackage = coursePackageClient.queryById(payment.getCoursePackageId()); - payment.setName(tCoursePackage.getName()); - payment.setId(Long.valueOf(tCoursePackage.getId())); - BigDecimal cashPayment = payment.getCashPayment(); - if (cashPayment==null){ - cashPayment = BigDecimal.ZERO; - } - Integer totalClassHours = payment.getTotalClassHours(); - BigDecimal result = new BigDecimal(0); - if (totalClassHours!=0) { - result = cashPayment.divide(BigDecimal.valueOf(totalClassHours), 2, RoundingMode.HALF_UP); - } - //单价 - payment.setOnePrice(result); - int has = payment.getTotalClassHours() - payment.getLaveClassHours(); - //剩余课时 - payment.setHasHours(has); - BigDecimal onePrice = payment.getOnePrice(); - Integer laveClassHours = payment.getLaveClassHours(); - BigDecimal result1 = onePrice.multiply(BigDecimal.valueOf(laveClassHours)); - //总价 - payment.setRestPrice(result1); - System.out.println("======="+result1); - totalAmount = totalAmount.add(result1); - IncomeVO temp = new IncomeVO(); - temp.setInsertTime(payment.getInsertTime()); - temp.setAmount(result1); - incomeVOS.add(temp); - } +// for (TCoursePackagePayment payment : coursePackagePayments){ +// //课包名称 +// TCoursePackage tCoursePackage = coursePackageClient.queryById(payment.getCoursePackageId()); +// payment.setName(tCoursePackage.getName()); +// payment.setId(Long.valueOf(tCoursePackage.getId())); +// BigDecimal cashPayment = payment.getCashPayment(); +// if (cashPayment==null){ +// cashPayment = BigDecimal.ZERO; +// } +// Integer totalClassHours = payment.getTotalClassHours(); +// BigDecimal result = new BigDecimal(0); +// if (totalClassHours!=0) { +// result = cashPayment.divide(BigDecimal.valueOf(totalClassHours), 2, RoundingMode.HALF_UP); +// } +// //单价 +// payment.setOnePrice(result); +// int has = payment.getTotalClassHours() - payment.getLaveClassHours(); +// //剩余课时 +// payment.setHasHours(has); +// BigDecimal onePrice = payment.getOnePrice(); +// Integer laveClassHours = payment.getLaveClassHours(); +// BigDecimal result1 = onePrice.multiply(BigDecimal.valueOf(laveClassHours)); +// //总价 +// payment.setRestPrice(result1); +// System.out.println("======="+result1); +// totalAmount = totalAmount.add(result1); +// IncomeVO temp = new IncomeVO(); +// temp.setInsertTime(payment.getInsertTime()); +// temp.setAmount(result1); +// incomeVOS.add(temp); +// } } // 获取赛事退费记录 List<PaymentCompetition> competitions = competitionClient.listAllPayment(competitionQuery); @@ -705,18 +757,27 @@ @RequestMapping(value = "/backStore") @ResponseBody public Object backStore(Integer id) { + List<Integer> collect1 = Arrays.asList(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); @@ -725,14 +786,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<>(); @@ -744,8 +805,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); } @@ -766,14 +827,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); @@ -790,7 +851,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){ @@ -822,7 +883,45 @@ HashMap<String, Object> map = appUserClient.stuPt(); return map; } + @RequestMapping(value = "/stuYys") + @ResponseBody + public Object stuYys(Integer 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) { + List<Integer> collect1 = Arrays.asList(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; + } + + // 消耗课时数据-平台 @RequestMapping(value = "/coursePt") @ResponseBody public Object coursePt() { @@ -830,17 +929,58 @@ HashMap<String, Object> map = coursePackagePaymentClient.coursePt(userPt); return map; } + // 消耗课时数据-运营商 + @RequestMapping(value = "/courseYys") + @ResponseBody + public Object courseYys(Integer id) { + List<Integer> userPt = appUserClient.getUserYYs(id); + HashMap<String, Object> map = coursePackagePaymentClient.coursePt(userPt); + return map; + } + // 消耗课时数据-运营商 + @RequestMapping(value = "/courseStore") + @ResponseBody + public Object courseStore(Integer id) { + List<Integer> userPt = appUserClient.getUserPt(Arrays.asList(id)); + HashMap<String, Object> map = coursePackagePaymentClient.coursePt(userPt); + return map; + } @RequestMapping(value = "/userAndVipYys") @ResponseBody public Object userAndVipYys(Integer id) { - HashMap<String, Object> map = appUserClient.userAndVipYys(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) { - HashMap<String, Object> map = appUserClient.userAndVipStore(id); + List<Integer> collect1 = Arrays.asList(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") @@ -873,12 +1013,28 @@ @RequestMapping(value = "/actYys") @ResponseBody public Object actYys(Integer id) { - List<Integer> userPt = appUserClient.getUserYYs(id); - HashMap<String, Object> map = competitionClient.actPt(userPt); + 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<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getOperatorId, 0)); + + competionVO.setIds(list); + competionVO.setOperatorId(id); + HashMap<String, Object> map = competitionClient.actYys(competionVO); + + 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(); @@ -890,7 +1046,7 @@ if(integer==0 && integer1==0){ a=24; }else { - a= integer1-integer; + a= integer-integer1; } l1 += l * a; } @@ -900,12 +1056,23 @@ @RequestMapping(value = "/actStore") @ResponseBody public Object actStore(Integer id) { - List<Integer> userPt = appUserClient.getUserStore(id); - HashMap<String, Object> map = competitionClient.actPt(userPt); + List<Integer> collect1 = Arrays.asList(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); + //门票 - List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getOperatorId, 0)); + HashMap<String, Object> map = competitionClient.actPt(list); + + 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(); @@ -933,9 +1100,12 @@ @RequestMapping("/operator") public String operator(Model model) { Integer objectType = UserExt.getUser().getObjectType(); - List<TOperator> list = operatorService.list(new LambdaQueryWrapper<TOperator>().ne(TOperator::getState, 3)); + Integer objectId = UserExt.getUser().getObjectId(); + + List<TOperator> list = operatorService.list(new LambdaQueryWrapper<TOperator>().ne(TOperator::getState, 3).ne(TOperator::getId,0)); model.addAttribute("list",list); model.addAttribute("objectType",objectType); + model.addAttribute("objectId",objectId); return PREFIX + "operatorIncome.html"; } @@ -949,18 +1119,12 @@ public Object selectYys(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()); - 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")); @@ -973,8 +1137,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)){ @@ -982,10 +1153,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); @@ -1056,11 +1224,19 @@ @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()); - List<Integer> userIds = appUserClient.getUserStore(id); - QueryDataFee queryDataFee = new QueryDataFee(time, userIds); + List<Integer> collect1 = Arrays.asList(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"); @@ -1081,34 +1257,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())){ @@ -1118,16 +1288,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(); } } @@ -1160,9 +1330,19 @@ @RequestMapping("/store") public String store(Model model) { Integer objectType = UserExt.getUser().getObjectType(); - List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getState, 1)); - model.addAttribute("list",list); + List<TStore> tStores = new ArrayList<>(); + if(objectType == 1){ + tStores = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getState, 1)); + } + if (objectType == 2){ + tStores = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getState, 1).eq(TStore::getOperatorId,UserExt.getUser().getObjectId())); + } + if (objectType == 3){ + tStores = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getState, 1).eq(TStore::getId,UserExt.getUser().getObjectId())); + } + model.addAttribute("list",tStores); model.addAttribute("objectType",objectType); + model.addAttribute("objectId",UserExt.getUser().getObjectId()); return PREFIX + "storeIncome.html"; } @@ -1186,7 +1366,6 @@ // 会员费 HashMap<String, Object> map1 = appUserClient.queryFee(queryDataFee); Object fee1 = map1.get("fee1"); - map.put("fee1",fee1); //玩湃比 Object fee2 = map1.get("fee2"); @@ -1196,12 +1375,9 @@ map.put("fee3",map3.get("fee")); Object data = map3.get("data"); map.put("courseData",data); - - // 赛事收入 Double aDouble1 = competitionClient.queryFee(queryDataFee); map.put("fee4",aDouble1); - // 订场 if(ids.size()==0){ ids.add(-1); @@ -1215,15 +1391,28 @@ if(userIds.size()==0){ userIds.add(-1); } - vipPaymentLambdaQueryWrapper.in(SiteBooking::getAppUserId,userIds); vipPaymentLambdaQueryWrapper.ne(SiteBooking::getStatus,0); + vipPaymentLambdaQueryWrapper.ne(SiteBooking::getStatus,5); ArrayList<Integer> objects = new ArrayList<>(); objects.add(1); objects.add(2); vipPaymentLambdaQueryWrapper.in(SiteBooking::getPayType,objects); - List<SiteBooking> list1 = siteBookingService.list(vipPaymentLambdaQueryWrapper); + List<SiteBooking> list1 = siteBookingService.list(new QueryWrapper<SiteBooking>() + .ne("status",0) + .ne("status",5) + .ne("payType",3) + .ne("payType",4)); double sum = list1.stream().mapToDouble(SiteBooking::getPayMoney).sum(); - map.put("fee5",sum); + // 智慧球场查询query + GameDataQuery gameDataQuery = new GameDataQuery(); + gameDataQuery.setObjectId(0); + // 平台智慧球场 + List<TGameRecord> data1 = ballClient.getData(gameDataQuery); + double sum1 = data1.stream() + .map(TGameRecord::getMoney) // 获取每个 TGameRecord 对象的 money 字段 + .mapToDouble(BigDecimal::doubleValue) // 将 BigDecimal 转换为 double + .sum(); + map.put("fee5",sum+sum1); List<Integer> collect = list1.stream().map(SiteBooking::getSiteId).collect(Collectors.toList()); @@ -1306,32 +1495,59 @@ @RequestMapping("/stuUserDataYys") @ResponseBody public Object stuUserDataYys(Integer id) { - ArrayList<Integer> objects = new ArrayList<>(); - objects.add(1); - HashMap<String, Object> map = appUserClient.queryUserAgeYys(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) { - ArrayList<Integer> objects = new ArrayList<>(); - objects.add(1); - HashMap<String, Object> map = appUserClient.queryUserAgeStore(id); + + List<Integer> collect1 = Arrays.asList(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); + 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) { @@ -1350,14 +1566,21 @@ @RequestMapping("/selectStoreJx") @ResponseBody public Object selectStoreJx(Integer id) { - ArrayList<Integer> objects = new ArrayList<>(); - objects.add(1); - HashMap<String, Object> map1 = appUserClient.queryUserAgeStore1(id); - // 找出运营商的用户 - List<Integer> userYYs = appUserClient.getUserYYs(id); + List<Integer> collect1 = Arrays.asList(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) { -- Gitblit v1.7.1