luodangjia
2024-07-29 dc9239d73b15b9a51c46a9e8d25c0d4400e613ce
ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java
@@ -7,7 +7,9 @@
import com.ruoyi.common.core.constant.Constants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.GlobalException;
import com.ruoyi.common.core.utils.GaoDeMapUtil;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.vo.CityInfoVO;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.api.entity.Order;
import com.ruoyi.order.api.entity.ServeRecord;
@@ -20,11 +22,13 @@
import com.ruoyi.user.service.OrderService;
import com.ruoyi.user.service.RecoveryServePriceService;
import com.ruoyi.user.service.RecoveryServeService;
import com.ruoyi.user.service.UserService;
import com.ruoyi.user.vo.OrderDetailVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.boot.autoconfigure.kafka.KafkaProperties;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@@ -84,6 +88,7 @@
            Map<Integer, String> map = serveList.stream().collect(Collectors.toMap(RecoveryServe::getId,
                    mw -> Optional.ofNullable(mw.getCover()).orElse("")));
            for (Order order : data.getRecords()) {
                Integer serveId = order.getServeId();
                order.setCover(map.get(serveId));
            }
@@ -95,7 +100,7 @@
    @ApiOperation(value = "在线评估", tags = {"用户端-订单"})
    @ApiImplicitParams({
            @ApiImplicitParam(value = "回收服务id", name = "orderId", dataType = "Integer", required = true),
            @ApiImplicitParam(value = "所在城市", name = "city", dataType = "String")
            @ApiImplicitParam(value = "所在城市code", name = "city", dataType = "String")
    })
    public R<BigDecimal> estimate(@RequestParam String orderId, String city) {
        Order order = orderClient.detail(orderId).getData();
@@ -104,9 +109,11 @@
                .eq(RecoveryServe::getIsDelete, 0).one();
        BigDecimal money = recoveryServe.getDefaultPrice();
        if (StringUtils.isNotBlank(city)) {
            CityInfoVO info = GaoDeMapUtil.getAddressInfo(city).getDatas();
            RecoveryServePrice price = recoveryServePriceService.lambdaQuery()
                    .eq(RecoveryServePrice::getRecoveryServeId, recoveryServe.getId())
                    .eq(RecoveryServePrice::getCity, city).one();
                    .eq(RecoveryServePrice::getCityCode, info.getCode())
                    .eq(RecoveryServePrice::getIsDelete, Constants.ZERO).one();
            if (null != price) {
                money = price.getRecoveryPrice();
            }
@@ -131,6 +138,8 @@
                orderDetail.setPhoto(serveRecord.getPhoto());
            }
        }
        R<String> workPic = adminClient.getWorkPic(order.getServerId());
        orderDetail.setWorkPic(workPic.getMsg());
        return R.ok(orderDetail);
    }
@@ -166,9 +175,15 @@
    public R<Object> allowanceMoney(@RequestParam("orderId") String orderId, @RequestParam("prizeId") String prizeId) {
        Prize data = adminClient.prizeDetail(prizeId).getData();
        if (null == data) {
            return R.fail("奖品信息获取失败!");
            return R.fail(adminClient.prizeDetail(prizeId).getMsg());
        }
        return R.ok(orderClient.supplementAllowance(orderId, data.getPrizeName()).getData());
        String prizeMoney;
        if (data.getPrizeName().contains(Constants.SUBSIDY_MONEY)) {
            prizeMoney = data.getPrizeName().substring(Constants.ONE);
        } else {
            prizeMoney = "0";
        }
        return R.ok(orderClient.supplementAllowance(orderId, prizeMoney).getData());
    }
    @PostMapping("/orderEstimate")