login.js 3.46 KB
"use strict";
const common_vendor = require("./vendor.js");
const common_request = require("./request.js");
const config = require("../config.js");
const common_aes = require("./aes.js");
function pcLogin(data) {
  return common_request.request({
    // url: '/login',
    url: `${config.config.baseUrl_api}/loginZtx`,
    method: "post",
    headers: {
      isToken: false
    },
    params: data
  }).then((res) => {
    common_vendor.index.setStorageSync("token", "Bearer " + res.data.token);
  }).then(getInfo);
}
function h5Login(userName) {
  return common_request.request({
    url: `/h5Login`,
    method: "post",
    params: {
      username: userName
    }
  }).then((res) => {
    common_vendor.index.setStorageSync("token", "Bearer " + res.data.token);
  }).then(getInfo);
}
function h5LoginAuto() {
  const userName = common_vendor.index.getStorageSync("userName");
  if (userName) {
    return h5Login(userName);
  } else {
    common_vendor.index.redirectTo({
      url: "/pages/index/login"
    });
  }
}
function getCodeImg() {
  return common_request.request({
    url: `${config.config.baseUrl_api}/captchaImage`,
    method: "get"
  });
}
function getSmsCode(data) {
  return common_request.request({
    url: "/captchaSmsWithCaptchaImage",
    method: "post",
    params: data
  });
}
function loginByPhone(phonenumber, code) {
  const data = {
    phonenumber,
    code
  };
  return common_request.request({
    url: "/userLoginByPhone",
    method: "post",
    params: data
  }).then((res) => {
    common_vendor.index.setStorageSync("token", "Bearer " + res.data.token);
  }).then(getInfo);
}
function getInfo() {
  return common_request.request({
    url: `${config.config.baseUrl_api}/getInfo`,
    method: "get"
  }).then((res) => {
    const app = getApp();
    const user = res.data.user;
    const personInfo = res.data.personInfo;
    common_vendor.index.setStorageSync("userName", user.userName);
    common_vendor.index.setStorageSync("perId", common_aes.aes.encrypt(personInfo.perId));
    app.globalData.deptType = user.dept.deptType;
    app.globalData.userInfo = user;
  });
}
function groupMemberRegister(data) {
  return common_request.request({
    url: "/groupMemberRegister",
    method: "post",
    params: data
  });
}
function getWxUserPhone(phoneRes) {
  const currUser = common_vendor.index.getStorageSync("currUser");
  const nowOpenId = common_vendor.index.getStorageSync("nowOpenId");
  return common_request.request({
    url: `/system/wx/updateMobile?openId=${nowOpenId}`,
    method: "POST",
    params: {
      appId,
      userId: currUser.id,
      encryptedData: phoneRes.encryptedData,
      errMsg: phoneRes.errMsg,
      iv: phoneRes.iv,
      rawData: phoneRes.rawData,
      signature: phoneRes.signature
    }
  }).then((res) => {
    let user = res.data;
    common_vendor.index.setStorageSync("token", user.token);
    common_vendor.index.setStorageSync("currUser", user);
    return user;
  });
}
function checkUserAuth(path) {
  const app = getApp();
  if (app.globalData.isLogin) {
    return true;
  } else {
    common_vendor.index.navigateTo({
      url: "/pages/index/binding?path=" + encodeURIComponent(path)
    });
    return false;
  }
}
exports.checkUserAuth = checkUserAuth;
exports.getCodeImg = getCodeImg;
exports.getInfo = getInfo;
exports.getSmsCode = getSmsCode;
exports.getWxUserPhone = getWxUserPhone;
exports.groupMemberRegister = groupMemberRegister;
exports.h5LoginAuto = h5LoginAuto;
exports.loginByPhone = loginByPhone;
exports.pcLogin = pcLogin;