无关风月
2025-04-22 0846753b50b65e8974b3860e6064c38be9c114a9
ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java
@@ -35,6 +35,7 @@
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
@@ -150,8 +151,8 @@
     */
    @GetMapping("/prizeList")
    @ApiOperation(value = "获取奖品列表", tags = {"用户端-订单"})
    public R<List<Prize>> prizeList() {
        return R.ok(adminClient.prizeList().getData());
    public R<List<Prize>> prizeList(@RequestParam("serveId") String serveId) {
        return R.ok(adminClient.prizeList(Integer.valueOf(serveId)).getData());
    }
    /**
@@ -161,8 +162,8 @@
     */
    @GetMapping("/allowance")
    @ApiOperation(value = "抽奖获取津贴", tags = {"用户端-订单"})
    public R<Object> obtainAllowance() {
        return R.ok(orderService.obtainAllowance(adminClient.prizeList().getData()));
    public R<Object> obtainAllowance(@RequestParam("serveId") String serveId) {
        return R.ok(orderService.obtainAllowance(adminClient.prizeList(Integer.valueOf(serveId)).getData()));
    }
    /**
@@ -172,14 +173,18 @@
     */
    @GetMapping("/allowanceMoney")
    @ApiOperation(value = "补充订单津贴金额", tags = {"用户端-订单"})
    public R<Object> allowanceMoney(@RequestParam("orderId") String orderId, @RequestParam("prizeId") String prizeId) {
    public R<Object> allowanceMoney(@RequestParam("orderId") String orderId,
                                    @RequestParam("prizeId") String prizeId,
                                    @RequestParam("serveId") String serveId) {
        Prize data = adminClient.prizeDetail(prizeId).getData();
        if (null == data) {
            return R.fail(adminClient.prizeDetail(prizeId).getMsg());
        }
        String prizeMoney;
        if (data.getPrizeName().contains(Constants.SUBSIDY_MONEY)) {
            prizeMoney = data.getPrizeName().substring(Constants.ONE);
        if (data.getPrizeType() == 1) {
            // 查询服务回收补贴金
            RecoveryServe recoveryServe = recoveryServeService.getById(serveId);
            prizeMoney = recoveryServe.getRecycleSubsidy().toString();
        } else {
            prizeMoney = "0";
        }
@@ -208,4 +213,20 @@
        return result ? R.ok() : R.fail();
    }
    /**
     * 领取补贴金
     *
     */
    @GetMapping("/receivingSubsidies")
    @ApiOperation(value = "领取补贴金", tags = {"用户端-订单-领取补贴金[2.0]"})
    public R<Object> receivingSubsidies(@RequestParam("serveId") String serveId,@RequestParam("orderId") String orderId) {
        // 查询补贴金
        RecoveryServe recoveryServe = recoveryServeService.getById(serveId);
        if (Objects.isNull(recoveryServe)) {
            return R.fail("该服务不存在!");
        }
        orderClient.receiving(orderId,recoveryServe.getRecycleSubsidy());
        return R.ok();
    }
}