|  |  | 
 |  |  | // components/disCase/index.js | 
 |  |  | import { getCataLogTagList, getZhongTaiRealcasePage, actionDo } from '../../api/index' | 
 |  |  | Component({ | 
 |  |  |   /** | 
 |  |  |    * 组件的属性列表 | 
 |  |  |    */ | 
 |  |  |   properties: { | 
 |  |  |  | 
 |  |  |     menuButtonInfo: Object | 
 |  |  |   }, | 
 |  |  |   data: { | 
 |  |  |     showParams: false, | 
 |  |  |     activeStatus: '0' | 
 |  |  |     activeIndex: -1, | 
 |  |  |     activeParam: [], | 
 |  |  |     selParam: '', | 
 |  |  |     tagCodes: [], | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     cateList: [], | 
 |  |  |     dataList: [], | 
 |  |  |     pageNum: 1, | 
 |  |  |     pageSize: 10, | 
 |  |  |     query: '', | 
 |  |  |     sortType: 'NORMAL', | 
 |  |  |     catalogCode: 'real_case' | 
 |  |  |   }, | 
 |  |  |   attached() { | 
 |  |  |     this.getCatelist() | 
 |  |  |   }, | 
 |  |  |   methods: { | 
 |  |  |     handleDetail(e) { | 
 |  |  |       wx.navigateTo({ | 
 |  |  |         url: '/pages/detailDis/realpic', | 
 |  |  |     getCatelist(){ | 
 |  |  |       const { catalogCode } = this.data | 
 |  |  |       getCataLogTagList({ | 
 |  |  |         catalogCode | 
 |  |  |       }).then(res => { | 
 |  |  |         if(res.data && res.data.length > 0){ | 
 |  |  |           this.setData({ | 
 |  |  |             cateList: res.data | 
 |  |  |           }) | 
 |  |  |           setTimeout(() => { | 
 |  |  |             this.getList() | 
 |  |  |           }, 300) | 
 |  |  |         } | 
 |  |  |       }) | 
 |  |  |     }, | 
 |  |  |     changeShowParams(){ | 
 |  |  |       const showParams = !this.data.showParams | 
 |  |  |       this.setData({showParams}) | 
 |  |  |     getList() { | 
 |  |  |       const { sortType, query, tagCodes, pageNum, pageSize,catalogCode } = this.data | 
 |  |  |       getZhongTaiRealcasePage({ | 
 |  |  |         catalogCode,tagCodes,pageNum,pageSize, sortType,query | 
 |  |  |       }).then(res => { | 
 |  |  |         this.setData({ | 
 |  |  |           dataList: [...this.data.dataList, ...res.data.records], | 
 |  |  |           total: res.data.total, | 
 |  |  |         }) | 
 |  |  |       }) | 
 |  |  |     }, | 
 |  |  |     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' | 
 |  |  |         }) | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     videoClick(e) { | 
 |  |  |       const { videourl } = e.currentTarget.dataset | 
 |  |  |       wx.previewMedia({ | 
 |  |  |         sources: [{ url: videourl, type: 'video' }] | 
 |  |  |       }) | 
 |  |  |     }, | 
 |  |  |     priviewFull(e){ | 
 |  |  |       const item = e.currentTarget.dataset.item | 
 |  |  |       console.log('item', item); | 
 |  |  |       wx.navigateTo({ | 
 |  |  |         url: '/pages/webView/index?link=' + item.openContent, | 
 |  |  |         success: function(res) { | 
 |  |  |           // 通过eventChannel向被打开页面传送数据 | 
 |  |  |           res.eventChannel.emit('acceptDataFromOpenerPage', { link: item.openContent, title: item.title }) | 
 |  |  |         } | 
 |  |  |       }) | 
 |  |  |     }, | 
 |  |  |     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 item = e.currentTarget.dataset.item | 
 |  |  |       console.log('item', item); | 
 |  |  |       if(item.openType == 'video'){ | 
 |  |  |         wx.previewMedia({ | 
 |  |  |           sources: [{ url: item.openContent, type: 'video' }] | 
 |  |  |         }) | 
 |  |  |       } | 
 |  |  |       if(item.openType == 'link'){ | 
 |  |  |         wx.navigateTo({ | 
 |  |  |           url: '/pages/webView/index?link=' + item.openContent, | 
 |  |  |         }) | 
 |  |  |       } | 
 |  |  |       if(item.openType == 'page'){ | 
 |  |  |         wx.navigateTo({ | 
 |  |  |           url: '/pages/detailDis/realpic?id=' + item.id, | 
 |  |  |         }) | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     tagClick(e) { | 
 |  |  |       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(index === -1){ | 
 |  |  |         if(activeParam && activeParam.length > 0){ | 
 |  |  |           activeParam.forEach(item => { | 
 |  |  |             const indexTemp = tagCodes.indexOf(item.labelValueCode) | 
 |  |  |             if(indexTemp > -1){ | 
 |  |  |               tagCodes.splice(indexTemp, 1) | 
 |  |  |             } | 
 |  |  |           }) | 
 |  |  |         } | 
 |  |  |         tagCodes.push(code) | 
 |  |  |         cateList[activeIndex].paramIndex = paramIndex | 
 |  |  |         cateList[activeIndex].paramName = activeParam[paramIndex].labelValueName | 
 |  |  |       }else{ | 
 |  |  |         tagCodes.splice(index, 1) | 
 |  |  |         cateList[activeIndex].paramIndex = -1 | 
 |  |  |         cateList[activeIndex].paramName = '' | 
 |  |  |       } | 
 |  |  |       this.setData({ pageNum: 1,dataList: [],total: 0}) | 
 |  |  |       this.setData({ tagCodes, cateList }) | 
 |  |  |       console.log('tagCodes', tagCodes); | 
 |  |  |     }, | 
 |  |  |     cancelParam() { | 
 |  |  |       const { cateList } = this.data | 
 |  |  |       cateList.forEach(item => { | 
 |  |  |         item.paramIndex = -1 | 
 |  |  |         item.paramName = '' | 
 |  |  |       }) | 
 |  |  |       this.setData({ tagCodes: [],activeParam: [],cateList,activeIndex: -1 }) | 
 |  |  |     }, | 
 |  |  |     bindblur() { | 
 |  |  |       this.getList() | 
 |  |  |     }, | 
 |  |  |     subParam() { | 
 |  |  |       this.setData({ activeParam: [] }) | 
 |  |  |       this.setData({ pageNum: 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(){ | 
 |  |  | 
 |  |  |       this.setData({showTwo}) | 
 |  |  |       this.setData({showOne: false}) | 
 |  |  |     }, | 
 |  |  |     statusChange(e) { | 
 |  |  |       const activeStatus = e.currentTarget.dataset.status | 
 |  |  |       this.setData({activeStatus}) | 
 |  |  |     } | 
 |  |  |   } | 
 |  |  | }) |