From f0e2b7ecfcedfe373a3710c1203102724252ddfa Mon Sep 17 00:00:00 2001
From: "AERWEN\\26795" <123456789a>
Date: Wed, 18 Oct 2023 03:20:00 +0800
Subject: [PATCH] =?UTF-8?q?feat=20=E6=B7=BB=E5=8A=A0=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E7=A1=AE=E8=AE=A4=E9=A1=B5=E9=9D=A2=E5=8C=BA=E5=88=86=E5=BA=97?=
=?UTF-8?q?=E9=93=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
model/order/orderConfirm.js | 97 +++++++++++---
pages/order/order-confirm/index.js | 10 +-
pages/order/order-confirm/index.wxml | 174 ++++++++++---------------
pages/order/order-confirm/index.wxss | 8 ++
pages/order/pay-result/index.wxml | 1 +
services/cart/updateCartGoodsSelect.js | 2 +-
6 files changed, 158 insertions(+), 134 deletions(-)
diff --git a/model/order/orderConfirm.js b/model/order/orderConfirm.js
index 392054d..572e21d 100644
--- a/model/order/orderConfirm.js
+++ b/model/order/orderConfirm.js
@@ -2,6 +2,9 @@ import {
mockIp,
mockReqId
} from '../../utils/mock';
+import {
+ getGoodsFreight
+} from '~/services/order/getGoodsFreight';
export const transformGoodsDataToConfirmData = (goodsDataList) => {
const list = [];
@@ -40,10 +43,11 @@ export const transformGoodsDataToConfirmData = (goodsDataList) => {
};
/** 生成结算数据 */
-export function genSettleDetail(params) {
+export async function genSettleDetail(params) {
const {
userAddressReq,
couponList,
+ storeInfoList,
goodsRequestList,
totalDeliveryFee
} = params;
@@ -67,23 +71,25 @@ export function genSettleDetail(params) {
invoiceRequest: null,
skuImages: null,
deliveryFeeList: null,
- storeGoodsList: [{
- storeId: '1000',
- storeName: '云Mall深圳旗舰店',
- remark: null,
- goodsCount: 1,
- deliveryFee: '0',
- deliveryWords: null,
- storeTotalAmount: '0',
- storeTotalPayAmount: '179997',
- storeTotalDiscountAmount: '110000',
- storeTotalCouponAmount: '0',
- skuDetailVos: [],
- couponList: [{
- couponId: 11,
- storeId: '1000',
- }, ],
- }, ],
+ storeGoodsList: [
+ // {
+ // storeId: '1000',
+ // storeName: '云Mall深圳旗舰店',
+ // remark: null,
+ // goodsCount: 1,
+ // deliveryFee: '0',
+ // deliveryWords: null,
+ // storeTotalAmount: '0',
+ // storeTotalPayAmount: '179997',
+ // storeTotalDiscountAmount: '110000',
+ // storeTotalCouponAmount: '0',
+ // skuDetailVos: [],
+ // couponList: [{
+ // couponId: 11,
+ // storeId: '1000',
+ // }, ],
+ // },
+ ],
inValidGoodsList: null,
outOfStockGoodsList: null,
limitGoodsList: null,
@@ -98,10 +104,63 @@ export function genSettleDetail(params) {
success: true,
};
+ console.log(storeInfoList, '测试前端用店铺判断');
+
+ const storeGoodsList = []
+ // 将商品塞进对应的店铺
+ storeInfoList.forEach((store) => {
+ const storeGoods = {
+ storeId: "",
+ storeName: "",
+ goodsCount: 0,
+ deliveryFee: 0,
+ storeTotalAmount: 0,
+ storeTotalDiscountAmount: 0,
+ storeTotalCouponAmount: 0,
+ couponList: [{
+ couponId: 11,
+ storeId: '1000',
+ }, ],
+ }
+ const storeGoodsRequestList = []
+ storeGoods.storeId = store.storeId
+ storeGoods.storeName = store.storeName
+
+ goodsRequestList.forEach(item => {
+ if (item.storeId === store.storeId) {
+ storeGoods.goodsCount += item.quantity
+ storeGoods.storeTotalAmount += item.quantity * item.price
+ storeGoodsRequestList.push(item)
+ }
+ });
+
+ if (userAddressReq) {
+ let data = {
+ GoodsRequestList: storeGoodsRequestList,
+ CustomerAddressGuid: userAddressReq.customerAddressGuid
+ }
+ getGoodsFreight(data).then((res) => {
+ if (res.code === 0) {
+ resp.data.abnormalDeliveryGoodsList = storeGoodsRequestList
+ }
+ storeGoods.deliveryFee = res.data
+ storeGoods.storeTotalAmount += res.data
+ console.log(storeGoods.deliveryFee, '运费');
+ })
+ }
+
+ const list = transformGoodsDataToConfirmData(storeGoodsRequestList);
+ storeGoods.skuDetailVos = list
+ storeGoodsList.push(storeGoods)
+ })
+ console.log(storeGoodsList, '看看成果');
+
const list = transformGoodsDataToConfirmData(goodsRequestList);
console.log(list, '看看list');
// 获取购物车传递的商品数据
- resp.data.storeGoodsList[0].skuDetailVos = list;
+ // resp.data.storeGoodsList[0].skuDetailVos = list;
+ // resp.data.storeGoodsList[1].skuDetailVos = list;
+ resp.data.storeGoodsList = storeGoodsList;
// 判断是否携带优惠券数据
const discountPrice = [];
diff --git a/pages/order/order-confirm/index.js b/pages/order/order-confirm/index.js
index 45dd893..87f69d1 100644
--- a/pages/order/order-confirm/index.js
+++ b/pages/order/order-confirm/index.js
@@ -128,8 +128,6 @@ Page({
if (userAddressReq) {
// 计算运费接口
- console.log(goodsRequestList, '看看看看')
- console.log(userAddressReq.customerAddressGuid, '看看看看地址')
let data = {
GoodsRequestList: goodsRequestList,
CustomerAddressGuid: userAddressReq.customerAddressGuid
@@ -147,7 +145,8 @@ Page({
});
this.initData(res.data);
},
- () => {
+ (e) => {
+ console.log(e,'异常');
//接口异常处理
this.handleError();
},
@@ -157,6 +156,7 @@ Page({
// 转换商品卡片显示数据
const data = this.handleResToGoodsCard(resData);
this.userAddressReq = resData.userAddress;
+ console.log(data,'看看data');
if (resData.userAddress) {
this.setData({
@@ -336,9 +336,7 @@ Page({
});
},
onNotes(e) {
- const {
- storenoteindex: storeNoteIndex
- } = e.currentTarget.dataset;
+ const storeNoteIndex = e.currentTarget.dataset.storenoteindex;
// 添加备注信息
this.setData({
dialogShow: true,
diff --git a/pages/order/order-confirm/index.wxml b/pages/order/order-confirm/index.wxml
index c6d6832..62fc308 100644
--- a/pages/order/order-confirm/index.wxml
+++ b/pages/order/order-confirm/index.wxml
@@ -4,25 +4,13 @@
-
-
-
+
+
{{goods.title}}
@@ -33,76 +21,75 @@
x{{goods.num}}
-
-
-
- 商品总额
-
-
-
- 运费
-
-
- +
-
-
- 免运费
+
+
+
+ 商品总额
+
+
-
-
-
+
+
+ +
+
+
- 选择优惠券
-
- 无可用
-
+ 免运费
+
- -->
-
-
- 订单备注
-
-
-
+
+ 订单备注
+
+
+
+
+
+
+
+
+
+
+ 共{{stores.goodsCount}}件
+ 小计
+
+
+
-
-
- 共{{settleDetailData.totalGoodsCount}}件
- 小计
-
-
-
+
@@ -111,42 +98,13 @@
-
-
+
+
-
+
-
+
\ No newline at end of file
diff --git a/pages/order/order-confirm/index.wxss b/pages/order/order-confirm/index.wxss
index 8b201c8..a065de2 100644
--- a/pages/order/order-confirm/index.wxss
+++ b/pages/order/order-confirm/index.wxss
@@ -46,6 +46,14 @@
background: #cccccc;
}
+.order-wrapper{
+ width: 98%;
+ margin: 0 auto;
+ margin-bottom: 30rpx;
+ border-radius: 30rpx;
+ overflow: hidden;
+}
+
.order-wrapper .store-wrapper {
width: 100%;
height: 96rpx;
diff --git a/pages/order/pay-result/index.wxml b/pages/order/pay-result/index.wxml
index 3153fe6..dc1324b 100644
--- a/pages/order/pay-result/index.wxml
+++ b/pages/order/pay-result/index.wxml
@@ -7,6 +7,7 @@
微信支付:
{
request({