Commit 9a8f39ae36b7710f3efff4550ebe9c1bfe9d68d3

Authored by BigBoss
1 parent 600d4968f3
Exists in master

订单

1 { 1 {
2 "pages" : [ 2 "pages" : [
3 { 3 {
4 "path" : "pages/index/index", 4 "path" : "pages/user/user",
5 "style" : { 5 "style" : {
6 "navigationBarTitleText" : "商城一览" 6 "navigationBarTitleText" : "我的"
7 } 7 }
8 }, 8 },
9 { 9 {
10 "path" : "pages/myOrder/myOrder", 10 "path" : "pages/detailsChoiceArgs/detailsChoiceArgs",
11 "style" : { 11 "style" : {
12 "navigationBarTitleText" : "我的订单" 12 "navigationBarTitleText" : "镜片名称名称"
13 } 13 }
14 }, 14 },
15 { 15 {
16 "path" : "pages/cart/cart", 16 "path" : "pages/purchaseLenses/purchaseLenses",
17 "style" : { 17 "style" : {
18 "navigationBarTitleText" : "购物车" 18 "navigationBarTitleText" : "产品选购"
19 } 19 }
20 }, 20 },
21 { 21 {
22 "path" : "pages/frameDetail/frameDetail", 22 "path" : "pages/lensDetails/lensDetails",
23 "style" : { 23 "style" : {
24 "navigationBarTitleText" : "产品详情" 24 "navigationBarTitleText" : "产品详情"
25 } 25 }
26 }, 26 },
27 { 27 {
28 "path" : "pages/lensDetails/lensDetails", 28 "path" : "pages/myOrderPaying/myOrderPaying",
29 "style" : { 29 "style" : {
30 "navigationBarTitleText" : "产品详情" 30 "navigationBarTitleText" : "我的订单"
31 } 31 }
32 }, 32 },
33 { 33 {
34 "path" : "pages/purchaseLenses/purchaseLenses", 34 "path" : "pages/myOrder/myOrder",
35 "style" : { 35 "style" : {
36 "navigationBarTitleText" : "产品选购" 36 "navigationBarTitleText" : "我的订单"
37 } 37 }
38 }, 38 },
39 { 39 {
40 "path" : "pages/refundProgress/refundProgress", 40 "path" : "pages/index/index",
41 "style" : { 41 "style" : {
42 "navigationBarTitleText" : "申请退款" 42 "navigationBarTitleText" : "商城一览"
43 } 43 }
44 }, 44 },
45 { 45 {
46 "path" : "pages/addAddress/addAddress", 46 "path" : "pages/cart/cart",
47 "style" : { 47 "style" : {
48 "navigationBarTitleText" : "新增地址" 48 "navigationBarTitleText" : "购物车"
49 } 49 }
50 }, 50 },
51 { 51 {
52 "path" : "pages/confirmOrder/confirmOrder", 52 "path" : "pages/frameDetail/frameDetail",
53 "style" : { 53 "style" : {
54 "navigationBarTitleText" : "确认订单" 54 "navigationBarTitleText" : "产品详情"
55 } 55 }
56 }, 56 },
57 { 57 {
58 "path" : "pages/user/user", 58 "path" : "pages/refundProgress/refundProgress",
59 "style" : { 59 "style" : {
60 "navigationBarTitleText" : "我的" 60 "navigationBarTitleText" : "申请退款"
61 } 61 }
62 }, 62 },
63 { 63 {
64 "path" : "pages/refundment/refundWays" 64 "path" : "pages/addAddress/addAddress",
65 "style" : {
66 "navigationBarTitleText" : "新增地址"
67 }
65 }, 68 },
66 { 69 {
67 "path" : "pages/refundment/refundment" 70 "path" : "pages/confirmOrder/confirmOrder",
71 "style" : {
72 "navigationBarTitleText" : "确认订单"
73 }
68 }, 74 },
69 { 75 {
70 "path" : "pages/predelivery/predelivery" 76 "path" : "pages/refundment/refundWays",
77 "style" : {
78 "navigationBarTitleText" : "退款方式"
79 }
71 }, 80 },
72 { 81 {
73 "path" : "pages/customerService/customerService", 82 "path" : "pages/refundment/refundment",
74 "style" : { 83 "style" : {
75 "navigationBarTitleText" : "在线客服" 84 "navigationBarTitleText" : "申请退款"
76 } 85 }
77 }, 86 },
78 { 87 {
79 "path" : "pages/myOrderPaying/myOrderPaying", 88 "path" : "pages/predelivery/predelivery",
80 "style" : { 89 "style" : {
81 "navigationBarTitleText" : "我的订单" 90 "navigationBarTitleText" : "待发货"
82 } 91 }
83 }, 92 },
84 { 93 {
85 "path" : "pages/detailsChoiceArgs/detailsChoiceArgs", 94 "path" : "pages/customerService/customerService",
86 "style" : { 95 "style" : {
87 "navigationBarTitleText" : "镜片名称名称" 96 "navigationBarTitleText" : "在线客服"
88 } 97 }
89 }, 98 },
90 { 99 {
91 "path" : "pages/detailStandard/detailStandard_sun", 100 "path" : "pages/detailStandard/detailStandard_sun",
92 "style" : { 101 "style" : {
93 "navigationBarTitleText" : "太阳镜选购页" 102 "navigationBarTitleText" : "太阳镜选购页"
94 } 103 }
95 }, 104 },
96 { 105 {
97 "path" : "pages/detailStandard/detailStandard_k", 106 "path" : "pages/detailStandard/detailStandard_k",
98 "style" : { 107 "style" : {
99 "navigationBarTitleText" : "镜框选购页" 108 "navigationBarTitleText" : "镜框选购页"
100 } 109 }
101 } 110 }
111 ,{
112 "path" : "pages/addOpticsData/addOpticsData",
113 "style" : {
114 "navigationBarTitleText" : "验光数据"}
115 }
102 ], 116 ],
103 "globalStyle" : { 117 "globalStyle" : {
104 "navigationBarTextStyle" : "black", 118 "navigationBarTextStyle" : "black",
105 "navigationBarTitleText" : "uni-app", 119 "navigationBarTitleText" : "uni-app",
106 "navigationBarBackgroundColor" : "#F8F8F8", 120 "navigationBarBackgroundColor" : "#F8F8F8",
107 "backgroundColor" : "#F8F8F8" 121 "backgroundColor" : "#F8F8F8"
108 }, 122 },
109 "tabBar" : { 123 "tabBar" : {
110 "color" : "#C0C4CC", 124 "color" : "#C0C4CC",
111 "selectedColor" : "#fa436a", 125 "selectedColor" : "#fa436a",
112 "borderStyle" : "black", 126 "borderStyle" : "black",
113 "backgroundColor" : "#ffffff", 127 "backgroundColor" : "#ffffff",
114 "list" : [ 128 "list" : [
115 { 129 {
116 "pagePath" : "pages/index/index", 130 "pagePath" : "pages/index/index",
117 "iconPath" : "static/tab-home.png", 131 "iconPath" : "static/tab-home.png",
118 "selectedIconPath" : "static/tab-home-current.png", 132 "selectedIconPath" : "static/tab-home-current.png",
119 "text" : "首页" 133 "text" : "首页"
120 }, 134 },
121 { 135 {
122 "pagePath" : "pages/cart/cart", 136 "pagePath" : "pages/cart/cart",
123 "iconPath" : "static/tab-cart.png", 137 "iconPath" : "static/tab-cart.png",
124 "selectedIconPath" : "static/tab-cart-current.png", 138 "selectedIconPath" : "static/tab-cart-current.png",
125 "text" : "购物车" 139 "text" : "购物车"
126 }, 140 },
127 { 141 {
128 "pagePath" : "pages/user/user", 142 "pagePath" : "pages/user/user",
129 "iconPath" : "static/tab-my.png", 143 "iconPath" : "static/tab-my.png",
130 "selectedIconPath" : "static/tab-my-current.png", 144 "selectedIconPath" : "static/tab-my-current.png",
131 "text" : "我的" 145 "text" : "我的"
132 } 146 }
133 ] 147 ]
134 }, 148 },
135 "condition" : { 149 "condition" : {
136 //模式配置,仅开发期间生效 150 //模式配置,仅开发期间生效
137 "current" : 0, //当前激活的模式(list 的索引项) 151 "current" : 0, //当前激活的模式(list 的索引项)
138 "list" : [ 152 "list" : [
139 { 153 {
140 "name" : "", //模式名称 154 "name" : "", //模式名称
141 "path" : "", //启动页面,必选 155 "path" : "", //启动页面,必选
142 "query" : "" //启动参数,在页面的onLoad函数里面得到 156 "query" : "" //启动参数,在页面的onLoad函数里面得到
143 } 157 }
144 ] 158 ]
145 } 159 }
146 } 160 }
147 161
src/pages/addOpticsData/addOpticsData.vue
File was created 1 <template>
2 <view>
3
4 </view>
5 </template>
6
7 <script>
8 export default {
9 data() {
10 return {
11
12 };
13 }
14 }
15 </script>
16
17 <style lang="scss">
18
19 </style>
20
src/pages/myOrder/components/OrderCard.vue
1 <template> 1 <template>
2 <view> 2 <view>
3 <view class="card" v-if="current === order.orderType" > 3 <view class="card" v-if="current == status" @click="toOrderInfo(status,order.pay_id)">
4 <view class="cardHeader"> 4 <view class="cardHeader">
5 <text class="orderId">订单号:{{order.orderId}}</text> 5 <text class="orderId" v-if="status == '0'||status == '1'">订单号:{{order.mch_id}}</text>
6 <text class="orderType" v-if="order.orderType===1">待付款</text> 6 <text class="orderId" v-if="status == '2'||status == '3'">下单时间:{{order.pay_time}}</text>
7 <text class="orderType" v-if="order.orderType===2">待发货</text> 7 <text class="orderType" v-if="status=='0'">待付款</text>
8 <text class="orderType" v-if="order.orderType === 3">待收货</text> 8 <text class="orderType" v-if="status=='1'">待收货</text>
9 <text class="orderType" v-if="order.orderType === 4">退款售后</text> 9 <text class="orderType" v-if="status == '2'||status == '3'">已完成</text>
10 <text class="orderType" v-if="order.orderType === 5">已完成</text> 10 <!-- <text class="orderType" v-if="status == '3'">已评价</text> -->
11 </view> 11 </view>
12 <view class="orderCardInfo"> 12 <view class="orderCardInfo" v-for="(orderInfo) in orderInfoList.list" :key="orderInfo">
13 <image :src="order.img" mode="aspectFill"></image> 13 <image :src="orderInfo.imgUrl" mode="aspectFill"></image>
14 <view class="infoText"> 14 <view class="infoText">
15 <view class="orderName">{{order.name}}</view> 15 <view class="orderName">{{orderInfo.p_name}}</view>
16 <view class="orderDescrib">规格:玫瑰金 / 钛合金 / 防日光防紫外线</view> 16 <view class="orderDescrib">{{orderInfo.p_name}}</view>
17 <view class="infoText-bottom"> 17 <view class="infoText-bottom">
18 <view class="markPrice">{{order.price}}</view> 18 <view class="markPrice">{{orderInfo.nowPrice}}</view>
19 <view class="buy-num">X{{order.buyNum}}</view> 19 <view class="buy-num">X {{orderInfo.num}}</view>
20 </view> 20 </view>
21 </view> 21 </view>
22 </view> 22 </view>
23 <view class="payPrice">实付:<text class="priceNum">{{order.price}}</text> </view> 23 <view class="payPrice">实付:<text class="priceNum">{{order.total_fee}}</text> </view>
24 <view class="btns" v-if="order.orderType === 1"> 24 <!-- 0待付款 1 已付款 待收货 2 已收货待评价 3 已评价 -->
25 <view class="btn-type1">申请退款</view> 25 <view class="btns" v-if="status == '0'">
26 <view class="btn-type1" >取消订单</view>
26 <view class="btn-type2">去支付</view> 27 <view class="btn-type2">去支付</view>
27 </view> 28 </view>
28 <view class="btns" v-if="order.orderType === 0"> 29 <view class="btns" v-if="status == '1'">
29 <view class="btn-type1">再次购买</view> 30 <view class="btn-type2">确认收货</view>
30 </view> 31 </view>
32 <view class="btns" v-if="status == '2'">
33 <view class="btn-type2">再次购买</view>
34 </view>
35 <!-- <view class="btns" v-if="status == '3'">
36 <view class="btn-type2">再次购买</view>
37 </view> -->
31 </view> 38 </view>
32 <view class="card" v-if="current === 0" > 39 <view class="card" v-if="current == '10'" @click="toOrderInfo(status,order.pay_id)">
33 <view class="cardHeader"> 40 <view class="cardHeader">
34 <text class="orderId">订单号:{{order.orderId}}</text> 41 <text class="orderId" v-if="status == '0'||status == '1'">订单号:{{order.mch_id}}</text>
35 <text class="orderType" v-if="order.orderType===1">待付款</text> 42 <text class="orderId" v-if="status == '2'||status == '3'">下单时间:{{order.pay_time}}</text>
36 <text class="orderType" v-if="order.orderType===2">待发货</text> 43 <text class="orderType" v-if="status=='0'">待付款</text>
37 <text class="orderType" v-if="order.orderType === 3">待收货</text> 44 <text class="orderType" v-if="status=='1'">待收货</text>
38 <text class="orderType" v-if="order.orderType === 4">退款售后</text> 45 <text class="orderType" v-if="status == '2'||status == '3'">已完成</text>
46 <!-- <text class="orderType" v-if="status == '3'">已评价</text> -->
39 </view> 47 </view>
40 <view class="orderCardInfo"> 48 <view class="orderCardInfo" v-if v-for="(orderInfo) in orderInfoList.list" :key="orderInfo">
41 <image :src="order.img" mode="aspectFill"></image> 49 <image :src="orderInfo.imgUrl" mode="aspectFill"></image>
42 <view class="infoText"> 50 <view class="infoText">
43 <view class="orderName">{{order.name}}</view> 51 <view class="orderName">{{orderInfo.p_name}}</view>
44 <view class="orderDescrib">规格:玫瑰金 / 钛合金 / 防日光防紫外线</view> 52 <view class="orderDescrib">{{orderInfo.p_name}}</view>
45 <view class="infoText-bottom"> 53 <view class="infoText-bottom">
46 <view class="markPrice">{{order.price}}</view> 54 <view class="markPrice">{{orderInfo.nowPrice}}</view>
47 <view class="buy-num">X{{order.buyNum}}</view> 55 <view class="buy-num">X {{orderInfo.num}}</view>
48 </view> 56 </view>
49 </view> 57 </view>
50 </view> 58 </view>
51 <view class="payPrice">实付:<text class="priceNum">{{order.price}}</text> </view> 59 <view class="payPrice">实付:<text class="priceNum">{{order.total_fee}}</text> </view>
52 <view class="btns" v-if="order.orderType === 1"> 60 <view class="btns" v-if="status == '0'">
53 <view class="btn-type1" @click="toRefundment">申请退款</view> 61 <view class="btn-type1" >取消订单</view>
54 <view class="btn-type2">去支付</view> 62 <view class="btn-type2">去支付</view>
55 </view> 63 </view>
56 <view class="btns" v-if="order.orderType === 0"> 64 <view class="btns" v-if="status == '1'">
57 <view class="btn-type1">再次购买</view> 65 <view class="btn-type2">确认收货</view>
66 </view>
67 <view class="btns" v-if="status == '2'">
68 <view class="btn-type2">再次购买</view>
58 </view> 69 </view>
70 <!-- <view class="btns" v-if="status == '3'">
71 <view class="btn-type2">再次购买</view>
72 </view> -->
59 </view> 73 </view>
60 </view> 74 </view>
61 </template> 75 </template>
62 76
63 <script> 77 <script>
64 export default { 78 export default {
65 props: { 79 props: {
66 /** 80 /**
67 * 订单数据 81 * 订单数据
68 */ 82 */
69 order: { 83 order: {
70 orderId: Number, 84 // orderId: Number,
71 img: String, 85 // img: String,
72 name: String, 86 // name: String,
73 originCost:String, 87 // originCost:String,
74 price: String, 88 // price: String,
75 orderType:Number, 89 // orderType:Number,
76 buyNum:Number 90 // buyNum:Number,
91 finished_time: null,
92 is_refound: String,
93 mch_id: String,
94 money_of_dcw: String,
95 money_of_partner: String,
96 money_of_shop: String,
97 orderJudge: Boolean,
98 order_info: {
99 address:{
100 cityName: String,
101 countyName: String,
102 detailInfo: String,
103 errMsg: String,
104 nationalCode: String,
105 postalCode: String,
106 provinceName: String,
107 telNumber: String,
108 userName: String,
109 },
110 cartinfo: ["127"],
111 keyname: "330_1588911391",
112 lefttime: Number,
113 list:[
114 {
115 cart_id: "127",
116 imgUrl: String,
117 img_index_url: null,
118 memo: String,
119 mp_id: String,
120 nowPrice: String,
121 num: String,
122 oldPrice: Number,
123 p_discount: String,
124 p_name: String,
125 p_root_index: String,
126 p_sale_price: String,
127 peopleName: String,
128 pics: ["79_0_D122D2.jpg","79_1_E0A1ED.jpg","79_2_B00B3D.jpg","79_3_B2CF21.jpg","79_4_33AD1B.jpg"],
129 pid: String,
130 sk_id: String,
131 }
132 ],
133 orderDesc: String,
134 total_fee: Number,
135 },
136 partner_uid: String,
137 pay_cate: String,
138 pay_id: String,
139 pay_time: String,
140 pay_wood_desc: String,
141 pay_wood_id: String,
142 prepay_id: String,
143 re_check_staus: String,
144 shopid: String,
145 split_userid: String,
146 status: String,
147 // status0待付款 1已付款 待收货 2 已收货待评价 3 已评价
148 total_fee: String,
149 uid: String,
77 }, 150 },
78 /** 151 /**
79 * 当前选择 152 * 当前选择
80 */ 153 */
81 current:Number 154 current:Number
82 155
83 }, 156 },
84 onLoad() { 157 created() {
85 // console.log('dd'); 158 console.log(this.order);
86 console.log('order', this.props.order); 159 // console.log(this.order.status );
160 // console.log(this.current);
161 },
162 computed:{
163 status(){
164 return this.order.status
165 },
166 orderInfoList(){
167 return this.order.order_info[0]
168 }
87 }, 169 },
88 data() { 170 data() {
89 return { 171 return {
90 }; 172 };
91 }, 173 },
92 methods:{ 174 methods:{
93 toRefundment(){ 175 toRefundment(){
94 uni.navigateTo({ 176 uni.navigateTo({
95 url: '../refundment/refundment', 177 url: '../refundment/refundment',
96 success: res => {}, 178 success: res => {},
97 fail: () => {}, 179 fail: () => {},
98 complete: () => {} 180 complete: () => {}
99 }); 181 });
182 },
183 toOrderInfo(status,payId){
184 console.log(status,payId)
185 switch(status){
186 // 0待付款 1待收货 2已收货 3 已评价
187 case '0':
188 uni.navigateTo({
189 url:`../myOrderPaying/myOrderPaying?status=`+status+`&payId=`+payId,
190 fail(errMsg) {
191 console.log(errMsg)
192 }
193 })
194 break;
195 case '1':
196 uni.navigateTo({
197 url:`../myOrderPaying/myOrderPaying?status=`+status+`&payId=`+payId,
198 fail(errMsg) {
199 console.log(errMsg)
200 }
201 })
202
203 break;
204 case '2 || 3':
205 uni.navigateTo({
206 url:`../myOrderPaying/myOrderPaying?status=`+status+`&payId=`+payId,
207 fail(errMsg) {
208 console.log(errMsg)
209 }
210 })
211
212 break;
213
214
215 default:
216 break;
217
218 }
100 } 219 }
101 } 220 }
102 } 221 }
103 </script> 222 </script>
104 223
105 <style lang="scss"> 224 <style lang="scss">
106 .card{ 225 .card{
107 width: 670rpx; 226 width: 670rpx;
108 height: 478rpx; 227 height: 478rpx;
109 background: #FFFFFF; 228 background: #FFFFFF;
110 box-shadow: 0 0 10px 0 rgba(177,128,128,0.06); 229 box-shadow: 0 0 10px 0 rgba(177,128,128,0.06);
111 border-radius: 8px; 230 border-radius: 8px;
112 border-radius: 8px; 231 border-radius: 8px;
113 margin-top: 20rpx; 232 margin-top: 20rpx;
114 padding: 40rpx; 233 padding: 40rpx;
115 box-sizing: border-box; 234 box-sizing: border-box;
116 .cardHeader{ 235 .cardHeader{
117 width: 100%; 236 width: 100%;
118 height: 40rpx; 237 height: 40rpx;
119 display: flex; 238 display: flex;
120 justify-content: space-between; 239 justify-content: space-between;
121 align-items: center; 240 align-items: center;
122 .orderId{ 241 .orderId{
123 font-size: 12px; 242 font-size: 12px;
124 color: #999999; 243 color: #999999;
125 } 244 }
126 .orderType{ 245 .orderType{
127 font-size: 14px; 246 font-size: 14px;
128 color: #FF6B4A; 247 color: #FF6B4A;
129 } 248 }
130 } 249 }
131 .orderCardInfo{ 250 .orderCardInfo{
132 width: 100%; 251 width: 100%;
133 height: 188rpx; 252 height: 188rpx;
134 display: flex; 253 display: flex;
135 flex-direction: row; 254 flex-direction: row;
136 justify-content: space-between; 255 justify-content: space-between;
137 align-items: center; 256 align-items: center;
138 margin-top: 40rpx; 257 margin-top: 40rpx;
139 image{ 258 image{
140 height: 188rpx; 259 height: 188rpx;
141 width: 188rpx; 260 width: 188rpx;
142 margin-right: 24rpx; 261 margin-right: 24rpx;
143 } 262 }
144 .infoText{ 263 .infoText{
145 display: flex; 264 display: flex;
146 flex-direction: column; 265 flex-direction: column;
147 justify-content: space-between; 266 justify-content: space-between;
148 align-items: flex-start; 267 align-items: flex-start;
149 height: 188rpx; 268 height: 188rpx;
269 width: 368rpx;
150 } 270 }
151 .orderName{ 271 .orderName{
152 font-size: 14px; 272 font-size: 14px;
153 color: #333333; 273 color: #333333;
274 display: -webkit-box;
275 overflow: hidden;
276 -webkit-box-orient: vertical;
277 -webkit-line-clamp: 2;
154 } 278 }
155 .orderDescrib{ 279 .orderDescrib{
156 font-size: 12px; 280 font-size: 12px;
157 color: #999999; 281 color: #999999;
282 display: -webkit-box;
283 overflow: hidden;
284 -webkit-box-orient: vertical;
285 -webkit-line-clamp: 2;
158 } 286 }
159 .infoText-bottom{ 287 .infoText-bottom{
160 display: flex; 288 display: flex;
161 flex-direction: row; 289 flex-direction: row;
162 justify-content: space-between; 290 justify-content: flex-start;
163 align-items: center; 291 align-items: center;
164 width: 100%; 292 width: 100%;
165 .markPrice{ 293 .markPrice{
166 font-size: 14px; 294 font-size: 14px;
167 color: #FF6B4A; 295 color: #FF6B4A;
296 margin-right: 20rpx;
168 } 297 }
169 .buy-num{ 298 .buy-num{
170 font-size: 12px; 299 font-size: 12px;
171 color: #999999; 300 color: #999999;
172 } 301 }
173 } 302 }
174 } 303 }
175 .payPrice{ 304 .payPrice{
176 text-align: right; 305 text-align: right;
177 margin: 20rpx 0; 306 margin: 20rpx 0;
178 font-size: 14px; 307 font-size: 14px;
179 color: #333333; 308 color: #333333;
180 .priceNum{ 309 .priceNum{
181 font-size: 14px; 310 font-size: 14px;
182 color: #FF6B4A; 311 color: #FF6B4A;
183 } 312 }
184 } 313 }
185 .btns{ 314 .btns{
186 display: flex; 315 display: flex;
187 justify-content: flex-end; 316 justify-content: flex-end;
188 align-items: center; 317 align-items: center;
189 .btn-type1{ 318 .btn-type1{
190 height: 48rpx; 319 height: 48rpx;
191 width: 156rpx; 320 width: 156rpx;
192 border: 1px solid #FF6B4A; 321 border: 1px solid #FF6B4A;
193 border-radius: 12px; 322 border-radius: 12px;
194 border-radius: 12px; 323 border-radius: 12px;
195 text-align: center; 324 text-align: center;
196 line-height: 48rpx; 325 line-height: 48rpx;
197 font-size: 12px; 326 font-size: 12px;
198 color: #FF6B4A; 327 color: #FF6B4A;
199 } 328 }
200 .btn-type2{ 329 .btn-type2{
201 height: 48rpx; 330 height: 48rpx;
202 width: 140rpx; 331 width: 140rpx;
203 background: #FF6B4A; 332 background: #FF6B4A;
204 border-radius: 12px; 333 border-radius: 12px;
205 border-radius: 12px; 334 border-radius: 12px;
206 text-align: center; 335 text-align: center;
207 line-height: 48rpx; 336 line-height: 48rpx;
208 font-size: 12px; 337 font-size: 12px;
209 color: #FFFFFF; 338 color: #FFFFFF;
210 margin-left: 20rpx; 339 margin-left: 20rpx;
211 } 340 }
212 } 341 }
213 } 342 }
214 </style> 343 </style>
215 344
src/pages/myOrder/myOrder.vue
1 <template> 1 <template>
2 <view class="content"> 2 <view class="content">
3 <view class="header"> 3 <view class="header">
4 <!-- 搜索--> 4 <!-- 搜索-->
5 <view class="searchBar"> 5 <!-- <view class="searchBar">
6 <icon class="searchIcon" type="search" size="14"></icon> 6 <icon class="searchIcon" type="search" size="14"></icon>
7 <input class="searchIpt" placeholder="搜索订单关键字..." confirm-type="search"/> 7 <input class="searchIpt" placeholder="搜索订单关键字..." confirm-type="search"/>
8 </view> 8 </view> -->
9 <view class="screenBar"> 9 <view class="screenBar">
10 <view v-for="item in screenItems" :key="item.current" @click="onClickItem(item.current)" > 10 <view v-for="item in screenItems" :key="item.current" @click="onClickItem(item.current)" >
11 <view class="screenItem" v-bind:class="{ active: current === item.current }">{{ item.text }}</view> 11 <view class="screenItem" v-bind:class="{ active: current === item.current }">{{ item.text }}</view>
12 </view> 12 </view>
13 </view> 13 </view>
14 </view> 14 </view>
15 <view class="orderList" > 15 <view class="orderList" >
16 <view 16 <view
17 v-for="(order) in orderList" 17 v-for="(order) in orderList"
18 :key="order.orderId" 18 :key="order.orderId"
19 > 19 >
20 <OrderCard :order = "order" :current="current"></OrderCard> 20 <OrderCard :order = "order" :current="current"></OrderCard>
21 </view> 21 </view>
22 </view> 22 </view>
23 <view class="footer">已显示全部</view> 23 <view class="footer" >没有更多订单了,去商城看看吧~</view>
24 </view> 24 </view>
25 </template> 25 </template>
26 <script> 26 <script>
27 import OrderCard from './components/OrderCard.vue'; 27 import OrderCard from './components/OrderCard.vue';
28 import store from '@/store'; 28 import store from '@/store';
29 29
30 export default { 30 export default {
31 components:{ 31 components:{
32 'OrderCard': OrderCard 32 'OrderCard': OrderCard
33 }, 33 },
34 data() { 34 data() {
35 return { 35 return {
36 //顶部筛选项
36 screenItems: [ 37 screenItems: [
37 {current:0,text:'全部'}, 38 {current:"10",text:'全部'},
38 {current:1,text:'待付款'}, 39 {current:"0",text:'待付款'},
39 {current:2,text:'待发货'}, 40 {current:"1",text:'待收货'},
40 {current:3,text:'待收货'}, 41 {current:"2",text:'已完成'},
41 {current:4,text:'退款售后'}, 42 // {current:"3",text:'已评价'},
43 // {current:"4",text:'退款'},
42 ], 44 ],
43 current: 0, 45 //当前所在item 默认10-->全部
44 //订单数据 46 current: "10",
45 // orderList:[
46 // { orderId: 0, img: '/static/img/goods/p1.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:1 ,buyNum:1},
47 // { orderId: 2, img: '/static/img/goods/p3.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:1 ,buyNum:1},
48 // { orderId: 3, img: '/static/img/goods/p4.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:2 ,buyNum:1},
49 // { orderId: 4, img: '/static/img/goods/p5.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:3 ,buyNum:1},
50 // { orderId: 5, img: '/static/img/goods/p6.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:3 ,buyNum:1},
51 // { orderId: 6, img: '/static/img/goods/p7.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:4 ,buyNum:1},
52 // { orderId: 7, img: '/static/img/goods/p8.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:4 ,buyNum:1},
53 // { orderId: 8, img: '/static/img/goods/p9.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:5 ,buyNum:1},
54 // { orderId: 9, img: '/static/img/goods/p10.jpg', name: '商品名称',originCost:'¥198',price: '¥168', orderType:5 ,buyNum:1}
55 // ],
56 }; 47 };
57 }, 48 },
58 49
59 onLoad: function() { 50 onLoad: function(option) {
51 //获取订单列表
60 store.dispatch('myOrder/getList', { 52 store.dispatch('myOrder/getList', {
61 uid: "1", 53 uid: "1",
62 way: "0", 54 way: "",
63 }); 55 });
56 //从user过来传的status,给current,以显示对应item
57 this.current = option.status
64 }, 58 },
65 computed: { 59 computed: {
66 orderList() { 60 orderList() {
67 console.log('orderList', this.$store.state.myOrder.orderlist); 61 // console.log('orderList', this.$store.state.myOrder.orderList);
68 return this.$store.state.myOrder.orderlist; 62 return this.$store.state.myOrder.orderList;
69 } 63 }
70 }, 64 },
71 methods:{ 65 methods:{
66 //tab点击事件
72 onClickItem(e) { 67 onClickItem(e) {
73 if (this.current !== e) { 68 if (this.current !== e) {
74 this.current = e; 69 this.current = e;
75 } 70 }
76 } 71 }
72
77 } 73 }
78 } 74 }
79 </script> 75 </script>
80 76
81 <style lang="scss"> 77 <style lang="scss">
82 .content { 78 .content {
83 display: flex; 79 display: flex;
84 flex-direction: column; 80 flex-direction: column;
85 align-items: center; 81 align-items: center;
86 background-color: #F7F6F6; 82 background-color: #F7F6F6;
87 min-height: 100vh; 83 min-height: 100vh;
88 .header{ 84 .header{
89 background-color: #ffffff; 85 background-color: #ffffff;
90 width: 100%; 86 width: 100%;
91 height: 232rpx; 87 // height: 232rpx;
92 padding: 40rpx 40rpx 36rpx 40rpx; 88 padding: 20rpx 40rpx 16rpx 40rpx;
93 box-sizing: border-box; 89 box-sizing: border-box;
94 position: fixed; 90 position: fixed;
95 top: 0; 91 top: 0;
96 left: 0; 92 left: 0;
97 .searchBar { 93 // .searchBar {
98 width: 670rpx; 94 // width: 670rpx;
99 display: flex; 95 // display: flex;
100 justify-content: center; 96 // justify-content: center;
101 align-items: center; 97 // align-items: center;
102 box-sizing: border-box; 98 // box-sizing: border-box;
103 padding: 0rpx 16rpx; 99 // padding: 0rpx 16rpx;
104 border: 1px solid #FF6B4A; 100 // border: 1px solid #FF6B4A;
105 border-radius: 8rpx; 101 // border-radius: 8rpx;
106 background-color: #ffffff; 102 // background-color: #ffffff;
107 } 103 // }
108 104
109 .screenBar{ 105 .screenBar{
110 width: 670rpx; 106 width: 670rpx;
111 height: 110rpx; 107 // height: 110rpx;
108 height: 70rpx;
112 display: flex; 109 display: flex;
113 flex-direction: row; 110 flex-direction: row;
114 justify-content: space-between; 111 justify-content: space-between;
115 align-items: center; 112 align-items: center;
116 color: #333333; 113 color: #333333;
117 font-size: 32rpx; 114 font-size: 32rpx;
118 } 115 }
119 .screenItem{ 116 .screenItem{
120 height: 50rpx; 117 height: 50rpx;
121 font-size: 32rpx; 118 font-size: 32rpx;
122 color: #333333; 119 color: #333333;
123 display: flex; 120 display: flex;
124 justify-content: center; 121 justify-content: center;
125 align-items: center; 122 align-items: center;
126 transition:all 0.2s; 123 transition:all 0.2s;
127 } 124 }
128 .active{ 125 .active{
129 // font-size: 34rpx; 126 // font-size: 34rpx;
130 color: #EC5D3B; 127 color: #EC5D3B;
131 } 128 }
132 .searchIpt { 129 .searchIpt {
133 height: 68rpx; 130 height: 68rpx;
134 width: 670rpx; 131 width: 670rpx;
135 padding: 16rpx; 132 padding: 16rpx;
136 font-size: 28rpx; 133 font-size: 28rpx;
137 box-sizing: border-box; 134 box-sizing: border-box;
138 } 135 }
139 } 136 }
140 .orderList{ 137 .orderList{
141 margin-top: 232rpx; 138 // margin-top: 232rpx;
139 margin-top: 132rpx;
src/pages/myOrderPaying/myOrderPaying.vue
1 <!-- 订单待付款 待收货 -->
1 <template> 2 <template>
2 3 <view class="content">
3 <view class="content"> 4 <!-- 待付款 -->
4 <view class="order-hr"></view> 5 <view class="order-time" v-if="status == '0'">
5 <view class="order-time">
6 <text>请在</text> 6 <text>请在</text>
7 <!-- <text class="p2"></text> -->
8 <uni-countdown color="#EC5D3B" splitor-color="#EC5D3B" :show-day="false" 7 <uni-countdown color="#EC5D3B" splitor-color="#EC5D3B" :show-day="false"
9 :hour="0" :minute="59" :second="58" style="margin: 36rpx 20rpx 0 20rpx"></uni-countdown> 8 :hour="0" :second="getTime" @timeup=timeup ></uni-countdown>
10 <text>内完成付款</text> 9 <text>内完成付款</text>
10 </view>
11 <!-- 待收货 -->
12 <view class="headerBanner" v-if="status == '1'">
13 <view class="bannerLeft">
14 <view class="T1">卖家已发货</view>
15 <view class="T2">还剩 确认收货</view>
16 </view>
17 <image src="../../static/car.png" mode="aspectFill"></image>
11 </view> 18 </view>
12 <view class="order"> 19 <view class="order">
13 <view class="order-user"> 20 <view class="order-user">
14 <view class="order-user-head"> 21 <view class="order-user-head">
15 <text class="p1">钱大大</text> 22 <text class="p1">{{orderAddressInfo.userName}}</text>
16 <text class="p2">18823749843</text> 23 <text class="p2">{{orderAddressInfo.telNumber}}</text>
17 </view> 24 </view>
18 <view class="order-user-body"> 25 <view class="order-user-body">
19 <image src="../../static/myorder-paying-location.png"></image> 26 <image src="../../static/myorder-paying-location.png"></image>
20 <text class="p3">四川省 德阳市 旌阳区\n黄河西路碧桂园3期 4单元 202</text> 27 <text class="p3">{{orderAddressInfo.provinceName}} {{orderAddressInfo.cityName}} {{orderAddressInfo.countyName}}\n{{orderAddressInfo.detailInfo}}</text>
21 </view> 28 </view>
22 </view> 29 </view>
23 <view class="order-info"> 30 <view class="order-info">
24 <view class="order-info-head"> 31 <view class="order-info-head" v-for="(orderInfoListItem,index) in orderInfoList" :key="index" >
25 <image src="../../static/myorder-paying-pic.png"></image> 32 <image :src="orderInfoListItem.imgUrl" mode="aspectFill"></image>
26 <view class="order-info-head-r"> 33 <view class="order-info-head-r">
27 <text class="p1">眼镜名称眼镜名称眼镜名称眼镜名称…</text> 34 <text class="p1">{{orderInfoListItem.p_name}}</text>
28 <view class="p2" style="margin: 0;"> 35 <view class="p2" style="margin: 0;">
29 规格:玫瑰金 / 钛合金 / 防日光防紫外线 / 超薄超轻 36 规格:玫瑰金 / 钛合金 / 防日光防紫外线 / 超薄超轻
30 <!-- <view class="arrow"></view> --> 37 <!-- <view class="arrow"></view> -->
38 </view>
39 <view class="infoText-bottom">
40 <view class="markPrice">{{orderInfoListItem.nowPrice}}</view>
41 <view class="buy-num">X {{orderInfoListItem.num}}</view>
31 </view> 42 </view>
32 <text class="p3"><span>¥180</span><span class="p4">X1</span></text>
33 </view> 43 </view>
34 </view> 44 </view>
35 <!-- <view class="order-info-goodsnum"> 45 <!-- <view class="order-info-goodsnum">
36 <text>X1</text> 46 <text>X1</text>
37 </view> --> 47 </view> -->
38 <text class="order-info-freight"> 48 <text class="order-info-freight">
39 <text class="p1">运费</text> 49 <text class="p1">运费</text>
40 <text class="p2">0.00</text> 50 <text class="p2">{{orderInfo.trans_price}}</text>
41 </text> 51 </text>
42 <text class="order-info-discount"> 52 <text class="order-info-discount">
43 <text class="p1">优惠</text> 53 <text class="p1">优惠</text>
44 <text class="p2">-¥70.00</text> 54 <text class="p2">-¥{{totalDiscount}}</text>
45 </text> 55 </text>
46 <text class="order-info-price"> 56 <text class="order-info-price">
47 <text class="p1">实付</text> 57 <text class="p1">实付</text>
48 <text class="p2">¥110</text> 58 <text class="p2">¥{{orderInfo.order_info.total_fee}}</text>
49 </text> 59 </text>
50 <text class="order-info-num"> 60 <text class="order-info-num">
51 <text>订单号:203486795859605849</text> 61 <text>订单号:{{orderInfo.prepay_id}}</text>
52 </text> 62 </text>
53 <text class="order-info-time"> 63 <text class="order-info-time">
54 <text>下单时间:2020-10-22 14:32:42</text> 64 <text>下单时间:{{orderInfo.pay_time}}</text>
55 </text> 65 </text>
56 <view class="order-info-hr"></view> 66 <view class="order-info-hr"></view>
57 <view class="order-info-contact"> 67 <view class="order-info-contact">
58 <image src="../../static/myorder-paying-contact.png"></image> 68 <image src="../../static/myorder-paying-contact.png"></image>
59 <text>联系客服</text> 69 <text>联系客服</text>
60 </view> 70 </view>
61 </view> 71 </view>
62 </view> 72 </view>
63 <view class="order-confim"> 73 <view class="order-confim" v-if="status == '0'">
64 <button class="b1">取消订单</button> 74 <button class="b1" @click="cancleOrder">取消订单</button>
65 <button class="b2">立即支付</button> 75 <button class="b2" @click="paylog">立即支付</button>
76 </view>
77
78 <view class="order-confim" v-if="status == '1'">
79 <!-- <button class="b1">取消订单</button> -->
80 <button class="b2" @click="confirmOrder">确认收货</button>
66 </view> 81 </view>
67 </view> 82 </view>
68 </template> 83 </template>
69 84
70 <script> 85 <script>
86 import store from '@/store';
71 import UniCountdown from '../../components/UniCountdown/UniCountdown.vue' 87 import UniCountdown from '../../components/UniCountdown/UniCountdown.vue'
72 export default { 88 export default {
73 components: { 89 components: {
74 UniCountdown 90 UniCountdown
75 }, 91 },
76 data() { 92 data() {
77 return { 93 return {
78 scrollHeight: false, 94 // orderInfo:{},
95 payId:'',
96 status:'',
97 uid:'',
98 openid:'',
99 lefttime:0,
100
79 } 101 }
102 },
103 onLoad: function(option) {
104 console.log(option);
105 this.payId = option.payId;
106 this.status = option.status
107 const openid = uni.getStorageSync('openid');
108 const uid = this.$store.state.user.uid
109 this.uid = uid
110 this.openid = openid
111 store.dispatch('orderRead/getOrderInfo',{
112 pay_id:this.payId,
113 uid:'1',
114 openid:openid
115 })
116
117
118
119 // this.orderInfo = this.$store.state.orderRead.orderInfo
120 },
121 computed: {
122 //获取订单详细信息
123 orderInfo() {
124 console.log(this.$store.state.orderRead.orderInfo)
125 return this.$store.state.orderRead.orderInfo || {}
126 },
127 orderInfoList(){
128 const orderInfoList =this.orderInfo.order_info[0].list
129 return orderInfoList
130 },
131 //获取订单地址信息
132 orderAddressInfo(){
133 return this.orderInfo.order_info[0].address
134 },
135 //订单付款时间
136 getTime(){
137 return this.orderInfo.order_info[0].lefttime
138 },
139 // 计算总优惠额
140 totalDiscount(){
141 const discountInfoList = this.orderInfo.discount_info
142 let totalDiscount = 0;
143 if(discountInfoList){
144 discountInfoList.map((discountItem,index)=>{
145 totalDiscount += Number(discountItem.value)
146 })
147 }
148 // console.log(totalDiscount)
149 return totalDiscount
150 },
80 }, 151 },
81 methods: { 152 methods: {
82 153 //取消订单
154 timeup(){
155 this.cancleOrder()
156 },
157 cancleOrder(){
158 const uid = this.uid
159 const openid = this.openid
160 uni.showModal({
161 title: '提示',
162 content: '现在取消,订单不可恢复哦,确认取消吗?',
163 success: function (res) {
164 if (res.confirm) {
165 store.dispatch('cancelOrder/cancel',{
166 keyname:'1',
167 uid:uid,
168 openid:openid
169 })
170 } else if (res.cancel) {
171 console.log('用户点击取消');
172 }
173 }
174 })
175 },
176 paylog(){
177
178 },
179 confirmOrder(){
180 store.dispatch('statusConfirm/confirm',{
181 uid:this.uid,
182 openid:this.openid,
183 oldway:'1',
184 way:'2',
185 pay_id:this.payId,
186 judgeContent:'',
187 orderInfo:this.orderInfo.order_info,
188 })
189 }
83 } 190 }
84 } 191 }
85 </script> 192 </script>
86 193
87 <style lang="scss" scoped> 194 <style lang="scss" scoped>
88 .content{ 195 .content{
196 min-height: 100vh;
89 display: flex; 197 display: flex;
90 flex-direction: column; 198 flex-direction: column;
91 justify-content: center; 199 justify-content: flex-start;
92 align-items: center; 200 align-items: center;
93 background-color: #f2f2f2; 201 background-color: #f2f2f2;
94 } 202 }
95 203
96 204
97 .order { 205 .order {
98 min-height: 1196rpx;
99 margin-bottom: 112rpx; 206 margin-bottom: 112rpx;
100 background: #F2F2F2; 207 background: #F2F2F2;
101 } 208 margin-top: 140rpx;
102 .order-hr { 209 width: 670rpx;
103 width: 100%;
104 height: 1px;
105 background-color: #E9E9E9;
106 } 210 }
211
107 .order-time { 212 .order-time {
108 width: 100%; 213 width: 100%;
109 height: 140rpx; 214 height: 140rpx;
110 background-color: #fff; 215 background-color: #fff;
111 display: flex; 216 display: flex;
112 justify-content: center; 217 justify-content: center;
218 align-items: center;
219 position: fixed;
220 top: 0 ;
221 left: 0;
113 text { 222 text {
114 // font-family: PingFangSC-Regular; 223 // font-family: PingFangSC-Regular;
115 margin-top: 48rpx; 224 // margin-top: 48rpx;
116 font-size: 14px; 225 font-size: 14px;
117 color: #333333; 226 color: #333333;
118 letter-spacing: -0.26px; 227 letter-spacing: -0.26px;
119 } 228 }
120 .p2 { 229 .p2 {
121 // font-family: DINAlternate-Bold; 230 // font-family: DINAlternate-Bold;
122 margin: 42rpx 20rpx 0 20rpx; 231 margin: 42rpx 20rpx 0 20rpx;
123 font-size: 18px; 232 font-size: 18px;
124 color: #EC5D3B; 233 color: #EC5D3B;
125 letter-spacing: -0.34px; 234 letter-spacing: -0.34px;
126 } 235 }
127 } 236 }
128 237 .headerBanner{
238 width: 100%;
239 height: 140rpx;
240 background: #4A90E2;
241 padding: 26rpx 60rpx 24rpx 60rpx;
242 box-sizing: border-box;
243 color: #FFFFFF;
244 display: flex;
245 justify-content: space-between;
246 align-items: center;
247 position: fixed;
248 top: 0 ;
249 left: 0;
250 .bannerLeft{
251 font-size: 36rpx;
252 display: flex;
253 flex-direction: column;
254 justify-content: center;
255 align-items: center;
256 .T2{
257 font-size: 24rpx;
258 }
259 }
260 image{
261 height: 56rpx;
262 width: 72rpx;
263 }
264 }
265
129 .order-user { 266 .order-user {
130 width: 670rpx;
131 height: 228rpx; 267 height: 228rpx;
132 background: #FFFFFF; 268 background: #FFFFFF;
133 border-radius: 14rpx; 269 border-radius: 14rpx;
134 margin: 0 auto; 270 margin: 0 auto;
135 margin-top: 20rpx; 271 margin-top: 20rpx;
136 margin-bottom: 20rpx; 272 margin-bottom: 20rpx;
137 .order-user-head { 273 .order-user-head {
138 display: flex; 274 display: flex;
139 height: 108rpx; 275 height: 108rpx;
140 width: 100%;
141 align-items: center; 276 align-items: center;
142 margin-left: 126rpx; 277 margin-left: 126rpx;
143 .p1 { 278 .p1 {
144 // font-family: PingFangSC-Regular; 279 // font-family: PingFangSC-Regular;
145 font-size: 14px; 280 font-size: 14px;
146 color: #333333; 281 color: #333333;
147 letter-spacing: -0.26px; 282 letter-spacing: -0.26px;
148 margin-right: 20rpx; 283 margin-right: 20rpx;
149 } 284 }
150 .p2 { 285 .p2 {
151 // font-family: PingFangSC-Regular; 286 // font-family: PingFangSC-Regular;
152 font-size: 14px; 287 font-size: 14px;
153 color: #999999; 288 color: #999999;
154 letter-spacing: -0.26px; 289 letter-spacing: -0.26px;
155 } 290 }
156 } 291 }
157 .order-user-body { 292 .order-user-body {
158 display: flex; 293 display: flex;
159 width: 100%; 294 width: 100%;
160 image{ 295 image{
161 width: 24px; 296 width: 24px;
162 height: 26px; 297 height: 26px;
163 margin: 12rpx 32rpx 0 40rpx; 298 margin: 12rpx 32rpx 0 40rpx;
164 } 299 }
165 .p3 { 300 .p3 {
166 // font-family: PingFangSC-Semibold; 301 // font-family: PingFangSC-Semibold;
167 font-size: 14px; 302 font-size: 14px;
168 color: #333333; 303 color: #333333;
169 letter-spacing: -0.26px; 304 letter-spacing: -0.26px;
170 } 305 }
171 } 306 }
172 } 307 }
173 308
174 .order-info { 309 .order-info {
175 width: 670rpx;
176 background-color: #fff; 310 background-color: #fff;
177 box-shadow: 0 0 20rpx 0 rgba(177,128,128,0.06); 311 box-shadow: 0 0 20rpx 0 rgba(177,128,128,0.06);
178 border-radius: 16rpx; 312 border-radius: 16rpx;
179 margin: 0 auto; 313 margin: 0 auto;
180 view{ 314 view{
181 margin-left: 40rpx; 315 margin-left: 40rpx;
182 } 316 }
183 text{ 317 text{
184 font-size: 14px; 318 font-size: 14px;
185 } 319 }
186 .order-info-head { 320 .order-info-head {
187 display: flex; 321 display: flex;
188 padding-top: 40rpx; 322 padding-top: 40rpx;
189 image{ 323 image{
190 height: 188rpx; 324 height: 188rpx;
191 width: 188rpx; 325 width: 188rpx;
192 } 326 }
193 .order-info-head-r{ 327 .order-info-head-r{
194 margin: 0; 328 margin: 0;
195 width: 368rpx; 329 width: 368rpx;
196 margin-left: 24rpx; 330 margin-left: 24rpx;
197 // margin-top: 40rpx; 331 // margin-top: 40rpx;
198 text{ 332 text{
199 display: block; 333 display: block;
200 } 334 }
201 // .arrow{ 335 // .arrow{
202 // width: 0; 336 // width: 0;
203 // height: 0; 337 // height: 0;
204 // border-left: 5px transparent; 338 // border-left: 5px transparent;
205 // border-right: 5px transparent; 339 // border-right: 5px transparent;
206 // border-top: 5px #979797; 340 // border-top: 5px #979797;
207 // border-bottom: 0 transparent; 341 // border-bottom: 0 transparent;
208 // border-style: solid; 342 // border-style: solid;
209 // position: relative; 343 // position: relative;
210 // // transform: scaleY(-1); 344 // // transform: scaleY(-1);
211 // } 345 // }
212 // .arrow::after{ 346 // .arrow::after{
213 // content: ''; 347 // content: '';
214 // position: absolute; 348 // position: absolute;
215 // top: -6.5px; 349 // top: -6.5px;
216 // left: -5px; 350 // left: -5px;
217 // border-left: 5px transparent; 351 // border-left: 5px transparent;
218 // border-right: 5px transparent; 352 // border-right: 5px transparent;
219 // border-top: 5px #FFFFFF; 353 // border-top: 5px #FFFFFF;
220 // border-bottom: 0 transparent; 354 // border-bottom: 0 transparent;
221 // border-style: solid; 355 // border-style: solid;
222 // } 356 // }
223 .p1 { 357 .p1 {
224 min-height: 40px; 358 min-height: 40px;
225 // font-family: PingFangSC-Regular; 359 // font-family: PingFangSC-Regular;
226 font-size: 14px; 360 font-size: 14px;
227 color: #333333; 361 color: #333333;
228 letter-spacing: -0.26px; 362 letter-spacing: -0.26px;
229 line-height: 18px; 363 line-height: 18px;
230 // line-height: 20px; 364 // line-height: 20px;
231 } 365 }
232 .p2 { 366 .p2 {
233 height: 34px; 367 height: 34px;
234 padding: 1px 0 3px 0; 368 padding: 1px 0 3px 0;
235 // font-family: PingFangSC-Regular; 369 // font-family: PingFangSC-Regular;
236 font-size: 12px; 370 font-size: 12px;
237 color: #999999; 371 color: #999999;
238 letter-spacing: -0.23px; 372 letter-spacing: -0.23px;
239 } 373 }
240 .p3 { 374 .infoText-bottom{
241 height: 20px; 375 display: flex;
242 // font-family: PingFangSC-Regular; 376 flex-direction: row;
243 font-size: 14px; 377 justify-content: flex-start;
244 color: #FF6B4A; 378 align-items: center;
245 letter-spacing: -0.26px; 379 width: 100%;
246 } 380 margin-left: 0;
247 .p4{ 381 .markPrice{
248 font-size: 12px; 382 font-size: 14px;
249 color: #999999; 383 color: #FF6B4A;
250 letter-spacing: -0.23px; 384 margin-right: 20rpx;
251 margin-left: 10px; 385 margin-left: 0rpx;
386 }
387 .buy-num{
388 font-size: 12px;
389 color: #999999;
390 }
252 } 391 }
253 } 392 }
254 393
255 } 394 }
256 // .order-info-goodsnum { 395 // .order-info-goodsnum {
257 // display: flex; 396 // display: flex;
258 // align-items: center; 397 // align-items: center;
259 // justify-content: flex-end; 398 // justify-content: flex-end;
260 // text { 399 // text {
261 // margin-right: 44rpx; 400 // margin-right: 44rpx;
262 // // ont-family: PingFangSC-Regular; 401 // // ont-family: PingFangSC-Regular;
263 // font-size: 12px; 402 // font-size: 12px;
264 // color: #999999; 403 // color: #999999;
265 // letter-spacing: -0.23px; 404 // letter-spacing: -0.23px;
266 // } 405 // }
267 // } 406 // }
268 .order-info-freight { 407 .order-info-freight {
269 display: block; 408 display: block;
270 margin-left: 40rpx; 409 margin-left: 40rpx;
271 margin-top: 22rpx; 410 margin-top: 22rpx;
272 .p1{ 411 .p1{
273 // font-family: PingFangSC-Regular; 412 // font-family: PingFangSC-Regular;
274 font-size: 14px; 413 font-size: 14px;
275 color: #333333; 414 color: #333333;
276 letter-spacing: -0.26px; 415 letter-spacing: -0.26px;
277 line-height: 18px; 416 line-height: 18px;
278 margin-right: 24px; 417 margin-right: 24px;
279 } 418 }
280 .p2 { 419 .p2 {
281 // font-family: PingFangSC-Regular; 420 // font-family: PingFangSC-Regular;
282 font-size: 14px; 421 font-size: 14px;
283 color: #FF6B4A; 422 color: #FF6B4A;
284 letter-spacing: -0.26px; 423 letter-spacing: -0.26px;
285 } 424 }
286 } 425 }
287 .order-info-discount { 426 .order-info-discount {
288 display: block; 427 display: block;
289 margin-left: 40rpx; 428 margin-left: 40rpx;
290 margin-top: 24rpx; 429 margin-top: 24rpx;
291 .p1 { 430 .p1 {
292 // font-family: PingFangSC-Regular; 431 // font-family: PingFangSC-Regular;
293 font-size: 14px; 432 font-size: 14px;
294 color: #333333; 433 color: #333333;
295 letter-spacing: -0.26px; 434 letter-spacing: -0.26px;
296 line-height: 18px; 435 line-height: 18px;
297 margin-right: 24px; 436 margin-right: 24px;
298 } 437 }
299 .p2 { 438 .p2 {
300 // font-family: PingFangSC-Regular; 439 // font-family: PingFangSC-Regular;
301 font-size: 14px; 440 font-size: 14px;
302 color: #FF6B4A; 441 color: #FF6B4A;
303 letter-spacing: -0.26px; 442 letter-spacing: -0.26px;
304 } 443 }
305 } 444 }
306 .order-info-price { 445 .order-info-price {
307 display: block; 446 display: block;
308 margin-left: 40rpx; 447 margin-left: 40rpx;
309 margin-top: 24rpx; 448 margin-top: 24rpx;
310 .p1 { 449 .p1 {
311 // font-family: PingFangSC-Semibold; 450 // font-family: PingFangSC-Semibold;
312 font-size: 14px; 451 font-size: 14px;
313 color: #333333; 452 color: #333333;
314 letter-spacing: -0.26px; 453 letter-spacing: -0.26px;
315 line-height: 18px; 454 line-height: 18px;
316 margin-right: 24px; 455 margin-right: 24px;
317 } 456 }
318 .p2 { 457 .p2 {
319 // font-family: PingFangSC-Semibold; 458 // font-family: PingFangSC-Semibold;
320 font-size: 14px; 459 font-size: 14px;
321 color: #FF6B4A; 460 color: #FF6B4A;
322 letter-spacing: -0.26px; 461 letter-spacing: -0.26px;
323 } 462 }
324 } 463 }
325 .order-info-num{ 464 .order-info-num{
326 display: block; 465 display: block;
327 margin-left: 40rpx; 466 margin-left: 40rpx;
328 margin-top: 44rpx; 467 margin-top: 44rpx;
329 text{ 468 text{
330 // font-family: PingFangSC-Regular; 469 // font-family: PingFangSC-Regular;
331 font-size: 12px; 470 font-size: 12px;
332 color: #999999; 471 color: #999999;
333 letter-spacing: -0.23px; 472 letter-spacing: -0.23px;
334 } 473 }
335 } 474 }
336 .order-info-time { 475 .order-info-time {
337 display: block; 476 display: block;
338 margin: 8rpx 0 48rpx 40rpx; 477 margin: 8rpx 0 48rpx 40rpx;
339 text{ 478 text{
340 // font-family: PingFangSC-Regular; 479 // font-family: PingFangSC-Regular;
341 font-size: 12px; 480 font-size: 12px;
342 color: #999999; 481 color: #999999;
343 letter-spacing: -0.23px; 482 letter-spacing: -0.23px;
344 } 483 }
345 } 484 }
346 .order-info-hr{ 485 .order-info-hr{
347 width: 520rpx; 486 width: 520rpx;
348 height: 1px; 487 height: 1px;
349 background-color: #E9E9E9; 488 background-color: #E9E9E9;
350 margin-bottom: 20rpx; 489 margin-bottom: 20rpx;
351 } 490 }
352 .order-info-contact { 491 .order-info-contact {
353 display: flex; 492 display: flex;
354 padding-bottom: 28rpx; 493 padding-bottom: 28rpx;
355 image{ 494 image{
356 width: 19px; 495 width: 19px;
357 height: 16px; 496 height: 16px;
358 } 497 }
359 text { 498 text {
360 // font-family: PingFangSC-Regular; 499 // font-family: PingFangSC-Regular;
361 margin-left: 20rpx; 500 margin-left: 20rpx;
362 font-size: 14px; 501 font-size: 14px;
363 color: #333333; 502 color: #333333;
364 letter-spacing: -0.26px; 503 letter-spacing: -0.26px;
365 line-height: 18px; 504 line-height: 18px;
366 } 505 }
367 } 506 }
368 } 507 }
369 508
370 .order-confim { 509 .order-confim {
371 display: flex; 510 display: flex;
372 align-items: center; 511 align-items: center;
373 z-index: 999; 512 justify-content: flex-end;
513 // z-index: 999;
374 width: 100%; 514 width: 100%;
375 height: 112rpx; 515 height: 112rpx;
376 position: fixed; 516 position: fixed;
377 bottom: 0; 517 bottom: 0;
378 background: #FFFFFF; 518 background: #FFFFFF;
379 button { 519 button {
380 width: 204rpx; 520 width: 204rpx;
381 height: 80rpx; 521 height: 80rpx;
382 border: 1px solid #FF6B4A; 522 border: 1px solid #FF6B4A;
383 border-radius: 40rpx; 523 border-radius: 40rpx;
384 font-size: 32rpx; 524 font-size: 32rpx;
385 letter-spacing: -0.3px; 525 letter-spacing: -0.3px;
386 margin-right: 0; 526 margin-right: 0;
387 } 527 }
388 .b1 { 528 .b1 {
389 // font-family: PingFangSC-Regular; 529 // font-family: PingFangSC-Regular;
390 color: #FF6B4A; 530 color: #FF6B4A;
391 531 background-color: #FFFFFF;
392 } 532 }
src/pages/predelivery/predelivery.vue
1 <!-- 待发货 尹聃-->
1 <template> 2 <template>
2 <view class="container"> 3 <view class="container">
3 <view v-for="(items) in form" :key="items.key" class="order"> 4 <view v-for="(items) in form" :key="items.key" class="order">
4 <view class="order_number">订单号:{{items.orderNum}}<span>待发货</span></view> 5 <view class="order_number">订单号:{{items.orderNum}}<span>待发货</span></view>
5 <view class="order_detail"> 6 <view class="order_detail">
6 <view class="detail_img"><image v-bind:src="items.img"></image></view> 7 <view class="detail_img"><image v-bind:src="items.img"></image></view>
7 <view class="detail_zi"> 8 <view class="detail_zi">
8 <view class="zi_name">{{items.name}}</view> 9 <view class="zi_name">{{items.name}}</view>
9 <view class="zi_standard">规格:{{items.standard}}</view> 10 <view class="zi_standard">规格:{{items.standard}}</view>
10 <view class="zi_preprice">¥{{items.preprice}}<span>X{{items.number}}</span></view> 11 <view class="zi_preprice">¥{{items.preprice}}<span>X{{items.number}}</span></view>
11 </view> 12 </view>
12 </view> 13 </view>
13 <view class="now_price">实付:<span>¥{{items.nowprice}}</span></view> 14 <view class="now_price">实付:<span>¥{{items.nowprice}}</span></view>
14 <view class="clear"></view> 15 <view class="clear"></view>
15 <view class="button"> 16 <view class="button">
16 <view class="button1">申请退款</view> 17 <view class="button1">申请退款</view>
17 <view class="button2">提醒发货</view> 18 <view class="button2">提醒发货</view>
18 </view> 19 </view>
19 </view> 20 </view>
20 </view> 21 </view>
21 </template> 22 </template>
22 23
23 <script> 24 <script>
24 export default { 25 export default {
25 data(){ 26 data(){
26 return{ 27 return{
27 form:[ 28 form:[
28 { 29 {
29 key: 0, 30 key: 0,
30 name:'商品名称', 31 name:'商品名称',
31 standard:'玫瑰金/钛合金/防日光防紫外线/超薄超轻', 32 standard:'玫瑰金/钛合金/防日光防紫外线/超薄超轻',
32 img: '/static/img/detail/delivery.png', 33 img: '/static/img/detail/delivery.png',
33 preprice: 180, 34 preprice: 180,
34 number:1, 35 number:1,
35 orderNum: 2034867958596334, 36 orderNum: 2034867958596334,
36 nowprice: 110, 37 nowprice: 110,
37 } 38 }
38 ] 39 ]
39 40
40 } 41 }
41 } 42 }
42 } 43 }
43 </script> 44 </script>
44 45
45 <style lang="scss"> 46 <style lang="scss">
46 .container{ 47 .container{
47 width: 100%; 48 width: 100%;
48 height: 100%; 49 height: 100%;
49 background: #F2F2F2; 50 background: #F2F2F2;
50 height: 700px; 51 height: 700px;
51 //要获取屏幕大小 52 //要获取屏幕大小
52 } 53 }
53 54
54 .order{ 55 .order{
55 background: #FFFFFF; 56 background: #FFFFFF;
56 width: 90%; 57 width: 90%;
57 height: 450rpx; 58 height: 450rpx;
58 margin: 0 auto; 59 margin: 0 auto;
59 padding: 40rpx; 60 padding: 40rpx;
60 box-sizing: border-box; 61 box-sizing: border-box;
61 border-radius: 5px; 62 border-radius: 5px;
62 } 63 }
63 .order_number{ 64 .order_number{
64 color: #999999; 65 color: #999999;
65 font-size: 12px; 66 font-size: 12px;
66 font-family: "PingFangSC-Regular"; 67 font-family: "PingFangSC-Regular";
67 span{ 68 span{
68 font-family: PingFangSC-Regular; 69 font-family: PingFangSC-Regular;
69 font-size: 14px; 70 font-size: 14px;
70 color: #FF6B4A; 71 color: #FF6B4A;
71 letter-spacing: -0.26px; 72 letter-spacing: -0.26px;
72 line-height: 18px; 73 line-height: 18px;
73 float: right; 74 float: right;
74 } 75 }
75 } 76 }
76 .order_detail{ 77 .order_detail{
77 display: flex; 78 display: flex;
78 justify-content: space-around; 79 justify-content: space-around;
79 margin-top: 12px; 80 margin-top: 12px;
80 } 81 }
81 .detail_img image{ 82 .detail_img image{
82 width: 188rpx; 83 width: 188rpx;
83 height: 188rpx; 84 height: 188rpx;
84 } 85 }
85 .detail_zi{ 86 .detail_zi{
86 font-family: PingFangSC-Regular; 87 font-family: PingFangSC-Regular;
87 width: 55%; 88 width: 55%;
88 height: 100%; 89 height: 100%;
89 view{ 90 view{
90 margin-bottom: 20rpx; 91 margin-bottom: 20rpx;
91 } 92 }
92 .zi_name{ 93 .zi_name{
93 font-size: 14px; 94 font-size: 14px;
94 color: #333333; 95 color: #333333;
95 letter-spacing: -0.26px; 96 letter-spacing: -0.26px;
96 line-height: 18px; 97 line-height: 18px;
97 } 98 }
98 .zi_standard{ 99 .zi_standard{
99 font-size: 12px; 100 font-size: 12px;
100 color: #999999 ; 101 color: #999999 ;
101 } 102 }
102 .zi_preprice{ 103 .zi_preprice{
103 font-size: 14px; 104 font-size: 14px;
104 color: #FF6B4A; 105 color: #FF6B4A;
105 span{ 106 span{
106 float: right; 107 float: right;
107 font-size: 12px; 108 font-size: 12px;
108 color: #999999; 109 color: #999999;
109 } 110 }
110 } 111 }
111 } 112 }
112 .now_price{ 113 .now_price{
113 font-size: 14px; 114 font-size: 14px;
114 color: #333333; 115 color: #333333;
115 float: right; 116 float: right;
116 span{ 117 span{
117 font-size: 14px; 118 font-size: 14px;
118 color: #FF6B4A ; 119 color: #FF6B4A ;
119 } 120 }
120 } 121 }
121 .clear{ 122 .clear{
122 clear: both; 123 clear: both;
123 } 124 }
124 .button{ 125 .button{
125 display: flex; 126 display: flex;
126 justify-content: flex-end; 127 justify-content: flex-end;
127 margin-top: 14px; 128 margin-top: 14px;
128 view{ 129 view{
129 width: 156rpx; 130 width: 156rpx;
130 height: 48rpx; 131 height: 48rpx;
131 border-radius: 12px; 132 border-radius: 12px;
132 font-size: 12px; 133 font-size: 12px;
133 text-align: center; 134 text-align: center;
134 line-height: 20px; 135 line-height: 20px;
135 } 136 }
136 .button1{ 137 .button1{
137 border: 1px solid #FF6B4A; 138 border: 1px solid #FF6B4A;
138 font-family: PingFangSC-Regular; 139 font-family: PingFangSC-Regular;
139 color: #FF6B4A; 140 color: #FF6B4A;
140 letter-spacing: -0.23px; 141 letter-spacing: -0.23px;
141 margin-right: 30rpx; 142 margin-right: 30rpx;
142 } 143 }
143 .button2{ 144 .button2{
144 border: 1px solid #FF6B4A; 145 border: 1px solid #FF6B4A;
145 background: #FF6B4A; 146 background: #FF6B4A;
146 font-family: PingFangSC-Regular; 147 font-family: PingFangSC-Regular;
147 color: #FFFFFF; 148 color: #FFFFFF;
148 letter-spacing: -0.23px; 149 letter-spacing: -0.23px;
149 150
150 } 151 }
151 } 152 }
152 </style> 153 </style>
src/pages/user/user.vue
1 <template> 1 <template>
2 <view class="wrap"> 2 <view class="wrap">
3 <view v-if="isAuth" class="content"> 3 <view v-if="isAuth" class="content">
4 <view class="userInfo"> 4 <view class="userInfo">
5 <view class="info"> 5 <view class="info">
6 <image :src="headerphoto" mode="aspectFill"></image> 6 <image :src="headerphoto" mode="aspectFill"></image>
7 <view class="infoText"> 7 <view class="infoText">
8 <text class="userName">{{nickName}}</text> 8 <text class="userName">{{nickName}}</text>
9 </view> 9 </view>
10 </view> 10 </view>
11 <view class="service"> 11 <!-- <view class="service">
12 <image src="../../static/serviceLogo.png" mode="aspectFill"></image> 12 <image src="../../static/serviceLogo.png" mode="aspectFill"></image>
13 </view> -->
14 </view>
15 <view class="myOpticsData">
16 <view class="left">
17 <image src="../../static/img/user/dataWrite.png" mode="aspectFit"></image>
18 <text>验光数据</text>
13 </view> 19 </view>
20 <image src="../../static/right.png" mode="aspectFit"></image>
14 </view> 21 </view>
15 <view class="myOrder"> 22 <view class="myOrder">
16 <view class="orderHeader"> 23 <view class="orderHeader">
17 <text>全部订单</text> 24 <text>全部订单</text>
18 <view class="btn" @click="toMyOrder"> 25 <view class="btn" @click="toMyOrder('10')">
19 全部 26 全部
20 <image src="../../static/right.png" mode="aspectFill"></image> 27 <image src="../../static/right.png" mode="aspectFit"></image>
21 </view> 28 </view>
22 </view> 29 </view>
23 <view class="orderBody"> 30 <view class="orderBody">
24 <view class="item waitPay" @click="toMyOrderPaying"> 31 <view class="item waitPay" @click="toMyOrder('0')">
25 <image src="../../static/waitDeliver.png" mode="aspectFill"></image> 32 <image src="../../static/img/user/waitDeliver.png" mode="aspectFit"></image>
26 <text>待付款</text> 33 <text>待付款</text>
27 </view> 34 </view>
28 <view class="item waitDeliver" @click="toPredelivery" > 35 <view class="item waitDeliver" @click="toMyOrder('1')" >
29 <image src="../../static/waitPay.png" mode="aspectFill"></image> 36 <image src="../../static/img/user/waitPay.png" mode="aspectFit"></image>
30 <text>待发货</text>
31 </view>
32 <view class="item waitReceive" @click="torefunProgress">
33 <image src="../../static/waitReceive.png" mode="aspectFill"></image>
34 <text>待收货</text> 37 <text>待收货</text>
35 </view> 38 </view>
36 <view class="item service" @click="torefundment"> 39 <view class="item waitReceive" @click="toMyOrder('2')">
37 <image src="../../static/service.png" mode="aspectFill"></image> 40 <image src="../../static/img/user/waitReceive.png" mode="aspectFit"></image>
38 <text>退换/售后</text> 41 <text>已完成</text>
39 </view> 42 </view>
43 <!-- <view class="item service" @click="toMyOrder('3')">
44 <image src="../../static/img/user/refound.png" mode="aspectFit"></image>
45 <text>已评价</text>
46 </view> -->
47 </view>
48 </view>
49 <view class="someItem">
50 <view class="item">
51 <view class="left">
52 <image src="../../static/img/user/shouyi.png" mode="aspectFit"></image>
53 <text>推广记录与收益</text>
54 </view>
55 <image src="../../static/right.png" mode="aspectFit"></image>
56 </view>
57 <view class="item">
58 <view class="left">
59 <image src="../../static/img/user/introduce.png" mode="aspectFit"></image>
60 <text>系统介绍</text>
61 </view>
62 <image src="../../static/right.png" mode="aspectFit"></image>
63 </view>
64 <view class="item">
65 <view class="left">
66 <image src="../../static/img/user/joinUs.png" mode="aspectFit"></image>
67 <text>加入我们</text>
68 </view>
69 <image src="../../static/right.png" mode="aspectFit"></image>
70 </view>
71 <view class="item">
72 <view class="left">
73 <image src="../../static/img/user/service.png" mode="aspectFit"></image>
74 <text>联系客服</text>
75 </view>
76 <image src="../../static/right.png" mode="aspectFit"></image>
40 </view> 77 </view>
41 </view> 78 </view>
42 <view class="recommend"> 79 <view class="recommend">
43 <view class="title"> 80 <view class="title">
44 <view class="line"></view> 81 <view class="line"></view>
45 <view class="text">精选推荐</view> 82 <view class="text">精选推荐</view>
46 <view class="line"></view> 83 <view class="line"></view>
47 </view> 84 </view>
48 <!-- 商品列表 --> 85 <!-- 商品列表 -->
49 <view class="goods-list"> 86 <view class="goods-list">
50 <view class="product-list"> 87 <view class="product-list">
51 <view class="product" v-for="(goods) in goodsList" :key="goods.goods_id" > 88 <view class="product" v-for="(goods) in goodsList" :key="goods.goods_id" >
52 <Card :goods = "goods"></Card> 89 <Card :goods = "goods"></Card>
53 </view> 90 </view>
54 </view> 91 </view>
55 <view class="loading-text">{{loadingText}}</view> 92 <view class="loading-text">{{loadingText}}</view>
56 </view> 93 </view>
57 </view> 94 </view>
58 </view> 95 </view>
59 <view v-else class="auth"> 96 <view v-else class="auth">
60 <view class="icon"></view> 97 <view class="icon"></view>
61 <view class="divider"></view> 98 <view class="divider"></view>
62 <view class="title">申请获取以下权限</view> 99 <view class="title">申请获取以下权限</view>
63 <view class="text">获得您的公开信息(昵称、头像等)</view> 100 <view class="text">获得您的公开信息(昵称、头像等)</view>
64 <button 101 <button
65 type="primary" 102 type="primary"
66 open-type="getUserInfo" 103 open-type="getUserInfo"
67 @getuserinfo="onGotUserInfo" 104 @getuserinfo="onGotUserInfo"
68 >授权登陆</button> 105 >授权登陆</button>
69 </view> 106 </view>
70 </view> 107 </view>
71 </template> 108 </template>
72 109
73 <script> 110 <script>
74 import Card from "@/components/CommodityCard/CommodityCard.vue"; 111 import Card from "@/components/CommodityCard/CommodityCard.vue";
75 import store from '@/store'; 112 import store from '@/store';
76 113
77 export default { 114 export default {
78 components: { 115 components: {
79 'Card':Card 116 'Card':Card
80 }, 117 },
81 data() { 118 data() {
82 return { 119 return {
83 //商品数据 120 //商品数据
84 goodsList:[ 121 goodsList:[
85 { goods_id: 0, img: "/static/img/goods/p1.jpg", name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 122 { goods_id: 0, img: "/static/img/goods/p1.jpg", name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
86 { goods_id: 1, img: '/static/img/goods/p2.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 123 { goods_id: 1, img: '/static/img/goods/p2.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
87 { goods_id: 2, img: '/static/img/goods/p3.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 124 { goods_id: 2, img: '/static/img/goods/p3.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
88 { goods_id: 3, img: '/static/img/goods/p4.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 125 { goods_id: 3, img: '/static/img/goods/p4.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
89 { goods_id: 4, img: '/static/img/goods/p5.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 126 { goods_id: 4, img: '/static/img/goods/p5.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
90 { goods_id: 5, img: '/static/img/goods/p6.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 127 { goods_id: 5, img: '/static/img/goods/p6.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
91 { goods_id: 6, img: '/static/img/goods/p7.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 128 { goods_id: 6, img: '/static/img/goods/p7.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
92 { goods_id: 7, img: '/static/img/goods/p8.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 129 { goods_id: 7, img: '/static/img/goods/p8.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
93 { goods_id: 8, img: '/static/img/goods/p9.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }, 130 { goods_id: 8, img: '/static/img/goods/p9.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' },
94 { goods_id: 9, img: '/static/img/goods/p10.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' } 131 { goods_id: 9, img: '/static/img/goods/p10.jpg', name: '商品名称',originCost:'¥198',price: '¥168', slogan:'1235人浏览' }
95 ], 132 ],
96 isAuth: true, // 是否显示授权页面 133 isAuth: true, // 是否显示授权页面
97 } 134 }
98 }, 135 },
99 onLoad() { 136 onLoad() {
100 // 判断是否授权 137 // 判断是否授权
101 uni.getSetting({ 138 uni.getSetting({
102 success(res) { 139 success(res) {
103 console.log('authSetting',res.authSetting) 140 console.log('authSetting',res.authSetting)
104 if(res.authSetting['scope.userInfo'] === true) { 141 if(res.authSetting['scope.userInfo'] === true) {
105 this.isAuth = true 142 this.isAuth = true
106 } else { 143 } else {
107 this.isAuth = false 144 this.isAuth = false
108 } 145 }
109 } 146 }
110 }) 147 })
111 }, 148 },
112 computed: { 149 computed: {
113 nickName() { 150 nickName() {
114 console.log('nickName', this.$store.state.user.userInfo) 151 console.log('nickName', this.$store.state.user.userInfo)
115 return this.$store.state.user.userInfo.nickName; 152 return this.$store.state.user.userInfo.nickName;
116 }, 153 },
117 headerphoto() { 154 headerphoto() {
118 return this.$store.state.user.userInfo.headerphoto; 155 return this.$store.state.user.userInfo.headerphoto;
119 }, 156 },
120 userRecommandList() { 157 userRecommandList() {
121 console.log('recommandList', this.$store.state.userRecommand.recommandList); 158 console.log('recommandList', this.$store.state.userRecommand.recommandList);
122 return this.$store.state.userRecommand.recommandList; 159 return this.$store.state.userRecommand.recommandList;
123 } 160 }
124 }, 161 },
125 onLoad: function() { 162 onLoad: function() {
126 store.dispatch('userRecommand/getRecommandList', { 163 store.dispatch('userRecommand/getRecommandList', {
127 uid: 2, 164 uid: 2,
128 }); 165 });
129 }, 166 },
130 methods: { 167 methods: {
131 // 授权 168 // 授权
132 onGotUserInfo(e) { 169 onGotUserInfo(e) {
133 console.log('anthInfo', e); 170 console.log('anthInfo', e);
134 if(e.detail.errMsg == 'getUserInfo:ok') { 171 if(e.detail.errMsg == 'getUserInfo:ok') {
135 const { fromInfo } = this.$store.state.user; 172 const { fromInfo } = this.$store.state.user;
136 console.log('=====la', fromInfo) 173 console.log('=====la', fromInfo)
137 // 用户授权成功 174 // 用户授权成功
138 store.dispatch('user/getUserInfo', fromInfo); 175 store.dispatch('user/getUserInfo', fromInfo);
139 this.isAuth = true 176 this.isAuth = true
140 } 177 }
141 }, 178 },
142 toMyOrder(){ 179 toMyOrder(status){
143 uni.navigateTo({
144 url: '../myOrder/myOrder?current=0',
145 success: res => {},
146 fail: () => {},
147 complete: () => {}
148 });
149 },
150 toPredelivery(){
151 uni.navigateTo({ 180 uni.navigateTo({
152 url: '../myOrder/myOrder?current=2', 181 url: `../myOrder/myOrder?status=`+status,
153 success: res => {}, 182 success: res => {},
154 fail: () => {}, 183 fail: () => {},
155 complete: () => {} 184 complete: () => {}
156 }); 185 });
157 }, 186 },
158 toMyOrderPaying(){
159 uni.navigateTo({
160 url: '../myOrder/myOrder?current=1',
161 success: res => {},
162 fail: () => {},
163 complete: () => {}
164 });
165 },
166 torefundment(){
167 uni.navigateTo({
168 url:'../refundment/refundment',
169 })
170 },
171 torefunProgress(){
172 uni.navigateTo({
173 url:'../refundProgress/refundProgress'
174 })
175 }
176 } 187 }
177 } 188 }
178 </script> 189 </script>
179 190
180 <style lang="scss"> 191 <style lang="scss">
181 .warp{ 192 .warp{
182 font-size: 24rpx; 193 font-size: 24rpx;
183 background-color: #f2f2f2; 194 background-color: #f2f2f2;
184 height: 100vh; 195 height: 100vh;
185 } 196 }
186 .content { 197 .content {
187 display: flex; 198 display: flex;
188 flex-direction: column; 199 flex-direction: column;
189 align-items: center; 200 align-items: center;
190 justify-content: center; 201 justify-content: center;
191 background-color: #F2F2F2; 202 background-color: #F2F2F2;
192 } 203 }
193 .userInfo{ 204 .userInfo{
194 background-image: linear-gradient(270deg, #FFA481 0%, #FF6B4A 66%); 205 background-image: linear-gradient(270deg, #FFA481 0%, #FF6B4A 66%);
195 width: 100%; 206 width: 100%;
196 height: 240rpx; 207 height: 240rpx;
197 color: #FFFFFF; 208 color: #FFFFFF;
198 padding: 60rpx 82rpx 80rpx 44rpx; 209 padding: 60rpx 82rpx 80rpx 44rpx;
199 box-sizing: border-box; 210 box-sizing: border-box;
200 display: flex; 211 display: flex;
201 flex-direction: row; 212 flex-direction: row;
202 justify-content: space-between; 213 justify-content: space-between;
203 align-items: flex-start; 214 align-items: flex-start;
204 .info{ 215 .info{
205 display: flex; 216 display: flex;
206 flex-direction: row; 217 flex-direction: row;
207 justify-content: space-between; 218 justify-content: space-between;
208 align-items: center; 219 align-items: center;
209 image{ 220 image{
210 border-radius: 50rpx; 221 border-radius: 50rpx;
211 height: 100rpx ; 222 height: 100rpx ;
212 width: 100rpx; 223 width: 100rpx;
213 margin-right: 40rpx; 224 margin-right: 40rpx;
214 } 225 }
215 .infoText{ 226 .infoText{
216 display: flex; 227 display: flex;
217 flex-direction: column; 228 flex-direction: column;
218 justify-content: space-between; 229 justify-content: space-between;
219 align-items: flex-scetart; 230 align-items: flex-scetart;
220 .userName{ 231 .userName{
221 font-size: 18px; 232 font-size: 18px;
222 color: #FFFFFF; 233 color: #FFFFFF;
223 margin-bottom: 8rpx; 234 margin-bottom: 8rpx;
224 } 235 }
225 .nickName{ 236 .nickName{
226 font-size: 12px; 237 font-size: 12px;
227 color: #FFFFFF; 238 color: #FFFFFF;
228 } 239 }
229 } 240 }
230 } 241 }
231 .service{ 242 // .service{
232 margin-top: 20rpx; 243 // margin-top: 20rpx;
244 // image{
245 // height: 36rpx;
246 // width: 36rpx;
247 // }
248 // }
249 }
250 .myOpticsData{
251 width: 670rpx;
252 height: 120rpx;
253 background-color: #FFFFFF;
254 border-radius: 6px;
255 box-shadow: 1px 1px 7px 0 rgba(133,107,107,0.10);
256 position: relative;
257 bottom: 44rpx;
258 padding: 40rpx;
259 box-sizing: border-box;
260 display: flex;
261 justify-content: space-between;
262 align-items: center;
263 .left{
264 font-size: 14px;
265 color: #333333;
266 display: flex;
267 align-items: center;
233 image{ 268 image{
234 height: 36rpx; 269 margin-right: 32rpx;
235 width: 36rpx; 270 width: 30rpx;
271 height: 34rpx;
236 } 272 }
237 } 273 }
274 image{
275 height: 16px;
276 width: 8px;
277 }
238 } 278 }
239 .myOrder{ 279 .myOrder{
240 width: 100%; 280 width: 100%;
241 height: 296rpx; 281 height: 296rpx;
242 margin-top: 20rpx; 282 // margin-top: 116rpx;
243 margin-bottom: 20rpx; 283 margin-bottom: 20rpx;
244 padding: 0 40rpx; 284 padding: 0 40rpx;
245 box-sizing: border-box; 285 box-sizing: border-box;
246 background: #FFFFFF; 286 background: #FFFFFF;
247 box-shadow: 0 0 4px 0 rgba(133,107,107,0.10); 287 box-shadow: 0 0 4px 0 rgba(133,107,107,0.10);
248 border-radius: 6px; 288 border-radius: 6px;
249 border-radius: 6px; 289 border-radius: 6px;
250 display: flex; 290 display: flex;
251 flex-direction: column; 291 flex-direction: column;
252 justify-content: space-around; 292 justify-content: space-around;
253 align-items: center; 293 align-items: center;
254 .orderHeader{ 294 .orderHeader{
255 width: 100%; 295 width: 100%;
256 height: 100rpx; 296 height: 100rpx;
257 display: flex; 297 display: flex;
258 flex-direction: row; 298 flex-direction: row;
259 justify-content: space-between; 299 justify-content: space-between;
260 align-items: center; 300 align-items: center;
261 border-bottom: 1px solid #E9E9E9;; 301 border-bottom: 1px solid #E9E9E9;;
262 font-weight: bold; 302 font-weight: bold;
263 font-size: 18px; 303 font-size: 18px;
264 color: #333333; 304 color: #333333;
265 .btn{ 305 .btn{
266 font-size: 12px; 306 font-size: 12px;
267 color: #999999; 307 color: #999999;
308 display: flex;
309 align-items: center;
268 image{ 310 image{
269 margin-left: 20rpx; 311 margin-left: 20rpx;
270 height: 16rpx; 312 height: 32rpx;
271 width: 8rpx; 313 width: 16rpx;
272 } 314 }
273 } 315 }
274 } 316 }
275 .orderBody{ 317 .orderBody{
276 width: 100%; 318 width: 100%;
277 display: flex; 319 display: flex;
278 flex-direction: row; 320 flex-direction: row;
279 justify-content: space-between; 321 justify-content: space-around;
280 align-items: center; 322 align-items: center;
281 .item{ 323 .item{
282 display: flex; 324 display: flex;
283 flex-direction: column; 325 flex-direction: column;
284 align-items: center; 326 align-items: center;
285 image{ 327 image{
286 width: 46rpx; 328 width: 62rpx;
287 height: 46rpx; 329 height: 46rpx;
288 } 330 }
289 text{ 331 text{
290 margin-top: 24rpx; 332 margin-top: 24rpx;
291 font-size: 12px; 333 font-size: 12px;
292 color: #333333; 334 color: #333333;
293 } 335 }
294 } 336 }
295 } 337 }
296 } 338 }
339 .someItem{
340 width: 100%;
341 height: 336rpx;
342 background: #FFFFFF;
343 box-shadow: 0 0 4px 0 rgba(133,107,107,0.10);
344 border-radius: 6px;
345 border-radius: 6px;
346 margin-bottom: 18rpx;
347 box-sizing: border-box;
348 padding: 21rpx 48rpx 21rpx 42rpx;
349 box-sizing: border-box;
350 display: flex;
351 flex-direction: column;
352 justify-content: space-between;
353 align-items: center;
354 .item{
355 display: flex;
356 justify-content: space-between;
357 border-bottom: 1px solid #F2F2F2;;
358 align-items: center;
359 height: 72rpx;
360 width: 100%;
361 .left{
362 font-size: 14px;
363 color: #333333;
364 display: flex;
365 align-items: center;
366 image{
367 margin-right: 32rpx;
368 width: 30rpx;
369 height: 34rpx;
370 }
371 }
372 image{
373 height: 16px;
374 width: 8px;
375 }
376 }
377
378 }
297 .recommend{ 379 .recommend{
298 background: #FFFFFF; 380 background: #FFFFFF;
299 box-shadow: 0 0 4px 0 rgba(133,107,107,0.10); 381 box-shadow: 0 0 4px 0 rgba(133,107,107,0.10);
300 border-radius: 6px; 382 border-radius: 6px;
301 border-radius: 6px; 383 border-radius: 6px;
302 width: 100%; 384 width: 100%;
303 .title{ 385 .title{
304 display: flex; 386 display: flex;
305 flex-direction: row; 387 flex-direction: row;
306 align-items: center; 388 align-items: center;
307 justify-content: space-between; 389 justify-content: space-between;
308 padding: 20rpx 40rpx; 390 padding: 20rpx 40rpx;
309 .line{ 391 .line{
310 width: 264rpx; 392 width: 264rpx;
311 height: 1rpx; 393 height: 1rpx;
312 border-bottom: 1px solid #EAEAEA; 394 border-bottom: 1px solid #EAEAEA;
313 } 395 }
314 .text{ 396 .text{
315 font-family: PingFangSC-Medium; 397 font-family: PingFangSC-Medium;
316 font-size: 14px; 398 font-size: 14px;
317 color: #333333; 399 color: #333333;
318 letter-spacing: -0.26px; 400 letter-spacing: -0.26px;
319 text-align: justify; 401 text-align: justify;
320 line-height: 24px; 402 line-height: 24px;
321 } 403 }
322 } 404 }
323 .goods-list{ 405 .goods-list{
324 .loading-text{ 406 .loading-text{
325 width: 100%; 407 width: 100%;
326 display: flex; 408 display: flex;
327 justify-content: center; 409 justify-content: center;
328 align-items: center; 410 align-items: center;
329 height: 30px; 411 height: 30px;
330 color: #979797; 412 color: #979797;
331 font-size: 12px; 413 font-size: 12px;
332 } 414 }
333 .product-list{ 415 .product-list{
334 width: 92%; 416 width: 92%;
335 padding: 0 4% 3vw 4%; 417 padding: 0 4% 3vw 4%;
336 display: flex; 418 display: flex;
337 justify-content: space-between; 419 justify-content: space-between;
338 flex-wrap: wrap; 420 flex-wrap: wrap;
339 .product{ 421 .product{
340 width: 48%; 422 width: 48%;
341 margin: 0 0 20rpx 0; 423 margin: 0 0 20rpx 0;
342 background: #FFFFFF; 424 background: #FFFFFF;
343 border: 1px solid #F2F2F2; 425 border: 1px solid #F2F2F2;
344 } 426 }
345 } 427 }
346 } 428 }
347 } 429 }
348 .auth { 430 .auth {
349 height: 100vh; 431 height: 100vh;
350 display: flex; 432 display: flex;
351 flex-direction: column; 433 flex-direction: column;
352 align-items: center; 434 align-items: center;
353 .icon { 435 .icon {
354 width: 140rpx; 436 width: 140rpx;
355 height: 140rpx; 437 height: 140rpx;
356 border-radius: 50%; 438 border-radius: 50%;
357 margin-top: 100rpx; 439 margin-top: 100rpx;
src/static/car.png

1.56 KB

src/static/img/user/dataWrite.png

382 Bytes

src/static/img/user/introduce.png

488 Bytes

src/static/img/user/joinUs.png

1.97 KB

src/static/img/user/refound.png

3.38 KB

src/static/img/user/service.png

1.17 KB

src/static/img/user/shouyi.png

1.51 KB

src/static/img/user/waitDeliver.png

1.91 KB

src/static/img/user/waitPay.png

2.19 KB

src/static/img/user/waitReceive.png

2.01 KB

src/static/joinUs (2).png

488 Bytes

src/static/joinUs (3).png

1.17 KB

src/static/joinUs.png

1.97 KB

src/static/shouyi.png

1.51 KB

src/static/waitReceive.png

789 Bytes | W: | H:

2.01 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
src/store/modules/cancelOrder.js
File was created 1 import urlAlias from '../url';
2 import request from '../request';
3
4 const {
5 cancelOrder
6 } = urlAlias;
7
8 const state = {
9 orderList: [],
10 };
11
12 const mutations = {
13 INIT: (state, data) => {
14 state.orderList = data;
15 },
16 };
17
18 const actions = {
19 cancel({ commit }, param) {
20 request({
21 url: cancelOrder,
22 data: param,
23 success: (res) => {
24 console.log(res.data);
25 // commit("INIT", res.data.data);
26 },
27 })
28 }
29 }
30
31 export default {
32 namespaced: true,
33 state,
34 mutations,
35 actions,
36 }
src/store/modules/myOrder.js
1 import urlAlias from '../url'; 1 import urlAlias from '../url';
2 import request from '../request'; 2 import request from '../request';
3 3
4 const { 4 const {
5 orderList 5 myOrderList
6 } = urlAlias; 6 } = urlAlias;
7 7
8 const data = { 8 // const data = {
9 data: [ 9 // data: [
10 { 10 // {
11 finished_time: null, 11 // finished_time: null,
12 is_refound: "0", 12 // is_refound: "0",
13 mch_id: "1436019502", 13 // mch_id: "1436019502",
14 money_of_dcw: "0", 14 // money_of_dcw: "0",
15 money_of_partner: "0", 15 // money_of_partner: "0",
16 money_of_shop: "0", 16 // money_of_shop: "0",
17 orderJudge: false, 17 // orderJudge: false,
18 order_info: { 18 // order_info: {
19 address:{ 19 // address:{
20 cityName: "镇江市", 20 // cityName: "镇江市",
21 countyName: "丹阳市", 21 // countyName: "丹阳市",
22 detailInfo: "延陵镇柳茹村卫生室附近秀野堂农业发展有限公司", 22 // detailInfo: "延陵镇柳茹村卫生室附近秀野堂农业发展有限公司",
23 errMsg: "chooseAddress:ok", 23 // errMsg: "chooseAddress:ok",
24 nationalCode: "321181", 24 // nationalCode: "321181",
25 postalCode: "212300", 25 // postalCode: "212300",
26 provinceName: "江苏省", 26 // provinceName: "江苏省",
27 telNumber: "15896379277", 27 // telNumber: "15896379277",
28 userName: "点餐汪客服", 28 // userName: "点餐汪客服",
29 }, 29 // },
30 cartinfo:['11', '12'], 30 // cartinfo:['11', '12'],
31 keyname: "1_1587129366", 31 // keyname: "1_1587129366",
32 lefttime: 179995, 32 // lefttime: 179995,
33 list:[ 33 // list:[
34 { 34 // {
35 cart_id: "11", 35 // cart_id: "11",
36 imgUrl: "https://glass.xiuyetang.com//upload_jk/4/4_0_3FDA03.jpg", 36 // imgUrl: "https://glass.xiuyetang.com//upload_jk/4/4_0_3FDA03.jpg",
37 img_index_url: null, 37 // img_index_url: null,
38 memo: "志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流,01-8701", 38 // memo: "志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流,01-8701",
39 mp_id: "1", 39 // mp_id: "1",
40 nowPrice: 100, 40 // nowPrice: 100,
41 num: "2", 41 // num: "2",
42 oldPrice: "0", 42 // oldPrice: "0",
43 p_discount: "1", 43 // p_discount: "1",
44 p_name: "01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流", 44 // p_name: "01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流",
45 p_root_index: "1", 45 // p_root_index: "1",
46 p_sale_price: "0", 46 // p_sale_price: "0",
47 peopleName: "me", 47 // peopleName: "me",
48 pics: '', 48 // pics: '',
49 pid: "4", 49 // pid: "4",
50 sk_id: "38", 50 // sk_id: "38",
51 }, 51 // },
52 ], 52 // ],
53 orderDesc: "总共包括有:01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流在内的1件商品", 53 // orderDesc: "总共包括有:01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流在内的1件商品",
54 total_fee: 100 54 // total_fee: 100
55 }, 55 // },
56 partner_uid: "0", 56 // partner_uid: "0",
57 pay_cate: "2020", 57 // pay_cate: "2020",
58 pay_id: "3", 58 // pay_id: "3",
59 pay_time: "2020-04-17 21:16:12", 59 // pay_time: "2020-04-17 21:16:12",
60 pay_wood_desc: "在【非常戴镜】的微信付款凭证", 60 // pay_wood_desc: "在【非常戴镜】的微信付款凭证",
61 pay_wood_id: "fcdj-1-1_1587129366", 61 // pay_wood_id: "fcdj-1-1_1587129366",
62 prepay_id: "wx172116124528226bf1a8adad1662456500", 62 // prepay_id: "wx172116124528226bf1a8adad1662456500",
63 re_check_staus: "0", 63 // re_check_staus: "0",
64 shopid: "0", 64 // shopid: "0",
65 split_userid: "0", 65 // split_userid: "0",
66 status: "1", 66 // status: "1",
67 total_fee: "100", 67 // total_fee: "100",
68 uid: "1", 68 // uid: "1",
69 } 69 // }
70 ], 70 // ],
71 msg: "订单列表", 71 // msg: "订单列表",
72 status: 0, 72 // status: 0,
73 } 73 // }
74 74
75 const state = { 75 const state = {
76 orderList: [], 76 orderList: [],
77 }; 77 };
78 78
79 const mutations = { 79 const mutations = {
80 INIT: (state, data) => { 80 INIT: (state, data) => {
81 state.orderList = data; 81 state.orderList = data;
82 }, 82 },
83 }; 83 };
84 84
85 const actions = { 85 const actions = {
86 getList({ commit }, param) { 86 getList({ commit }, param) {
87 request({ 87 request({
88 url: orderList, 88 url: myOrderList,
89 data: param, 89 data: param,
90 success: (res) => { 90 success: (res) => {
91 const resData = { 91 // console.log(res.data);
92 ...res, 92 commit("INIT", res.data.data);
93 data,
94 }
95 console.log('data.data', resData.data.data);
96 commit("INIT", resData.data.data);
97 }, 93 },
98 }) 94 })
99 } 95 }
100 } 96 }
101 97
102 export default { 98 export default {
103 namespaced: true, 99 namespaced: true,
104 state, 100 state,
105 mutations, 101 mutations,
106 actions, 102 actions,
107 } 103 }
src/store/modules/orderRead.js
File was created 1 import urlAlias from '../url';
2 import request from '../request';
3
4 const {
5 orderRead
6 } = urlAlias;
7
8 const state = {
9 orderInfo: {},
10 };
11
12 const mutations = {
13 INIT: (state, orderInfo) => {
14 state.orderInfo = orderInfo;
15 },
16 };
17
18 const actions = {
19 getOrderInfo({ commit }, param) {
20 request({
21 url: orderRead,
22 data: param,
23 success: (res) => {
24 commit("INIT", res.data.data);
25 },
26 })
27 },
28 };
29
30 export default {
31 namespaced: true,
32 state,
33 mutations,
34 actions,
35 };
36
src/store/modules/payLog.js
File was created 1 import urlAlias from '../url';
2 import request from '../request';
3
4 const {
5 payLog
6 } = urlAlias;
7
8
9 const actions = {
10 payLog({ commit }, param) {
11 request({
12 url: payLog,
13 data: param,
14 success: (res) => {
15 // console.log(res.data);
16 commit("INIT", res.data.data);
17 },
18 })
19 }
20 }
21
22 export default {
23 namespaced: true,
24 // state,
25 // mutations,
26 actions,
27 }
src/store/modules/statusConfirm.js
File was created 1 import urlAlias from '../url';
2 import request from '../request';
3
4 const {
5 statusConfirm
6 } = urlAlias;
7
8 // const openid = uni.getStorageSync('openid');
9 const actions = {
10 confirm({ commit }, param) {
11 request({
12 url: statusConfirm,
13 data: param|| { },
14 success: (res) => {
15 console.log(res.data);
16 if(res.data.code === 1){
17 uni.showToast({
18 title:'已确认',
19 mask:true,
20 duration:1500,
21 icon:'success'
22 })
23 }else{
24 uni-uni.showToast({
25 title: '服务器错误,确认失败!',
26 mask:true
27 });
28 }
29 },
30 })
31 }
32 }
33
34 export default {
35 namespaced: true,
36 actions,
37 }
1 const urlAlias = { 1 const urlAlias = {
2 // 获取首页商品列表 2 // 获取首页商品列表
3 shopList: '/app/prod/list', 3 shopList: '/app/prod/list',
4 4
5 // 获取首页商品列表 5 // 获取首页商品列表
6 category: '/app/prod/category2', 6 category: '/app/prod/category2',
7 // 获取商品信息 7 // 获取商品信息
8 read: '/app/prod/read', 8 read: '/app/prod/read',
9 9
10 // 首页 10 // 首页
11 shopList: '/app/prod/list', // 获取首页商品列表 11 shopList: '/app/prod/list', // 获取首页商品列表
12 category: '/app/prod/category', // 获取首页商品分类 12 category: '/app/prod/category', // 获取首页商品分类
13 13
14 // 登陆 14 // 登陆
15 login: '/app/glass/getOpenId', // 登陆 15 login: '/app/glass/getOpenId', // 登陆
16 getUserInfo: '/app/glass/userinfo', // 获取用户信息 16 getUserInfo: '/app/glass/userinfo', // 获取用户信息
17 17
18 // 我的订单 18 // 我的订单
19 orderList: '/app/order/list', // 获取订单列表 19 myOrderList: '/app/order/list3', // 获取订单列表
20 orderRead: '/app/order/read', // 获取订单详情
21 cancelOrder: '/app/order/wait/del',//取消订单
22 statusConfirm: '/app/order/statusConfirm',//订单操作
23 payLog:'/app/pay/log',//调起支付
20 24
21 // 购物车 25 // 购物车
22 cartList: '/app/cart/list', // 获取购物车列表 26 cartList: '/app/cart/list', // 获取购物车列表
23 27
24 // 我的 28 // 我的
25 recommandList:'/app/prod/recommand', // 获取用户个性化推荐商品 29 recommandList:'/app/prod/recommand', // 获取用户个性化推荐商品
26 } 30 }
27 31
28 export default urlAlias; 32 export default urlAlias;
29 33