|
@@ -686,7 +686,7 @@ public class ApiController {
|
|
|
// 获取会员已结算信息和和待结算信息
|
|
|
List<WmScorePackageStatus> packageStatuses = wmScorePackageStatusService.list(Wrappers.<WmScorePackageStatus>lambdaQuery()
|
|
|
.eq(WmScorePackageStatus::getUserId, sysU.getUserId())
|
|
|
- .eq(WmScorePackageStatus::getStatus, "2"));
|
|
|
+ .eq(WmScorePackageStatus::getStatus, PackageStatusEnum.APPROVED.val()));
|
|
|
|
|
|
List<String> ids = packageStatuses.stream().map(WmScorePackageStatus::getPackageId).collect(Collectors.toList());
|
|
|
|
|
@@ -696,14 +696,21 @@ public class ApiController {
|
|
|
if (CollUtil.isNotEmpty(ids)) {
|
|
|
List<WmScorePackage> packages = wmScorePackageService.listByIds(ids);
|
|
|
|
|
|
- Map<String, Integer> collect = packages.stream().filter(pkg -> "4".equals(pkg.getScorePackageStatus()) || "6".equals(pkg.getScorePackageStatus()))
|
|
|
- .collect(Collectors.groupingBy(WmScorePackage::getScorePackageStatus))
|
|
|
+ // 记录统计状态对应的 积分包状态
|
|
|
+ // 已结算
|
|
|
+ List<String> paidStatuses = Collections.singletonList(PersonalScoreRecordVO.PersonalScoreRecordStatus.PAID.getScorePackageStatus());
|
|
|
+ // 待结算
|
|
|
+ List<String> unpaidStatuses = StrUtil.split(PersonalScoreRecordVO.PersonalScoreRecordStatus.UNPAID.getScorePackageStatus(), StrUtil.COMMA);
|
|
|
+
|
|
|
+ Map<PersonalScoreRecordVO.PersonalScoreRecordStatus, Integer> collect = packages.stream()
|
|
|
+ .filter(pkg -> paidStatuses.contains(pkg.getScorePackageStatus()) || unpaidStatuses.contains(pkg.getScorePackageStatus()))
|
|
|
+ .collect(Collectors.groupingBy(wmScorePackage -> PersonalScoreRecordVO.PersonalScoreRecordStatus.getByScorePackageStatus(wmScorePackage.getScorePackageStatus())))
|
|
|
.entrySet().stream()
|
|
|
.collect(Collectors.toMap(Map.Entry::getKey, e -> e.getValue().stream().mapToInt(WmScorePackage::getScore).sum()));
|
|
|
|
|
|
if (CollUtil.isNotEmpty(collect)) {
|
|
|
- paid = collect.get("6") != null ? collect.get("6") : 0;
|
|
|
- unpaid = collect.get("4") != null ? collect.get("4") : 0;
|
|
|
+ paid = collect.get(PersonalScoreRecordVO.PersonalScoreRecordStatus.PAID) != null ? collect.get(PersonalScoreRecordVO.PersonalScoreRecordStatus.PAID) : 0;
|
|
|
+ unpaid = collect.get(PersonalScoreRecordVO.PersonalScoreRecordStatus.UNPAID) != null ? collect.get(PersonalScoreRecordVO.PersonalScoreRecordStatus.UNPAID) : 0;
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -4392,32 +4399,34 @@ public class ApiController {
|
|
|
@GetMapping("/page-accumulative-score")
|
|
|
public R<Page<PersonalScoreRecordVO>> pageAccumulativeScore(Page<PersonalScoreRecordVO> page,
|
|
|
@RequestParam(value = "status", required = true) PersonalScoreRecordVO.PersonalScoreRecordStatus status) {
|
|
|
+
|
|
|
+ Integer userId = SecurityUtils.getUser().getId();
|
|
|
+ // 记录统计状态对应的 积分包状态
|
|
|
+ List<String> scorePackageStatuses = StrUtil.split(status.getScorePackageStatus(), StrUtil.COMMA);
|
|
|
+
|
|
|
// 获取当前用户任务领包记录
|
|
|
List<WmScorePackageStatus> packageStatuses = wmScorePackageStatusService.list(Wrappers.<WmScorePackageStatus>lambdaQuery()
|
|
|
- .eq(WmScorePackageStatus::getUserId, SecurityUtils.getUser().getId())
|
|
|
+ .eq(WmScorePackageStatus::getUserId, userId)
|
|
|
.eq(WmScorePackageStatus::getStatus, PackageStatusEnum.APPROVED.val()));
|
|
|
if (CollUtil.isEmpty(packageStatuses)) {
|
|
|
return R.ok(page);
|
|
|
}
|
|
|
|
|
|
// 查询积分包
|
|
|
- List<String> ids = packageStatuses.stream().map(WmScorePackageStatus::getPackageId).collect(Collectors.toList());
|
|
|
+ Set<String> ids = packageStatuses.stream().map(WmScorePackageStatus::getPackageId).collect(Collectors.toSet());
|
|
|
List<WmScorePackage> packages = wmScorePackageService.listByIds(ids);
|
|
|
// 转为map key-积分包id,value-积分包名称
|
|
|
Map<String, String> packageMap = packages.stream()
|
|
|
- .filter(pkg -> status.getScorePackageStatus().equals(pkg.getScorePackageStatus()))
|
|
|
+ .filter(pkg -> scorePackageStatuses.contains(pkg.getScorePackageStatus()))
|
|
|
.collect(Collectors.toMap(WmScorePackage::getId, WmScorePackage::getScorePackageName));
|
|
|
|
|
|
- // 过滤得已结算、待结算积分包id
|
|
|
- Set<String> packageIds = packages.stream()
|
|
|
- .filter(pkg -> status.getScorePackageStatus().equals(pkg.getScorePackageStatus()))
|
|
|
- .map(WmScorePackage::getId)
|
|
|
- .collect(Collectors.toSet());
|
|
|
-
|
|
|
- if (CollUtil.isEmpty(packageIds)) {
|
|
|
+ if (CollUtil.isEmpty(packageMap)) {
|
|
|
return R.ok(page);
|
|
|
}
|
|
|
|
|
|
+ // 过滤得已结算、待结算积分包id
|
|
|
+ Set<String> packageIds = packageMap.keySet();
|
|
|
+
|
|
|
// 查询taskType
|
|
|
List<WmTaskType> taskTypeList = wmTaskTypeService.list(Wrappers.<WmTaskType>lambdaQuery()
|
|
|
.eq(WmTaskType::getTaskTypeLevel, "1")
|
|
@@ -4430,6 +4439,7 @@ public class ApiController {
|
|
|
// 查询任务
|
|
|
Page<WmTask> wmTaskPage = wmTaskService.page(new Page<>(page.getCurrent(), page.getSize()), Wrappers.<WmTask>lambdaQuery()
|
|
|
.in(WmTask::getScorePackageId, packageIds)
|
|
|
+ .eq(WmTask::getTaskUserId, userId)
|
|
|
.eq(WmTask::getTaskStatus, TaskStatusEnum.APPROVED.val())
|
|
|
.eq(WmTask::getDelFlag, DelEnum.NOT_DEL.val())
|
|
|
.eq(WmTask::getEnableFlag, EnableEnum.ENABLE.val()));
|