瀏覽代碼

订单轨迹

yangyb 2 周之前
父節點
當前提交
aa70f275f8

+ 15 - 0
mall-service/src/main/java/com/txz/mall/controller/OrderController.java

@@ -111,6 +111,21 @@ public class OrderController {
         return Result.success(pageInfo);
     }
 
+    @PostMapping("/app/list")
+    @ApiOperation(value = "订单获取列表")
+    public Result<List<StoreOrder>> appList(@RequestBody StoreOrderAppDTO dto, @RequestParam(defaultValue = "1") Integer page, @RequestParam(defaultValue = "10") Integer size) {
+        PageHelper.startPage(page, size);
+        PageInfo pageInfo = null;
+        try {
+            List<StoreOrder> arrayList = storeOrderService.appList(dto);
+            pageInfo = new PageInfo(arrayList);
+        } catch (Exception e) {
+            log.error("查询对象操作异常e:{}", e);
+            return Result.fail(ResultCode.INTERNAL_SERVER_ERROR);
+        }
+        return Result.success(pageInfo);
+    }
+
     @ApiOperation(value = "获取订单各状态数量")
     @PostMapping(value = "/status/num")
     public Result<StoreOrderCountItemVO> getOrderStatusNum() {

+ 2 - 2
mall-service/src/main/java/com/txz/mall/controller/StoreOrderInfoController.java → mall-service/src/main/java/com/txz/mall/controller/OrderInfoController.java

@@ -24,9 +24,9 @@ import java.util.List;
 @Api(tags = "[后台]storeOrderInfo管理")
 @RestController
 @RequestMapping("/store/order/info")
-public class StoreOrderInfoController {
+public class OrderInfoController {
 
-    private static Logger log = LoggerFactory.getLogger(StoreOrderInfoController.class);
+    private static Logger log = LoggerFactory.getLogger(OrderInfoController.class);
 
     @Resource
     private StoreOrderInfoService storeOrderInfoService;

+ 2 - 2
mall-service/src/main/java/com/txz/mall/controller/StoreOrderStatusController.java → mall-service/src/main/java/com/txz/mall/controller/OrderStatusController.java

@@ -24,9 +24,9 @@ import java.util.List;
 @Api(tags = "[后台]storeOrderStatus管理")
 @RestController
 @RequestMapping("/store/order/status")
-public class StoreOrderStatusController {
+public class OrderStatusController {
 
-    private static Logger log = LoggerFactory.getLogger(StoreOrderStatusController.class);
+    private static Logger log = LoggerFactory.getLogger(OrderStatusController.class);
 
     @Resource
     private StoreOrderStatusService storeOrderStatusService;

+ 9 - 0
mall-service/src/main/java/com/txz/mall/service/StoreOrderInfoService.java

@@ -3,10 +3,19 @@ package com.txz.mall.service;
 import com.txz.mall.core.Service;
 import com.txz.mall.model.StoreOrderInfo;
 
+import java.util.List;
+
 
 /**
  * Created by CodeGenerator on 2025/07/22.
  */
 public interface StoreOrderInfoService extends Service<StoreOrderInfo> {
 
+    /**
+     * 批量添加订单详情
+     *
+     * @param storeOrderInfos 订单详情集合
+     * @return 保存结果
+     */
+    void saveOrderInfos(List<StoreOrderInfo> storeOrderInfos);
 }

+ 6 - 0
mall-service/src/main/java/com/txz/mall/service/StoreOrderService.java

@@ -76,6 +76,12 @@ public interface StoreOrderService extends Service<StoreOrder> {
      */
     List<StoreOrderVO> orderList(StoreOrderDTO dto);
 
+    /**
+     * 获取订单列表
+     *
+     * @return 订单列表
+     */
+    List<StoreOrder> appList(StoreOrderAppDTO dto);
 
     /**
      * 获取用户当前的拼团订单

+ 7 - 1
mall-service/src/main/java/com/txz/mall/service/impl/StoreOrderInfoServiceImpl.java

@@ -8,6 +8,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.util.List;
 
 
 /**
@@ -17,6 +18,11 @@ import javax.annotation.Resource;
 @Transactional
 public class StoreOrderInfoServiceImpl extends AbstractService<StoreOrderInfo> implements StoreOrderInfoService {
     @Resource
-    private StoreOrderInfoMapper mStoreOrderInfoMapper;
+    private StoreOrderInfoMapper storeOrderInfoMapper;
+
+    @Override
+    public void saveOrderInfos(List<StoreOrderInfo> storeOrderInfos) {
+        save(storeOrderInfos);
+    }
 
 }

+ 39 - 1
mall-service/src/main/java/com/txz/mall/service/impl/StoreOrderServiceImpl.java

@@ -838,24 +838,62 @@ public class StoreOrderServiceImpl extends AbstractService<StoreOrder> implement
         List<StoreOrder> list = findByCondition(condition);
         List<StoreOrderVO> arrayList = new ArrayList<>();
         List<StoreOrderInfo> infoArrayList = new ArrayList<>();
+        List<StoreOrderStatus> statusList = new ArrayList<>();
+        List<UserAddress> addressList = new ArrayList<>();
         if (CollectionUtils.isNotEmpty(list)) {
             Condition infoCondition = new Condition(StoreOrderInfo.class);
             Example.Criteria infoCriteria = infoCondition.createCriteria();
             infoCriteria.andEqualTo("isDelete", 0);
             infoCriteria.andIn("orderId", list.stream().map(StoreOrder::getId).collect(Collectors.toList()));
             infoArrayList = storeOrderInfoService.findByCondition(infoCondition);
+
+            Condition statusCondition = new Condition(StoreOrderStatus.class);
+            Example.Criteria statusCriteria = statusCondition.createCriteria();
+            statusCriteria.andEqualTo("isDelete", 0);
+            statusCriteria.andIn("oid", list.stream().map(StoreOrder::getId).collect(Collectors.toList()));
+            statusList = storeOrderStatusService.findByCondition(statusCondition);
+
+            Condition addressCondition = new Condition(UserAddress.class);
+            Example.Criteria addressCriteria = addressCondition.createCriteria();
+            addressCriteria.andEqualTo("isDelete", 0);
+            addressCriteria.andIn("id", list.stream().map(StoreOrder::getUid).collect(Collectors.toList()));
+            addressList = userAddressService.findByCondition(addressCondition);
         }
         List<StoreOrderInfo> finalInfoArrayList = infoArrayList;
+        List<StoreOrderStatus> finalStatusList = statusList;
+        List<UserAddress> finalAddressList = addressList;
         list.forEach(item -> {
             StoreOrderVO vo = new StoreOrderVO();
             BeanUtils.copyProperties(item, vo);
             List<StoreOrderInfo> infoCollect = finalInfoArrayList.stream().filter(info -> info.getOrderId().equals(item.getId())).collect(Collectors.toList());
             vo.setOrderInfoVO(infoCollect);
+            vo.setOrderStatusVO(finalStatusList.stream().filter(status -> status.getOid().equals(item.getId())).collect(Collectors.toList()));
+            vo.setBrokerage(BigDecimal.ONE);
+            vo.setOrderAddressVO(finalAddressList.stream().filter(address -> address.getId().equals(item.getUid())).findFirst().orElse(null));
             arrayList.add(vo);
         });
         return arrayList;
     }
 
+    @Override
+    public List<StoreOrder> appList(StoreOrderAppDTO dto) {
+        switch (dto.getType()) {
+            case 0:
+                break;
+            case 1:
+                break;
+            case 2:
+                break;
+            case 3:
+                break;
+            case 4:
+                break;
+            default:
+                break;
+        }
+        return Collections.emptyList();
+    }
+
     @Override
     public List<StoreOrder> getUserCurrentCombinationOrders(Long uid, Long combinationId) {
         Condition condition = new Condition(StoreOrder.class);
@@ -1123,7 +1161,7 @@ public class StoreOrderServiceImpl extends AbstractService<StoreOrder> implement
 //            storeCouponUserService.updateById(finalStoreCouponUser);
 //        }
 //        // 保存购物车商品详情
-//        storeOrderInfoService.saveOrderInfos(storeOrderInfos);
+        storeOrderInfoService.saveOrderInfos(storeOrderInfos);
 //        // 生成订单日志
         storeOrderStatusService.createLog(storeOrder.getId(), Constants.ORDER_STATUS_CREATE_ORDER, "订单生成");
 //

+ 19 - 0
mall-service/src/main/java/dto/StoreOrderAppDTO.java

@@ -0,0 +1,19 @@
+/*
+ *
+ * StoreOrderDTO.java
+ * Copyright(C) 2017-2020 fendo公司
+ * @date 2025-07-15
+ */
+package dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class StoreOrderAppDTO implements Serializable {
+
+    @ApiModelProperty(value = "类型 0-全部all  1-待支付topay 2-拼团成功success 3-拼团失败failed 4-拼团奖励reward")
+    private Integer type;
+}

+ 3 - 3
mall-service/src/main/java/vo/StoreOrderVO.java

@@ -9,7 +9,7 @@ package vo;
 import com.txz.mall.model.StoreOrder;
 import com.txz.mall.model.StoreOrderInfo;
 import com.txz.mall.model.StoreOrderStatus;
-import dto.UserAddressDTO;
+import com.txz.mall.model.UserAddress;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -24,10 +24,10 @@ public class StoreOrderVO extends StoreOrder implements Serializable {
     private List<StoreOrderInfo> orderInfoVO;
 
     @ApiModelProperty(value = "订单轨迹")
-    private List<StoreOrderStatus> orderStatus;
+    private List<StoreOrderStatus> orderStatusVO;
 
     @ApiModelProperty(value = "收货信息")
-    private UserAddressDTO orderAddress;
+    private UserAddress orderAddressVO;
 
     @ApiModelProperty(value = "奖励佣金")
     private BigDecimal brokerage;