Kaynağa Gözat

订单详情

yangyb 2 hafta önce
ebeveyn
işleme
59897222fb

+ 6 - 2
mall-service/src/main/java/com/txz/mall/business/impl/OrderServiceBusinessImpl.java

@@ -3,6 +3,7 @@ package com.txz.mall.business.impl;
 import com.txz.mall.business.OrderServiceBusiness;
 import com.txz.mall.model.StoreOrder;
 import com.txz.mall.model.StoreOrderInfo;
+import com.txz.mall.model.StoreOrderStatus;
 import com.txz.mall.service.*;
 import lombok.AllArgsConstructor;
 import org.springframework.beans.BeanUtils;
@@ -27,6 +28,7 @@ public class OrderServiceBusinessImpl implements OrderServiceBusiness {
     private final StoreOrderInfoService storeOrderInfoService;
     private final UserAddressService userAddressService;
     private final StorePinkService storePinkService;
+    private final StoreOrderStatusService storeOrderStatusService;
     private final StoreCombinationService storeCombinationService;
 
     @Override
@@ -37,11 +39,13 @@ public class OrderServiceBusinessImpl implements OrderServiceBusiness {
         infoCriteria.andEqualTo("isDelete", 0);
         infoCriteria.andEqualTo("orderId", storeOrder.getOrderId());
         List<StoreOrderInfo> infoList = storeOrderInfoService.findByCondition(infoCondition);
-
-
+        List<StoreOrderStatus> logList = storeOrderStatusService.getLogList(storeOrder.getId());
+//        UserAddress userAddress = userAddressService.getDefaultByUid(storeOrder.getUid());
         StoreOrderVO vo = new StoreOrderVO();
         BeanUtils.copyProperties(storeOrder, vo);
         vo.setOrderInfoVO(infoList);
+//        vo.setOrderAddressVO(userAddress);
+        vo.setOrderStatusVO(logList);
         return vo;
     }
 

+ 1 - 1
mall-service/src/main/java/com/txz/mall/model/StoreOrder.java

@@ -362,7 +362,7 @@ public class StoreOrder {
     /**
      * 用户拼团活动id 0没有
      */
-    @ApiModelProperty(value = "用户拼团活动id 0没有")
+    @ApiModelProperty(value = "用户砍价活动id 0没有")
     @Column(name = "bargain_user_id")
     private Integer bargainUserId;
 

+ 10 - 0
mall-service/src/main/java/com/txz/mall/service/StoreOrderStatusService.java

@@ -3,6 +3,8 @@ package com.txz.mall.service;
 import com.txz.mall.core.Service;
 import com.txz.mall.model.StoreOrderStatus;
 
+import java.util.List;
+
 
 /**
  * Created by CodeGenerator on 2025/07/25.
@@ -18,4 +20,12 @@ public interface StoreOrderStatusService extends Service<StoreOrderStatus> {
      * @return Boolean
      */
     void createLog(Long orderId, String type, String message);
+
+    /**
+     * 获取订单日志
+     *
+     * @param orderId 订单id
+     * @return List<StoreOrderStatus>
+     */
+    List<StoreOrderStatus> getLogList(Long orderId);
 }

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

@@ -178,6 +178,8 @@ public class StoreOrderServiceImpl extends AbstractService<StoreOrder> implement
         storePinkService.save(storePink);
         if (count == 1) {
             storePinkService.pinkSuccess(teamPink.getId());
+            // 考虑是否回写主订单
+
         }
     }
 
