myCollection.js 7.0 KB
// pages/my/myCollection/myCollection.js
const app=getApp();
Page({

  /**
   * 页面的初始数据
   */ 
  data: {
          choose: false,
          navId:-1,
          collectionList:null,
          parentId:0,
          manage:false,
          chooseAll:false,
          cid:0,
          id:0,
          arr:null
  },
//点击管理
manage_relative(){
        this.setData({
                manage:!this.data.manage
        })
},
//进入商品详情
get_goodsDetail(e){
        var id = e.currentTarget.dataset.id;
        wx.navigateTo({
                url: '../../index/goodsDetial/goodsDetial?id='+id,
        })
},  
//渲染收藏列表
fetchCollection(){
        let url ='/wxapp/user/favorite'
        let that=this
        app.post(url).then(r=>{
                if(r.code==1){
                        console.log(r);
                        var indexs=0;
                        r.data.forEach(function(ele,index){
                                indexs=index;
                                for(let i=0;i<ele.childList.length;i++){
                                        ele.childList[i].t=false;
                                }
                        })
                       if(r.data.length>0){
                               that.setData({
                                       collectionList: r.data,
                                       navId: r.data[0].id,
                                       parentId:r.data[0].id,
                                       arr: r.data[0].childList
                               })
                       }else{
                               that.setData({
                                       collectionList:[],
                               })
                       }
                }
        })
},
//获取导航下面渲染的数据
fetch(){
        let that=this
        let list=that.data.collectionList
        let navId=that.data.navId
        let arr=[]
        list.forEach(function(ele,index){
                if(navId==ele.id){
                        arr=ele.childList
                }
        })
        that.setData({
                arr:arr,
        })
},
//选择删除
choose_del(e){
        var that = this;
        var collectionList=that.data.collectionList
        var id=e.currentTarget.dataset.fid
        var iid = e.currentTarget.dataset.id
        var navId=that.data.navId
        var indexs = e.currentTarget.dataset.index
        var chooseAll = that.data.chooseAll
        let n=0
        collectionList.forEach(function (ele, index) {
                if(navId==ele.id){
                        for (let i = 0; i < ele.childList.length; i++) {
                                if (indexs == i) {
                                        ele.childList[indexs].t = !ele.childList[indexs].t
                                }
                                if (ele.childList[i].t) {
                                        n++
                                }
                        }
                }
                if(n==ele.childList.length){
                        chooseAll=true
                }else{
                        chooseAll=false
                }
        })

        that.setData({
                collectionList: collectionList,
                chooseAll:chooseAll
        })
        that.fetch()
},
//全选
chooseAllDel(){
        var that=this
        var id=that.data.navId
        var collectionList=that.data.collectionList
        var arr=[]
        let chooseAll=that.data.chooseAll
        chooseAll=!that.data.chooseAll
        that.setData({
                chooseAll:chooseAll
        })
        collectionList.forEach(function(ele,index){
                if(id==ele.id){
                        arr=ele.childList
                }
        })
        if (that.data.chooseAll){
                arr.forEach(function (ele, index) {
                        console.log(ele.t+"改之前")
                                ele.t =true
                        console.log(ele.t+"改之后")
                })
                console.log(arr)
        }else{
                arr.forEach(function (ele, index) {
                                ele.t = false
                })
        }
        that.setData({
                collectionList: collectionList
        })
        that.fetch();
},
//删除取消收藏
deleteGoods(){
        let url ='/wxapp/user/deleteFavorite'
        let that=this
        let list=that.data.collectionList
        let navId=that.data.navId
        let arr=[]
        let ids=[]
        list.forEach(function(ele,index){
                if(ele.id==navId){
                        arr=ele.childList
                }
        })
        arr.forEach(function(ele,index){
                if(ele.t){
                        ids.push(ele.favorite_id)
                } 
        })
        console.log(ids)
        if(ids.length==0){
                wx.showToast({
                        title: '请先选择要删除的商品',
                        icon:'none'
                })
                return
        }
        let str=ids.join(',')
        let params={
                id:ids
        }
        app.post(url,params).then(r=>{
                if(r.code==1){
                        wx.showToast({
                                title: '取消收藏成功',
                                icon:'none'
                        })
                        that.setData({
                                manage:false,
                                collectionList:list,
                                arr:[]
                        })
                        that.fetchCollection();
                }else{
                        wx.showToast({
                                title: '取消收藏失败',
                                icon:'none'
                        })
                }
        })
},

  //绑定id
  changeId(e){
          this.setData({
                  navId:e.currentTarget.dataset.id,
                  parentId: e.currentTarget.dataset.id
          });
          this.fetch()
  },
//选中商品
choose() {
        this.setData({
                goods:0
        });
},


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
          this.fetchCollection();
  },
  // 返回个人中心
  get_my(){
    wx.navigateBack({})
  },

  // 选中
  get_pitch(){
        this.setData({
                choose:!this.data.choose
        });
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
  
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
          wx.hideShareMenu({ })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
  
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
  
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
  
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
  
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
          
  }
})