Browse Source

订单详情,分享订单,初始商品

chao 3 years ago
parent
commit
2b5920fe5b

+ 14 - 0
src/main/java/com/caimei365/order/controller/OrderClubApi.java

@@ -3,6 +3,7 @@ package com.caimei365.order.controller;
 import com.caimei365.order.model.ResponseJson;
 import com.caimei365.order.model.dto.OrderDto;
 import com.caimei365.order.model.vo.LogisticsBatchVo;
+import com.caimei365.order.model.vo.OrderProductVo;
 import com.caimei365.order.model.vo.OrderVo;
 import com.caimei365.order.model.vo.SearchHistoryVo;
 import com.caimei365.order.service.OrderClubService;
@@ -241,4 +242,17 @@ public class OrderClubApi {
         }
         return orderClubService.checkOrderShareCode(orderId, userId, serviceProviderId, shareCode, code, encryptedData, iv, headers);
     }
+
+    /**
+     * 分享订单,初始商品数据
+     */
+    @ApiOperation("分享订单,初始商品数据(旧:/order/commodityData)")
+    @ApiImplicitParam(required = true, name = "orderId", value = "订单Id")
+    @GetMapping("/share/product")
+    public ResponseJson<List<OrderProductVo>> getOrderShareInitProduct(Integer orderId) {
+        if (null == orderId) {
+            return ResponseJson.error("订单Id不能为空!", null);
+        }
+        return orderClubService.getOrderShareInitProduct(orderId);
+    }
 }

+ 5 - 0
src/main/java/com/caimei365/order/mapper/OrderClubMapper.java

@@ -272,4 +272,9 @@ public interface OrderClubMapper {
      * 保存分享码使用记录
      */
     void insertOrderShareCodeRecord(OrderShareCodeRecordVo codeRecord);
+    /**
+     * 更具订单Id获取订单商品列表
+     * @param orderId 订单Id
+     */
+    List<OrderProductVo> getOrderProductByOrderId(Integer orderId);
 }

+ 6 - 0
src/main/java/com/caimei365/order/service/OrderClubService.java

@@ -2,6 +2,7 @@ package com.caimei365.order.service;
 
 import com.caimei365.order.model.ResponseJson;
 import com.caimei365.order.model.vo.LogisticsBatchVo;
+import com.caimei365.order.model.vo.OrderProductVo;
 import com.caimei365.order.model.vo.OrderVo;
 import com.caimei365.order.model.vo.SearchHistoryVo;
 import com.github.pagehelper.PageInfo;
@@ -97,4 +98,9 @@ public interface OrderClubService {
      * @param headers HttpHeaders
      */
     ResponseJson<String> checkOrderShareCode(Integer orderId, Integer userId, Integer serviceProviderId, String shareCode, String code, String encryptedData, String iv, HttpHeaders headers);
+    /**
+     * 分享订单,初始商品数据
+     * @param orderId 订单Id
+     */
+    ResponseJson<List<OrderProductVo>> getOrderShareInitProduct(Integer orderId);
 }

+ 12 - 0
src/main/java/com/caimei365/order/service/impl/OrderClubServiceImpl.java

@@ -792,4 +792,16 @@ public class OrderClubServiceImpl implements OrderClubService {
         }
     }
 
+    /**
+     * 分享订单,初始商品数据
+     *
+     * @param orderId 订单Id
+     */
+    @Override
+    public ResponseJson<List<OrderProductVo>> getOrderShareInitProduct(Integer orderId) {
+        List<OrderProductVo> orderProductList = orderClubMapper.getOrderProductByOrderId(orderId);
+        orderProductList.forEach(orderProduct -> orderProduct.setImage(ImageUtil.getImageUrl("product", orderProduct.getImage(), domain)));
+        return ResponseJson.success(orderProductList);
+    }
+
 }

+ 49 - 1
src/main/resources/mapper/OrderClubMapper.xml

@@ -463,7 +463,7 @@
             p.productCategory as productCategory
         FROM cm_order_product cop
         LEFT JOIN product p ON cop.productID = p.productID
-        WHERE shopOrderID = #{shopOrderId}
+        WHERE cop.shopOrderID = #{shopOrderId}
     </select>
     <select id="getDiscernReceipt" resultType="com.caimei365.order.model.vo.DiscernReceiptVo">
         SELECT
@@ -682,6 +682,54 @@
         WHERE scr.openid = #{openId} AND osc.orderID = #{orderId}
         AND scr.delFlag = '0' AND osc.expiredTime > NOW()
     </select>
+    <select id="getOrderProductByOrderId" resultType="com.caimei365.order.model.vo.OrderProductVo">
+        SELECT
+            cop.orderID AS orderId,
+            cop.orderNo,
+            cop.shopOrderID AS shopOrderId,
+            cop.shopOrderNo,
+            cop.orderPromotionsId,
+            cop.productId,
+            cop.shopId,
+            cop.name,
+            cop.image,
+            cop.price1 AS price,
+            cop.shopName,
+            cop.costPrice,
+            cop.normalPrice,
+            cop.ladderPriceFlag,
+            cop.discountPrice,
+            cop.discount,
+            cop.totalAmount,
+            cop.totalFee,
+            cop.shouldPayFee,
+            cop.productUnit,
+            cop.num,
+            cop.presentNum,
+            cop.discountFee,
+            cop.includedTax,
+            cop.invoiceType,
+            cop.taxRate,
+            cop.addedValueTax,
+            cop.totalAddedValueTax,
+            cop.singleShouldPayTotalTax,
+            cop.shouldPayTotalTax,
+            cop.shopProductAmount,
+            cop.singleShopFee,
+            cop.shopFee,
+            cop.singleOtherFee,
+            cop.otherFee,
+            cop.singleCmFee,
+            cop.cmFee,
+            cop.payStatus,
+            cop.buyAgainFlag,
+            cop.notOutStore,
+            cop.isActProduct AS actProduct,
+            p.productCategory as productCategory
+        FROM cm_order_product cop
+        LEFT JOIN product p ON cop.productID = p.productID
+        WHERE orderID = #{orderId}
+    </select>
 
 
 </mapper>