无关风月
2 天以前 b5ead35c1d955f2a0e2e10da79254860d0ba95e9
ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/service/impl/OrderServiceImpl.java
@@ -2,16 +2,19 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.admin.api.entity.Prize;
import com.ruoyi.common.core.constant.Constants;
import com.ruoyi.common.core.exception.GlobalException;
import com.ruoyi.common.core.utils.SnowflakeIdWorker;
import com.ruoyi.order.api.entity.UserOrderRequest;
import com.ruoyi.order.api.feignClient.OrderClient;
import com.ruoyi.user.entity.Order;
import com.ruoyi.user.entity.RecoveryServe;
import com.ruoyi.user.entity.RecoveryServePrice;
import com.ruoyi.user.entity.UserRecipient;
import com.ruoyi.user.mapper.OrderMapper;
import com.ruoyi.user.request.OrderRequest;
import com.ruoyi.user.service.OrderService;
import com.ruoyi.user.service.RecoveryServePriceService;
import com.ruoyi.user.service.RecoveryServeService;
import com.ruoyi.user.service.UserRecipientService;
import org.springframework.stereotype.Service;
@@ -38,6 +41,8 @@
    private RecoveryServeService recoveryServeService;
    @Resource
    private OrderClient orderClient;
    @Resource
    private RecoveryServePriceService servePriceService;
    /**
     * 雪花算法类
@@ -84,6 +89,10 @@
        if (null == recoveryServe || null == userRecipient) {
            throw new GlobalException("下单失败,预约服务信息或收货地址信息异常!");
        }
        String address = userRecipient.getAddress();
        if (address.contains(Constants.PROVINCE) && address.contains(Constants.MARKET)) {
        }
        UserOrderRequest userOrderRequest = new UserOrderRequest();
        userOrderRequest.setOrderNumber(orderRequest.getOrderNumber());
        userOrderRequest.setServeId(orderRequest.getServeId());
@@ -112,7 +121,10 @@
        // 下单相关信息
        RecoveryServe recoveryServe = recoveryServeService.lambdaQuery().eq(RecoveryServe::getId, serveId)
                .eq(RecoveryServe::getIsDelete, 0).one();
        RecoveryServePrice price = servePriceService.lambdaQuery()
                .eq(RecoveryServePrice::getRecoveryServeId, serveId)
                .eq(RecoveryServePrice::getCity, orderRequest.getCity())
                .eq(RecoveryServePrice::getIsDelete, 0).one();
        if (null == recoveryServe) {
            throw new GlobalException("下单失败,预约服务信息或收货地址信息异常!");
        }
@@ -135,7 +147,12 @@
        userOrderRequest.setLongitude(orderRequest.getLongitude());
        userOrderRequest.setLatitude(orderRequest.getLatitude());
        userOrderRequest.setSubsidy(orderRequest.getSubsidy());
        userOrderRequest.setDefaultPrice(recoveryServe.getDefaultPrice());
        // 城市回收价
        if (null == price) {
            userOrderRequest.setDefaultPrice(recoveryServe.getDefaultPrice());
        } else {
            userOrderRequest.setDefaultPrice(price.getRecoveryPrice());
        }
        userOrderRequest.setServeName(recoveryServe.getServeName());
        userOrderRequest.setUserId(userid);
        return orderClient.orderEstimate(userOrderRequest).getData();