商城購買流程及退款流程總結


一、購買流程

1、加入購物車

傳3個參數:商品id,加入購物車數量,商品參與活動類型

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/**
      * @param {Object} para : id商品id  num加入購物車數量  type商品參與活動
      */
     addToCart:  function (para) {
         app.postAjax( '/order/myCart/add' , {
             data: {
                 goodsId: para.id,
                 count: para.num,
                 type: para.type
             },
             success:  function (res) {
                 if  (para.success) {
                     para.success(res);
                 }
                 if  (res.statusCode == 100) {
                     mui.toast( "加入購物車成功" );
                 else  {
                     app.toast(res.msg);
                 }
             },
             error:  function () {
                 if  (para.error) {
                     para.error();
                 }
             }
         },  '' );
     },
 

1.1 購物車中修改商品數量

 

傳遞參數:id  商品id    count 修改后商品數量

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
app.postAjax( '/order/myCart/edit' , {
     data: {
         id: id,
         count: count
     },
                     success:  function (res) {
                         if  (res.statusCode == 100) {
                             if  (res.url) {
                                 var  data = JSON.parse(res.url);
                                 vm.renderData(data);
                             }
                         else  {
                             app.toast(res.msg);
                         }
                     }
                 });
 

1.2 刪除購物車中某個商品 

 

傳遞參數:id 商品id

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
app.postAjax( '/order/myCart/delete' , {
                     data: {
                         id: id
                     },
                     success:  function (res) {
                         if  (res.statusCode == 100) {
                             if  (res.url) {
                                 var  data = JSON.parse(res.url);
                                 vm.renderData(data);
                             }
                         else  {
                             app.toast(res.msg);
                         }
                     }
                 },  '' );
 

1.3 購物車中  選中/取消選中

 

傳遞參數:ids 選中商品id的json字符串

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
app.postAjax( '/order/myCart/select' , {
                     data: {
                         ids: JSON.stringify(arr)
                     },
                     success:  function (res) {
                         if  (res.statusCode == 100) {
                             console.log(res.url);
                             if  (res.url) {
                                 var  data = JSON.parse(res.url);
                                 vm.renderData(data);
                             }
                         else  {
                             app.toast(res.msg);
                         }
                     }
                 }, '' );
 

2、立即購買

 

跳轉至結算頁面,並將立即購買的商品數量,商品id,參與活動傳遞至跳轉頁面;

3、結算

3.1 請求用戶的收貨地址

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
app.postAjax( '/operation/address/getList' , {
                     data: {},
                     success:  function (res) {
                         if  (res.statusCode == 100) {
                             if  (res.data.length > 0) {
                                 vm.address = res.data[0];
                                 vm.getExpressList();
                             else  {
                                 app.confirm({
                                     msg:  '您還沒有收貨地址,立即去添加?' ,
                                     title:  '提示' ,
                                     ok:  function () {
                                         $.openWindow({
                                             url:  '/templates/user/new_address.html' ,
                                             id:  'newAddress'
                                         });
                                     },
                                     cancel:  function () {
                                         vm.currentPage.close();
                                     }
                                 });
                             }
                         else  {
                             app.toast(res.msg);
                         }
                     }
                 },  '' );
 

如果返回數據為空數組,跳轉頁面至添加收貨地址,用戶添加完成之后,返回至結算頁面,並攜帶添加的地址數據,根據地址id請求后台設置的快遞信息;

 

如果返回數據不為空,使用第一個數據(因為默認地址永遠在第一個,如果沒有默認,還是取第一個數據),根據地址id請求后台設置的快遞信息。

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
app.postAjax( '/order/myCart/getExpressList' , {
                     data: {},
                     success:  function (res) {
                         if  (res.statusCode == 100) {
                             vm.expressList = res.data;
                             if  (vm.expressList.length > 0) {
                                 vm.$set(vm.expressList[0],  'selected' true );
                                 vm.express = vm.expressList[0];
                             }
                             vm.getListByOrder();
                         else  {
                             app.toast(res.msg);
                         }
                     }
                 },  '' );
 

如果返回的數據為空數組,則快遞id為空,請求結算數據;
如果返回的數據不為空,則快遞id為第一條數據,根據快遞id請求結算數據;

 

請求結算數據:傳遞參數 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
app.postAjax( '/order/myCart/getListByOrder' , {
                     data: {
                         id: vm.goods.id,
                         count: vm.goods.count,
                         couponId: vm.couponId,
                         type: vm.goods.type,
                         userCoupon: true ,
                         expressId: vm.express.id,
                         activityId: vm.goods.activityId,
                         addressId: vm.address.id
                     },
                     success:  function (res) {
                         if  (res.statusCode == 100) {
                             document.getElementById( 'realPayMoney' ).innerText =  '¥'  + res.data.realPayMoney;
                             vm.info = res.data;
                             if  (res.data.groupList) vm.groupList = res.data.groupList;
                             if  (res.data.couponList) vm.couponList = res.data.couponList;
 
                         else  {
                             app.toast(res.msg);
                         }
                     }
                 },  '' );
 

4、提交訂單

 

請求成功,生成訂單,跳轉至支付頁面,並攜帶參數:orderNum(訂單編號)orderId(訂單id)money(支付金額);
5、支付功能

請求支付類型

如果是平台支付,需要輸入支付密碼;
如果是第三方支付,如支付寶、微信,需要調用相應支付接口。

支付成功,商品購買已完成。

6、訂單

訂單管理一般分為四個狀態:待付款、待發貨、待收貨、待評價。

6.1 待付款狀態,用戶可以支付/取消訂單

支付同5;

取消訂單:

6.2 待發貨狀態,用戶只有一個操作,提醒賣家發貨;

6.3 待收貨狀態,用戶可以確認收貨/查看物流;

確認收貨:

查看物流:

6.4 待評價狀態,用戶可以申請退款/立即評價。

根據返回數據判斷,如果isCanRefund==true,用戶可以申請退款;如果isCanComment==true,用戶可以評價訂單。

為了更好的操作體驗,申請退款以商品為單位,每次只操作一個商品。

申請退款:

立即評價:

 

二、退款流程

一般分為四個狀態:待審核,已審核,退貨中,已完成。

1、待審核:用戶發起退款申請,等待后台審核;
2、已審核: 后台審核通過,用戶根據退貨地址,退回商品,並填寫退貨物流信息。

3、退貨中:用戶已將商品寄回,賣家尚未收到商品;
4、已完成:賣家收到商品,用戶需要確認收到退款。

確認收到退款請求參數:id 退款訂單id。

退款流程已完成


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM