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