Cui Zhi Feng
2024-08-30 3d237ccfcc5aa5534bda80131287e1562e2e0ad3
src/main/java/com/mzl/flower/service/payment/OrderService.java
@@ -24,6 +24,7 @@
import com.mzl.flower.entity.customer.Address;
import com.mzl.flower.entity.customer.Customer;
import com.mzl.flower.entity.flower.FlowerSupplierSaleNum;
import com.mzl.flower.entity.menber.Member;
import com.mzl.flower.entity.partner.Partner;
import com.mzl.flower.entity.payment.*;
import com.mzl.flower.entity.supplier.Station;
@@ -211,13 +212,18 @@
        if (ls != null && ls.size() > 0) {
            Customer customer = getCurrentCustomer();
            Long partnerId = customer.getPartnerId();
            Long levelId = customer.getLevelId();
            Member member = getMember(levelId);
            Map<Long, FlowerCartListWrapDTO> map = new HashMap<>();
            for (FlowerCartListDTO c : ls) {
                BigDecimal price = getFinalPrice(partnerId, c.getCategory()
                        , c.getId(), c.getPrice(), c.getLevel());
                c.setPrice(price);
                c.setPriceMember(calculateMemberPrice(price, member));
                c.setTotal(price.multiply(new BigDecimal(c.getNum())));
                c.setTotalMember(c.getPriceMember().multiply(new BigDecimal(c.getNum())));
                if (c.getSales() != null && c.getRealSales() != null) {
                    c.setSales(c.getSales() + c.getRealSales());
@@ -265,6 +271,8 @@
        List<FlowerCartListDTO> ls = flowerMapper.selectFlowerOrderList(ids);
        Customer customer = getCurrentCustomer();
        Long partnerId = customer.getPartnerId();
        Long levelId = customer.getLevelId();
        Member member = getMember(levelId);
        double totalWeight = 0D;
        int num = 0;
@@ -288,7 +296,10 @@
                    , c.getId(), c.getPrice(), c.getLevel());
            BigDecimal price = priceDTO.getPrice();
            c.setPrice(price);
            c.setPriceMember(calculateMemberPrice(price, member));
            c.setTotal(price.multiply(new BigDecimal(c.getNum())));
            c.setTotalMember(c.getPriceMember().multiply(new BigDecimal(c.getNum())));//使用会员价计算总价
            if (priceMap != null) {
                priceMap.put(c.getId(), priceDTO);
@@ -347,6 +358,8 @@
            transportFee = d.getFee();
            deliveryName = d.getName();
        }
        //TODO 优惠券和会员价相关修改
        String userId = SecurityUtils.getUserId();
        Order order = new Order();
@@ -519,7 +532,27 @@
     * 合伙人订单定时发货
     */
    public void setPartnerOrderSend() {
        orderMapper.setPartnerOrderReceive();
        List<Order> orders = orderMapper.getPartnerOrderReceive();
        if(orders == null || orders.size() == 0){
            return;
        }
        for (Order o : orders) {
            //set status_backend = 'RECEIVE', status = 'RECEIVE'
            o.setStatusBackend("RECEIVE");
            o.setStatus("RECEIVE");
            //发送微信发货请求
            JSONObject jsonObject = sendWxDeliveryGood(o);
            if (jsonObject != null && (int) jsonObject.get("errcode") == 0) {
                o.setWxDeliveryGood(true);
                o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
            } else {
                o.setWxDeliveryGood(false);
                o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
            }
            orderMapper.updateById(o);
        }
        //orderMapper.setPartnerOrderReceive();
    }
    /**
@@ -539,6 +572,17 @@
        o.setStatus(Constants.ORDER_STATUS.RECEIVE.name());
        o.setStatusBackend(Constants.ORDER_STATUS_BACKEND.RECEIVE.name());
        o.update(SecurityUtils.getUserId());
        //发送微信发货请求
        JSONObject jsonObject = sendWxDeliveryGood(o);
        if (jsonObject != null && (int) jsonObject.get("errcode") == 0) {
            o.setWxDeliveryGood(true);
            o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
        } else {
            o.setWxDeliveryGood(false);
            o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
        }
        orderMapper.updateById(o);
    }
@@ -787,17 +831,6 @@
            o.setStatusBackend(Constants.ORDER_STATUS_BACKEND.EVALUATE.name());
            o.setReceiveTime(LocalDateTime.now());
            o.update("sys");
            //发送微信发货请求
            JSONObject jsonObject = sendWxDeliveryGood(o);
            if (jsonObject != null && (int) jsonObject.get("errcode") == 0) {
                o.setWxDeliveryGood(true);
                o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
            } else {
                o.setWxDeliveryGood(false);
                o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
            }
            orderMapper.updateById(o);
        }
@@ -860,17 +893,6 @@
        o.setStatusBackend(Constants.ORDER_STATUS_BACKEND.EVALUATE.name());
        o.setReceiveTime(LocalDateTime.now());
        o.update(userId);
        //发送微信发货请求
        JSONObject jsonObject = sendWxDeliveryGood(o);
        if (jsonObject != null && (int) jsonObject.get("errcode") == 0) {
            o.setWxDeliveryGood(true);
            o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
        } else {
            o.setWxDeliveryGood(false);
            o.setWxDeliveryMsg(GsonUtil.toJson(jsonObject));
        }
        orderMapper.updateById(o);
    }
@@ -1185,4 +1207,14 @@
        order.update(SecurityUtils.getUserId());
        orderMapper.updateById(order);
    }
    /**
     * 获取用户最后收货时间
     * @param userId
     * @return
     */
    public LocalDateTime getUserLastOrderTime(String userId){
        Order o = orderMapper.getUserLastOrder(userId);
        return o.getReceiveTime();
    }
}