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

  /**
   * 页面的初始数据
   */
  data: {
    hasSubmit:false,
    form:{
      name:'',
      addr:'',
      id:'',
      latitude:'',
      longitude:'',
    },
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.initData(options)
    this.setData({
      options:options,
    })
  },
  initData(options){
    if(options.rid){
      App.Invitation.Detail({id:options.rid}).then(res=>{
        this.setData({
          form:{
            sid:res.data.seller_name,
            name:res.data.seller_name,
            room:res.data.room_name,
            addr:res.data.seller_address,
            sid:res.data.sid,
            time:res.data.arrival_time,
            image:res.data.image_url,
            latitude:res.data.lat,
            longitude:res.data.long,
          },
          timeStr:util.unixtoTime(res.data.arrival_time,this.data.tpl.timeStr)
        })
      })
    }else{
      App.Invitation.GetSellerList({
        openid:getApp().openid
      }).then(res=>{
        if(res.data.length>0){
          let defi=0;
          for(let i=0;i<res.data.length;i++){
            if(res.data[i].is_default==1){
              defi=i;
              break;
            }
          }
          let sel=res.data[defi];
          this.setData({
            form:{
              sid:sel.id,
              name:sel.name,
              addr:sel.address,
              latitude:sel.lat,
              longitude:sel.long,
            }
          })
        }
      })
    }
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  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.addr
      && form.latitude>0
    ){
      flag=true;
    }
    this.setData({
      hasSubmit:flag
    })
    return flag;
  },
  input(e){
    let key=util.attr(e,'key');
    if(key=='addr' && !(this.data.form.latitude>0)){
      return this.onChangeAddress()
    }
    let val=util.val(e).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.latitude<1){
        msg='请标注店铺位置'
      }
      return util.toast(msg,'none')
    }
    let opt=this.data.options
    let param={
      openid:getApp().openid,
      sid:this.data.form.sid,
      sname:this.data.form.name,
      seller_address:this.data.form.addr,
      lat:this.data.form.latitude,
      long:this.data.form.longitude,
    }
  },
  onChangeAddress(){
    wx.chooseLocation({
      success: (res)=> {
        console.log(res);
        this.setData({
          [`form.latitude`]:res.latitude,
          [`form.longitude`]:res.longitude,
          [`form.addr`]:res.name,
        })
        this.checkHasSubmit()
      },
      fail: function (err) {
        console.log(err)
      }
    });
  },
})