From 24f17f011d2780073c56a96abcc8792c0587b3df Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Fri, 31 Oct 2025 19:50:13 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=B4=BB=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wallet/api/vo/act/ActCancelItemVo.java | 12 +++++ .../controller/act/ActCancelController.java | 7 +++ .../wallet/service/ActCancelService.java | 5 +++ .../impl/act/ActCancelItemServiceImpl.java | 45 +++++++++++++++---- .../impl/act/ActCancelServiceImpl.java | 12 ++++- 5 files changed, 71 insertions(+), 10 deletions(-) diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/act/ActCancelItemVo.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/act/ActCancelItemVo.java index 2f3b6469f..349a3c8f4 100644 --- a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/act/ActCancelItemVo.java +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/act/ActCancelItemVo.java @@ -3,6 +3,8 @@ package com.bsd.pjcloud.wallet.api.vo.act; import com.bsd.pjcloud.wallet.api.entity.act.ActCancelItemEntity; import lombok.Data; +import java.time.LocalDateTime; + @Data public class ActCancelItemVo extends ActCancelItemEntity { @@ -26,4 +28,14 @@ public class ActCancelItemVo extends ActCancelItemEntity { */ private Integer activeCancelPrice; + /** + * 活动名称 + */ + private String actTitlel; + + /** + * 活动结束时间 + */ + private LocalDateTime actExpireTime; + } diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/act/ActCancelController.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/act/ActCancelController.java index 129ea5f2d..8b691cd22 100644 --- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/act/ActCancelController.java +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/act/ActCancelController.java @@ -39,6 +39,13 @@ public class ActCancelController { return R.ok(actCancelService.getDetailByNoticeId(id)); } + @Operation(summary = "根据活动id查询核销活动", description = "根据活动id查询核销活动") + @GetMapping("/app/detail-by-id") + public R getDetailById(@RequestParam Long id) { + return R.ok(actCancelService.getDetailById(id)); + } + + /* ************************************* end app end ************************************* */ @Operation(summary = "分页查询", description = "分页查询") diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/ActCancelService.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/ActCancelService.java index 92fbfafe6..dca25d064 100644 --- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/ActCancelService.java +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/ActCancelService.java @@ -27,6 +27,11 @@ public interface ActCancelService extends IService { */ ActCancelEntity getDetailByNoticeId(Long noticeId); + /** + * 根据活动id查询核销活动 + */ + ActCancelEntity getDetailById(Long id); + /** * 根据ids删除 */ diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelItemServiceImpl.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelItemServiceImpl.java index 9282751cf..692d61202 100644 --- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelItemServiceImpl.java +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelItemServiceImpl.java @@ -12,10 +12,10 @@ import com.bsd.pjcloud.common.core.constant.CommonRoleConstant; import com.bsd.pjcloud.common.core.constant.enums.MerchantTypeEnum; import com.bsd.pjcloud.common.core.util.BeanUtils; import com.bsd.pjcloud.common.core.util.CollectionUtils; -import com.bsd.pjcloud.common.data.resolver.ParamResolver; import com.bsd.pjcloud.common.security.service.PjcloudUser; import com.bsd.pjcloud.wallet.api.constant.WalletTypeEnum; import com.bsd.pjcloud.wallet.api.constant.act.ActCancelStatusEnum; +import com.bsd.pjcloud.wallet.api.constant.act.ActStatusEnum; import com.bsd.pjcloud.wallet.api.dto.act.ActCancelItemDto; import com.bsd.pjcloud.wallet.api.entity.WalletManageEntity; import com.bsd.pjcloud.wallet.api.entity.act.ActCancelEntity; @@ -116,6 +116,23 @@ public class ActCancelItemServiceImpl extends ServiceImpl actIds = list.stream().map(ActCancelItemVo::getActId).distinct().filter(ObjectUtil::isNotEmpty).toList(); + if (ObjectUtil.isNotEmpty(actIds)) { + // 活动信息 + List actList = actCancelMapper.selectList(new LambdaQueryWrapper() + .in(ActCancelEntity::getId, actIds) + ); + if (ObjectUtil.isNotEmpty(actList)) { + Map actMap = CollectionUtils.convertMap(actList, ActCancelEntity::getId); + for (ActCancelItemVo item : list) { + ActCancelEntity act = actMap.get(item.getActId()); + if (ObjectUtil.isNotEmpty(act)) { + item.setActTitlel(act.getActTitle()); + item.setActExpireTime(act.getExpireTime()); + } + } + } + } } /** @@ -126,25 +143,28 @@ public class ActCancelItemServiceImpl extends ServiceImpl() .eq(ActCancelItemEntity::getActId, actId) .eq(ActCancelItemEntity::getReceiverUserId, user.getId()) ); - if (ObjectUtil.isEmpty(detail)) throw new RuntimeException("您未领取优惠券,请前往领取"); + if (ObjectUtil.isEmpty(detail)) return null; if (ObjectUtil.isNotEmpty(detail.getExpireTime())) { if (detail.getExpireTime().isBefore(LocalDateTime.now())) { throw new RuntimeException("您领取的优惠券已过期"); } } - return BeanUtil.toBean(detail, ActCancelItemVo.class); + ActCancelItemVo result = BeanUtil.toBean(detail, ActCancelItemVo.class); + result.setActTitlel(act.getActTitle()); + result.setActExpireTime(act.getExpireTime()); + return result; } /** @@ -249,9 +275,10 @@ public class ActCancelItemServiceImpl extends ServiceImpl() .eq(ObjectUtil.isNotEmpty(userId), ActCancelItemEntity::getReceiverUserId, userId) + .eq(ObjectUtil.isNotEmpty(actId), ActCancelItemEntity::getActId, actId) ); return count > 0; } diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelServiceImpl.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelServiceImpl.java index a5ee26f3f..efaa071f4 100644 --- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelServiceImpl.java +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/act/ActCancelServiceImpl.java @@ -68,7 +68,7 @@ public class ActCancelServiceImpl extends ServiceImpl() + .eq(ActCancelEntity::getId, id) + ); + } + /** * 根据ids删除 */