import Vue from 'vue'; /* 获取用户权限 */ function query_userauth() { return new Promise((resolve, reject) => { Vue.prototype.$Http.basic({ "classname": "sysmanage.develop.userauth.userauth", "method": "query_userauth", content: { nocache: true } }).then(res => { console.log("查询用户权限", res) if (Vue.prototype.cutoff(res.msg)) return resolve(false); resolve(true) parsingAuth(res.data) }); }) } /* 查询站点数据 */ function querySite_Parameter() { return new Promise((resolve, reject) => { Vue.prototype.$Http.basic({ "classname": "webmanage.site.site", "method": "querySite_Parameter", //查询站点数据 "content": {} }).then(res => { console.log("查询站点配置", res) if (Vue.prototype.cutoff(res.msg)) return resolve(false); uni.removeStorageSync({ key: 'siteP', }) uni.setStorageSync('siteP', res.data); resolve(true) }); }) } /* 查询站点数据 */ function querySite() { return new Promise((resolve, reject) => { Vue.prototype.$Http.basic({ "classname": "webmanage.site.site", "method": "querySite", "content": {}, }).then(res => { console.log("查询站点配置", res) if (Vue.prototype.cutoff(res.msg)) return resolve(false); res.data.logo = res.data.attinfos.length ? Vue.prototype.getSpecifiedImage(res.data.attinfos.find(s => s.usetype == "actionlogo") || res.data.attinfos[0]) : '' uni.removeStorageSync({ key: 'site', }) uni.setStorageSync('site', res.data); resolve(true) }); }) } /* 格式化权限 */ function parsingAuth(list) { let authList = {} list.forEach(system => { // let systemObj = {} system.modules.forEach(app => { let appObj = {} app.apps.forEach(m => { appObj[m.meta.title] = { path: m.path, pathDetail: m.path_index, pathDetail: m.path_index, name: m.name, remark: m.meta.title, remarks: m.remarks, cover: m.cover, option: m.meta.auth.map(v => v.option), forms: m.meta.forms, optionname: m.meta.auth.map(v => v.optionname) } }) // systemObj[app.systemmodulename] = appObj; authList[app.systemmodulename] = appObj; }) // authList[system.systemname] = systemObj; }); uni.removeStorageSync({ key: 'authList' }) uni.setStorageSync('authList', authList) } class Login { wechatLogin() { return new Promise((resolve, reject) => { uni.login({ success(res) { Vue.prototype.$Http.loginbywechat({ wechat_code: res.code, "systemclient": "marketingtool" }).then(res => { console.log("微信登录", res) if (Vue.prototype.cutoff(res.msg)) return resolve(false); resolve(res.account_list[0].token) uni.removeStorageSync({ key: 'userMsg', }) uni.setStorageSync('userMsg', res.account_list[0]) getApp().globalData.systemInitIsComplete = Promise.all([query_userauth(), querySite_Parameter(), querySite()]).then(res => { getApp().globalData.systemInitIsComplete = true getApp().globalData.HomePageStartRendering.forEach(v => v()) }) }) } }) }) } } export { Login }