From ea6bf9042d9ad4faaf328bdc68a41ef36b47f13d Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期二, 14 一月 2025 20:09:55 +0800
Subject: [PATCH] 12.18

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java |   39 ++++++++++++++++++++++++++++-----------
 1 files changed, 28 insertions(+), 11 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
index e5b1b25..cc1c029 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
@@ -16,8 +16,10 @@
 import com.ruoyi.order.enums.OrderStatus;
 import com.ruoyi.order.mapper.OrderMapper;
 import com.ruoyi.order.model.Order;
+import com.ruoyi.order.model.RefundPass;
 import com.ruoyi.order.service.CommissionService;
 import com.ruoyi.order.service.OrderService;
+import com.ruoyi.order.service.RefundPassService;
 import com.ruoyi.order.util.payment.model.RefundCallbackResult;
 import com.ruoyi.order.util.vo.MapTrackKD100Vo;
 import com.ruoyi.order.vo.*;
@@ -69,6 +71,8 @@
     private OrderMapper orderMapper;
     @Resource
     private SysUserClient sysUserClient;
+    @Resource
+    private RefundPassService refundPassService;
 
 
     /**
@@ -127,9 +131,9 @@
     @ApiImplicitParams({
             @ApiImplicitParam(value = "订单id", name = "id", required = true, dataType = "String"),
     })
-    @GetMapping("/writeOff/{id}/{shopId}")
-    public R<Void> writeOff(@PathVariable("id") String id, @PathVariable("shopId") Integer shopId){
-        orderService.writeOff(id, shopId);
+    @GetMapping("/writeOff/{id}/{shopId}/{technicianId}")
+    public R<Void> writeOff(@PathVariable("id") String id, @PathVariable("shopId") Integer shopId, @PathVariable("technicianId") Integer technicianId){
+        orderService.writeOff(id, shopId, technicianId);
         return R.ok();
     }
 
@@ -205,6 +209,7 @@
     public R<Void> updateOrderStatus(@RequestBody Order order){
         Order order1 = orderService.getById(order.getId());
         order1.setOrderStatus(order.getOrderStatus());
+        order1.setOldOrderStatus(order.getOldOrderStatus());
         orderService.updateById(order1);
         return R.ok();
     }
@@ -245,7 +250,7 @@
     @PostMapping("/confirmDelivery")
     @ApiOperation(value = "已发货操作", tags = {"管理后台-订单管理"})
     public R confirmDelivery(@RequestBody ConfirmDelivery confirmDelivery){
-        return orderService.confirmDelivery(confirmDelivery.getOrderId(), confirmDelivery.getCode());
+        return orderService.confirmDelivery(confirmDelivery);
     }
     
     
@@ -266,6 +271,10 @@
     @ApiOperation(value = "查询订单详情", tags = {"管理后台-订单管理"})
     public R<OrderInfoVo> getOrderInfo(@PathVariable("orderId") Long orderId){
         OrderInfoVo orderInfo = orderService.getOrderInfo(orderId);
+        RefundPass refundPass = refundPassService.lambdaQuery().eq(RefundPass::getOrderId, orderId).one();
+        if (refundPass!=null){
+            orderInfo.setRefundPassId(refundPass.getId().toString());
+        }
         return R.ok(orderInfo);
     }
     
@@ -286,12 +295,18 @@
 
         Long userid = tokenService.getLoginUser().getUserid();
         SysUser sysUser = sysUserClient.getSysUser(userid).getData();
-        List<Order> orderList = orderService.list(new LambdaQueryWrapper<Order>().eq(sysUser.getRoleType() == 2, Order::getShopId, sysUser.getObjectId())
-                .between(Order::getCreateTime, LocalDateTime.parse(startTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), LocalDateTime.parse(endTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))));
+        List<Order> orderList = orderService.list(new LambdaQueryWrapper<Order>()
+                .eq(sysUser.getRoleType() == 2, Order::getShopId, sysUser.getObjectId())
+                .between(Order::getCreateTime, LocalDateTime.parse(startTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")), LocalDateTime.parse(endTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")))
+                .orderByAsc(Order::getCreateTime));
 
 
-        Map<String, List<Order>> map = orderList.stream().collect(Collectors.groupingBy(item -> item.getCreateTime()
-                .format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))));
+        Map<String, List<Order>> map = orderList.stream()
+                .collect(Collectors.groupingBy(
+                        item -> item.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")),
+                        TreeMap::new, // 使用 TreeMap 按键排序
+                        Collectors.toList()
+                ));
 
         List<OrderStatisticsDetail> orderStatisticsDetails = new ArrayList<>();
         map.forEach((key, value) -> {
@@ -306,12 +321,14 @@
                 if (order.getOrderType().equals(1)) {
                     serviceTotal++;
                     serviceTotalMoney = serviceTotalMoney.add(order.getPaymentAmount());
-                }else if (order.getOrderType().equals(2)){
+                    total++;
+                    totalMoney = totalMoney.add(order.getPaymentAmount());
+                }else if (order.getOrderType().equals(2) && 1 == order.getDistributionMode()){
                     singleTotal++;
                     singleTotalMoney = singleTotalMoney.add(order.getPaymentAmount());
+                    total++;
+                    totalMoney = totalMoney.add(order.getPaymentAmount());
                 }
-                total++;
-                totalMoney = totalMoney.add(order.getPaymentAmount());
             }
             orderStatisticsDetail.setDate(key);
             orderStatisticsDetail.setServiceTotal(serviceTotal);

--
Gitblit v1.7.1