小程序app.js

mac2025-03-25  11

//app.js var webim = require('utils/webim_wx.js'); var webimhandler = require('utils/webim_handler.js'); const finalUrl = 'http://localhost:8387/wizardlisa'; App({ onLaunch: function (opion) { var that = this // //设置下方tabbar // wx.setTabBarItem({ // index: 1, // text: that.globalData.companyProfile, // }) //用户初始化进来方式 that.globalData.source = opion.scene }, //用户登陆================================================================================================================ userLogin: function () { //公共链接 var that = this; return new Promise(function (resolve, reject) { // 调用登录接口 wx.login({ success: function (res) { that.globalData.hasLogin = true//判断是否登录 if (res.code) { //获取用户信息 wx.request({ url: finalUrl + '/mpLogin/decodeUser', data: { code: res.code, source: that.globalData.source, sourceChannelFlag: that.globalData.sourceChannelFlag, wxCompanyId: that.globalData.wxCompanyId, wxCompanySalesId: that.globalData.wxCompanySalesId, }, method: 'POST', header: { 'content-Type': 'application/json' }, success: function (res1) { wx.setStorageSync('openid', res1.data.validateMap.openid)//存放用户微信唯一字段 wx.setStorageSync('api_key', res1.data.validateMap.apiKey)//存放用户微信唯一字段 wx.setStorageSync('sys_source', res1.data.validateMap.sysSource)//存放用户微信唯一字段 wx.setStorageSync('sessionkey', res1.data.validateMap.sessionkey)//存放用户微信唯一字段 //判断当前用户是否为销售 if (res1.data.validateMap.wxUserIdentityFlag == '2') { that.globalData.wxUserIdentityFlag = true; wx.setStorageSync('wxUserIdentityFlag', true); } else { that.globalData.wxUserIdentityFlag = false; wx.setStorageSync('wxUserIdentityFlag', false); } //销售身份赋值对应后台账户的用户等级 if (res1.data.validateMap.splUserLevel && res1.data.validateMap.splUserLevel != 'null') { that.globalData.splUserLevel = res1.data.validateMap.splUserLevel; } //判断当前小程序用户 是否绑定销售用户 if (res1.data.validateMap.wxCompanySalesId && res1.data.validateMap.wxCompanySalesId != 'null') { that.globalData.wxCompanySalesId = res1.data.validateMap.wxCompanySalesId } else { that.globalData.wxCompanySalesId = ""; } //当前小程序用户绑定的手机号 if (res1.data.validateMap.phoneNum && res1.data.validateMap.phoneNum != "null") { that.globalData.phoneNum = res1.data.validateMap.phoneNum; } else { that.globalData.phoneNum = ''; } //当前小程序公司 特殊箱子运价展示标识 if (res1.data.validateMap.containerFclShowFlag && res1.data.validateMap.containerFclShowFlag!="null"){ that.globalData.containerFclShowFlag = res1.data.validateMap.containerFclShowFlag; } //当前小程序公司 是否公开使用小程序标识 1:内部使用 2:公开使用 if (res1.data.validateMap.programJurisdictionFlag && res1.data.validateMap.programJurisdictionFlag != "null") { that.globalData.programJurisdictionFlag = res1.data.validateMap.programJurisdictionFlag; } //当前用户的主键id 赋值 that.globalData.userId = res1.data.validateMap.userId; //当前用户是否在 黑名单中 标识 that.globalData.blacklistFlag = res1.data.validateMap.blacklistFlag; //腾讯云IM签名 that.globalData.userSig = res1.data.validateMap.userSig; //腾讯云IMSDKID that.globalData.sdkappid = res1.data.validateMap.sdkappid; //腾讯云IM模式 that.globalData.accountType = res1.data.validateMap.accountType; var res = { status: 200 } resolve(res);//登陆成功 } }) } else { var res = { status: 300 } reject(res);//登陆失败 } } }) }); }, //2018-07-12 新版本【同意授权】之后的更新用户信息通用方法 ============================================================================================= newAuthorizeUpdateUserInfo: function (res) { var that = this; wx.setStorageSync('hasempower', false) that.globalData.userInfo = res.detail.userInfo that.globalData.hasUserInfo = true var data = { openid: wx.getStorageSync("openid"), nickname: res.detail.userInfo.nickName, headPic: res.detail.userInfo.avatarUrl, source: that.globalData.source, companyId: that.globalData.wxCompanyId, } //用户信息补录 wx.request({ url: finalUrl + '/mpLogin/updateUser', data: data, method: 'POST', header: { 'content-Type': 'application/json', 'Authorization': wx.getStorageSync('api_key'), 'sys_source': wx.getStorageSync('sys_source'), }, success: function (res2) { if (res2.data.code == 1) { wx.setStorageSync('api_key', res2.data.validateMap.apiKey)//存放用户微信唯一字段 wx.setStorageSync('hasempower', false)//true的时候未获取头像 } } }); //设置IM 用户用户昵称 头像 webimhandler.setProfilePortrait({ 'ProfileItem': [{ "Tag": "Tag_Profile_IM_Nick", "Value": res.detail.userInfo.nickName ? res.detail.userInfo.nickName : "游客" }, { "Tag": "Tag_Profile_IM_Image", "Value": res.detail.userInfo.avatarUrl ? res.detail.userInfo.avatarUrl : '' } ] }, function () { console.log("==========小程序用户允许授权成功后,设置 IM 账户") }) }, //刷新用户权限 (vip权限 & 用户角色) (目前同属新缓存 调用接口一样) refreshUserAuth: function () { //公共链接 var that = this; return new Promise(function (resolve, reject) { wx.request({ url: finalUrl + '/mpLogin/reFreshStorges', data: {}, method: 'POST', header: { 'content-Type': 'application/json', 'Authorization': wx.getStorageSync('api_key'), 'sys_source': wx.getStorageSync('sys_source'), }, success: function (res) { if (res && res.data && res.data.apiKey) { //这里代表返回正常数据了 //判断用户是否在黑名单中 that.globalData.blacklistFlag = res.data.blacklistFlag ? res.data.blacklistFlag:2; //用户类型 if (res.data.wxUserIdentityFlag == true) {//销售身份 that.globalData.wxUserIdentityFlag = true; wx.setStorageSync('wxUserIdentityFlag', true); } else { that.globalData.wxUserIdentityFlag = false; wx.setStorageSync('wxUserIdentityFlag', false); wx.removeTabBarBadge({ index: 3 }) } //销售身份赋值对应后台账户的用户等级 if (res.data.splUserLevel && res.data.splUserLevel != 'null') { that.globalData.splUserLevel = res.data.splUserLevel; } //绑定的销售id that.globalData.wxCompanySalesId = res.data.wxCompanySalesId ? res.data.wxCompanySalesId:""; //修改缓存api_key wx.setStorageSync('api_key', res.data.apiKey) //存放用户微信唯一字段 var res = { status: 200 } resolve(res); }else{ var res = { status: 300 } reject(res); } } }); }); }, //获取用户手机号 getbindphonenum: function (data) { //公共链接 var that = this; return new Promise(function (resolve, reject) { wx.request({ url: finalUrl + '/mpLogin/getBindPhoneNum', data: data, method: 'POST', header: { 'content-Type': 'application/json', 'Authorization': wx.getStorageSync('api_key'), 'sys_source': wx.getStorageSync('sys_source'), }, success: function (res) { console.log(res); console.log("=============================================111111111") if (res.data.phoneNum){//授权获取到手机号 console.log("=============================================222222222") //当前用户是否在 黑名单中 标识 that.globalData.blacklistFlag = res.data.blacklistFlag; console.log("=============================================333333333") //判断记录用户积分=========== wx.request({ url: finalUrl + '/mplogin/savepoints', data: {}, method: 'POST', header: { 'content-type': 'application/json', 'Authorization': res.data.apiKey, 'sys_source': wx.getStorageSync('sys_source'), }, }) } console.log("=============================================444444444") resolve(res); console.log("=============================================555555555") }, fail: function (reserr){ reject(reserr); } }); }); }, globalData: { source: '', //用户进入小程序方式(场景值) sourceChannelFlag:1, //用户来源渠道 默认搜索小程序进入 userId: '', //当前登陆用户的后台主键Id userInfo: {}, //用户信息(这不是完整的用户信息,只是调微信接口赋值的用户信息) hasLogin: false, //用户是否登陆标记 hasUserInfo: false, //是否有用户信息 phoneNum: '', //当前登陆用户绑定的手机号 blacklistFlag:2, //是否在黑名单中 1:是 2:否 wxCompanySalesId: '', //客户绑定公司的销售对应的id (这里主要针对 扫码,分享 中的salesId) wxUserIdentityFlag: false, //当前微信用户身份标记 (是否为销售标记) splUserLevel: '-1', //销售身份对应的后台账户用户等级 -1:小程序普通用户 0:BOSS 1:商务 2:销售 wxCompanyId: 1, //当前小程序所属公司 containerFclShowFlag:0, //当前小程序公司特殊箱子运价展示标识 programJurisdictionFlag:2, //1:内部使用 2:公开使用(默认值) startPortId: 2, //全局默认的起始港 startPortNameEn: 'QINGDAO', //全局默认的起始港英文名 sdkappid: '', // 填入创建腾讯云通讯应用获取到的 sdkappid accountType: '', // 填入在帐号体系集成配置中获取到的 accountType userSig:"", //用户签名 // companyProfile: '一米阳光', //设置底层tabbar名称(公司简介) mpName: "一米阳光", //小程序名称 } })

 

最新回复(0)