From b02c10cc0f53a3dac95045bea33eb9aa3c13e3e3 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 02 Jul 2021 10:39:49 +0800
Subject: [PATCH] 20210630 积分拨付

---
 gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java |   28 +++++++++++++++++++---------
 1 files changed, 19 insertions(+), 9 deletions(-)

diff --git a/gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java b/gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java
index 1ae3967..290ded6 100644
--- a/gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java
+++ b/gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java
@@ -168,9 +168,10 @@
         BigDecimal totalScore = BigDecimal.ZERO;
         for (JhyOrderConfirmItemsDto item : confirmDto.getItems()) {
             JhyOrderItems orderItem = jhyOrderItemsMapper.selectByPrimaryKey(item.getId());
-            BigDecimal total = orderItem.getPrice().multiply(BigDecimal.valueOf(40)).multiply(new BigDecimal(item.getWeight()));
+            BigDecimal weight = StrUtil.isNotBlank(item.getWeight()) ? new BigDecimal(item.getWeight()) : BigDecimal.ZERO;
+            BigDecimal total = orderItem.getPrice().multiply(BigDecimal.valueOf(40)).multiply(weight);
             orderItem.setScore(total.setScale(0, BigDecimal.ROUND_DOWN).toString());
-            orderItem.setWeight(StrUtil.isNotBlank(item.getWeight()) ? new BigDecimal(item.getWeight()) : BigDecimal.ZERO);
+            orderItem.setWeight(weight);
             jhyOrderItemsMapper.updateByPrimaryKey(orderItem);
 
             totalScore = totalScore.add(total);
@@ -192,20 +193,29 @@
         jhyScoreDetail.setOrderNo(order.getOrderNo());
         jhyScoreDetail.setUserId(order.getJhyId());
         jhyScoreDetail.setType(ScoreDetails.SCORE_TYPE_PAY);
-        jhyScoreDetail.setChangeScore(totalScore.negate());
-        jhyScoreDetail.setOriginalScore(jhyScore);
-        jhyScoreDetail.setCurrentScore(jhyScore.subtract(totalScore));
+        jhyScoreDetail.setChangeScore(totalScore.negate().setScale( 0, BigDecimal.ROUND_DOWN ));
+        jhyScoreDetail.setOriginalScore(jhyScore.setScale( 0, BigDecimal.ROUND_DOWN ));
+        jhyScoreDetail.setCurrentScore(jhyScore.subtract(totalScore).setScale( 0, BigDecimal.ROUND_DOWN ));
+        jhyScoreDetail.setCreatedTime(new Date());
         scoreDetailsMapper.insert(jhyScoreDetail);
+
+        jhyAccount.setCollectScore(jhyScore.subtract(totalScore).setScale( 0, BigDecimal.ROUND_DOWN ).toString());
+        accountMapper.updateByPrimaryKey(jhyAccount);
 
         AccountInfo userAccount = accountMapper.selectAccountInfoByUserId(order.getUserId());
         BigDecimal userScore = StrUtil.isBlank(userAccount.getCollectScore()) ? BigDecimal.ZERO : new BigDecimal(userAccount.getCollectScore());
         ScoreDetails userScoreDetail = new ScoreDetails();
         userScoreDetail.setOrderNo(order.getOrderNo());
-        userScoreDetail.setUserId(order.getJhyId());
+//        userScoreDetail.setUserId(order.getJhyId());
+        userScoreDetail.setUserId(order.getUserId());
         userScoreDetail.setType(ScoreDetails.SCORE_TYPE_EXCHANGE);
-        userScoreDetail.setChangeScore(totalScore);
-        userScoreDetail.setOriginalScore(userScore);
-        userScoreDetail.setCurrentScore(userScore.add(totalScore));
+        userScoreDetail.setChangeScore(totalScore.setScale( 0, BigDecimal.ROUND_DOWN ));
+        userScoreDetail.setOriginalScore(userScore.setScale( 0, BigDecimal.ROUND_DOWN ));
+        userScoreDetail.setCurrentScore(userScore.add(totalScore).setScale( 0, BigDecimal.ROUND_DOWN ));
+        userScoreDetail.setCreatedTime(new Date());
         scoreDetailsMapper.insert(userScoreDetail);
+
+        userAccount.setCollectScore(userScore.add(totalScore).setScale( 0, BigDecimal.ROUND_DOWN ).toString());
+        accountMapper.updateByPrimaryKey(userAccount);
     }
 }

--
Gitblit v1.9.1