import { getCataLogTagList, getZhongTaiWholecasePage, actionDo } from '../../api/index'
|
let touchDot = 0
|
Component({
|
/**
|
* 组件的属性列表
|
*/
|
properties: {
|
menuButtonInfo: Object
|
},
|
data: {
|
// 动画
|
showTouch: true,
|
animationData: {},
|
|
activeIndex: -1,
|
activeParam: [],
|
selParam: '',
|
tagCodes: [],
|
|
isLoading:false,
|
cateList: [],
|
dataList: [],
|
total: 0,
|
pageNum: 1,
|
pageSize: 10,
|
query: '',
|
sortType: '',
|
catalogCode: 'whole_case'
|
},
|
attached() {
|
this.getCatelist()
|
this.getList()
|
this.animation = wx.createAnimation({
|
duration: 600,
|
timingFunction: 'ease',
|
});
|
},
|
methods: {
|
bindscrolltoupper() {
|
this.setData({ showTouch: true })
|
this.fadeIn();
|
},
|
touchstart(e){
|
touchDot = e.detail.scrollTop;
|
},
|
touchmove(e) {
|
var touchMove = e.detail.scrollTop;
|
if(touchMove - touchDot > 24){
|
touchDot = touchMove
|
this.fadeOut();
|
}
|
if(touchDot - touchMove > 24){
|
touchDot = touchMove
|
setTimeout(() => {
|
this.setData({ showTouch: true })
|
this.fadeIn();
|
}, 200)
|
}
|
},
|
fadeIn: function () {
|
this.animation.opacity(1).step();
|
this.setData({
|
animationData: this.animation.export()
|
});
|
},
|
fadeOut: function () {
|
this.animation.opacity(0).step();
|
this.setData({
|
animationData: this.animation.export()
|
});
|
setTimeout(() => {
|
this.setData({ showTouch: false });
|
}, 200); // 动画持续时间
|
},
|
refreshCount(){
|
let temData = wx.getStorageSync('conentCountTemp')
|
if(temData && this.data.dataList){
|
var dataList =this.data.dataList;
|
dataList.forEach(item =>{
|
if(item.id+'' == temData.id+'' ){
|
item.viewCount = (item.viewCount ||0)+1;
|
if( item.isCollection != temData.isCollection){
|
if(item.isCollection){
|
item.collectCount = (item.collectCount || 0)-1
|
item.collectCount = item.collectCount >=0? item.collectCount :0;
|
} else{
|
item.collectCount = (item.collectCount || 0)+1
|
}
|
item.isCollection = temData.isCollection
|
}
|
}
|
})
|
this.setData({dataList:dataList})
|
wx.setStorageSync('conentCountTemp',null)
|
}
|
},
|
getCatelist(){
|
const { catalogCode } = this.data
|
getCataLogTagList({
|
catalogCode
|
}).then(res => {
|
if(res.data && res.data.length > 0){
|
this.setData({
|
cateList: res.data
|
})
|
}
|
})
|
},
|
getList() {
|
if(this.data.isLoading){
|
return
|
}
|
this.setData({isLoading:true})
|
const { sortType, query, tagCodes, pageNum, pageSize,catalogCode } = this.data
|
getZhongTaiWholecasePage({
|
catalogCode,pageNum,pageSize,tagCodes, sortType,query
|
}).then(res => {
|
if(res.data && res.data.records){
|
this.setData({
|
total: res.data.total,
|
dataList: [...this.data.dataList, ...res.data.records],
|
})
|
}
|
}).finally(()=>{
|
this.setData({isLoading:false})
|
})
|
},
|
scrolltolower() {
|
console.log('触底事件');
|
const { total, dataList, pageNum } = this.data
|
if(total > dataList.length){
|
this.setData({ pageNum: pageNum + 1 })
|
this.getList()
|
}else{
|
wx.showToast({
|
title: '暂无更多数据',
|
icon: 'none'
|
})
|
}
|
},
|
statusChange(e) {
|
const sortType = e.currentTarget.dataset.status
|
this.setData({sortType})
|
this.setData({ pageNum: 1,dataList: [],total: 0})
|
this.getList()
|
},
|
handleAction(e){
|
const actionType = e.currentTarget.dataset.code
|
const id = e.currentTarget.dataset.id
|
actionDo({
|
actionType,
|
id
|
}).then(res => {
|
this.getList()
|
})
|
},
|
handleDetail(e) {
|
const id = e.currentTarget.dataset.id
|
wx.navigateTo({
|
url: '/pages/detailDis/case?id=' + id,
|
})
|
},
|
tagClick(e) {
|
if(this.data.isLoading){
|
return
|
}
|
const code = e.currentTarget.dataset.code
|
const paramIndex = e.currentTarget.dataset.index
|
const { cateList, tagCodes, activeParam, activeIndex } = this.data
|
const index = tagCodes.indexOf(code)
|
if( cateList[activeIndex].tempParamIndex==null || cateList[activeIndex].tempParamIndex != paramIndex){
|
cateList[activeIndex].tempParamIndex = paramIndex
|
cateList[activeIndex].tempParamName = activeParam[paramIndex].labelValueName
|
cateList[activeIndex].tempParamCode = code
|
} else {
|
cateList[activeIndex].tempParamIndex = -1
|
cateList[activeIndex].tempParamName = null
|
cateList[activeIndex].tempParamCode = null
|
}
|
this.setData({cateList })
|
console.log('tagCodes', tagCodes);
|
},
|
cancelParam() {
|
const { cateList } = this.data
|
cateList.forEach(item => {
|
item.tempParamIndex =item.paramIndex
|
item.tempParamName =item.paramName
|
item.tempParamCode =item.paramCode
|
})
|
this.setData({ activeParam: [],cateList , activeIndex: -1 })
|
},
|
bindblur() {
|
this.setData({ pageNum: 1,dataList: [],total: 0})
|
this.getList()
|
},
|
subParam() {
|
this.setData({ activeParam: [] })
|
const { cateList } = this.data
|
var codes = []
|
cateList.forEach(item => {
|
item.paramIndex =item.tempParamIndex
|
item.paramName =item.tempParamName
|
item.paramCode =item.tempParamCode
|
if(item.paramIndex >-1 && item.paramCode){
|
codes.push(item.paramCode)
|
}
|
})
|
this.setData({tagCodes:codes, pageNum: 1, activeIndex: -1, dataList: [], total: 0 })
|
this.getList()
|
},
|
changeShowParams(e){
|
const { cateList } = this.data
|
const activeIndex = e.currentTarget.dataset.index
|
if(activeIndex === this.data.activeIndex){
|
this.setData({ activeIndex: -1, activeParam: [], selParam: '' })
|
}else{
|
this.setData({
|
activeIndex,
|
activeParam: cateList[activeIndex].valueVos
|
})
|
}
|
|
// this.setData({showTwo: false})
|
},
|
changeTwo(){
|
const showTwo = !this.data.showTwo
|
this.setData({showTwo})
|
this.setData({showOne: false})
|
},
|
}
|
})
|