seller-editor.js 2.6 KB
// pages/manager-invitation/editor.js
import util from '../../../utils/util';
import App from '../../../utils/api';
const {regeneratorRuntime} = global
Page({

  /**
   * 页面的初始数据
   */
  data: {
    hasSubmit:false,
    form:{
      id:'',
      name:'',
      address:'',
      lat:'',
      long:'',
      is_default:'',
    },
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    if(options.seller){
      this.setData({
        form:JSON.parse(options.seller),
      })
    }

  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

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

  },

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

  },

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

  },

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

  },

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

  },
  checkHasSubmit(){
    let form=this.data.form;
    let flag=false;
    if(
      form.name
      && form.address
      && form.lat>0
    ){
      flag=true;
    }
    this.setData({
      hasSubmit:flag
    })
    return flag;
  },
  input(e){
    console.log(e);
    let key=util.attr(e,'key');
    if(key=='address' && !(this.data.form.lat>0)){
      return this.onChangeAddress()
    }
    let val=util.val(e);
    if(typeof val=='String'){
      val=val.trim();
    }
    let form=this.data.form;
    form[key]=val;
    this.setData({
      form:form,
    })
    this.checkHasSubmit()
  },
  submit(){
    if(!this.checkHasSubmit()){
      let msg='请完善信息';
      if(this.data.form.lat<1){
        msg='请标注店铺位置'
      }
      return util.toast(msg,'none')
    }
    let param={
      openid:getApp().openid,
      sid:this.data.form.id,
      sname:this.data.form.name,
      address:this.data.form.address,
      lat:this.data.form.lat,
      long:this.data.form.long,
      is_default:(this.data.form.is_default==true || this.data.form.is_default==1)?1:0,
    }
    App.Invitation.SetSellerInfo(param).then(res=>{
      wx.navigateBack();
    })
  },
  onChangeAddress(){
    wx.chooseLocation({
      success: (res)=> {
        console.log(res);
        this.setData({
          [`form.lat`]:res.latitude,
          [`form.long`]:res.longitude,
          [`form.address`]:res.name,
        })
        this.checkHasSubmit()
      },
      fail: function (err) {
        console.log(err)
      }
    });
  },
})