| 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}) | 
|     }, | 
|   } | 
| }) |