Blame view

src/store/modules/cart.js 5.57 KB
7d2bdf29e   喻鹏   修改镜片选购逻辑 添加购物车和用户...
1
2
  import urlAlias from '../url';
  import request from '../request';
cc196c33c   喻鹏   购物车和用户推荐接口渲染
3
  const { cartList , cartModi, cartDel, cartAdd } = urlAlias;
7d2bdf29e   喻鹏   修改镜片选购逻辑 添加购物车和用户...
4
5
6
7
  
  const state = {
    cartList: [],
  };
cc196c33c   喻鹏   购物车和用户推荐接口渲染
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
  
  const data = {
  	    data:{
  			// list 购物车列表
  			list:[
  				{
  					goods_name: "1.56非球面防蓝光_黑01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流", //商品名称
  					pid: "6",//产品id
  					real_price: 99,
  					checked: true,//是否选中
  					name: "颜色 玫瑰金 /材质 钛合金 / 功能 防日光 / 配件 免费送 /折射防日光 / 配件 免费送 /折射",//属性名称 ,颜色 玫瑰金 /材质 钛合金 / 功能 防日光 / 配件 免费送 /折射 …
  					cart_id: "39", //购物车唯一序列号
  					num: "1", //此购物
  					pics: "/static/myorder-paying-pic.png", //商品图片
  					goodsType:2,// 商品种类
  				},
  				{
  					goods_name: "1.56非球面防蓝光_黑01-8701志平防蓝光-防辐射电脑网课眼镜,TR90弹性漆,近视镜,青春潮流", //商品名称
  					pid: "4",//产品id
  					real_price: 189,
  					checked: false,//是否选中
  					name: "颜色 玫瑰金 /材质 钛合金 / 功能 防日光 / 配件 免费送 /折射防日光 / 配件 免费送 /折射",//属性名称 ,颜色 玫瑰金 /材质 钛合金 / 功能 防日光 / 配件 免费送 /折射 …
  					cart_id: "38", //购物车唯一序列号
  					num: "2", //此购物
  					pics: "/static/myorder-paying-pic.png", //商品图片
  					goodsType:3,// 商品种类
  				},
  			], 
  			mp_id: "1", 
  			mp_list://使用人,一个产品只有一个使用人
  				[
  					{
  						glassWidth: "54",//镜宽
  						img_url2: "http://localhost:8087/images/shop_1/1/",//使用人的头像,根据此头像,AI识别出数据。
  						in_time: "2020-02-22 03:19:38",//使用人加入的时间
  						leftAxi: "124",//左眼数据
  						leftCyl: "-2",//左眼数据
  						leftSph: "-1",//左眼数据
  						leftVis: "5",//左眼数据
  						legWidth: "158",//镜腿长
  						metal: null,//使用人的其它定义(材质过敏之类的)
  						mp_id: "1",//使用的id
  						name: "me",//使用人的名字
  						norseWidth: "18",//鼻宽
  						pd: "89.6",//瞳距
  						price: "0",//此人偏好的价格
  						rightAxi: "123",//右眼数据
  						rightCyl: "24",//右眼数据
  						rightSph: "-4",//右眼数据
  						rightVis: "5.1",//右眼数据
  						uid: "1",//购买人的uid
  					}
  				],
  			sk_id: "80",//此产品下的sku的唯一id
  			skuList:[//sku清单
  				{
  					discount: "45",//折扣,数据库中以int型存储,所以要除100
  					in_price: "6000",//进货价格,数据库中以int型存储,单位是分,所以显示时要除以100
  					kc: "0",//库存
  					model_pic: null,//模型试戴图
  					out_price: 191.8,//销售价格,元
  					pic: "https://glass.xiuyetang.com//upload_jk/6/6_321EB1.jpg",//可供查看图
  					pid: "6",//索引产品id
  					real_price: 99,//真实可成交价格
  					sk_id: "74",//成交时的sku_id
  					sku_name: "1.56非球面防蓝光_黑色",//sku名称
  					sku_shop_value: "",//sku商家定义值
  					sku_value: "47_51",//sku系统生成值
  					status: "1",//此产品下的sku状态
  				}
  			]
  		},    // 一个产品下,会有多个sku,都在这个skuList数组下
  	    msg: "ok",
  	    status: 1,
  }
