| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643 | // pages/openAShop/openAShop.jsvar http = require('../../utils/http.js');var config = require("../../utils/config.js");const util = require('../../utils/util.js');var index = [18, 0, 0];var t = 0;var show = false;var moveY = 200;Page({  /**   * 页面的初始数据   */  data: {    logoImg: {},    idcardFrontImg: {},    idcardBackImg: {},    bussLicenImg: {},    value: [0, 0, 0],    provArray: [],    cityArray: [],    areaArray: [],    province: "",    city: "",    area: "",    provinceId: 0,    cityId: 0,    areaId: 0,    latitude: '', //经度    longitude: '', //纬度    mapAddress: '', //地图定位详细地址    mapAddrName: '', //地图上的地址名称    shopNameValue: '', //店铺名字    shopDescribeValue: '', //店铺描述    shopAddrValue: '', //详细地址    shopOwnerValue: '', //店主姓名    shopOwnerPhoneValue: '', //店主联系电话    auditRemarks: ""  },  /**   * 请求接口传数据   */  submitApply: function() {    if (this.data.shopNameValue.trim().length < 2 || this.data.shopNameValue.trim().length > 10) {      wx.showToast({        title: '请输入正确的店铺名称',        icon: "none"      })    } else if (this.data.shopDescribeValue.trim().length < 10 || this.data.shopDescribeValue.trim().length > 200) {      wx.showToast({        title: '请输入正确店铺描述',        icon: "none"      })    } else if (!this.data.logoImg.path) {      wx.showToast({        title: '请上传店铺LOGO',        icon: "none"      })    } else if (this.data.shopAddrValue.trim().length < 5) {      wx.showToast({        title: '请输入正确的详细地址:不得少于5字',        icon: "none"      })    } else if (this.data.latitude == '') {      wx.showToast({        title: '请选择地理位置',        icon: "none"      })    } else if (this.data.shopOwnerPhoneValue.trim().length < 7) {      wx.showToast({        title: '请输入正确的联系电话',        icon: "none"      })    } else if (!this.data.bussLicenImg.path) {      wx.showToast({        title: '请上传营业执照',        icon: "none"      })    } else if (!this.data.idcardFrontImg.path || !this.data.idcardBackImg.path) {      wx.showToast({        title: '请上传身份证正反两面',        icon: "none"      })    } else {      wx.showLoading();      var params = {        url: "/p/shop/apply",        method: "POST",        data: {          "area": this.data.area,          "areaId": this.data.areaId,          "businessLicense": this.data.bussLicenImg.path,          "city": this.data.city,          "cityId": this.data.cityId,          "identityCardFront": this.data.idcardFrontImg.path,          "identityCardLater": this.data.idcardBackImg.path,          "intro": this.data.shopDescribeValue.trim(),          "province": this.data.province,          "provinceId": this.data.provinceId,          "shopAddress": this.data.shopAddrValue,          "shopLogo": this.data.logoImg.path,          "shopName": this.data.shopNameValue.trim(),          "shopPhotos": "",          "tel": this.data.shopOwnerPhoneValue.trim(),          "shopLat": this.data.latitude,          "shopLng": this.data.longitude,        },        callBack: function(res) {          wx.hideLoading();          wx.showModal({            title: '提交成功,等待审核',            content: '',            showCancel: false,            success: function() {              wx.switchTab({                url: '/pages/user/user',              })            }          })        }      }      http.request(params);    }  },  /**   * 生命周期函数--监听页面加载   */  onLoad: function(options) {    if (options.shopAuditStatus == -1) {      wx.showModal({        title: '提示',        content: '您的开店申请审核未通过,请您修改申请信息后再次提交开店申请',        success: (res) => {          if (res.confirm) {            console.log('用户点击确定')            wx.showLoading();            var params = {              url: "/p/shop",              method: "GET",              data: {},              callBack: (res) => {                wx.hideLoading();                this.setData({                  logoImg: {                    url: res.shopLogo,                    path: res.shopLogo.indexOf(config.picDomain) > -1 ? res.shopLogo.replace(config.picDomain,'') : res.shopLogo                  },                  idcardFrontImg: {                    url: res.identityCardFront,                    path: res.identityCardFront.indexOf(config.picDomain) > -1 ? res.identityCardFront.replace(config.picDomain,'') : res.identityCardFront                  },                  idcardBackImg: {                    url: res.identityCardLater,                    path: res.identityCardLater.indexOf(config.picDomain) > -1 ? res.identityCardLater.replace(config.picDomain,'') : res.identityCardLater                  },                  bussLicenImg: {                    url: res.businessLicense,                    path: res.businessLicense.indexOf(config.picDomain) > -1 ? res.businessLicense.replace(config.picDomain,'') : res.businessLicense                  },                  province: res.province,                  city: res.city,                  area: res.area,                  provinceId: res.provinceId,                  cityId: res.cityId,                  areaId: res.areaId,                  latitude: res.shopLat,                  longitude: res.shopLng,                  shopNameValue: res.shopName, //店铺名字                  shopDescribeValue: res.intro, //店铺描述                  shopAddrValue: res.shopAddress, //详细地址                  shopOwnerPhoneValue: res.tel                });                this.initCityData(this.data.provinceId, this.data.cityId, this.data.areaId);                this.getAuditMsg();              }            }          } else if (res.cancel) {            console.log('用户点击取消')            wx.switchTab({              url: '/pages/user/user',            })          }          http.request(params);        }      })    } else {      this.initCityData(this.data.provinceId, this.data.cityId, this.data.areaId);    }  },  getAuditMsg() {    http.request({      url: "/p/shop/shopAudit",      method: "GET",      data: {},      callBack: (res) => {        this.setData({          auditRemarks: res.remarks        });      }    });  },  /**   * 获取经纬度   */  chooseLocation: function(e) {    var that = this    wx.chooseLocation({      success: function (res) {        console.log('succes1')        console.log(res)        that.setMapData(res)      },      fail: function () {        wx.getSetting({          success(res) {            if (!res.authSetting['scope.userLocation']) {              console.log("f1")              wx.authorize({                scope: 'scope.userLocation',                success() {                  wx.chooseLocation({                    success: function (res) {                      that.setMapData(res)                    },                  })                  console.log('success2')                },                fail() {                  wx.showToast({                    title: '请在「右上角」 - 「关于」 - 「右上角」 - 「设置」授予获取位置信息的权限',                    icon: 'none'                  })                }              })            }          }        })      }    })  },  setMapData(res) {    var latitude = res.latitude    var longitude = res.longitude    var address = res.address    var name = res.name    console.log("经度:" + latitude, "纬度:" + longitude, "详细地址:" + address)    this.setData({      latitude: latitude,      longitude: longitude,      mapAddress: address,      mapAddrName: name    })  },  /**   * 获取input数据   */  bindShopNameInt: function(e) {    this.setData({      shopNameValue: e.detail.value    })  },  bindShopDescribeInt: function(e) {    this.setData({      shopDescribeValue: e.detail.value    })  },  bindShopAddrInt: function(e) {    this.setData({      shopAddrValue: e.detail.value    })  },  bindShopOwnerInt: function(e) {    this.setData({      shopOwnerValue: e.detail.value    })  },  bindShopOwnerPhoneInt: function(e) {    this.setData({      shopOwnerPhoneValue: e.detail.value    })  },  /**   * 上传图片   */  getUploadImg: function(e) {    const type = e.target.dataset.type    console.log(type);    var ths = this;    wx.chooseImage({      count: 1, // 默认9      sizeType: ['compressed'],      sourceType: ['album', 'camera'],      success: function(res) {        // 图片的本地临时文件路径列表        var tempFilePaths = res.tempFilePaths;        wx.showLoading({          mask: true        })        var params = {          url: "/p/file/upload",          filePath: tempFilePaths[0],          name: 'file',          callBack: function(res2) {            wx.hideLoading();            var img = {};            img.path = JSON.parse(res2).filePath;            img.url = JSON.parse(res2).resourcesUrl + JSON.parse(res2).filePath;            if (type == 'bussLicenImg') {              ths.setData({                bussLicenImg: img              })            } else if (type == 'logoImg') {              ths.setData({                logoImg: img              })            } else if (type == 'idcardFrontImg') {              ths.setData({                idcardFrontImg: img              })            } else if (type == 'idcardBackImg') {              ths.setData({                idcardBackImg: img              })            }          }        };        http.upload(params);      }    })  },  /**   * 删除图片   */  removeImage: function(e) {    const type = e.target.dataset.type    if (type == 'logoImg') {      this.setData({        logoImg: {}      });    } else if (type == 'idcardFrontImg') {      this.setData({        idcardFrontImg: {}      });    } else if (type == 'idcardBackImg') {      this.setData({        idcardBackImg: {}      });    } else if (type == 'bussLicenImg') {      this.setData({        bussLicenImg: {}      });    }    console.log('删除图片')  },  /**   * 生命周期函数--监听页面初次渲染完成   */  onReady: function() {    // 底部弹框动画    this.animation = wx.createAnimation({      transformOrigin: "50% 50%",      duration: 0,      timingFunction: "ease",      delay: 0    })    this.animation.translateY(200 + 'vh').step();    this.setData({      animation: this.animation.export(),      show: show    })  },  /**   * 获取省市区   */  initCityData: function(provinceId, cityId, areaId) {    var ths = this;    wx.showLoading();    var params = {      url: "/p/area/listByPid",      method: "GET",      data: {        pid: 0      },      callBack: function(res) {        //console.log(res)        ths.setData({          provArray: res        });        if (provinceId) {          for (var index in res) {            if (res[index].areaId == provinceId) {              ths.setData({                value: [index, ths.data.value[1], ths.data.value[2]]              });            }          }        }        ths.getCityArray(provinceId ? provinceId : res[0].areaId, cityId, areaId);        wx.hideLoading();      }    }    http.request(params);  },  /**   * 滑动事件   */  bindChange: function(e) {    var ths = this;    var val = e.detail.value    //判断滑动的是第几个column    //若省份column做了滑动则定位到地级市和区县第一位    if (index[0] != val[0]) {      val[1] = 0;      val[2] = 0;      //更新数据      ths.getCityArray(this.data.provArray[val[0]].areaId); //获取地级市数据    } else { //若省份column未做滑动,地级市做了滑动则定位区县第一位      if (index[1] != val[1]) {        val[2] = 0;        //更新数据        ths.getAreaArray(this.data.cityArray[val[1]].areaId); //获取区县数据      } else {      }    }    index = val;    this.setData({      value: [val[0], val[1], val[2]],    })    ths.setData({      province: ths.data.provArray[ths.data.value[0]].areaName,      city: ths.data.cityArray[ths.data.value[1]].areaName,      area: ths.data.areaArray[ths.data.value[2]].areaName,      provinceId: ths.data.provArray[ths.data.value[0]].areaId,      cityId: ths.data.cityArray[ths.data.value[1]].areaId,      areaId: ths.data.areaArray[ths.data.value[2]].areaId    })  },  /**   * 根据省份ID获取 城市数据   */  getCityArray: function(provinceId, cityId, areaId) {    var ths = this;    var params = {      url: "/p/area/listByPid",      method: "GET",      data: {        pid: provinceId      },      callBack: function(res) {        //console.log(res)        ths.setData({          cityArray: res        });        if (cityId) {          for (var index in res) {            if (res[index].areaId == cityId) {              ths.setData({                value: [ths.data.value[0], index, ths.data.value[2]]              });            }          }        }        ths.getAreaArray(cityId ? cityId : res[0].areaId, areaId);        wx.hideLoading();      }    }    http.request(params);  },  /**   * 根据城市ID获取 区数据   */  getAreaArray: function(cityId, areaId) {    var ths = this;    var params = {      url: "/p/area/listByPid",      method: "GET",      data: {        pid: cityId      },      callBack: function(res) {        //console.log(res)        ths.setData({          areaArray: res        });        if (areaId) {          for (var _index in res) {            if (res[_index].areaId == areaId) {              ths.setData({                value: [ths.data.value[0], ths.data.value[1], _index]              });            }          }          index = ths.data.value;          ths.setData({            province: ths.data.province,            city: ths.data.city,            area: ths.data.area,            provinceId: ths.data.provinceId,            cityId: ths.data.cityId,            areaId: ths.data.areaId          })        } else {          ths.setData({            province: ths.data.provArray[ths.data.value[0]].areaName,            city: ths.data.cityArray[ths.data.value[1]].areaName,            area: ths.data.areaArray[ths.data.value[2]].areaName,            provinceId: ths.data.provArray[ths.data.value[0]].areaId,            cityId: ths.data.cityArray[ths.data.value[1]].areaId,            areaId: ths.data.areaArray[ths.data.value[2]].areaId          })        }        wx.hideLoading();      }    }    http.request(params);  },  /**   * 移动按钮点击事件   */  translate: function(e) {    if (t == 0) {      moveY = 0;      show = false;      t = 1;    } else {      moveY = 200;      show = true;      t = 0;    }    this.setData({      show: true    });    // this.animation.translate(arr[0], arr[1]).step();    this.animationEvents(this, moveY, show);  },  /**   * 隐藏弹窗浮层   */  hiddenFloatView(e) {    //console.log(e);    moveY = 200;    show = true;    t = 0;    this.animationEvents(this, moveY, show);  },  /**   * 动画事件   */  animationEvents: function(that, moveY, show) {    //console.log("moveY:" + moveY + "\nshow:" + show);    that.animation = wx.createAnimation({      transformOrigin: "50% 50%",      duration: 400,      timingFunction: "ease",      delay: 0    })    that.animation.translateY(moveY + 'vh').step()    that.setData({      animation: that.animation.export()    })  },  /**   * 生命周期函数--监听页面显示   */  onShow: function() {  },  /**   * 生命周期函数--监听页面隐藏   */  onHide: function() {  },  /**   * 生命周期函数--监听页面卸载   */  onUnload: function() {  },  /**   * 页面相关事件处理函数--监听用户下拉动作   */  onPullDownRefresh: function() {  },  /**   * 页面上拉触底事件的处理函数   */  onReachBottom: function() {  },  /**   * 用户点击右上角分享   */  onShareAppMessage: function() {  }})
 |