| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213 | const _Http = getApp().globalData.http;Page({  data: {    loading: true,    params: {}, //请求体    result: [], //返回结果    radio: false, //是否为单选    idname: "contactsid", //idkey    showName: "name",    selected: 0,  },  onLoad(options) {    if (options.item) {      let item = JSON.parse(options.item);      this.setData({        item,        params: item.params      });    }    if (options.params) {      let params = JSON.parse(options.params);      this.setData({        params,        sys_enterpriseid: params.content.sys_enterpriseid      });    }    this.setData({      radio: options.radio ? true : false,      idname: options.idname || this.data.idname,      showName: options.showName || this.data.showName,    });    getApp().globalData.Language.getLanguagePackage(this, 'E-订单');    this.getList()  },  getList(init = false) {    //init 用于初始化分页    if (init.detail != undefined) init = init.detail;    let params = this.data.params;    if (init) params.content.pageNumber = 1    if (params.content.pageNumber > params.content.pageTotal) return;    _Http.basic(params).then(res => {      console.log("选择经销商列表", res)      this.selectComponent('#ListBox').RefreshToComplete();      if (res.code != '1') return wx.showToast({        title: res.msg,        icon: "none"      })      let list = res.pageNumber == 1 ? res.data : this.data.list.concat(res.data),        selected = "";      try {        selected = list.find(v => v.isdefault).contactsid      } catch (error) {      }      this.setData({        'params.content.pageNumber': res.pageNumber + 1,        'params.content.pageTotal': res.pageTotal,        'params.content.total': res.total,        selected: selected,        list,        loading: false      })    })  },  // 修改默认  radioChange({    detail  }) {    let list = this.data.list,      data = list.find(v => v.contactsid == detail)    if (data.isdefault == 1) return;    data.isdefault = 1;    _Http.basic({      "id": "20221009155703",      "content": data    }, false).then(res => {      console.log(res)      if (res.code != '1') return wx.showToast({        title: res.data,        icon: "none"      });      this.setData({        list      })    })  }, //处理操作  /* 选中 */  changeResult(e) {    let {      id    } = e.currentTarget.dataset, result = this.data.result;    if (this.data.radio) {      result = [id];    } else {      result.some(v => v == id) ? result = result.filter(v => v != id) : result.push(id)    }    this.setData({      result    });    if (this.data.radio) this.submit();  },  /* 提交 */  submit() {    let result = this.data.result,      obj = this.data.radio ? {        id: result,        item: this.data.list.find(value => value[this.data.idname] == result),        value: [this.data.list.find(value => value[this.data.idname] == result)[this.data.showName], result]      } : {        result,        list: result.map(v => this.data.list.find(value => value[this.data.idname] == v)),        value: [result.map(v => {          let data = this.data.list.find(value => value[this.data.idname] == v);          return data ? data[this.data.showName] : ""        }), result]      }    getApp().globalData.handleSelect && getApp().globalData.handleSelect(obj)  },  handleItem(e) {    const {      name,      item    } = e.target.dataset;    if (name == 'edit') {      wx.navigateTo({        url: '/select/address/addAndEdit?sys_enterpriseid=' + this.data.sys_enterpriseid + "&data=" + JSON.stringify(item),      })    } else {      wx.showModal({        cancelText: getApp().globalData.Language.getMapText('取消'),        confirmText: getApp().globalData.Language.getMapText('确定'),        title: getApp().globalData.Language.getMapText('提示'),        content: getApp().globalData.Language.getMapText('是否确定删除') + `“${item.name}”`,        complete: (res) => {          if (res.confirm) _Http.basic({            "id": "20221009155903",            "content": {              "contactsids": [item.contactsid]            },          }).then(res => {            console.log("删除明细", res)            wx.showToast({              title: res.code == '1' ? getApp().globalData.Language.getMapText('删除成功') : res.msg,              icon: "none"            });            this.setData({              "params.content.total": this.data.params.content.total - 1,              list: this.data.list.filter(v => v.contactsid != item.contactsid)            })          })        }      })    }  },  add() {    wx.navigateTo({      url: '/select/address/addAndEdit?sys_enterpriseid=' + this.data.sys_enterpriseid,    })  },  /* 开始搜索 */  startSearch({    detail  }) {    let condition = this.data.content ? this.data.content.where.condition : this.data.params.content.where.condition;    if (detail == condition) return;    this.setData({      'content.where.condition': detail,      'params.content.where.condition': detail    });    this.getList(true);  },  onShow() {    let params = JSON.parse(JSON.stringify(this.data.params));    params.content.pageSize = params.content.pageSize * (params.content.pageNumber - 1);    params.content.pageNumber = 1;    _Http.basic(params).then(res => {      this.selectComponent('#ListBox').RefreshToComplete();      if (res.code != '1') return;      let list = res.data,        selected = "";      try {        selected = list.find(v => v.isdefault).contactsid      } catch (error) {      }      this.setData({        'params.content.total': res.total,        selected: selected,        list      })    })  },  /* 取消搜索 */  onClear() {    this.setData({      'content.where.condition': "",      'params.content.where.condition': ""    });    this.getList(true);  },  onReady() {    this.selectComponent("#ListBox").setHeight(".total", this);  },  onUnload() {    //回收数据    getApp().globalData.handleSelect = null;  }})
 |