7d2bdf29e   喻鹏   修改镜片选购逻辑 添加购物车和用户...
83
84
85
86
  const mutations = {
    INIT: (state, cartList) => {
      state.cartList = cartList;
    },
cc196c33c   喻鹏   购物车和用户推荐接口渲染
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
    DEL:(state,index)=>{
  	  console.log('mutations====>',state.cartList)
  	  state.cartList.splice(index,1)
  	  console.log('mutations====>index',index)
  	  // state.cartList=delList
    },
    MODI:(state,args) => {
  	  console.log('the num',state.cartList[args.index].num)
  	  console.log('mutations====>isadd',args)
  	  if(args.isadd)
  	  {
  		  state.cartList[args.index].num=args.num
  	  } else{
  		  state.cartList[args.index].num=args.num
  	  }
  	  console.log('the num',state.cartList[args.index].num)
    },
    
7d2bdf29e   喻鹏   修改镜片选购逻辑 添加购物车和用户...
105
  };
7d2bdf29e   喻鹏   修改镜片选购逻辑 添加购物车和用户...
106
107
  const actions = {
  	
cc196c33c   喻鹏   购物车和用户推荐接口渲染
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
     getCartList({ commit }, param) {
  		request({
  		  url: cartList,
  		  data:param,
  		  success: (res) => {
  			  console.log('cart===>接口数据',res.data.data)
  			 //  const resData = {
  				// ...res,
  				// data,
  			 //  }
  			commit('INIT', res.data.data)
  		  },
  		  fail: (res) => {
  			console.log("fail status === > ", res);
  		  },
  		  complete: (res) => {
  			console.log("complete status === > ", res);
  		  },
  		})
  	},
  	
  	modiCart({ commit }, param) {
  		const args=Object.assign({num:param.num},param.args)
  		delete param.args
  	  request({
  		url: cartModi,
  		data: param,
  		success: (res) => {
  			console.log('modi-parm',param)
  		  commit('MODI',args)
  		},
  		fail: (res) => {
  		  console.log("fail status === > ", res);
  		},
  		complete: (res) => {
  		  console.log("complete status === > ", res);
  		},
  	  })
  	},
  	
  	delCart({ commit },param ) {
  		let arg = param.arg;
  		delete param.arg
  	  request({
  		url: cartDel,
  		data: param,
  		success: (res) => {
  			console.log('del-parm',param)
  			console.log('del-myparms==>',arg)
  			// console.log('deacart====>cartList',this.$store.state.cart.cartList)
  			
  		  commit('DEL',arg)
  		},
  		fail: (res) => {
  		  console.log("fail status === > ", res);
  		},
  		complete: (res) => {
  		  console.log("complete status === > ", res);
  		},
  	  })
  	},
  	
  	addCart({ commit }, param) {
  		console.log('请求接口开始')
  	  request({
  		url: cartAdd,
  		data:param,
  		success: (res) => {
  			console.log('add-parm',param)
  			console.log('addcart===>res.data===>',res.data)
  		  // commit('INIT', res.data.data)
  		},
  		fail: (res) => {
  		  console.log("fail status === > ", res);
  		},
  		complete: (res) => {
  		  console.log("complete status === > ", res);
  		},
  	  })
  	},
  	
7d2bdf29e   喻鹏   修改镜片选购逻辑 添加购物车和用户...
189
190
191
192
193
194
195
196
  }
  
  export default {
    namespaced: true,
    state,
    mutations,
    actions,
  };