From b1f2f102034b4433201225b67a9fc78c08e532f0 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 06 六月 2025 18:35:03 +0800 Subject: [PATCH] 修改bug和管理后台报表 --- ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java | 151 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 108 insertions(+), 43 deletions(-) diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java index 81da78f..6ccb928 100644 --- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java +++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java @@ -1,18 +1,13 @@ package com.stylefeng.guns.modular.system.controller; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; -import com.baomidou.mybatisplus.plugins.Page; import com.stylefeng.guns.core.base.controller.BaseController; -import com.stylefeng.guns.core.common.constant.factory.PageFactory; import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.vo.GrantMoneyVO; import com.stylefeng.guns.modular.system.vo.GrantVO; -import com.stylefeng.guns.modular.system.vo.PlatformVO; import com.stylefeng.guns.modular.system.vo.UseMoneyVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -21,15 +16,14 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; -import java.math.BigInteger; import java.text.SimpleDateFormat; import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAdjusters; -import java.util.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -43,17 +37,6 @@ public class TSubsidyController extends BaseController { private String PREFIX = "/system/subsidy/"; - - @RequestMapping("/grant") - public String index(Model model) { - return PREFIX + "grant.html"; - } - - @RequestMapping("/use") - public String watter(Model model) { - return PREFIX + "use.html"; - } - @Autowired private IIncomeService tIncomeService; @Autowired @@ -94,16 +77,28 @@ private ISysCouponRecordService sysCouponRecordService; @Autowired private IUserActivityDiscount1Service userActivityDiscount1Service; + @Autowired + private ISysRedPacketRecordService sysRedPacketRecordService; - public static void main(String[] args) { - String temp = "[{\"money\":14.46,\"id\":91},{\"money\":1,\"id\":90}]"; - JSONArray objects = JSONArray.parseArray(temp); - BigDecimal temp1 = new BigDecimal(BigInteger.ZERO); - for (int i = 0; i < objects.size(); i++) { - String string = objects.getJSONObject(i).getString("money"); - temp1 = temp1.add(new BigDecimal(string)); - } - System.err.println(temp1); + @Autowired + private ITCompanyService companyService; + + @Autowired + private IDriverActivityService driverActivityService; + + + @RequestMapping("/grant") + public String index(Model model) { + List<TCompany> tCompanies = companyService.selectList(new EntityWrapper<TCompany>().eq("state", 0).ne("flag", 3)); + model.addAttribute("company", tCompanies); + return PREFIX + "grant.html"; + } + + @RequestMapping("/use") + public String watter(Model model) { + List<TCompany> tCompanies = companyService.selectList(new EntityWrapper<TCompany>().eq("state", 0).ne("flag", 3)); + model.addAttribute("company", tCompanies); + return PREFIX + "use.html"; } /** @@ -111,7 +106,7 @@ */ @RequestMapping(value = "/use/list") @ResponseBody - public Object list1(Integer time, String insertTime, Integer type) { + public Object list1(Integer time, String insertTime, Integer type, Integer company) { if (time == null) { time = 1; } @@ -202,51 +197,65 @@ Wrapper<TOrderLogistics> between33 = new EntityWrapper<TOrderLogistics>(); // 司机已消费金额 Wrapper<BalanceUsageRecord> between4 = new EntityWrapper<BalanceUsageRecord>(); + List<Integer> collect = new ArrayList<>(); + if(null != company){ + List<TDriver> driverActivities = driverService.selectList(new EntityWrapper<TDriver>().eq("companyId", company)); + collect = driverActivities.stream().map(TDriver::getId).collect(Collectors.toList()); + collect.add(0); + } if (time == 5 && !StringUtils.hasLength(insertTime)) { // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) ; // 小件物流wrapper between1 = new EntityWrapper<TOrderLogistics>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) ; // 已使用优惠券记录wrapper between2 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) ; between22 = new EntityWrapper<TOrderLogistics>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) ; // 已使用红包记录wrapper between3 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) ; between33 = new EntityWrapper<TOrderLogistics>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) ; // 司机已消费金额 between4 = new EntityWrapper<BalanceUsageRecord>() .eq("type", 1) .ne("purpose", 6) + .in(!collect.isEmpty(), "driverId", collect) ; // 司机提现 driverWrapper = new EntityWrapper<TPubWithdrawal>() .eq("state", 2) .eq("type", 1) + .in(!collect.isEmpty(), "userId", collect) .eq("userType", 2) ; @@ -256,39 +265,47 @@ .eq("state", 2) .eq("type", 1) .eq("userType", 2) + .in(!collect.isEmpty(), "userId", collect) .between("insertTime", start, end); // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 小件物流wrapper between1 = new EntityWrapper<TOrderLogistics>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 已使用优惠券记录wrapper between2 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); between22 = new EntityWrapper<TOrderLogistics>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 已使用红包记录wrapper between3 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); between33 = new EntityWrapper<TOrderLogistics>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 司机已消费金额 between4 = new EntityWrapper<BalanceUsageRecord>() .ne("purpose", 6) .eq("type", 1) + .in(!collect.isEmpty(), "driverId", collect) .between("createTime", start, end); @@ -543,7 +560,7 @@ @RequestMapping(value = "/use/getCount") @ResponseBody - public Object getCount1(Integer time, String insertTime, Integer type) { + public Object getCount1(Integer time, String insertTime, Integer type, Integer company) { if (time == null) { time = 1; } @@ -634,11 +651,18 @@ Wrapper<TOrderLogistics> between33 = new EntityWrapper<TOrderLogistics>(); // 司机已消费金额 Wrapper<BalanceUsageRecord> between4 = new EntityWrapper<BalanceUsageRecord>(); + List<Integer> collect = new ArrayList<>(); + if(null != company){ + List<TDriver> driverActivities = driverService.selectList(new EntityWrapper<TDriver>().eq("companyId", company)); + collect = driverActivities.stream().map(TDriver::getId).collect(Collectors.toList()); + collect.add(0); + } if (time == 5 && !StringUtils.hasLength(insertTime)) { // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) // .between("insertTime", start, end) ; @@ -646,6 +670,7 @@ between1 = new EntityWrapper<TOrderLogistics>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) // .between("insertTime", start, end) ; @@ -653,12 +678,14 @@ between2 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) // .between("insertTime", start, end) ; between22 = new EntityWrapper<TOrderLogistics>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) // .between("insertTime", start, end) ; @@ -666,12 +693,14 @@ between3 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) // .between("insertTime", start, end) ; between33 = new EntityWrapper<TOrderLogistics>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) // .between("insertTime", start, end) ; @@ -679,6 +708,7 @@ between4 = new EntityWrapper<BalanceUsageRecord>() .eq("type", 1) .ne("purpose", 6) + .in(!collect.isEmpty(), "driverId", collect) // .between("createTime", start, end) ; @@ -687,6 +717,7 @@ .eq("state", 2) .eq("type", 1) .eq("userType", 2) + .in(!collect.isEmpty(), "userId", collect) // .between("insertTime", start, end) ; @@ -695,39 +726,47 @@ .eq("state", 2) .eq("type", 1) .eq("userType", 2) + .in(!collect.isEmpty(), "userId", collect) .between("insertTime", start, end); // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 小件物流wrapper between1 = new EntityWrapper<TOrderLogistics>() .isNotNull("activityId") .isNotNull("discountMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 已使用优惠券记录wrapper between2 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); between22 = new EntityWrapper<TOrderLogistics>() .isNotNull("couponId") .isNotNull("couponMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 已使用红包记录wrapper between3 = new EntityWrapper<TOrderPrivateCar>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); between33 = new EntityWrapper<TOrderLogistics>() .isNotNull("redPacketId") .isNotNull("redPacketMoney") + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 司机已消费金额 between4 = new EntityWrapper<BalanceUsageRecord>() .ne("purpose", 6) .eq("type", 1) + .in(!collect.isEmpty(), "driverId", collect) .between("createTime", start, end); @@ -955,15 +994,12 @@ return useMoneyVO; } - @Autowired - private ISysRedPacketRecordService sysRedPacketRecordService; - /** * 发放补贴统计 */ @RequestMapping(value = "/grant/list") @ResponseBody - public Object list(Integer time, String insertTime, Integer type) { + public Object list(Integer time, String insertTime, Integer type, Integer company) { if (time == null) { time = 1; } @@ -1047,53 +1083,66 @@ Wrapper<UserRedPacketRecord> between3 = new EntityWrapper<UserRedPacketRecord>(); // 司机奖励 Wrapper<DriverActivityHistory> between4 = new EntityWrapper<DriverActivityHistory>(); + List<Integer> collect = new ArrayList<>(); + if(null != company){ + List<DriverActivity> driverActivities = driverActivityService.selectList(new EntityWrapper<DriverActivity>().eq("companyId", company).eq("status", 3)); + collect = driverActivities.stream().map(DriverActivity::getId).collect(Collectors.toList()); + collect.add(0); + } + if (time == 5 && !StringUtils.hasLength(insertTime)) { // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() - .isNotNull("discountMoney") + .isNotNull("discountMoney").eq(null != company, "companyId", company) ; // 小件物流wrapper between1 = new EntityWrapper<TOrderLogistics>() - .isNotNull("discountMoney") + .isNotNull("discountMoney").eq(null != company, "companyId", company) ; // 优惠券领取记录wrapper between2 = new EntityWrapper<UserCouponRecord>() .ne("couponUseType", 2) .ne("couponUseType", 3) + .eq(null != company, "companyId", company) ; // 红包领取记录wrapper between3 = new EntityWrapper<UserRedPacketRecord>() .ne("state", 0) + .eq(null != company, "companyId", company) ; // 司机奖励 between4 = new EntityWrapper<DriverActivityHistory>() .eq("carryOut", 2) + .in(!collect.isEmpty(), "activityId", collect) ; } else { // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() - .isNotNull("discountMoney") + .isNotNull("discountMoney").eq(null != company, "companyId", company) .between("insertTime", start, end) ; // 小件物流wrapper between1 = new EntityWrapper<TOrderLogistics>() - .between("insertTime", start, end) + .between("insertTime", start, end).eq(null != company, "companyId", company) .isNotNull("discountMoney") ; // 优惠券领取记录wrapper between2 = new EntityWrapper<UserCouponRecord>() .ne("couponUseType", 2) .ne("couponUseType", 3) + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 红包领取记录wrapper between3 = new EntityWrapper<UserRedPacketRecord>() .ne("state", 0) + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 司机奖励 between4 = new EntityWrapper<DriverActivityHistory>() .eq("carryOut", 2) + .in(!collect.isEmpty(), "activityId", collect) .between("insertTime", start, end); } @@ -1263,7 +1312,7 @@ // 已领取司机奖励 for (DriverActivityHistory driverActivityHistory : driverActivityHistories) { GrantVO grantVO = new GrantVO(); - grantVO.setInsertTime(format.format(driverActivityHistory.getInsertTime())); + grantVO.setInsertTime(null == driverActivityHistory.getCompletionTime() ? format.format(driverActivityHistory.getInsertTime()) : format.format(driverActivityHistory.getCompletionTime())); grantVO.setType("司机奖励"); grantVO.setAmount(driverActivityHistory.getMoney().toString()); TDriver tDriver = driverMap.get(driverActivityHistory.getDriverId()); @@ -1279,10 +1328,10 @@ grantVO.setRemark("邀请用户注册"); break; case 3: - grantVO.setRemark("累计在线"); + grantVO.setRemark("在线时长奖励"); break; case 4: - grantVO.setRemark("订单量"); + grantVO.setRemark("累计接单奖励"); break; } driver = driver.add(new BigDecimal(driverActivityHistory.getMoney().toString())); @@ -1297,7 +1346,7 @@ @RequestMapping(value = "/grant/getCount") @ResponseBody - public Object getCount(Integer time, String insertTime, Integer type) { + public Object getCount(Integer time, String insertTime, Integer type, Integer company) { GrantMoneyVO result = new GrantMoneyVO(); if (time == null) { time = 1; @@ -1382,53 +1431,69 @@ Wrapper<UserRedPacketRecord> between3 = new EntityWrapper<UserRedPacketRecord>(); // 司机奖励 Wrapper<DriverActivityHistory> between4 = new EntityWrapper<DriverActivityHistory>(); + List<Integer> collect = new ArrayList<>(); + if(null != company){ + List<DriverActivity> driverActivities = driverActivityService.selectList(new EntityWrapper<DriverActivity>().eq("companyId", company).eq("status", 3)); + collect = driverActivities.stream().map(DriverActivity::getId).collect(Collectors.toList()); + collect.add(0); + } if (time == 5 && !StringUtils.hasLength(insertTime)) { // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() .isNotNull("discountMoney") + .eq(null != company, "companyId", company) ; // 小件物流wrapper between1 = new EntityWrapper<TOrderLogistics>() .isNotNull("discountMoney") + .eq(null != company, "companyId", company) ; // 优惠券领取记录wrapper between2 = new EntityWrapper<UserCouponRecord>() .ne("couponUseType", 2) .ne("couponUseType", 3) + .eq(null != company, "companyId", company) ; // 红包领取记录wrapper between3 = new EntityWrapper<UserRedPacketRecord>() .ne("state", 0) + .eq(null != company, "companyId", company) ; // 司机奖励 between4 = new EntityWrapper<DriverActivityHistory>() .eq("carryOut", 2) + .in(!collect.isEmpty(), "activityId", collect) ; } else { // 专车wrapper between = new EntityWrapper<TOrderPrivateCar>() .isNotNull("discountMoney") .between("insertTime", start, end) + .eq(null != company, "companyId", company) ; // 小件物流wrapper between1 = new EntityWrapper<TOrderLogistics>() .between("insertTime", start, end) .isNotNull("discountMoney") + .eq(null != company, "companyId", company) ; // 优惠券领取记录wrapper between2 = new EntityWrapper<UserCouponRecord>() .ne("couponUseType", 2) .ne("couponUseType", 3) + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 红包领取记录wrapper between3 = new EntityWrapper<UserRedPacketRecord>() .ne("state", 0) + .eq(null != company, "companyId", company) .between("insertTime", start, end); // 司机奖励 between4 = new EntityWrapper<DriverActivityHistory>() .eq("carryOut", 2) + .in(!collect.isEmpty(), "activityId", collect) .between("insertTime", start, end); } -- Gitblit v1.7.1