8.6
luodangjia
2024-08-06 1529842471c8c07a5181a10404b6dff2a0944500
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
@@ -8,6 +8,7 @@
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.GlobalException;
import com.ruoyi.common.core.vo.AddressDto;
import com.ruoyi.common.core.vo.Path;
import com.ruoyi.order.entity.*;
import com.ruoyi.order.request.OrderCountDataRequest;
@@ -16,6 +17,7 @@
import com.ruoyi.order.request.UserOrderRequest;
import com.ruoyi.order.service.*;
import com.ruoyi.order.vo.*;
import com.ruoyi.user.api.feignClient.UserClient;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -30,6 +32,7 @@
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
@@ -252,6 +255,8 @@
        return R.ok(order);
    }
    @Resource
    private UserClient userClient;
    /**
     * 新增订单
     * 后台订单为指定订单,默认为待上门状态
@@ -261,6 +266,14 @@
    @ApiOperation(value = "订单列表-新增订单", tags = {"后台-订单管理"})
    @PostMapping(value = "/save")
    public R<Boolean> save(@RequestBody OrderRequest orderRequest) {
        R<BigDecimal> servePrice = userClient.getServePrice(orderRequest.getServeId(), orderRequest.getCityCode());
        if (servePrice.getData()!=null){
            orderRequest.setOrderMoney(servePrice.getData());
        }
        Order order = new Order();
        order.setCity(orderRequest.getCity());
        order.setOrderNumber(orderRequest.getOrderNumber());
@@ -269,7 +282,7 @@
        order.setSiteName(orderRequest.getSiteName());
        order.setServeId(orderRequest.getServeId());
        order.setServeName(orderRequest.getServeName());
        order.setServePrice(orderRequest.getServePrice());
        order.setServePrice(orderRequest.getOrderMoney());
        order.setSiteName(orderRequest.getSiteName());
        // 预约信息
        order.setReservationName(orderRequest.getReservationName());
@@ -304,8 +317,25 @@
    @ApiOperation(value = "订单列表-新增订单", tags = {"后台-订单管理"})
    @PostMapping(value = "/edit")
    public R<Boolean> edit(@RequestBody OrderRequest orderRequest) {
        Order order = orderService.getById(orderRequest.getOrderId());
        R<BigDecimal> servePrice = userClient.getServePrice(orderRequest.getServeId(), orderRequest.getCityCode());
        if (servePrice.getData()!=null){
            orderRequest.setOrderMoney(servePrice.getData());
        }
        Order order = orderService.getById(orderRequest.getOrderId());
        if (order.getState()!=6) {
            if ((!Objects.equals(order.getServerId(), orderRequest.getServerId())) || (!Objects.equals(order.getTime(), orderRequest.getTime()))) {
                order.setState(1);
                order.setArriveTime(null);
                order.setAcceptTime(new Date());
                orderService.lambdaUpdate()
                        .eq(Order::getId, order.getId()
                        ).set(Order::getArriveTime, null).update();
            }
        }
        order.setId(orderRequest.getOrderId());
        order.setCity(orderRequest.getCity());
@@ -315,35 +345,37 @@
        order.setSiteName(orderRequest.getSiteName());
        order.setServeId(orderRequest.getServeId());
        order.setServeName(orderRequest.getServeName());
        order.setServePrice(orderRequest.getServePrice());
        order.setServePrice(orderRequest.getOrderMoney());
        order.setSiteName(orderRequest.getSiteName());
        order.setTime(orderRequest.getTime());
        // 预约信息
        order.setReservationName(orderRequest.getReservationName());
        order.setReservationPhone(orderRequest.getReservationPhone());
        order.setReservationAddress(orderRequest.getReservationAddress());
        order.setTime(orderRequest.getTime());
        order.setAcceptTime(orderRequest.getAcceptTime());
//        order.setTime(orderRequest.getTime());
//        order.setAcceptTime(orderRequest.getAcceptTime());
        // 师傅信息
        order.setServerId(orderRequest.getServerId());
        order.setServerName(orderRequest.getServerName());
        order.setServerPhone(orderRequest.getServerPhone());
        order.setReservationRemark(orderRequest.getReservationRemark());
        if ((order.getServerId()!=orderRequest.getServerId())||(order.getTime()!=orderRequest.getTime())) {
            order.setState(1);
        }
        order.setArriveTime(orderRequest.getArriveTime());
        order.setType(orderRequest.getType());
//        order.setType(orderRequest.getType());
        order.setLongitude(orderRequest.getLongitude());
        order.setLatitude(orderRequest.getLatitude());
        order.setCompleteTime(orderRequest.getCompleteTime());
        order.setSubsidy(orderRequest.getSubsidy());
//        order.setSubsidy(orderRequest.getSubsidy());
        order.setIsWithdrawal(orderRequest.getIsWithdrawal());
        order.setAddress(orderRequest.getAddress());
        order.setCancelReason(orderRequest.getCancelReason());
        order.setApplyReason(orderRequest.getApplyReason());
        order.setIsEvaluate(Constants.ZERO);
        order.setCityCode(orderRequest.getCityCode());
        order.setOrderMoney(orderRequest.getOrderMoney());
        order.setOrderMoney(orderRequest.getServePrice());
        if (order.getSubsidy()!=null){
            order.setOrderMoney(order.getServePrice().add(order.getSubsidy()));
        }
        return R.ok(orderService.updateById(order));
    }
@@ -641,7 +673,7 @@
        wrapper.eq("server_id", workerId)
                .in("state", 1, 2)
                .eq("is_delete", Constants.ZERO)
                .eq("DATE(createTime)", todayStr)  // 添加这一行来筛选当天的订单
                .eq("DATE(time)", todayStr)  // 添加这一行来筛选当天的订单
                .orderByAsc("CASE WHEN topSort IS NULL THEN 1 ELSE 0 END")
                .orderByAsc("topSort");