123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- import Vue from 'vue'
- class Login {
- wechatLogin() {
- let that = this;
- 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({});
- uni.removeStorage({
- key: 'userMsg',
- })
- uni.setStorageSync('userMsg', res.account_list[0])
- Vue.prototype.$Http.systemInitIsComplete = Promise.all([that.query_userauth(), that.querySite_Parameter(), that.querySite()]).then(res => {
- Vue.prototype.$Http.systemInitIsComplete = true
- Vue.prototype.$Http.HomePageStartRendering && Vue.prototype.$Http.HomePageStartRendering()
- })
- })
- }
- })
- })
- }
- /* 获取用户权限 */
- 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)
- this.parsingAuth(res.data)
- });
- })
- }
- /* 查询站点数据 */
- 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.removeStorage({
- key: 'siteP',
- })
- uni.setStorageSync('siteP', res.data);
- resolve(true)
- });
- })
- }
- /* 查询站点数据 */
- 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.removeStorage({
- key: 'site',
- })
- uni.setStorageSync('site', res.data);
- resolve(true)
- });
- })
- }
- /* 格式化权限 */
- 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,
- cover: m.cover,
- option: m.meta.auth.map(v => v.option),
- optionname: m.meta.auth.map(v => v.optionname)
- }
- })
- // systemObj[app.systemmodulename] = appObj;
- authList[app.systemmodulename] = appObj;
- })
- // authList[system.systemname] = systemObj;
- });
- uni.removeStorage({
- key: 'authList'
- })
- uni.setStorageSync('authList', authList)
- }
- }
- export {
- Login
- }
|