From 72d769fb774836b40ff5c311f4223ce02c106c7b Mon Sep 17 00:00:00 2001 From: mullins <476823686@qq.com> Date: Mon, 11 May 2020 21:33:40 +0800 Subject: [PATCH] myOrder --- src/pages.json | 10 +-- src/pages/index/index.vue | 2 +- src/pages/myOrder/components/OrderCard.vue | 34 ++++---- src/pages/myOrder/myOrder.vue | 46 +++++++---- src/store/modules/myOrder.js | 126 ++++++++++++++++++++++------- src/store/request.js | 30 ++++--- src/store/url.js | 9 ++- 7 files changed, 179 insertions(+), 78 deletions(-) diff --git a/src/pages.json b/src/pages.json index d99f2fb..99bcb48 100644 --- a/src/pages.json +++ b/src/pages.json @@ -1,5 +1,10 @@ { "pages": [ + { + "path" : "pages/myOrder/myOrder", + "style" : { + "navigationBarTitleText": "我的订单"} + }, { "path": "pages/cart/cart", "style": { @@ -36,11 +41,6 @@ "navigationBarTitleText": "申请退款" } }, - { - "path" : "pages/myOrder/myOrder", - "style" : { - "navigationBarTitleText": "我的订单"} - }, { "path": "pages/addAddress/addAddress", "style": { diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue index 396b2b9..68e224f 100644 --- a/src/pages/index/index.vue +++ b/src/pages/index/index.vue @@ -121,7 +121,7 @@ export default { computed: { goodsList() { // 也可以从 getters 获取 - console.log(this.$store.getters.list); + console.log('list', this.$store.state.test.list); return this.$store.state.test.list; } }, diff --git a/src/pages/myOrder/components/OrderCard.vue b/src/pages/myOrder/components/OrderCard.vue index 9baac0f..adbb338 100644 --- a/src/pages/myOrder/components/OrderCard.vue +++ b/src/pages/myOrder/components/OrderCard.vue @@ -57,10 +57,10 @@ <view class="btn-type1">再次购买</view> </view> </view> - </view> -</template> - -<script> + </view> +</template> + +<script> export default { props: { /** @@ -80,10 +80,14 @@ */ current:Number - }, - data() { - return { - }; + }, + onLoad() { + // console.log('dd'); + console.log('order', this.props.order); + }, + data() { + return { + }; }, methods:{ toRefundment(){ @@ -94,11 +98,11 @@ complete: () => {} }); } - } - } -</script> - -<style lang="scss"> + } + } +</script> + +<style lang="scss"> .card{ width: 670rpx; height: 478rpx; @@ -206,5 +210,5 @@ margin-left: 20rpx; } } - } -</style> + } +</style> diff --git a/src/pages/myOrder/myOrder.vue b/src/pages/myOrder/myOrder.vue index 5335572..3f81338 100644 --- a/src/pages/myOrder/myOrder.vue +++ b/src/pages/myOrder/myOrder.vue @@ -13,7 +13,10 @@ </view> </view> <view class="orderList" > - <view v-for="(order) in orderList" :key="order.orderId"> + <view + v-for="(order) in orderList" + :key="order.orderId" + > <OrderCard :order = "order" :current="current"></OrderCard> </view> </view> @@ -21,10 +24,12 @@ </view> </template> <script> - import OrderCard from './components/OrderCard.vue' + import OrderCard from './components/OrderCard.vue'; + import store from '@/store'; + export default { components:{ - 'OrderCard':OrderCard + 'OrderCard': OrderCard }, data() { return { @@ -37,20 +42,31 @@ ], current: 0, //订单数据 - orderList:[ - { orderId: 0, img: '/static/img/goods/p1.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:1 ,buyNum:1}, - { orderId: 2, img: '/static/img/goods/p3.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:1 ,buyNum:1}, - { orderId: 3, img: '/static/img/goods/p4.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:2 ,buyNum:1}, - { orderId: 4, img: '/static/img/goods/p5.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:3 ,buyNum:1}, - { orderId: 5, img: '/static/img/goods/p6.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:3 ,buyNum:1}, - { orderId: 6, img: '/static/img/goods/p7.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:4 ,buyNum:1}, - { orderId: 7, img: '/static/img/goods/p8.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:4 ,buyNum:1}, - { orderId: 8, img: '/static/img/goods/p9.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:5 ,buyNum:1}, - { orderId: 9, img: '/static/img/goods/p10.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:5 ,buyNum:1} - ], - + // orderList:[ + // { orderId: 0, img: '/static/img/goods/p1.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:1 ,buyNum:1}, + // { orderId: 2, img: '/static/img/goods/p3.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:1 ,buyNum:1}, + // { orderId: 3, img: '/static/img/goods/p4.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:2 ,buyNum:1}, + // { orderId: 4, img: '/static/img/goods/p5.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:3 ,buyNum:1}, + // { orderId: 5, img: '/static/img/goods/p6.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:3 ,buyNum:1}, + // { orderId: 6, img: '/static/img/goods/p7.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:4 ,buyNum:1}, + // { orderId: 7, img: '/static/img/goods/p8.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:4 ,buyNum:1}, + // { orderId: 8, img: '/static/img/goods/p9.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:5 ,buyNum:1}, + // { orderId: 9, img: '/static/img/goods/p10.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:5 ,buyNum:1} + // ], }; }, + onLoad: function() { + store.dispatch('myOrder/getList', { + uid: "1", + way: "0", + }); + }, + computed: { + orderList() { + console.log('orderList', this.$store.state.myOrder.orderlist); + return this.$store.state.myOrder.orderlist; + } + }, methods:{ onClickItem(e) { if (this.current !== e) { diff --git a/src/store/modules/myOrder.js b/src/store/modules/myOrder.js index 7afe72b..ed076ae 100644 --- a/src/store/modules/myOrder.js +++ b/src/store/modules/myOrder.js @@ -1,41 +1,107 @@ +import urlAlias from '../url'; +import request from '../request'; + +const { + orderList +} = urlAlias; + +const data = { + data: [ + { + finished_time: null, + is_refound: "0", + mch_id: "1436019502", + money_of_dcw: "0", + money_of_partner: "0", + money_of_shop: "0", + orderJudge: false, + order_info: { + address:{ + cityName: "镇江市", + countyName: "丹阳市", + detailInfo: "延陵镇柳茹村卫生室附近秀野堂农业发展有限公司", + errMsg: "chooseAddress:ok", + nationalCode: "321181", + postalCode: "212300", + provinceName: "江苏省", + telNumber: "15896379277", + userName: "点餐汪客服", + }, + cartinfo:['11', '12'], + keyname: "1_1587129366", + lefttime: 179995, + list:[ + { + cart_id: "11", + imgUrl: "https://glass.xiuyetang.com//upload_jk/4/4_0_3FDA03.jpg", + img_index_url: null, + memo: "志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流,01-8701", + mp_id: "1", + nowPrice: 100, + num: "2", + oldPrice: "0", + p_discount: "1", + p_name: "01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流", + p_root_index: "1", + p_sale_price: "0", + peopleName: "me", + pics: '', + pid: "4", + sk_id: "38", + }, + ], + orderDesc: "总共包括有:01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流在内的1件商品", + total_fee: 100 + }, + partner_uid: "0", + pay_cate: "2020", + pay_id: "3", + pay_time: "2020-04-17 21:16:12", + pay_wood_desc: "在【非常戴镜】的微信付款凭证", + pay_wood_id: "fcdj-1-1_1587129366", + prepay_id: "wx172116124528226bf1a8adad1662456500", + re_check_staus: "0", + shopid: "0", + split_userid: "0", + status: "1", + total_fee: "100", + uid: "1", + } + ], + msg: "订单列表", + status: 0, +} + const state = { - orderList: [], + orderList: [], }; const mutations = { - getOrder: (state, data) => { - state.orderList = data; - }, + INIT: (state, data) => { + state.orderList = data; + }, }; const actions = { - fetch({ commit }, param) { - uni - .request({ - url: "", - method: "post", - data: {}, - header: { - "Content-Type": "application/x-www-form-urlencoded", - }, - timeout: 3000, - withCredentials: false, - success: (res) => { - commit('getOrder', res.data.data) - }, - fail: (res) => { - console.log("fail status === > ", res); - }, - complete: (res) => { - console.log("complete status === > ", res); - } - }) - } + getList({ commit }, param) { + request({ + url: orderList, + data: param, + success: (res) => { + const resData = { + ...res, + data, + } + console.log('data.data', resData.data.data); + commit("INIT", resData.data.data); + }, + }) + } } export default { - namespaced: true, - state, - mutations, - actions, + namespaced: true, + state, + mutations, + actions, } \ No newline at end of file diff --git a/src/store/request.js b/src/store/request.js index 2e3300c..dd1d799 100644 --- a/src/store/request.js +++ b/src/store/request.js @@ -1,22 +1,32 @@ -const DOMAIN = 'https://api.glass.xiuyetang.com/'; +const DOMAIN = 'https://api.glass.xiuyetang.com'; export default async function request({ url, + method = "post", + data = {}, + header = { + "Content-Type": "application/x-www-form-urlencoded", + }, + timeout = 3000, + withCredentials = false, // 跨域请求时是否携带凭证(cookies) + // sslVerify: true, // 验证 ssl 证书 success, - fail, - complete, + fail = (res) => { + console.log("fail status === > ", res); + }, + complete = (res) => { + console.log("complete status === > ", res); + }, }) { console.log("DOMAIN", DOMAIN, url); uni .request({ url: DOMAIN + url, - method: "post", - data: {}, - header: { - "Content-Type": "application/x-www-form-urlencoded", - }, - timeout: 3000, - withCredentials: false, + method, + data, + header, + timeout, + withCredentials, success, fail, complete, diff --git a/src/store/url.js b/src/store/url.js index 96225a3..23e6d40 100644 --- a/src/store/url.js +++ b/src/store/url.js @@ -1,6 +1,11 @@ const urlAlias = { - // 获取首页商品列表 - shopList: 'app/prod/list', + // 首页 + shopList: '/app/prod/list', // 获取首页商品列表 + + + + // 我的订单 + orderList: '/app/order/list', // 获取订单列表 } export default urlAlias; -- 2.0.0