sellidel.js
19.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
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
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
// pages/home/sellidel/sellidel.js
const app = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
parcel: -1,
img: [],
videoimg:'',
sendimg: [],
video: 1,
wname: '',
price: '',
phone: '',
describe: '',
allChar: '仅支持自取',
classify_index: 0,
city_index: 0,
old_index: 0,
tage_index: 0,
multiIndex: [0, 0],
multiArray: [['东城区', '西城区', '朝阳区', '丰台区', '石景山区', '海淀区', '门头沟区', '房山区', '通州区', '顺义区', '昌平区', '大兴区', '怀柔区', '平谷区', '密云区', '延庆区'], ['东华门街道', '景山街道', '交道口街道', '安定门街道', '北新桥街道', '东四街道', '朝阳门街道', '建国门街道', '东直门街道', '和平里街道', '前门街道', '崇文门外街道', '东花市街道', '龙潭街道', '体育馆路街道', '天坛街道','永定门外街道']],
conPostage: ['请选择','不包邮', '包邮'],
village: '东华门街道',
area: '东城区',
region: ['北京', '北京市', '东城区'],
province:'北京',
city:'北京市',
area:'东城区'
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.getClassify();
this.getOld();
},
delpic(e) {
let that = this;
let index = e.currentTarget.dataset.id;
let newimg = that.data.img;
let newsendimg=that.data.sendimg;
console.log(newsendimg)
console.log(newimg)
newimg.splice(index, 1);
newsendimg.splice(index, 1);
console.log(newimg)
that.setData({
img: newimg,
sendimg:newsendimg
})
console.log(this.data.sendimg)
},
// 判断是否为空
isEmpty: function(){
let that = this;
var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1})|(17[0-9]{1}))+\d{8})$/;
if (that.data.sendimg == ''){
wx.showToast({
title: "请上传图片",
icon: 'none',
duration: 1500
});
return false;
} else if (that.data.wname == ''){
wx.showToast({
title: "请输入物品名称",
icon: 'none',
duration: 1500
});
return false;
} else if (that.data.price == ''){
wx.showToast({
title: "请输入物品价格",
icon: 'none',
duration: 1500
});
return false;
} else if (that.data.phone == ''){
wx.showToast({
title: "请输入联系方式",
icon: 'none',
duration: 1500
});
return false;
}else if (that.data.phone != '') {
// var reg = /^[1][3,4,5,6,,7,8,9][0-9]{9}$/;
// if (!reg.test(that.data.phone)) {
// wx.showToast({
// title: '请输入正确的手机号',
// icon: 'none'
// })
// return false
// } else
if (that.data.classify[that.data.classify_index].goods_cate_id == 0) {
wx.showToast({
title: '请选择分类',
icon: 'none'
})
return false
} else if (that.data.degree[that.data.old_index].degree_id == 0) {
wx.showToast({
title: '请选择新旧程度',
icon: 'none'
})
return false
} else if (that.data.tage_index - 1 == -1) {
wx.showToast({
title: "请选择是否包邮",
icon: 'none',
duration: 1500
});
return false;
} else if (that.data.describe == '') {
wx.showToast({
title: "请输入物品描述",
icon: 'none',
duration: 1500
});
return false;
} else {
that.issueShopp()
}
}
},
// 发布闲置商品
issueShopp: function(e){
let that = this;
let url = "/api/portal/goods/addGoods";
let params = {
token: wx.getStorageSync('token'),
images: that.data.sendimg,
video: that.data.videoimg,
title: that.data.wname,
price: that.data.price,
mobile: that.data.phone,
goods_cate_id: that.data.classify[that.data.classify_index].goods_cate_id,
// area: that.data.area,
// village: that.data.village,
province:that.data.province,
city:that.data.city,
area:that.data.area,
degree_id: that.data.degree[that.data.old_index].degree_id,
if_freight:that.data.tage_index-1,
briefcontent: that.data.describe,
transport_type: that.data.allChar
}
app.post(url, params).then((res) => {
console.log(res)
if(res==""){
wx.showToast({
title: '发布成功,等待后台审核',
icon:'none'
})
}
setTimeout(function(){
// wx.navigateTo({
// url: '../used/used',
// })
wx.navigateBack({
checked:true
})
},1500)
}).catch((errMsg) => {})
},
// 获取所属分类信息
getClassify: function (e) {
let that = this;
let url = "/api/portal/goods/getCate";
let params = {}
app.post(url, params).then((res) => {
console.log(res)
let classifyname={
goods_cate_id:0,
name:"请选择"
}
res.unshift(classifyname)
that.setData({
classify: res
})
console.log(that.data.classify)
}).catch((errMsg) => {})
},
getType(e){
this.setData({
classify_index: e.detail.value
})
},
// 获取新旧程度
getOld: function(e){
let that = this;
let url = "/api/portal/goods/getDegree";
let params = {}
app.post(url, params).then((res) => {
console.log(res)
let classifyname = {
degree_id: 0,
title: "请选择"
}
res.unshift(classifyname)
that.setData({
degree: res
})
}).catch((errMsg) => {})
},
oldTap: function(e){
this.setData({
old_index: e.detail.value
})
},
// 获取包邮信息
postageTap: function (e) {
this.setData({
tage_index: e.detail.value
})
},
// 获取物品名称
getName: function(e){
this.setData({
wname: e.detail.value
})
},
// 获取物品价钱
getPrice: function(e){
this.setData({
price: e.detail.value
})
},
// 获取联系方式
getPhone: function(e){
this.setData({
phone: e.detail.value
})
},
// 获取物品描述
getDescribe: function(e){
this.setData({
describe: e.detail.value
})
},
//所在区域下拉
cityTap: function (e) {
this.setData({
multiIndex: e.detail.value
})
},
// 上传图片
uploadImage() {
let that = this;
wx.chooseImage({
count: 9,
sizeType: ['original', 'compressed'],
success: function (res) {
console.log(res)
let successUp = 0; //成功个数
let failUp = 0; //失败个数
let i = 0; //第几个
let tempFilePaths = res.tempFilePaths //总文件
let length = res.tempFilePaths.length //总共个数
wx.showNavigationBarLoading()
wx.showLoading({
title: '上传中',
})
that.uploadAllfile(tempFilePaths, successUp, failUp, i, length)
},
fail: function (res) {
console.log(res);
}
})
},
uploadAllfile(filePaths, successUp, failUp, i, length) {
let that = this;
let url = 'https://ibaby88.cn/portal/common/upload';
wx.uploadFile({
url: url, //仅为示例,非真实的接口地址
filePath: filePaths[i],
name: 'file',
formData: {
file: '',
filetype: 'image'
},
success: function (res) {
console.log(res)
wx.hideNavigationBarLoading();
wx.hideLoading();
if (res.statusCode == '200') {
var dat = JSON.parse(res.data);
var datres = dat.data;
let imgTemp = that.data.img;
console.log(imgTemp.length)
// let imgSemp = that.data.sendimg;
if (imgTemp.length < 5) {
let imgSemp = that.data.sendimg;
imgTemp[imgTemp.length] = datres.preview_url;
console.log(imgTemp)
imgSemp[imgSemp.length] = datres.filepath
that.setData({
img: imgTemp,
sendimg: imgSemp
})
console.log('000000',that.data.sendimg)
} else {
wx.showToast({
title: '最多只能上传5张',
icon: 'none'
})
}
} else {
// wx.showModal({
// title: '提示',
// content: res.msg,
// showCancel: false
// })
}
//do something 返回图片地址
},
fail: function (res) {
wx.hideNavigationBarLoading()
wx.hideLoading()
console.log(res);
},
complete() {
i++;
let img = that.data.img
if (i == length) {
console.log('总共' + successUp + '张上传成功,' + failUp + '张上传失败!');
}
else { //递归调用uploadDIY函数
that.uploadAllfile(filePaths, successUp, failUp, i, length);
}
}
})
},
//上传视频
chooseVideo() {
let that=this;
wx.chooseVideo({
sourceType: ['album', 'camera'],
maxDuration: 60,
camera: 'back',
success(res) {
console.log(res.tempFilePath);
that.setData({
videoimg: res.tempFilePath,
})
// app.upload('video', res.tempFilePath).then((res) => {
// let videos = that.data.videos;
// videos.push(res.url);
// that.setData({
// videos: videos
// })
// }).catch((err) => {
// console.log(err)
// })
let file = res.tempFilePath
that.upload(file)
}
})
},
upload(file) {
let url = 'https://ibaby88.cn/portal/common/upload';
// let head = {
// 'XX-Token': wx.getStorageSync('token'),
// 'XX-Device-Type': ''
// }
// let typename = {
// filetype: filetype
// }
wx.uploadFile({
url: url, //仅为示例,非真实的接口地址
filePath: file,
name: 'file',
header: {},
formData: {
filetype: 'video'
},
success: function (res) {
console.log('上传文件后', res)
console.log(res)
// let temdata = JSON.parse(res.data);
// let urlobj = {
// url: temdata.data.preview_url
// }
// resolve(urlobj);
// wx.hideNavigationBarLoading();
// wx.hideLoading();
},
fail: function (res) {
reject('网络出错');
wx.hideNavigationBarLoading()
wx.hideLoading()
},
complete: () => {
wx.hideNavigationBarLoading()
wx.hideLoading()
},
})
},
// 省市区选择
bindRegionChange(e) {
//console.log('picker发送选择改变,携带值为', e.detail.value)
this.setData({
region: e.detail.value,
province: e.detail.value[0],
city: e.detail.value[1],
area: e.detail.value[2],
})
},
//点击切换
clickTab: function (e) {
var that = this;
var index = e.target.dataset.current;
if (this.data.parcel === e.target.dataset.current) {
return false;
} else {
that.setData({
parcel: e.target.dataset.current
})
}
if(index == 0){
this.setData({
allChar: '仅支持自取'
})
}else if(index == 1){
this.setData({
allChar: '仅支持快递'
})
}else if(index == 2){
this.setData({
allChar: '支持快递或自取'
})
}
},
bindMultiPicker: function (e) {
var data = {
multiArray: this.data.multiArray,
multiIndex: this.data.multiIndex
};
data.multiIndex[e.detail.column] = e.detail.value;
console.log(data.multiIndex[e.detail.column])
switch (e.detail.column) {
case 0:
switch (data.multiIndex[0]) {
case 0:
data.multiArray[1] = ['东华门街道', '景山街道', '交道口街道', '安定门街道', '北新桥街道', '东四街道', '朝阳门街道', '建国门街道', '东直门街道', '和平里街道', '前门街道', '崇文门外街道', '东花市街道', '龙潭街道', '体育馆路街道', '天坛街道', '永定门外街道'];
break;
case 1:
data.multiArray[1] = ['西长安街街道', '新街口街道', '月坛街道', '展览路街道', '德胜街道', '金融街街道', '什刹海街道', '大栅栏街道', '天桥街道', '椿树街道', '陶然亭街道', '广安门内街道', '牛街街道', '白纸坊街道','广安门外街道'];
break;
case 2:
data.multiArray[1] = ['建外街道', '朝外街道', '呼家楼街道', '三里屯街道', '左家庄街道', '香河园街道', '和平街街道', '安贞街道', '亚运村街道', '小关街道', '酒仙桥街道', '麦子店街道', '团结湖街道', '六里屯街道', '八里庄街道', '双井街道', '劲松街道', '潘家园街道', '垡头街道', '南磨房地区', '高碑店地区', '将台地区', '太阳宫地区', '大屯街道', '望京街道', '小红门地区', '十八里店地区', '平房地区', '东风地区', '奥运村街道', '来广营地区', '常营地区', '三间房地区', '管庄地区', '金盏地区', '孙河地区', '崔各庄地区', '东坝地区', '黑庄户地区', '豆各庄地区', '王四营地区', '东湖街道','首都机场街道'];
break;
case 3:
data.multiArray[1] = ['右安门街道', '太平桥街道', '西罗园街道', '大红门街道', '南苑街道', '东高地街道', '东铁匠营街道', '卢沟桥街道', '丰台街道', '新村街道', '长辛店街道', '云岗街道', '方庄地区', '宛平城地区', '马家堡街道', '和义街道', '卢沟桥地区', '花乡地区', '南苑地区', '长辛店镇','王佐镇'];
break;
case 4:
data.multiArray[1] = ['八宝山街道', '老山街道', '八角街道', '古城街道', '苹果园街道', '金顶街街道', '广宁街道', '五里坨街道','鲁谷街道'];
break;
case 5:
data.multiArray[1] = ['万寿路街道', '永定路街道', '羊坊店街道', '甘家口街道', '八里庄街道', '紫竹院街道', '北下关街道', '北太平庄街道', '学院路街道', '中关村街道', '海淀街道', '青龙桥街道', '清华园街道', '燕园街道', '香山街道', '清河街道', '花园路街道', '西三旗街道', '马连洼街道', '田村路街道', '上地街道', '万柳地区', '东升地区', '曙光街道', '温泉地区', '四季青地区', '西北旺地区', '苏家坨地区','上庄地区'];
break;
case 6:
data.multiArray[1] = ['大峪街道', '城子街道', '东辛房街道', '大台街道', '王平地区', '永定地区', '龙泉地区', '潭柘寺镇', '军庄镇', '雁翅镇', '斋堂镇', '清水镇','妙峰山镇'];
break;
case 7:
data.multiArray[1] = ['城关街道', '新镇街道', '向阳街道', '东风街道', '迎风街道', '星城街道', '良乡地区', '周口店地区', '琉璃河地区', '拱辰街道', '西潞街道', '阎村镇', '窦店镇', '石楼镇', '长阳镇', '河北镇', '长沟镇', '大石窝镇', '张坊镇', '十渡镇', '青龙湖镇', '韩村河镇', '霞云岭乡', '南窖乡', '佛子庄乡', '大安山乡', '史家营乡','蒲洼乡'];
break;
case 8:
data.multiArray[1] = ['中仓街道', '新华街道', '北苑街道', '玉桥街道', '永顺地区', '梨园地区', '宋庄镇', '张家湾镇', '漷县镇', '马驹桥镇', '西集镇', '台湖镇', '永乐店镇', '潞城镇','于家务回族乡'];
break;
case 9:
data.multiArray[1] = ['胜利街道', '光明街道', '仁和地区', '后沙峪地区', '天竺地区', '杨镇地区', '牛栏山地区', '南法信地区', '马坡地区', '石园街道', '空港街道', '双丰街道', '旺泉街道', '高丽营镇', '李桥镇', '李遂镇', '南彩镇', '北务镇', '大孙各庄镇', '张镇', '龙湾屯镇', '木林镇', '北小营镇', '北石槽镇','赵全营镇'];
break;
case 10:
data.multiArray[1] = ['城北街道', '南口地区', '马池口地区', '沙河地区', '城南街道', '东小口地区', '天通苑北街道', '天通苑南街道', '霍营街道', '回龙观街道', '龙泽园街道', '史各庄街道', '阳坊镇', '小汤山镇', '南邵镇', '崔村镇', '百善镇', '北七家镇', '兴寿镇', '流村镇', '十三陵镇','延寿镇'];
break;
case 11:
data.multiArray[1] = ['兴丰街道', '林校路街道', '清源街道', '亦庄地区', '黄村地区', '旧宫地区', '西红门地区', '瀛海地区', '观音寺街道', '天宫院街道', '高米店街道', '荣华街道', '博兴街道', '青云店镇', '采育镇', '安定镇', '礼贤镇', '榆垡镇', '庞各庄镇', '北臧村镇', '魏善庄镇', '长子营镇', '北京经济技术开发区', '中关村国家自主创新示范区大兴生物医药产业基地','国家新媒体产业基地'];
break;
case 12:
data.multiArray[1] = ['泉河街道', '龙山街道', '怀柔地区', '雁栖地区', '庙城地区', '北房镇', '杨宋镇', '桥梓镇', '怀北镇', '汤河口镇', '渤海镇', '九渡河镇', '琉璃庙镇', '宝山镇', '长哨营满族乡', '喇叭沟门满族乡','北京雁栖经济开发区'];
break;
case 13:
data.multiArray[1] = ['滨河街道', '兴谷街道', '渔阳地区', '峪口地区', '马坊地区', '金海湖地区', '东高村镇', '山东庄镇', '南独乐河镇', '大华山镇', '夏各庄镇', '马昌营镇', '王辛庄镇', '大兴庄镇', '刘家店镇', '镇罗营镇', '黄松峪乡','熊儿寨乡'];
break;
case 14:
data.multiArray[1] = ['鼓楼街道', '果园街道', '檀营地区', '密云镇', '溪翁庄镇', '西田各庄镇', '十里堡镇', '河南寨镇', '巨各庄镇', '穆家峪镇', '太师屯镇', '高岭镇', '不老屯镇', '冯家峪镇', '古北口镇', '大城子镇', '东邵渠镇', '北庄镇', '新城子镇', '石城镇','北京密云经济开发区'];
break;
case 15:
data.multiArray[1] = ['百泉街道', '香水园街道', '儒林街道', '延庆镇', '康庄镇', '八达岭镇', '永宁镇', '旧县镇', '张山营镇', '四海镇', '千家店镇', '沈家营镇', '大榆树镇', '井庄镇', '大庄科乡', '刘斌堡乡', '香营乡','珍珠泉乡'];
break;
}
data.multiIndex[1] = 0;
break;
}
this.setData(data);
console.log(this.data.multiIndex, data.multiArray[0][data.multiIndex[e.detail.column]], data.multiArray[1][data.multiIndex[1]]);
this.setData({
area: data.multiArray[0][data.multiIndex[e.detail.column]],
village: data.multiArray[1][data.multiIndex[1]]
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})