From 153622ed0e29399d67a6de14517e96cbc15ffdad Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 19 六月 2024 16:07:54 +0800
Subject: [PATCH] bug修改
---
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java | 35 +++++++++++++++++
ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/TGoodsServiceImpl.java | 14 ++++++-
ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/factory/StudyFallbackFactory.java | 15 +++++++
ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/feignClient/StudyClient.java | 5 ++
4 files changed, 67 insertions(+), 2 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/factory/StudyFallbackFactory.java b/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/factory/StudyFallbackFactory.java
index 234efd5..060a2e0 100644
--- a/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/factory/StudyFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/factory/StudyFallbackFactory.java
@@ -136,16 +136,31 @@
}
@Override
+ public R<TUser> userInfoParent() {
+ return R.fail("获取用户信息失败" + cause.getMessage());
+ }
+
+ @Override
public R<Boolean> addIntegralDetail(String integral, String method) {
return R.fail("生成积分明细信息失败" + cause.getMessage());
}
@Override
+ public R<Boolean> addIntegralDetailParent(String integral, String method) {
+ return R.fail("添加积分明细失败" + cause.getMessage());
+ }
+
+ @Override
public R<Boolean> exchangeIntegral(Integer integral, String method) {
return R.fail("用户积分变动失败" + cause.getMessage());
}
@Override
+ public R<Boolean> exchangeIntegralParent(Integer integral, String method) {
+ return R.fail("修改积分变动失败" + cause.getMessage());
+ }
+
+ @Override
public R<Boolean> addIntegralDetail1(String integral, String method) {
return null;
}
diff --git a/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/feignClient/StudyClient.java b/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/feignClient/StudyClient.java
index f63a6f0..d7696f5 100644
--- a/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/feignClient/StudyClient.java
+++ b/ruoyi-api/ruoyi-api-study/src/main/java/com/ruoyi/study/api/feignClient/StudyClient.java
@@ -191,6 +191,8 @@
*/
@GetMapping("/base/study/addIntegralDetail")
R<Boolean> addIntegralDetail(@RequestParam("integral") String integral, @RequestParam("method") String method);
+ @GetMapping("/base/study/addIntegralDetailParent")
+ R<Boolean> addIntegralDetailParent(@RequestParam("integral") String integral, @RequestParam("method") String method);
/**
* 用户积分变动(增加或减少)-用于远程调用
@@ -202,6 +204,9 @@
@GetMapping("/base/study/exchangeIntegral")
@ApiOperation(value = "用户积分变动", tags = {"用户积分变动"})
R<Boolean> exchangeIntegral(@RequestParam("integral") Integer integral, @RequestParam("method") String method);
+ @GetMapping("/base/study/exchangeIntegralParent")
+ @ApiOperation(value = "用户积分变动", tags = {"用户积分变动"})
+ R<Boolean> exchangeIntegralParent(@RequestParam("integral") Integer integral, @RequestParam("method") String method);
/**
* 生成积分明细-用于远程调用
diff --git a/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/TGoodsServiceImpl.java b/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/TGoodsServiceImpl.java
index 595780e..de5e855 100644
--- a/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/TGoodsServiceImpl.java
+++ b/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/TGoodsServiceImpl.java
@@ -153,6 +153,16 @@
// 扣除用户积分
result = result && studyClient.exchangeIntegral(needIntegral, Constants.BURDEN).getData();
return result;
+ }private Boolean exchangeGoodParent(GoodExchangeDTO goodExchange, Recipient recipient, Integer number,
+ Integer goodId, int needIntegral) {
+ // 兑换成功,生成订单信息、生成积分明细(积分明细需要远程调用rouyi-study服务)
+ TOrder order = orderInfo(goodExchange, recipient, number, goodId, needIntegral);
+ boolean result = orderService.save(order);
+ // 远程调用,生成积分明细
+ result = result && studyClient.addIntegralDetailParent(Constants.BURDEN + needIntegral, Constants.SHOPPING_CONSUME).getData();
+ // 扣除用户积分
+ result = result && studyClient.exchangeIntegralParent(needIntegral, Constants.BURDEN).getData();
+ return result;
}
@Override
@@ -202,7 +212,7 @@
return R.exchangeError("当前商品库存不足");
}
// 兑换成功,生成订单信息、生成积分明细(积分明细需要远程调用rouyi-study服务)
- boolean result = exchangeGood(goodExchange, recipient, number, goodId, needIntegral);
+ boolean result = exchangeGoodParent(goodExchange, recipient, number, goodId, needIntegral);
// 扣除库存
result = result && this.lambdaUpdate().set(TGoods::getTotal, good.getTotal() - number)
.eq(TGoods::getId, good.getId()).update();
@@ -211,7 +221,7 @@
return R.exchangeError("商品兑换失败!");
}
} else {
- boolean result = exchangeGood(goodExchange, recipient, number, goodId, needIntegral);
+ boolean result = exchangeGoodParent(goodExchange, recipient, number, goodId, needIntegral);
if (!result) {
return R.exchangeError("商品兑换失败!");
}
diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java
index 442f5b8..b96e876 100644
--- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java
+++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java
@@ -1616,6 +1616,27 @@
integralRecord.setUpdateTime(new Date());
return R.ok(integralRecordService.save(integralRecord));
}
+ @GetMapping("/addIntegralDetailParent")
+// @ApiOperation(value = "添加-积分明细", tags = {"添加-积分明细"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(value = "积分数量", name = "integral", dataType = "Integer", required = true),
+ @ApiImplicitParam(value = "变动源(完成学习、完成游戏...)", name = "method", dataType = "String", required = true)
+ })
+ public R<Boolean> addIntegralDetailParent(@RequestParam("integral") String integral, @RequestParam("method") String method) {
+ // 当前登录用户
+ LoginUserParent userStudy = tokenService.getLoginUser1();
+ // 生成积分明细信息
+ TIntegralRecord integralRecord = new TIntegralRecord();
+ integralRecord.setIntegral(integral);
+ integralRecord.setMethod(method);
+ integralRecord.setUserId(userStudy.getUserid());
+ integralRecord.setDisabled(Boolean.FALSE);
+ integralRecord.setCreateBy(userStudy.getPhone());
+ integralRecord.setCreateTime(new Date());
+ integralRecord.setUpdateBy(userStudy.getPhone());
+ integralRecord.setUpdateTime(new Date());
+ return R.ok(integralRecordService.save(integralRecord));
+ }
@GetMapping("/addIntegralDetail1")
// @ApiOperation(value = "添加-积分明细", tags = {"添加-积分明细"})
@@ -1659,6 +1680,20 @@
}
return R.ok(userService.updateById(user));
}
+ @GetMapping("/exchangeIntegralParent")
+// @ApiOperation(value = "用户积分变动", tags = {"用户积分变动"})
+ public R<Boolean> exchangeIntegralParent(@RequestParam("integral") Integer integral, @RequestParam("method") String method) {
+ if (tokenService.getLoginUser1()==null){
+ return R.tokenError("登录失效");
+ }
+ TUser user = userService.getById(tokenService.getLoginUser1().getUserid());
+ if (Constants.BURDEN.equals(method)) {
+ user.setIntegral(user.getIntegral() - integral);
+ } else {
+ user.setIntegral(user.getIntegral() + integral);
+ }
+ return R.ok(userService.updateById(user));
+ }
@GetMapping("/exchangeIntegral1")
// @ApiOperation(value = "用户积分变动", tags = {"用户积分变动"})
--
Gitblit v1.7.1