| | |
| | | import { getCatalogList,getCataLogTagList, getZhongTaiProductPage } from '../../api/index' |
| | | import { |
| | | getCatalogList, |
| | | getCataLogTagList, |
| | | getZhongTaiProductPage |
| | | } from '../../api/index' |
| | | let touchDot = 0 |
| | | Component({ |
| | | /** |
| | |
| | | cateList: [], |
| | | secondCateList: [], |
| | | datalist: [], |
| | | isLoading:false, |
| | | isLoading: false, |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | total: 0, |
| | |
| | | sortType: '', |
| | | catalogCode: "" |
| | | }, |
| | | attached() { |
| | | attached() { |
| | | this.getCatelist() |
| | | var app = getApp() |
| | | console.log('globalData', app.globalData); |
| | | if(app.globalData.catalogCode){ |
| | | this.setData({ catalogCode: app.globalData.catalogCode }) |
| | | if (app.globalData.catalogCode) { |
| | | this.setData({ |
| | | catalogCode: app.globalData.catalogCode |
| | | }) |
| | | setTimeout(() => { |
| | | console.log('catalogCode', this.data.catalogCode); |
| | | getApp().globalData.catalogCode = '' |
| | |
| | | }, |
| | | methods: { |
| | | bindscrolltoupper() { |
| | | this.setData({ showTouch: true }) |
| | | this.setData({ |
| | | showTouch: true |
| | | }) |
| | | this.fadeIn(); |
| | | }, |
| | | touchstart(e){ |
| | | touchstart(e) { |
| | | touchDot = e.detail.scrollTop; |
| | | }, |
| | | touchmove(e) { |
| | | var touchMove = e.detail.scrollTop; |
| | | if(touchMove - touchDot > 24){ |
| | | if (touchMove - touchDot > 24) { |
| | | touchDot = touchMove |
| | | this.fadeOut(); |
| | | } |
| | | if(touchDot - touchMove > 24){ |
| | | if (touchDot - touchMove > 24) { |
| | | touchDot = touchMove |
| | | setTimeout(() => { |
| | | this.setData({ showTouch: true }) |
| | | this.setData({ |
| | | showTouch: true |
| | | }) |
| | | this.fadeIn(); |
| | | }, 200) |
| | | } |
| | |
| | | animationData: this.animation.export() |
| | | }); |
| | | setTimeout(() => { |
| | | this.setData({ showTouch: false }); |
| | | 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) |
| | | 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(){ |
| | | getCatelist() { |
| | | getCatalogList({ |
| | | catalogCode: 'product_intro' |
| | | }).then(res => { |
| | | if(res.data && res.data.length > 0){ |
| | | if (res.data && res.data.length > 0) { |
| | | this.setData({ |
| | | catalogCode: this.data.catalogCode || res.data[0].code, |
| | | cateList: res.data |
| | |
| | | }, |
| | | bindblur() { |
| | | console.log('失去焦点'); |
| | | this.setData({ pageNum: 1,datalist: [],total: 0}) |
| | | this.setData({ |
| | | pageNum: 1, |
| | | datalist: [], |
| | | total: 0 |
| | | }) |
| | | this.getList() |
| | | }, |
| | | getList() { |
| | | const { catalogCode,tagCodes, pageNum, pageSize, sortType, query } = this.data |
| | | getList() { |
| | | const { |
| | | catalogCode, |
| | | tagCodes, |
| | | pageNum, |
| | | pageSize, |
| | | sortType, |
| | | query |
| | | } = this.data |
| | | getZhongTaiProductPage({ |
| | | catalogCode,pageNum,pageSize,sortType,query,tagCodes |
| | | catalogCode, |
| | | pageNum, |
| | | pageSize, |
| | | sortType, |
| | | query, |
| | | tagCodes |
| | | }).then(res => { |
| | | if(res.data && res.data.records){ |
| | | if (res.data && res.data.records) { |
| | | this.setData({ |
| | | datalist: [...this.data.datalist, ...res.data.records], |
| | | total: res.data.total |
| | | }) |
| | | } |
| | | }).finally(()=>{ |
| | | this.setData({isLoading:false}) |
| | | }).finally(() => { |
| | | this.setData({ |
| | | isLoading: false |
| | | }) |
| | | }) |
| | | }, |
| | | scrolltolower() { |
| | | console.log('触底事件'); |
| | | const { total, datalist, pageNum } = this.data |
| | | if(total > datalist.length){ |
| | | this.setData({ pageNum: pageNum + 1 }) |
| | | const { |
| | | total, |
| | | datalist, |
| | | pageNum |
| | | } = this.data |
| | | if (total > datalist.length) { |
| | | this.setData({ |
| | | pageNum: pageNum + 1 |
| | | }) |
| | | this.getList() |
| | | }else{ |
| | | } else { |
| | | wx.showToast({ |
| | | title: '暂无更多数据', |
| | | icon: 'none' |
| | |
| | | } |
| | | }, |
| | | cateClick(e) { |
| | | var {isLoading} = this.data |
| | | if(isLoading){ |
| | | var { |
| | | isLoading |
| | | } = this.data |
| | | if (isLoading) { |
| | | return |
| | | } |
| | | this.setData({isLoading:true}) |
| | | this.setData({ |
| | | isLoading: true |
| | | }) |
| | | const catalogCode = e.currentTarget.dataset.code |
| | | this.setData({ catalogCode, tagCodes: [] }) |
| | | this.setData({ pageNum: 1,datalist: [],total: 0}) |
| | | this.setData({ |
| | | catalogCode, |
| | | tagCodes: [] |
| | | }) |
| | | this.setData({ |
| | | pageNum: 1, |
| | | datalist: [], |
| | | total: 0 |
| | | }) |
| | | this.getTag() |
| | | this.getList() |
| | | }, |
| | | statusChange(e) { |
| | | const sortType = e.currentTarget.dataset.status |
| | | this.setData({sortType}) |
| | | this.setData({ pageNum: 1,datalist: [],total: 0}) |
| | | this.setData({ |
| | | sortType |
| | | }) |
| | | this.setData({ |
| | | pageNum: 1, |
| | | datalist: [], |
| | | total: 0 |
| | | }) |
| | | this.getList() |
| | | }, |
| | | handleDetail(e) { |
| | |
| | | tagClick(e) { |
| | | const code = e.currentTarget.dataset.code |
| | | const paramIndex = e.currentTarget.dataset.index |
| | | const { secondCateList, tagCodes, activeParam, activeIndex } = this.data |
| | | if( secondCateList[activeIndex].tempParamIndex==null || secondCateList[activeIndex].tempParamIndex != paramIndex){ |
| | | // 同param里code重复 |
| | | // if (activeParam && activeParam.length > 0) { |
| | | // activeParam.forEach(item => { |
| | | // const indexTemp = tagCodes.indexOf(item.labelValueCode) |
| | | // if (indexTemp > -1) { |
| | | // tagCodes.splice(indexTemp, 1) |
| | | // } |
| | | // }) |
| | | // } |
| | | //tagCodes.push(code) |
| | | secondCateList[activeIndex].tempParamIndex = paramIndex |
| | | secondCateList[activeIndex].tempParamCode = code |
| | | secondCateList[activeIndex].tempParamName = activeParam[paramIndex].labelValueName |
| | | const { |
| | | secondCateList, |
| | | tagCodes, |
| | | activeParam, |
| | | activeIndex |
| | | } = this.data |
| | | // 点击子标签 |
| | | console.log('openRelLabel', secondCateList[activeIndex].openRelLabel); |
| | | if (secondCateList[activeIndex].openRelLabel) { |
| | | if (secondCateList[activeIndex].tempParamRelIndex == null || secondCateList[activeIndex].tempParamRelIndex != paramIndex) { |
| | | secondCateList[activeIndex].tempParamRelIndex = paramIndex |
| | | secondCateList[activeIndex].tempParamRelCode = code |
| | | secondCateList[activeIndex].tempParamRelName = activeParam[paramIndex].labelValueName |
| | | } else { |
| | | secondCateList[activeIndex].tempParamRelIndex = -1 |
| | | secondCateList[activeIndex].tempParamRelCode = '' |
| | | secondCateList[activeIndex].tempParamRelName = '' |
| | | } |
| | | console.log('secondCateList', secondCateList); |
| | | } else { |
| | | // tagCodes.splice(index, 1) |
| | | secondCateList[activeIndex].tempParamIndex = -1 |
| | | secondCateList[activeIndex].tempParamCode = '' |
| | | secondCateList[activeIndex].tempParamName = '' |
| | | // 点击父标签 |
| | | const relLabel = secondCateList[activeIndex].valueVos[paramIndex].relLabel || [] |
| | | if (relLabel.length > 0 && relLabel[0].labelCode) { |
| | | secondCateList[activeIndex].relLabel = relLabel[0] |
| | | }else{ |
| | | secondCateList[activeIndex].relLabel = null |
| | | } |
| | | secondCateList[activeIndex].tempParamRelIndex = -1 |
| | | secondCateList[activeIndex].tempParamRelCode = '' |
| | | secondCateList[activeIndex].tempParamRelName = '' |
| | | if (secondCateList[activeIndex].tempParamIndex == null || secondCateList[activeIndex].tempParamIndex != paramIndex) { |
| | | secondCateList[activeIndex].tempParamIndex = paramIndex |
| | | secondCateList[activeIndex].tempParamCode = code |
| | | secondCateList[activeIndex].tempParamName = activeParam[paramIndex].labelValueName |
| | | } else { |
| | | secondCateList[activeIndex].tempParamIndex = -1 |
| | | secondCateList[activeIndex].tempParamCode = '' |
| | | secondCateList[activeIndex].tempParamName = '' |
| | | } |
| | | } |
| | | this.setData({ tagCodes, secondCateList }) |
| | | this.setData({ |
| | | tagCodes, |
| | | secondCateList |
| | | }) |
| | | }, |
| | | changeShowParams(e){ |
| | | const { secondCateList } = this.data |
| | | changeShowParams(e) { |
| | | const { |
| | | secondCateList, |
| | | activeParam |
| | | } = this.data |
| | | const activeIndex = e.currentTarget.dataset.index |
| | | console.log('activeIndex', activeIndex); |
| | | console.log('activeIndex', this.data.activeIndex); |
| | | console.log('secondCateList', secondCateList); |
| | | if(activeIndex === this.data.activeIndex){ |
| | | this.setData({ activeIndex: -1, activeParam: [] }) |
| | | }else{ |
| | | this.setData({ |
| | | const type = e.currentTarget.dataset.type || '' |
| | | // console.log('activeIndex', activeIndex); |
| | | // 针对有子集的label |
| | | if (type && type == 'child') { |
| | | if (secondCateList[activeIndex].openRelLabel) { |
| | | secondCateList[activeIndex].openRelLabel = false |
| | | this.setData({ |
| | | activeIndex, |
| | | activeParam: [], |
| | | secondCateList |
| | | }) |
| | | } else { |
| | | secondCateList[activeIndex].openRelLabel = true |
| | | this.setData({ |
| | | activeParam: secondCateList[activeIndex].relLabel.valueVos, |
| | | secondCateList, |
| | | activeIndex |
| | | }) |
| | | } |
| | | return |
| | | } |
| | | // 非子集的label |
| | | secondCateList[activeIndex].openRelLabel = false |
| | | this.setData({ secondCateList }) |
| | | if (activeIndex === this.data.activeIndex && activeParam.length > 0) { |
| | | this.setData({ |
| | | activeIndex: -1, |
| | | activeParam: [] |
| | | }) |
| | | } else { |
| | | this.setData({ |
| | | activeIndex, |
| | | activeParam: secondCateList[activeIndex].valueVos |
| | | }) |
| | | } |
| | | console.log('activeParam', this.data.activeParam); |
| | | // this.setData({showTwo: false}) |
| | | }, |
| | | cancelParam() { |
| | | const { secondCateList } = this.data |
| | | secondCateList.forEach(item => { |
| | | const { |
| | | secondCateList |
| | | } = this.data |
| | | secondCateList.forEach(item => { |
| | | item.tempParamIndex = item.paramIndex |
| | | item.tempParamName = item.paramName |
| | | item.tempParamCode = item.paramCode |
| | | item.tempParamName = item.paramName |
| | | item.tempParamCode = item.paramCode |
| | | item.relLabel = null |
| | | item.openRelLabel = false |
| | | item.tempParamRelIndex = null |
| | | item.tempParamRelCode = null |
| | | item.tempParamRelName = null |
| | | }) |
| | | // this.setData({ tagCodes: [], activeParam: [], secondCateList, activeIndex: -1 }) |
| | | this.setData({ activeParam: [],activeIndex: -1 ,secondCateList}) |
| | | this.setData({ |
| | | activeParam: [], |
| | | activeIndex: -1, |
| | | secondCateList |
| | | }) |
| | | }, |
| | | subParam() { |
| | | const { secondCateList } = this.data |
| | | const { |
| | | secondCateList |
| | | } = this.data |
| | | var codes = [] |
| | | secondCateList.forEach(item => { |
| | | item.paramIndex = item.tempParamIndex |
| | | item.paramName = item.tempParamName |
| | | item.paramIndex = item.tempParamIndex |
| | | item.paramName = item.tempParamName |
| | | item.paramCode = item.tempParamCode |
| | | if( item.paramIndex>-1 && item.tempParamCode){ |
| | | codes.push( item.tempParamCode) |
| | | } |
| | | }) |
| | | this.setData({tagCodes:codes}) |
| | | this.setData({ pageNum: 1, activeParam: [] ,activeIndex: -1, datalist: [], total: 0 }) |
| | | item.openRelLabel = false |
| | | if(item.tempParamRelIndex > -1 && item.tempParamRelCode){ |
| | | return codes.push(item.tempParamRelCode) |
| | | } |
| | | if (item.paramIndex > -1 && item.tempParamCode) { |
| | | codes.push(item.paramCode) |
| | | } |
| | | }) |
| | | this.setData({ |
| | | tagCodes: codes |
| | | }) |
| | | this.setData({ |
| | | pageNum: 1, |
| | | activeParam: [], |
| | | activeIndex: -1, |
| | | datalist: [], |
| | | total: 0 |
| | | }) |
| | | this.getList() |
| | | }, |
| | | } |
| | | }) |
| | | }) |