/*******************************************************************************
 * Copyright(c) 2022 dongke All rights reserved. / Confidential
 * 类的信息：
 *		1.程序名称：
 *		2.客户资料列表
 * 编辑履历：
 *		作者				日期					版本				修改内容
 *		王英杰		        2022-0-12	            1.00		   	    
 *******************************************************************************/
const Constants = require('@/utils/Constants.js');
const util = require('@/utils/util.js')
const mixins = require('@/mixins/index.js')
const app = getApp()
Page({
  mixins: [mixins],

  /**
   * 页面的初始数据
   */
  data: {
    pageFlag:false,
    btnFormData:'{\"flag\":true}',
    buttonList: [{
      name: 'merge',
      title: mixins.$t("add"), //'保存'
  }],
  contentList: [{
      code: 'flag',
      title: mixins.$t("enable"), 
      type: 'checkbox'
  },  ],
  checked:true, //停用 启用 标识
    // 路由
    routeObjName: 'moneyAccount',
  },
   /**
   * @desc : 设置查询参数
   * @date : 2024/2/1 15:49
   * @author : 于继渤
   */
  setSearchParams(params) {
    if(this.data.checked){ //启用标识开启  
      params.flgValid = true
    }else{
      params.flgValid = false
    }
    return params;
  },
  /**
   * @desc : 查询
   * @date : 2024/2/1 15:49
   * @author : 王英杰
   */
  getData(params) {
    return this.excute(this.data.service, 'wx_list_by', params);
  },
  /**
   * @desc :   处理接口返回数据
   * @date : 2024/2/1 15:49
   * @author : 王英杰
   */
  handleSearchData(tableData) {
    let list = []
    list = util.convertToChildren(tableData, 'macType', 'macId') 
    list.forEach(element => {
      let balance = 0
      if (element.children) {
        element.children.forEach(subitem => {
          balance = subitem.balance + balance
        });
        element.balance = balance
      }
    });
    this.setData({
      tableData: list
    })
  },
  /**
   * @desc :   收起展开实践
   * @date : 2024/2/1 15:49
   * @author : 王英杰
   */
  collapseAndExpand(e) {
    let index = e.currentTarget.dataset.index
    let tableData = this.data.tableData
    let item = tableData[index]
    item.checked = !item.checked
    tableData[index] = item
    this.setData({
      tableData
    })
  },

     /**
   * @desc : 底部 新建按钮旁 启用回调事件
   * @date : 2024/2/1 15:49
   * @author : 王英杰
   */
  cke_change(){
    let btnFormData = JSON.parse(this.data.btnFormData)
    this.setData({
      checked:btnFormData.flag 
    })
    this.searchData()
  },
  
  /**
   * @desc : 详细页面 （编辑）
   * @date : 2024/2/1 15:49
   * @author : 王英杰
   */
  toDetail(e) { 
    let macId = e.currentTarget.dataset.item.macId
    wx.navigateTo({
      url: this.data.route.add.url,
      events: {
        // 回调后，在这里给页面赋值
        bandData: function (e) {
          console.log("toDetail", e);
        }
      },
      success: function (res) {
        // 通过eventChannel向被打开页面传送数据 TODO 测试例子url是写死的，实际中，需要从route中读取
        res.eventChannel.emit('params', {
          id: macId,
          formMode: Constants.formMode.edit
        })
      }
    })
  },
  /**
     * @desc   : 侧滑点击事件
     * @author : 王英杰
     * @date   : 2024/1/26 11:46
     */
    onCloseSwipe(e){
     let item = e.currentTarget.dataset.item
     let param = [item.macId]
    let excute = this.excute(this.data.service,this.data.service.enableBatch,param);
    excute.then(res => {
      if (res.data.code === Constants.SUCESS_CODE) {
        this.searchData() 
      }
    })
    },
})