|
|
@@ -30,6 +30,7 @@ import org.apache.commons.collections.CollectionUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.time.LocalDate;
|
|
|
import java.time.ZoneId;
|
|
|
@@ -150,11 +151,8 @@ public class UserScoreDetailServiceImpl extends ServiceImpl<UserScoreDetailMappe
|
|
|
|
|
|
@Override
|
|
|
public IPage<PointsRecord> doGetScorePage(PageParam<PointsRecord> page, String userId, Integer platform) {
|
|
|
- IPage<PointsRecord> pointsRecordIPage = pointsRecordMapper.selectPage(page, new LambdaQueryWrapper<PointsRecord>()
|
|
|
- .eq(PointsRecord::getUserId, userId)
|
|
|
- .eq(PointsRecord::getChannelId, platform)
|
|
|
- .orderByDesc(PointsRecord::getCreationDate)
|
|
|
- );
|
|
|
+ IPage<PointsRecord> pointsRecordIPage = pointsRecordMapper.findPage(page,userId,platform);
|
|
|
+ Long l = pointsRecordMapper.statisticsPoint(userId, platform);
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("MM月dd日 HH:mm");
|
|
|
List<PointsRecord> collect = pointsRecordIPage.getRecords().stream().flatMap((pointsRecord) -> {
|
|
|
pointsRecord.setCreationDateStr(sdf.format(pointsRecord.getCreationDate()));
|
|
|
@@ -165,31 +163,31 @@ public class UserScoreDetailServiceImpl extends ServiceImpl<UserScoreDetailMappe
|
|
|
case 1:
|
|
|
int variablePoints = pointsRecord.getVariablePoints() != null ?
|
|
|
pointsRecord.getVariablePoints().intValue() : 0;
|
|
|
- int remainingPoints = pointsRecord.getPoints().intValue() - variablePoints;
|
|
|
-
|
|
|
- if (remainingPoints > 0 && isExpiredToday(pointsRecord.getExpiryDate())) {
|
|
|
- PointsRecord expiredRecord = new PointsRecord();
|
|
|
- // 复制关键属性(根据实际属性补充)
|
|
|
- expiredRecord.setId(pointsRecord.getId()); // 若ID唯一需注意业务逻辑
|
|
|
- expiredRecord.setCreationDate(pointsRecord.getCreationDate());
|
|
|
- expiredRecord.setPointsType(pointsRecord.getPointsType());
|
|
|
- expiredRecord.setPoints(pointsRecord.getPoints());
|
|
|
- expiredRecord.setVariablePoints(pointsRecord.getVariablePoints());
|
|
|
- expiredRecord.setExpiryDate(pointsRecord.getExpiryDate());
|
|
|
- expiredRecord.setCurrentlyAvailablePoints(pointsRecord.getCurrentlyAvailablePoints());
|
|
|
-
|
|
|
- // 设置复制对象的显示属性
|
|
|
- expiredRecord.setCreationDateStr(pointsRecord.getCreationDateStr()); // 复用已格式化的日期
|
|
|
- expiredRecord.setPointsTypeStr("过期扣减"); // 示例:区分类型
|
|
|
- expiredRecord.setVariablePointsStr("-" + remainingPoints); // 示例:显示过期数量
|
|
|
- // 设置原对象为过期记录
|
|
|
- expiredRecord.setPointsTypeStr("过期");
|
|
|
- mark = "-";
|
|
|
- expiredRecord.setVariablePointsStr(mark +
|
|
|
- (pointsRecord.getVariablePoints() != null ?
|
|
|
- pointsRecord.getVariablePoints() : pointsRecord.getPoints()));
|
|
|
- recordsToAdd.add(expiredRecord); // 添加复制对象
|
|
|
- }
|
|
|
+// int remainingPoints = pointsRecord.getPoints().intValue() - variablePoints;
|
|
|
+//
|
|
|
+// if (remainingPoints > 0 && isExpiredToday(pointsRecord.getExpiryDate())) {
|
|
|
+// PointsRecord expiredRecord = new PointsRecord();
|
|
|
+// // 复制关键属性(根据实际属性补充)
|
|
|
+// expiredRecord.setId(pointsRecord.getId()); // 若ID唯一需注意业务逻辑
|
|
|
+// expiredRecord.setCreationDate(pointsRecord.getCreationDate());
|
|
|
+// expiredRecord.setPointsType(pointsRecord.getPointsType());
|
|
|
+// expiredRecord.setPoints(pointsRecord.getPoints());
|
|
|
+// expiredRecord.setVariablePoints(pointsRecord.getVariablePoints());
|
|
|
+// expiredRecord.setExpiryDate(pointsRecord.getExpiryDate());
|
|
|
+// expiredRecord.setCurrentlyAvailablePoints(pointsRecord.getCurrentlyAvailablePoints());
|
|
|
+//
|
|
|
+// // 设置复制对象的显示属性
|
|
|
+// expiredRecord.setCreationDateStr(pointsRecord.getCreationDateStr()); // 复用已格式化的日期
|
|
|
+// expiredRecord.setPointsTypeStr("过期扣减"); // 示例:区分类型
|
|
|
+// expiredRecord.setVariablePointsStr("-" + remainingPoints); // 示例:显示过期数量
|
|
|
+// // 设置原对象为过期记录
|
|
|
+// expiredRecord.setPointsTypeStr("过期");
|
|
|
+// mark = "-";
|
|
|
+// expiredRecord.setVariablePointsStr(mark +
|
|
|
+// (pointsRecord.getVariablePoints() != null ?
|
|
|
+// pointsRecord.getVariablePoints() : pointsRecord.getPoints()));
|
|
|
+// recordsToAdd.add(expiredRecord); // 添加复制对象
|
|
|
+// }
|
|
|
pointsRecord.setPointsTypeStr("充值");
|
|
|
mark = "+";
|
|
|
pointsRecord.setVariablePointsStr(mark + pointsRecord.getPoints());
|
|
|
@@ -202,34 +200,45 @@ public class UserScoreDetailServiceImpl extends ServiceImpl<UserScoreDetailMappe
|
|
|
pointsRecord.getVariablePoints() : "0"));
|
|
|
break;
|
|
|
case 3:
|
|
|
- if (isExpiredToday(pointsRecord.getExpiryDate())&&pointsRecord.getPointsAudit()!=3) {
|
|
|
- PointsRecord expiredRecord = new PointsRecord();
|
|
|
- // 复制关键属性(根据实际属性补充)
|
|
|
- expiredRecord.setId(pointsRecord.getId()); // 若ID唯一需注意业务逻辑
|
|
|
- expiredRecord.setCreationDate(pointsRecord.getCreationDate());
|
|
|
- expiredRecord.setPointsType(pointsRecord.getPointsType());
|
|
|
- expiredRecord.setPoints(pointsRecord.getPoints());
|
|
|
- expiredRecord.setVariablePoints(pointsRecord.getVariablePoints());
|
|
|
- expiredRecord.setExpiryDate(pointsRecord.getExpiryDate());
|
|
|
- expiredRecord.setCurrentlyAvailablePoints(pointsRecord.getCurrentlyAvailablePoints());
|
|
|
-
|
|
|
- // 设置复制对象的显示属性
|
|
|
- expiredRecord.setCreationDateStr(pointsRecord.getCreationDateStr()); // 复用已格式化的日期
|
|
|
- expiredRecord.setPointsTypeStr("过期扣减"); // 示例:区分类型
|
|
|
- if (pointsRecord.getPointsAudit()==1){
|
|
|
- expiredRecord.setVariablePointsStr("-" + pointsRecord.getPoints()); // 示例:显示过期数量
|
|
|
- } else if (pointsRecord.getPointsAudit()==2) {
|
|
|
- expiredRecord.setVariablePointsStr("-" + (pointsRecord.getPoints().intValue()-pointsRecord.getVariablePoints().intValue())); // 示例:显示过期数量
|
|
|
- }
|
|
|
-
|
|
|
- // 设置原对象为过期记录
|
|
|
- expiredRecord.setPointsTypeStr("过期");
|
|
|
- recordsToAdd.add(expiredRecord); // 添加复制对象
|
|
|
- }
|
|
|
+// if (isExpiredToday(pointsRecord.getExpiryDate())&&pointsRecord.getPointsAudit()!=3) {
|
|
|
+// PointsRecord expiredRecord = new PointsRecord();
|
|
|
+// // 复制关键属性(根据实际属性补充)
|
|
|
+// expiredRecord.setId(pointsRecord.getId()); // 若ID唯一需注意业务逻辑
|
|
|
+// expiredRecord.setCreationDate(pointsRecord.getCreationDate());
|
|
|
+// expiredRecord.setPointsType(pointsRecord.getPointsType());
|
|
|
+// expiredRecord.setPoints(pointsRecord.getPoints());
|
|
|
+// expiredRecord.setVariablePoints(pointsRecord.getVariablePoints());
|
|
|
+// expiredRecord.setExpiryDate(pointsRecord.getExpiryDate());
|
|
|
+// expiredRecord.setCurrentlyAvailablePoints(pointsRecord.getCurrentlyAvailablePoints());
|
|
|
+//
|
|
|
+// // 设置复制对象的显示属性
|
|
|
+// expiredRecord.setCreationDateStr(pointsRecord.getCreationDateStr()); // 复用已格式化的日期
|
|
|
+// expiredRecord.setPointsTypeStr("过期扣减"); // 示例:区分类型
|
|
|
+// if (pointsRecord.getPointsAudit()==1){
|
|
|
+// expiredRecord.setVariablePointsStr("-" + pointsRecord.getPoints()); // 示例:显示过期数量
|
|
|
+// } else if (pointsRecord.getPointsAudit()==2) {
|
|
|
+// expiredRecord.setVariablePointsStr("-" + (pointsRecord.getPoints().intValue()-pointsRecord.getVariablePoints().intValue())); // 示例:显示过期数量
|
|
|
+// }
|
|
|
+//
|
|
|
+// // 设置原对象为过期记录
|
|
|
+// expiredRecord.setPointsTypeStr("过期");
|
|
|
+// recordsToAdd.add(expiredRecord); // 添加复制对象
|
|
|
+// }
|
|
|
pointsRecord.setPointsTypeStr("退款");
|
|
|
mark = "+";
|
|
|
pointsRecord.setVariablePointsStr(mark + pointsRecord.getPoints());
|
|
|
break;
|
|
|
+ case 4:
|
|
|
+ if (l==null){
|
|
|
+ pointsRecord.setCurrentlyAvailablePoints(BigDecimal.ZERO);
|
|
|
+ }else {
|
|
|
+ pointsRecord.setCurrentlyAvailablePoints(BigDecimal.valueOf(l));
|
|
|
+ }
|
|
|
+
|
|
|
+ pointsRecord.setPointsTypeStr("过期");
|
|
|
+ mark = "-";
|
|
|
+ pointsRecord.setVariablePointsStr(mark + pointsRecord.getPoints());
|
|
|
+ break;
|
|
|
}
|
|
|
|
|
|
// 设置可用积分(原对象和复制对象都会执行)
|