提现总次数 提现总金额

This commit is contained in:
2024-12-19 10:08:37 +08:00
parent c769b9b71d
commit 59dd621bab
3 changed files with 105 additions and 76 deletions

View File

@@ -1,8 +1,15 @@
package com.sqx.modules.orders.controller; package com.sqx.modules.orders.controller;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.sqx.common.utils.DateUtils; import com.sqx.common.utils.DateUtils;
import com.sqx.common.utils.Result; import com.sqx.common.utils.Result;
import com.sqx.modules.course.entity.CourseCollect;
import com.sqx.modules.orders.service.OrdersService; import com.sqx.modules.orders.service.OrdersService;
import com.sqx.modules.pay.dao.CashOutDao;
import com.sqx.modules.pay.entity.CashOut;
import com.sqx.modules.pay.service.CashOutService;
import com.sqx.modules.sys.controller.AbstractController; import com.sqx.modules.sys.controller.AbstractController;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@@ -14,6 +21,8 @@ import org.springframework.web.bind.annotation.RestController;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.*;
@RestController @RestController
@@ -22,19 +31,21 @@ import java.util.*;
public class OrdersController extends AbstractController { public class OrdersController extends AbstractController {
@Autowired @Autowired
private OrdersService ordersService; private OrdersService ordersService;
@Autowired
private CashOutDao cashOutDao;
@GetMapping("/selectOrders") @GetMapping("/selectOrders")
@ApiOperation("订单信息列表") @ApiOperation("订单信息列表")
public Result selectOrders(Integer page,Integer limit,String ordersNo,Integer status,Long userId, public Result selectOrders(Integer page, Integer limit, String ordersNo, Integer status, Long userId,
Long courseId,Integer flag,String time,String userName,Integer ordersType, Long courseId, Integer flag, String time, String userName, Integer ordersType,
String startTime,String endTime,Long sysUserId,String qdCode,String sysUserName){ String startTime, String endTime, Long sysUserId, String qdCode, String sysUserName) {
return ordersService.selectOrders(page,limit,ordersNo,status,userId,courseId,flag,time,userName,ordersType, return ordersService.selectOrders(page, limit, ordersNo, status, userId, courseId, flag, time, userName, ordersType,
startTime,endTime,sysUserId,qdCode,sysUserName); startTime, endTime, sysUserId, qdCode, sysUserName);
} }
@GetMapping("/deleteOrders") @GetMapping("/deleteOrders")
@ApiOperation("删除订单") @ApiOperation("删除订单")
public Result deleteOrders(String ids){ public Result deleteOrders(String ids) {
return ordersService.deleteOrders(ids); return ordersService.deleteOrders(ids);
} }
@@ -46,75 +57,93 @@ public class OrdersController extends AbstractController {
@GetMapping("/selectOrdersMoneyList") @GetMapping("/selectOrdersMoneyList")
@ApiOperation("订单收入分析") @ApiOperation("订单收入分析")
public Result selectOrdersMoneyList(Integer page,Integer limit,Integer flag,String time){ public Result selectOrdersMoneyList(Integer page, Integer limit, Integer flag, String time) {
return ordersService.selectOrdersMoneyList(page, limit, flag, time); return ordersService.selectOrdersMoneyList(page, limit, flag, time);
} }
@PostMapping("/refundOrders") @PostMapping("/refundOrders")
@ApiOperation("退款订单") @ApiOperation("退款订单")
public Result refundOrders(Long ordersId){ public Result refundOrders(Long ordersId) {
return ordersService.refundOrder(ordersId,"系统退款"); return ordersService.refundOrder(ordersId, "系统退款");
} }
@GetMapping("/selectOrdersCount") @GetMapping("/selectOrdersCount")
@ApiOperation("订单统计") @ApiOperation("订单统计")
public Result selectOrdersCount(Integer flag,String time,Long sysUserId){ public Result selectOrdersCount(Integer flag, String time, Long sysUserId) {
//短剧订单 总 待 完 退 //短剧订单 总 待 完 退
Integer sumCourseOrdersCount = ordersService.selectOrdersCount(null, 1, flag, time,sysUserId); Integer sumCourseOrdersCount = ordersService.selectOrdersCount(null, 1, flag, time, sysUserId);
Integer daiCourseKeOrdersCount = ordersService.selectOrdersCount(0, 1, flag, time,sysUserId); Integer daiCourseKeOrdersCount = ordersService.selectOrdersCount(0, 1, flag, time, sysUserId);
Integer wanCourseKeOrdersCount = ordersService.selectOrdersCount(1, 1, flag, time,sysUserId); Integer wanCourseKeOrdersCount = ordersService.selectOrdersCount(1, 1, flag, time, sysUserId);
Integer tuiCourseOrdersCount = ordersService.selectOrdersCount(2, 1, flag, time,sysUserId); Integer tuiCourseOrdersCount = ordersService.selectOrdersCount(2, 1, flag, time, sysUserId);
//短剧钱 //短剧钱
Double sumCourseOrdersMoney = ordersService.selectOrdersMoney(null, 1, flag, time,null,sysUserId); Double sumCourseOrdersMoney = ordersService.selectOrdersMoney(null, 1, flag, time, null, sysUserId);
Double daiCourseOrdersMoney = ordersService.selectOrdersMoney(0, 1, flag, time,null,sysUserId); Double daiCourseOrdersMoney = ordersService.selectOrdersMoney(0, 1, flag, time, null, sysUserId);
Double wanCourseOrdersMoney = ordersService.selectOrdersMoney(1, 1, flag, time,null,sysUserId); Double wanCourseOrdersMoney = ordersService.selectOrdersMoney(1, 1, flag, time, null, sysUserId);
Double tuiCourseOrdersMoney = ordersService.selectOrdersMoney(2, 1, flag, time,null,sysUserId); Double tuiCourseOrdersMoney = ordersService.selectOrdersMoney(2, 1, flag, time, null, sysUserId);
//会员订单 总 待 完 退 //会员订单 总 待 完 退
Integer sumMemberOrdersCount = ordersService.selectOrdersCount(null, 2, flag, time,sysUserId); Integer sumMemberOrdersCount = ordersService.selectOrdersCount(null, 2, flag, time, sysUserId);
Integer daiMemberKeOrdersCount = ordersService.selectOrdersCount(0, 2, flag, time,sysUserId); Integer daiMemberKeOrdersCount = ordersService.selectOrdersCount(0, 2, flag, time, sysUserId);
Integer wanMemberKeOrdersCount = ordersService.selectOrdersCount(1, 2, flag, time,sysUserId); Integer wanMemberKeOrdersCount = ordersService.selectOrdersCount(1, 2, flag, time, sysUserId);
Integer tuiMemberOrdersCount = ordersService.selectOrdersCount(2, 2, flag, time,sysUserId); Integer tuiMemberOrdersCount = ordersService.selectOrdersCount(2, 2, flag, time, sysUserId);
//会员钱 //会员钱
Double sumMemberOrdersMoney = ordersService.selectOrdersMoney(null, 2, flag, time,null,sysUserId); Double sumMemberOrdersMoney = ordersService.selectOrdersMoney(null, 2, flag, time, null, sysUserId);
Double daiMemberOrdersMoney = ordersService.selectOrdersMoney(0, 2, flag, time,null,sysUserId); Double daiMemberOrdersMoney = ordersService.selectOrdersMoney(0, 2, flag, time, null, sysUserId);
Double wanMemberOrdersMoney = ordersService.selectOrdersMoney(1, 2, flag, time,null,sysUserId); Double wanMemberOrdersMoney = ordersService.selectOrdersMoney(1, 2, flag, time, null, sysUserId);
Double tuiMemberOrdersMoney = ordersService.selectOrdersMoney(2, 2, flag, time,null,sysUserId); Double tuiMemberOrdersMoney = ordersService.selectOrdersMoney(2, 2, flag, time, null, sysUserId);
Map<String,Object> result=new HashMap<>(); //提现
result.put("sumCourseOrdersCount",sumCourseOrdersCount);result.put("daiCourseKeOrdersCount",daiCourseKeOrdersCount); Integer cashCount = cashOutDao.selectCount(new QueryWrapper<CashOut>()
result.put("wanCourseKeOrdersCount",wanCourseKeOrdersCount);result.put("tuiCourseOrdersCount",tuiCourseOrdersCount); .eq("sys_user_id", sysUserId)
result.put("sumCourseOrdersMoney",sumCourseOrdersMoney);result.put("daiCourseOrdersMoney",daiCourseOrdersMoney); .eq("state", 1)
result.put("wanCourseOrdersMoney",wanCourseOrdersMoney);result.put("tuiCourseOrdersMoney",tuiCourseOrdersMoney); .gt("create_at", DateUtil.format(DateUtil.parse(time, "yyyy-MM-dd"), "yyyy-MM-dd HH:mm:ss")));
result.put("sumMemberOrdersCount",sumMemberOrdersCount);result.put("daiMemberKeOrdersCount",daiMemberKeOrdersCount); Double cashSum = cashOutDao.selectSysUserCashOutSum(sysUserId, DateUtil.format(DateUtil.parse(time, "yyyy-MM-dd"), "yyyy-MM-dd HH:mm:ss"));
result.put("wanMemberKeOrdersCount",wanMemberKeOrdersCount);result.put("tuiMemberOrdersCount",tuiMemberOrdersCount);
result.put("sumMemberOrdersMoney",sumMemberOrdersMoney);result.put("daiMemberOrdersMoney",daiMemberOrdersMoney); Map<String, Object> result = new HashMap<>();
result.put("wanMemberOrdersMoney",wanMemberOrdersMoney);result.put("tuiMemberOrdersMoney",tuiMemberOrdersMoney);
return Result.success().put("data",result); result.put("sumCourseOrdersCount", sumCourseOrdersCount);
result.put("daiCourseKeOrdersCount", daiCourseKeOrdersCount);
result.put("wanCourseKeOrdersCount", wanCourseKeOrdersCount);
result.put("tuiCourseOrdersCount", tuiCourseOrdersCount);
result.put("sumCourseOrdersMoney", sumCourseOrdersMoney);
result.put("daiCourseOrdersMoney", daiCourseOrdersMoney);
result.put("wanCourseOrdersMoney", wanCourseOrdersMoney);
result.put("tuiCourseOrdersMoney", tuiCourseOrdersMoney);
result.put("sumMemberOrdersCount", sumMemberOrdersCount);
result.put("daiMemberKeOrdersCount", daiMemberKeOrdersCount);
result.put("wanMemberKeOrdersCount", wanMemberKeOrdersCount);
result.put("tuiMemberOrdersCount", tuiMemberOrdersCount);
result.put("sumMemberOrdersMoney", sumMemberOrdersMoney);
result.put("daiMemberOrdersMoney", daiMemberOrdersMoney);
result.put("wanMemberOrdersMoney", wanMemberOrdersMoney);
result.put("tuiMemberOrdersMoney", tuiMemberOrdersMoney);
result.put("cashCount", cashCount == null ? 0 : cashCount);
result.put("cashSum", cashSum);
return Result.success().put("data", result);
} }
@GetMapping("/selectCourseOrdersMoneyCount") @GetMapping("/selectCourseOrdersMoneyCount")
@ApiOperation("统计具体剧的收益") @ApiOperation("统计具体剧的收益")
public Result selectCourseOrdersMoneyCount(Long courseId,Long sysUserId){ public Result selectCourseOrdersMoneyCount(Long courseId, Long sysUserId) {
//总收益 //总收益
Double sumMoney = ordersService.selectOrdersMoney(1, 1, null, null,courseId,sysUserId); Double sumMoney = ordersService.selectOrdersMoney(1, 1, null, null, courseId, sysUserId);
String dateTime = DateUtils.format(new Date()); String dateTime = DateUtils.format(new Date());
//年 //年
Double yearMoney = ordersService.selectOrdersMoney(1, 1, 3, dateTime,courseId,sysUserId); Double yearMoney = ordersService.selectOrdersMoney(1, 1, 3, dateTime, courseId, sysUserId);
//月 //月
Double monthMoney = ordersService.selectOrdersMoney(1, 1, 2, dateTime,courseId,sysUserId); Double monthMoney = ordersService.selectOrdersMoney(1, 1, 2, dateTime, courseId, sysUserId);
//日 //日
Double dayMoney = ordersService.selectOrdersMoney(1, 1, 1, dateTime,courseId,sysUserId); Double dayMoney = ordersService.selectOrdersMoney(1, 1, 1, dateTime, courseId, sysUserId);
Map<String,Double> result=new HashMap<>(); Map<String, Double> result = new HashMap<>();
result.put("sumMoney",sumMoney); result.put("sumMoney", sumMoney);
result.put("yearMoney",yearMoney); result.put("yearMoney", yearMoney);
result.put("monthMoney",monthMoney); result.put("monthMoney", monthMoney);
result.put("dayMoney",dayMoney); result.put("dayMoney", dayMoney);
return Result.success().put("data",result); return Result.success().put("data", result);
} }
@GetMapping("/selectFenXiaoMoney") @GetMapping("/selectFenXiaoMoney")
@ApiOperation("统计分销金币") @ApiOperation("统计分销金币")
public Result selectFenXiaoMoney(Long sysUserId,Integer flag,String time){ public Result selectFenXiaoMoney(Long sysUserId, Integer flag, String time) {
//一级 //一级
Double oneMoney = ordersService.selectFenXiaoMoney(1, sysUserId, flag, time); Double oneMoney = ordersService.selectFenXiaoMoney(1, sysUserId, flag, time);
//二级 //二级
@@ -123,25 +152,25 @@ public class OrdersController extends AbstractController {
Double qdMoney = ordersService.selectFenXiaoMoney(3, sysUserId, flag, time); Double qdMoney = ordersService.selectFenXiaoMoney(3, sysUserId, flag, time);
//总分销 //总分销
Double sumMoney = ordersService.selectFenXiaoMoney(4, sysUserId, flag, time); Double sumMoney = ordersService.selectFenXiaoMoney(4, sysUserId, flag, time);
Map<String,Object> result=new HashMap<>(); Map<String, Object> result = new HashMap<>();
result.put("oneMoney",oneMoney); result.put("oneMoney", oneMoney);
result.put("twoMoney",twoMoney); result.put("twoMoney", twoMoney);
result.put("qdMoney",qdMoney); result.put("qdMoney", qdMoney);
result.put("sumMoney",sumMoney); result.put("sumMoney", sumMoney);
return Result.success().put("data",result); return Result.success().put("data", result);
} }
@GetMapping("/selectOrdersCountStatisticsByYear") @GetMapping("/selectOrdersCountStatisticsByYear")
@ApiOperation("订单数量统计") @ApiOperation("订单数量统计")
public Result selectOrdersCountStatisticsByYear(String startTime,String endTime){ public Result selectOrdersCountStatisticsByYear(String startTime, String endTime) {
//总数量 0待支付 1已支付 2已退款 //总数量 0待支付 1已支付 2已退款
List<Integer> ordersCountList=new ArrayList<>(); List<Integer> ordersCountList = new ArrayList<>();
List<Integer> ordersDaiFuKuanCountList=new ArrayList<>(); List<Integer> ordersDaiFuKuanCountList = new ArrayList<>();
List<Integer> ordersYiZhiFuCountList=new ArrayList<>(); List<Integer> ordersYiZhiFuCountList = new ArrayList<>();
List<Integer> ordersYiTuiKuanLunCountList=new ArrayList<>(); List<Integer> ordersYiTuiKuanLunCountList = new ArrayList<>();
List<String> year=new ArrayList<>(); List<String> year = new ArrayList<>();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance(); Calendar calendar = Calendar.getInstance();
Date parse = null; Date parse = null;
try { try {
parse = simpleDateFormat.parse(startTime); parse = simpleDateFormat.parse(startTime);
@@ -149,7 +178,7 @@ public class OrdersController extends AbstractController {
e.printStackTrace(); e.printStackTrace();
} }
calendar.setTime(parse); calendar.setTime(parse);
while (true){ while (true) {
String dateTime = simpleDateFormat.format(calendar.getTime()); String dateTime = simpleDateFormat.format(calendar.getTime());
//状态 0待支付 1已支付 2已退款 //状态 0待支付 1已支付 2已退款
//总订单数 //总订单数
@@ -165,22 +194,17 @@ public class OrdersController extends AbstractController {
Integer ordersQuXiaoCount = ordersService.selectOrdersCountStatisticsByYear(1, dateTime, 2); Integer ordersQuXiaoCount = ordersService.selectOrdersCountStatisticsByYear(1, dateTime, 2);
ordersYiTuiKuanLunCountList.add(ordersQuXiaoCount); ordersYiTuiKuanLunCountList.add(ordersQuXiaoCount);
year.add(dateTime); year.add(dateTime);
if(dateTime.equals(endTime)){ if (dateTime.equals(endTime)) {
break; break;
} }
calendar.add(Calendar.DATE,1); calendar.add(Calendar.DATE, 1);
} }
Map<String,Object> result=new HashMap<>(); Map<String, Object> result = new HashMap<>();
result.put("ordersCountList",ordersCountList); result.put("ordersCountList", ordersCountList);
result.put("ordersDaiFuKuanCountList",ordersDaiFuKuanCountList); result.put("ordersDaiFuKuanCountList", ordersDaiFuKuanCountList);
result.put("ordersYiZhiFuCountList",ordersYiZhiFuCountList); result.put("ordersYiZhiFuCountList", ordersYiZhiFuCountList);
result.put("ordersYiTuiKuanLunCountList",ordersYiTuiKuanLunCountList); result.put("ordersYiTuiKuanLunCountList", ordersYiTuiKuanLunCountList);
result.put("year",year); result.put("year", year);
return Result.success().put("data",result); return Result.success().put("data", result);
} }
} }

View File

@@ -22,6 +22,7 @@ public interface CashOutDao extends BaseMapper<CashOut> {
List<CashOut> selectYesterday(); List<CashOut> selectYesterday();
Double selectCashOutSum(@Param("userId") Long userId, @Param("startTime") Date startTime, @Param("endTime") Date endTime); Double selectCashOutSum(@Param("userId") Long userId, @Param("startTime") Date startTime, @Param("endTime") Date endTime);
Double selectSysUserCashOutSum(@Param("sysUserId") Long sysUserId, @Param("time") String time);
Double sumMoney(@Param("time") String time, @Param("flag") Integer flag); Double sumMoney(@Param("time") String time, @Param("flag") Integer flag);

View File

@@ -19,6 +19,10 @@
select sum(money) from cash_out where state in (0,1) and user_id=#{userId} and date_format(create_at,'%Y-%m-%d') between #{startTime} and #{endTime} select sum(money) from cash_out where state in (0,1) and user_id=#{userId} and date_format(create_at,'%Y-%m-%d') between #{startTime} and #{endTime}
</select> </select>
<select id="selectSysUserCashOutSum" resultType="Double">
select sum(money) from cash_out where state = 1 and sys_user_id=#{sysUserId} and create_at &gt; #{time}
</select>
<select id="sumMoney" resultType="Double"> <select id="sumMoney" resultType="Double">
select sum(money) from cash_out where state =1 select sum(money) from cash_out where state =1
<if test="flag!=null and flag==1"> <if test="flag!=null and flag==1">