@@ -877,21 +879,48 @@ public class StoreOrderServiceImpl extends AbstractService<StoreOrder> implement
 
     @Override
     public List<StoreOrder> appList(StoreOrderAppDTO dto) {
+        Condition condition = new Condition(StoreOrder.class);
+        Example.Criteria criteria = condition.createCriteria();
+        criteria.andEqualTo("isDelete", 0);
+        condition.setOrderByClause("create_time DESC");
+        criteria.andEqualTo("uid", dto.getUserId());
+
+        Condition pinkCondition = new Condition(StorePink.class);
+        Example.Criteria pinkCriteria = pinkCondition.createCriteria();
+        pinkCriteria.andEqualTo("isDelete", 0);
+        pinkCriteria.andEqualTo("uid", dto.getUserId());
+
+        List<StorePink> pinkList = new ArrayList<>();
         switch (dto.getType()) {
             case 0:
                 break;
             case 1:
+                criteria.andEqualTo("paid", 0);
                 break;
             case 2:
+                pinkCriteria.andEqualTo("status", 1);
+                pinkList = storePinkService.findByCondition(pinkCondition);
+                if (CollUtil.isNotEmpty(pinkList)) {
+                    criteria.andIn("id", pinkList.stream().map(StorePink::getOrderIdKey).collect(Collectors.toList()));
+                }
                 break;
             case 3:
+                pinkCriteria.andEqualTo("status", 2);
+                pinkList = storePinkService.findByCondition(pinkCondition);
+                if (CollUtil.isNotEmpty(pinkList)) {
+                    criteria.andIn("id", pinkList.stream().map(StorePink::getOrderIdKey).collect(Collectors.toList()));
+                }
                 break;
             case 4:
+
                 break;
             default:
                 break;
         }
-        return Collections.emptyList();
+        List<StoreOrder> orderList = findByCondition(condition);
+
+
+        return orderList;
     }
 
     @Override
@@ -1187,14 +1216,19 @@ public class StoreOrderServiceImpl extends AbstractService<StoreOrder> implement
 
     @Override
     public Boolean goPay(GoPinkDTO dto) {
-        // 扣取余额
-//        accountDubboServiceClient.recharge()
-//        Boolean b = accountDubboServiceClient.checkFee(user.getId(), storeOrder.getPayPrice());
+//        StoreOrder storeOrder = findBy("orderId", dto.getOrderId());
+//        // 扣取余额
+//        Boolean b = accountDubboServiceClient.checkFee(dto.getUserId(), storeOrder.getPayPrice());
 //        if (!b){
 //            return Result.fail(ResultCode.INSUFFICIENT_BALANCE);
 //        }
+//        TransParam transParam = new TransParam();
+//        transParam.builder()
+//                .setBizId(dto.getOrderId())
+//                .setDebitAccount(user.getId())
+//                .setCreditAccount();
+//        accountDubboServiceClient.trans(transParam);
 //
-//        StoreOrder storeOrder = findById(orderId);
 //        if (storeOrder.getPaid() == 1) {
 
         if ("open".equals(dto.getType())) {
@@ -1204,9 +1238,6 @@ public class StoreOrderServiceImpl extends AbstractService<StoreOrder> implement
             goPink(dto);
         }
         return true;
-//        } else {
-//            return false;
-//        }
     }
 
     /**

+ 10 - 0
mall-service/src/main/java/com/txz/mall/service/impl/StoreOrderStatusServiceImpl.java

@@ -6,9 +6,12 @@ import com.txz.mall.model.StoreOrderStatus;
 import com.txz.mall.service.StoreOrderStatusService;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import tk.mybatis.mapper.entity.Condition;
+import tk.mybatis.mapper.entity.Example;
 
 import javax.annotation.Resource;
 import java.util.Date;
+import java.util.List;
 
 
 /**
@@ -30,4 +33,11 @@ public class StoreOrderStatusServiceImpl extends AbstractService<StoreOrderStatu
         save(storeOrderStatus);
     }
 
+    @Override
+    public List<StoreOrderStatus> getLogList(Long orderId) {
+        Condition statusCondition = new Condition(StoreOrderStatus.class);
+        Example.Criteria statusCriteria = statusCondition.createCriteria();
+        statusCriteria.andEqualTo("oid", orderId);
+        return findByCondition(statusCondition);
+    }
 }

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

@@ -16,4 +16,6 @@ public class StoreOrderAppDTO implements Serializable {
 
     @ApiModelProperty(value = "类型 0-全部all  1-待支付topay 2-拼团成功success 3-拼团失败failed 4-拼团奖励reward")
     private Integer type;
+
+    private Long userId;
 }