From da1a5ead936791e9a9494067da7980f7e5144693 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 15 一月 2025 15:03:25 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java | 139 ++++++++++++++++++++--------------------------
1 files changed, 60 insertions(+), 79 deletions(-)
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java
index 3b282f2..33f4f12 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java
@@ -1,19 +1,20 @@
package com.ruoyi.account.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.account.api.model.UserPoint;
-import com.ruoyi.account.excel.UserPointEx;
import com.ruoyi.account.service.AppUserService;
import com.ruoyi.account.service.UserPointService;
-import com.ruoyi.account.vo.CommissionStatistics;
+import com.ruoyi.account.vo.TransferPoint;
import com.ruoyi.account.vo.UserPointDetailVO;
import com.ruoyi.account.vo.UserPointStatistics;
import com.ruoyi.account.vo.UserPointVO;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.common.security.utils.SecurityUtils;
@@ -30,8 +31,6 @@
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.YearMonth;
-import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
import java.util.List;
/**
@@ -68,10 +67,10 @@
*/
@GetMapping("/getUserPointDetail")
@ApiOperation("获取变更明细")
- public TableDataInfo<UserPointDetailVO> getUserPointDetail(@ApiParam("指定日期") @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate date,
- @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " +
+ public R<PageInfo<UserPointDetailVO>> getUserPointDetail(@ApiParam("指定日期") @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate date,
+ @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " +
"5 = 门店业绩积分 6 =门店返佣积分7=技师业绩积分8 =转赠积分 9 =做工积分 " +
- "10 =注册积分)") Integer type) {
+ "10 =注册积分)") Integer type, Integer pageCurr, Integer pageSize) {
LocalDateTime startTime = null;
LocalDateTime endTime = null;
if (date != null) {
@@ -86,9 +85,8 @@
endTime = lastDayOfMonth.atTime(LocalTime.MAX);
}
- startPage();
- List<UserPointDetailVO> list = userPointService.getUserPointDetail(SecurityUtils.getUserId(), startTime, endTime, type);
- return getDataTable(list);
+ PageInfo<UserPointDetailVO> userPointDetail = userPointService.getUserPointDetail(SecurityUtils.getUserId(), startTime, endTime, type, pageCurr, pageSize);
+ return R.ok(userPointDetail);
}
/**
@@ -96,9 +94,8 @@
*/
@PostMapping("/transferPoint")
@ApiOperation("转赠积分")
- public R<Void> transferPoint(@ApiParam("积分") @RequestParam BigDecimal point, @ApiParam("手机号") @RequestParam String phone) {
- userPointService.transferPoint(point, phone);
- return R.ok();
+ public R<Void> transferPoint(@RequestBody TransferPoint transferPoint) {
+ return userPointService.transferPoint(transferPoint.getPoint(), transferPoint.getPhone());
}
@@ -134,6 +131,28 @@
return R.ok(userPointPage);
}
+ @GetMapping("/user/list")
+ @ApiOperation(value = "积分管理-用户积分明细(必传用户id)", tags = "后台")
+ public R<Page<UserPoint>> userlist(UserPoint userPoint) {
+ Page<UserPoint> page = userPointService.lambdaQuery()
+ .eq(userPoint.getType()!=null,UserPoint::getType, userPoint.getType())
+ .eq(UserPoint::getAppUserId, userPoint.getAppUserId())
+ .orderByDesc(UserPoint::getCreateTime)
+ .page(Page.of(userPoint.getPageNum(), userPoint.getPageSize()));
+ for (UserPoint record : page.getRecords()) {
+ int i = record.getHistoricalPoint() - record.getBalance();
+ if (i>0){
+ record.setVariableType(2);
+ }else if (i<0){
+ record.setVariableType(1);
+ }else{
+ record.setVariableType(0);
+ }
+ }
+ return R.ok(page);
+ }
+
+
/**
* 导出
@@ -147,78 +166,40 @@
util.exportExcel(response, userPointList, "用户积分统计");
}
- /**
- * 用户分佣统计
- */
- @GetMapping("/commissionStatistics")
- @ApiOperation(value = "用户分佣统计", tags = "管理后台-财务统计-用户分佣统计")
- public R<CommissionStatistics> commissionStatistics(UserPoint userPoint) {
- userPoint.setType(2);
- IPage<UserPoint> userPointPage = userPointService.getUserPointPage(Page.of(userPoint.getPageNum(), userPoint.getPageSize()), userPoint);
- UserPointStatistics statistics = userPointService.getStatistics(userPoint);
- CommissionStatistics commissionStatistics = new CommissionStatistics();
- commissionStatistics.setStatistics(statistics);
- commissionStatistics.setUserPointPage(userPointPage);
- return R.ok(commissionStatistics);
- }
/**
- * 导出用户分佣统计
+ * 获取积分变动记录
+ * @param userPoint
+ * @return
*/
- @GetMapping("/commissionExport")
- @ApiOperation(value = "用户分佣统计导出", tags = "管理后台-财务统计-用户分佣统计")
- public void commissionExport(HttpServletResponse response, UserPoint userPoint) {
- userPoint.setType(2);
- IPage<UserPoint> userPointPage = userPointService.getUserPointPage(Page.of(1, Integer.MAX_VALUE), userPoint);
- List<UserPoint> userPointList = userPointPage.getRecords();
- List<UserPointEx> userPointExList = new ArrayList<>();
- for (UserPoint point : userPointList) {
- UserPointEx userPointEx = new UserPointEx();
- userPointEx.setUserName(point.getUserName());
- userPointEx.setPhone(point.getPhone());
- userPointEx.setChangeTime(point.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
- userPointEx.setChangeNum(point.getVariablePoint().toString());
- Integer type = point.getType();
- switch (type) {
- case 1:
- userPointEx.setType("消费积分");
- break;
- case 2:
- userPointEx.setType("返佣积分");
- break;
- case 3:
- userPointEx.setType("拉新人积分");
- break;
- case 4:
- userPointEx.setType("兑换商品");
- break;
- case 5:
- userPointEx.setType("门店业绩");
- break;
- case 6:
- userPointEx.setType("门店返佣");
- break;
- case 7:
- userPointEx.setType("技师业绩");
- break;
- case 8:
- userPointEx.setType("转赠积分");
- break;
- case 9:
- userPointEx.setType("做工积分");
- break;
- case 10:
- userPointEx.setType("注册积分");
- break;
- default:
- userPointEx.setType("未知积分");
- }
- userPointExList.add(userPointEx);
+ @PostMapping("/getUserPointList")
+ public R<List<UserPoint>> getUserPointList(@RequestBody UserPoint userPoint){
+ LambdaQueryWrapper<UserPoint> queryWrapper = new LambdaQueryWrapper<>();
+ if(null != userPoint.getType()){
+ queryWrapper.eq(UserPoint::getType, userPoint.getType());
}
- ExcelUtil<UserPointEx> util = new ExcelUtil<>(UserPointEx.class);
- util.exportExcel(response, userPointExList, "用户分佣统计");
+ if(null != userPoint.getObjectId()){
+ queryWrapper.eq(UserPoint::getObjectId, userPoint.getObjectId());
+ }
+ if(null != userPoint.getAppUserId()){
+ queryWrapper.eq(UserPoint::getAppUserId, userPoint.getAppUserId());
+ }
+ List<UserPoint> list = userPointService.list(queryWrapper);
+ return R.ok(list);
}
+
+ /**
+ * 判断当天是否分享获得过积分
+ * @param appUserId
+ * @return
+ */
+ @PostMapping("/judgmentDailyShare")
+ public R<Boolean> judgmentDailyShare(@RequestParam("appUserId") Long appUserId){
+ long count = userPointService.count(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUserId)
+ .eq(UserPoint::getType, 4).last(" and DATE_FORMAT(NOW(), '%Y-%m-%d') = DATE_FORMAT(create_time, '%Y-%m-%d')"));
+ return R.ok(count != 0);
+ }
}
--
Gitblit v1.7.1