294 lines
11 KiB
JavaScript
294 lines
11 KiB
JavaScript
// packageA/member/supplier/component/classify/classify.js
|
||
const app = getApp();
|
||
Component({
|
||
/**
|
||
* 组件的属性列表
|
||
*/
|
||
properties: {
|
||
debtId:{
|
||
type:null
|
||
}
|
||
},
|
||
|
||
/**
|
||
* 组件的初始数据
|
||
*/
|
||
data: {
|
||
// 所选一级
|
||
firstClass: 0,
|
||
// 所选二级
|
||
twoClass: 0,
|
||
// 一级分类
|
||
categoryInfo: [{
|
||
name: ''
|
||
}],
|
||
onePage: 1,
|
||
current_page_first: 1,
|
||
last_page_first: 1,
|
||
// 二级分类
|
||
// 二级分类
|
||
categoryInfo_two: [{
|
||
name: ''
|
||
}],
|
||
twoPage: 1,
|
||
current_page_two: 1,
|
||
last_page_two: 1,
|
||
|
||
keyInto: '',
|
||
cat_level: '2'
|
||
// 防止多次点击
|
||
|
||
},
|
||
lifetimes: {
|
||
// 生命周期函数,可以为函数,或一个在methods段中定义的方法名
|
||
attached() {
|
||
this.getClass();
|
||
},
|
||
moved() { },
|
||
detached() { },
|
||
},
|
||
observers: {
|
||
// 'sid': function (ea) {
|
||
// console.log(ea, 'sssssssss')
|
||
// }
|
||
},
|
||
/**
|
||
* 组件的方法列表
|
||
*/
|
||
methods: {
|
||
init() {
|
||
this.setData({
|
||
// categoryInfo: [],
|
||
onePage: 1,
|
||
current_page_first: 1,
|
||
last_page_first: 1,
|
||
// categoryInfo_two: [],
|
||
twoPage: 1,
|
||
current_page_two: 1,
|
||
last_page_two: 1,
|
||
twoClass: 0,
|
||
keyInto: ''
|
||
});
|
||
},
|
||
toSearch(e) {
|
||
let id = e.currentTarget.dataset.id;
|
||
console.log('debtId::::::::::',this.data.debtId)
|
||
wx.navigateTo({
|
||
url: '/packageA/member/supplier/SupplierSearch/SupplierSearch?debtCId=' + id+'&debtId='+this.data.debtId,
|
||
});
|
||
},
|
||
tapRightTwo(e) {
|
||
this.setData({
|
||
twoClass: e.currentTarget.dataset.id,
|
||
keyInto: `thr_id${e.currentTarget.dataset.kid}`
|
||
});
|
||
},
|
||
tapOneClass(e) {
|
||
let ind = e.currentTarget.dataset.ind;
|
||
console.log(ind,'aaaaaaaaaa')
|
||
this.setData({
|
||
firstClass: ind,
|
||
});
|
||
this.init();
|
||
this.getClass();
|
||
},
|
||
getClass(loadMore = false) {
|
||
wx.showLoading({
|
||
title: '加载中',
|
||
});
|
||
let urlStr = app.getNetAddresss("plugin.debt-shop.frontend.goods.goodsTypeList");
|
||
app._getNetWork({
|
||
url: urlStr,
|
||
data: {
|
||
paginate: 100,
|
||
page: this.data.onePage,
|
||
level:'1'
|
||
},
|
||
success: (resdata) => {
|
||
var res = resdata.data;
|
||
if (res.result == 1) {
|
||
this.setData({
|
||
cat_level: res.data.max_level
|
||
});
|
||
wx.hideLoading({})
|
||
if (!loadMore) {
|
||
// 一级分类初始请求
|
||
this.setData({
|
||
categoryInfo: res.data.list.data,
|
||
current_page_first: res.data.list.current_page,
|
||
last_page_first: res.data.list.last_page
|
||
});
|
||
console.log(this.data.categoryInfo,this.data.firstClass)
|
||
this.getClassTwo(this.data.categoryInfo[this.data.firstClass].id);
|
||
} else {
|
||
// 一级分类下滑触底加载更多
|
||
console.log(this.data.categoryInfo,res.data.list.data)
|
||
this.setData({
|
||
categoryInfo: this.data.categoryInfo.concat(res.data.list.data),
|
||
current_page_first: res.data.list.current_page,
|
||
last_page_first: res.data.list.last_page
|
||
});
|
||
console.log(this.data.categoryInfo)
|
||
}
|
||
} else {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
});
|
||
wx.hideLoading({
|
||
success: (res) => { },
|
||
});
|
||
}
|
||
}
|
||
});
|
||
},
|
||
getClassTwo(child, loadMore = false, pageTwo) {
|
||
// 取二级分类
|
||
let urlStr = app.getNetAddresss("plugin.debt-shop.frontend.goods.goodsTypeList");
|
||
app._getNetWork({
|
||
url: urlStr,
|
||
data: {
|
||
paginate: 100,
|
||
parent_id: child,
|
||
page: this.data.twoPage,
|
||
get_child: 'get_child',
|
||
},
|
||
success: (resdata) => {
|
||
wx.hideLoading({})
|
||
var res = resdata.data;
|
||
if (res.result == 1) {
|
||
if (loadMore) {
|
||
// 加载更多
|
||
// console.log('加载更多', res.data);
|
||
// console.log(this.data.current_page_two,this.data.last_page_two)
|
||
// this.getClassThr(child, res.data.category_2.data[this.data.twoClass].level, true, pageTwo);
|
||
} else {
|
||
// 初始进入取二级分类只开了二级分类
|
||
if(this.data.cat_level == 2){
|
||
this.setData({
|
||
categoryInfo_two :res.data.list.data
|
||
})
|
||
}else{
|
||
this.setData({
|
||
categoryInfo_two :res.data.list.data
|
||
})
|
||
}
|
||
// let arr = res.data.list.data;
|
||
// let _two = []
|
||
// arr.forEach(element => {
|
||
// if (element.id == child) {
|
||
// _two = element.has_many_children
|
||
// }
|
||
// });
|
||
// this.setData({
|
||
// categoryInfo_two: _two,
|
||
// current_page_two: res.data.list.current_page,
|
||
// last_page_two: res.data.list.last_page
|
||
// });
|
||
// wx.hideLoading({
|
||
// success: (res) => { },
|
||
// });
|
||
// if (this.data.cat_level == '3') {
|
||
// // 开启了三级分类
|
||
// console.log(this.data.categoryInfo_two,this.data.twoClass)
|
||
// if (res.data.list.data[this.data.firstClass].has_many_children.length > 0 && this.data.categoryInfo_two.length > 0 ) {
|
||
// this.getClassThr(this.data.categoryInfo_two[this.data.twoClass].id);
|
||
// } else {
|
||
// console.log('没有二级')
|
||
// }
|
||
// }
|
||
}
|
||
|
||
} else {
|
||
wx.showToast({
|
||
title: res.msg,
|
||
});
|
||
wx.hideLoading({
|
||
success: (res) => { },
|
||
});
|
||
}
|
||
},
|
||
fail: (err) => {
|
||
wx.hideLoading({
|
||
success: (res) => { },
|
||
});
|
||
}
|
||
});
|
||
},
|
||
getClassThr(child, leve, loadMore = false, pageTwo = null) {
|
||
if (loadMore && pageTwo) {
|
||
this.setData({
|
||
twoPage: pageTwo
|
||
});
|
||
}
|
||
// 取三级分类
|
||
let urlStr = app.getNetAddresss("plugin.debt-shop.frontend.goods.goodsTypeList");
|
||
app._getNetWork({
|
||
url: urlStr,
|
||
data: {
|
||
paginate: 15,
|
||
parent_id: child,
|
||
page: this.data.twoPage,
|
||
},
|
||
success: (resdata) => {
|
||
var res = resdata.data;
|
||
wx.hideLoading({
|
||
success: (res) => { },
|
||
});
|
||
if (res.result == 1) {
|
||
if (loadMore) {
|
||
console.log('加载更多取二级和三级', res);
|
||
this.setData({
|
||
categoryInfo_two: this.data.categoryInfo_two.concat(res.data.category_2.data),
|
||
current_page_two: res.data.category_2.current_page,
|
||
last_page_two: res.data.category_2.last_page
|
||
});
|
||
return;
|
||
}
|
||
console.log('取三级category_2里面新增category_3', res.data.list.data);
|
||
this.data.categoryInfo_two.forEach(element => {
|
||
console.log(element.id == child)
|
||
if (element.id == child) {
|
||
element.has_many_children = res.data.list.data
|
||
}
|
||
});
|
||
this.setData({
|
||
categoryInfo_two: this.data.categoryInfo_two
|
||
})
|
||
} else {
|
||
wx.hideLoading({
|
||
success: (res) => { },
|
||
});
|
||
wx.showToast({
|
||
title: res.msg,
|
||
});
|
||
}
|
||
|
||
},
|
||
fail: (err) => {
|
||
wx.hideLoading({
|
||
success: (res) => { },
|
||
});
|
||
}
|
||
});
|
||
},
|
||
getMoreCategoryNew(e) {
|
||
if (this.data.current_page_first >= this.data.last_page_first) {
|
||
console.log('没有更多一级分类');
|
||
return;
|
||
} else {
|
||
this.setData({
|
||
onePage: this.data.onePage + 1
|
||
});
|
||
}
|
||
this.getClass(true);
|
||
},
|
||
getMoreCategoryNew_two(e) {
|
||
if (this.data.current_page_two >= this.data.last_page_two) {
|
||
return;
|
||
} else {
|
||
let loadPage_two = this.data.twoPage + 1;
|
||
this.getClassTwo(this.data.categoryInfo[this.data.firstClass].id, true, loadPage_two);
|
||
}
|
||
}
|
||
}
|
||
}); |