From bd3c29a8710d46dc1c2465e64521044d0f1cd356 Mon Sep 17 00:00:00 2001 From: Cui Zhi Feng <cuizf@fengyuntec.com> Date: 星期日, 01 九月 2024 18:05:57 +0800 Subject: [PATCH] 订单详情 兑换商品列表 --- src/main/java/com/mzl/flower/service/point/PointGoodsService.java | 21 +++++++++++++++++++++ 1 files changed, 21 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/mzl/flower/service/point/PointGoodsService.java b/src/main/java/com/mzl/flower/service/point/PointGoodsService.java index da76c43..d7cca87 100644 --- a/src/main/java/com/mzl/flower/service/point/PointGoodsService.java +++ b/src/main/java/com/mzl/flower/service/point/PointGoodsService.java @@ -24,6 +24,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDate; import java.util.List; @Service @@ -147,6 +148,8 @@ detail.setPoint(record.getTotalPoint()); detail.setChangeType(Constants.POINT_CHANGE_TYPE.reduce.name()); detail.setType(Constants.POINT_TYPE.exchange.name()); + detail.setRecordDate(LocalDate.now()); + detail.setRemarks(record.getName()); detail.create(SecurityUtils.getUserId()); customerPointDetailMapper.insert(detail); @@ -170,8 +173,26 @@ if(!Constants.POINT_GOODS_RECORD_STATUS.A.name().equals(record.getStatus())){ throw new ValidationException("兑换券已使用或过期"); } + if(!SecurityUtils.getUserId().equals(record.getUserId())){ + throw new ValidationException("兑换券不属于当前用户"); + } record.setStatus(Constants.POINT_GOODS_RECORD_STATUS.U.name()); record.setOrderId(orderId); pointGoodsRecordMapper.updateById(record); } + public void revertExchangeGoods(Long recordId) { + PointGoodsRecord record = pointGoodsRecordMapper.selectById(recordId); + if(record == null){ + throw new ValidationException("兑换券不存在"); + } + if(!Constants.POINT_GOODS_RECORD_STATUS.U.name().equals(record.getStatus())){ + throw new ValidationException("兑换券未使用或过期"); + } + if(!SecurityUtils.getUserId().equals(record.getUserId())){ + throw new ValidationException("兑换券不属于当前用户"); + } + record.setStatus(Constants.POINT_GOODS_RECORD_STATUS.A.name()); + record.setOrderId(null); + pointGoodsRecordMapper.updateById(record); + } } -- Gitblit v1.9.3