This commit is contained in:
Vinjor 2025-03-27 09:50:13 +08:00
parent 9127778c6f
commit f78f20f0a7
7 changed files with 556 additions and 496 deletions

View File

@ -83,25 +83,25 @@
},
{
"path": "pages/components/index",
"style" :
{
"style": {
"navigationBarTitleText": "通告首页"
}
}, {
"path": "pages/components/notice-item",
"style" :
{
"style": {
"navigationBarTitleText": "通告组件"
}
}
],
"subPackages": [{
"root": "pages/notice",
"pages": [{
"path": "detail",
"style": {
"navigationBarTitleText": "通告详情"
}
}]
}],
// "subPackages": [
// {
// "root": "pages/notice",
// "pages": [
// ]
// }
// ],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "多点通告",

View File

@ -1,6 +1,6 @@
<template>
<view class="dl-components">
<view v-for="(item,index) in dataList" class="dl-notice-box">
<view v-for="(item,index) in dataList" class="dl-notice-box" @click="goDetail(item)">
<view class="dl-notice-title">
<image class="dl-image" :src="'/static/platform/'+item.platformCode+'.png'" mode="aspectFit"></image>
<view class="dl-text">{{item.title}}</view>
@ -60,8 +60,19 @@
}
},
methods: {
/**
* 数值单位转换
* @param {Object} number
*/
formatNumberWithUnits(number) {
return formatNumberWithUnits(number)
},
/**
* 查看通告详情
* @param {Object} item
*/
goDetail(item) {
this.$emit("goDetail", item)
}
}
}

View File

@ -22,7 +22,8 @@
<!-- </view>-->
<!-- </view>-->
<view class="action-btn">
<button open-type="getPhoneNumber" @getphonenumber="getPhone" class="login-btn cu-btn block bg-blue lg round">手机号快捷登录</button>
<button open-type="getPhoneNumber" @getphonenumber="getPhone"
class="login-btn cu-btn block bg-blue lg round">手机号快捷登录</button>
<!-- <button @click="handleLogin" class="login-btn cu-btn block bg-blue lg round">登录</button>-->
<!-- <u-button open-type='getPhoneNumber' text="手机号快捷登录" @getphonenumber="wxHandleLogin" class="login-btn cu-btn block bg-green lg round"></u-button>-->
</view>
@ -32,8 +33,10 @@
<!-- </view>-->
<view class="xieyi text-center">
<text class="text-grey1">登录即代表同意</text>
<text @click="handleUserAgrement(globalConfig.appInfo.agreements[0])" class="text-blue">{{globalConfig.appInfo.agreements[0].title}}</text>
<text @click="handleUserAgrement(globalConfig.appInfo.agreements[1])" class="text-blue">{{ globalConfig.appInfo.agreements[1].title }}</text>
<text @click="handleUserAgrement(globalConfig.appInfo.agreements[0])"
class="text-blue">{{globalConfig.appInfo.agreements[0].title}}</text>
<text @click="handleUserAgrement(globalConfig.appInfo.agreements[1])"
class="text-blue">{{ globalConfig.appInfo.agreements[1].title }}</text>
</view>
</view>
@ -41,7 +44,10 @@
</template>
<script>
import { getCodeImg } from '@/api/login'
import {
getCodeImg
} from '@/api/login'
export default {
data() {
@ -132,9 +138,6 @@
duration: 2000,
title: e
});
// if (this.captchaEnabled) {
// // this.getCode()
// }
})
},
//
@ -165,6 +168,7 @@
loginSuccess(result) {
//
this.$store.dispatch('GetInfo').then(res => {
this.$tab.reLaunch('/pages/index')
})
}
@ -176,6 +180,7 @@
page {
background-color: #ffffff;
}
.dl {
width: 90%;
height: 44px;
@ -188,6 +193,7 @@
justify-content: center;
align-items: center;
}
.normal-login-container {
width: 100%;
@ -261,5 +267,4 @@
}
}
}
</style>

View File

@ -1,8 +1,22 @@
import config from '@/config'
import storage from '@/utils/storage'
import constant from '@/utils/constant'
import { login,wxLogin, logout, getInfo } from '@/api/login'
import { getToken, setToken, removeToken } from '@/utils/auth'
import {
changeUserType
} from '@/utils/common.js'
import {
login,
wxLogin,
logout,
getInfo
} from '@/api/login'
import {
getToken,
setToken,
removeToken,
setJSONData,
getStrData
} from '@/utils/auth'
const baseUrl = config.baseUrl
@ -39,7 +53,9 @@ const user = {
actions: {
// 微信登录
WxLogin({ commit }, wxUserInfo) {
WxLogin({
commit
}, wxUserInfo) {
const code = wxUserInfo.code
const encryptedIv = wxUserInfo.encryptedIv
const encryptedData = wxUserInfo.encryptedData
@ -54,7 +70,9 @@ const user = {
})
},
// 登录
Login({ commit }, userInfo) {
Login({
commit
}, userInfo) {
const username = userInfo.username.trim()
const password = userInfo.password
const code = userInfo.code
@ -71,18 +89,29 @@ const user = {
},
// 获取用户信息
GetInfo({ commit, state }) {
GetInfo({
commit,
state
}) {
return new Promise((resolve, reject) => {
getInfo().then(res => {
const user = res.user
const avatar = (user == null || user.avatar == "" || user.avatar == null) ? require("@/static/images/profile.jpg") : baseUrl + user.avatar
const username = (user == null || user.userName == "" || user.userName == null) ? "" : user.userName
const avatar = (user == null || user.avatar == "" || user.avatar == null) ?
require("@/static/images/profile.jpg") : baseUrl + user.avatar
const username = (user == null || user.userName == "" || user.userName ==
null) ? "" : user.userName
if (res.roles && res.roles.length > 0) {
commit('SET_ROLES', res.roles)
commit('SET_PERMISSIONS', res.permissions)
} else {
commit('SET_ROLES', ['ROLE_DEFAULT'])
}
//会员权益
setJSONData(constant.userRightsKey, res.rights)
if (!getStrData(constant.userTypeKey)) {
//没有默认身份,默认博主
changeUserType(constant.bz)
}
commit('SET_NAME', username)
commit('SET_AVATAR', avatar)
resolve(res)
@ -93,7 +122,10 @@ const user = {
},
// 退出系统
LogOut({ commit, state }) {
LogOut({
commit,
state
}) {
return new Promise((resolve, reject) => {
logout(state.token).then(() => {
commit('SET_TOKEN', '')

View File

@ -2,33 +2,38 @@ import {
getJSONData,
setJSONData,
removeJSONData,
setStrData
setStrData,
getStrData
} from '@/utils/auth'
// 用户权益code
const UserRightsKey = 'User-Rights'
//用户当前身份code
const UserTypeKey = 'User-Type'
import constant from '@/utils/constant'
/**
* 判断某用户是否有某权益
* @param {Object} code 权益code
*/
export function hasRights(code) {
let userRights = getJSONData(UserRightsKey)
//取用户当前身份
let userType = getStrData(constant.userTypeKey)
let userRights = {}
if (constant.bz == userType) {
//博主
userRights = getJSONData(constant.userRightsKey)['bz']
} else {
//通告主
userRights = getJSONData(constant.userRightsKey)['tgz']
}
//默认无权限
let rtnData = false
if ('' != userRights && userRights.con) {
if (userRights.hasOwnProperty(code)) {
rtnData = userRights[code]
}
return rtnData
}
/**
}/**
* 切换用户当前身份
* @param {Object} value 身份值
*/
export function changeUserType(value) {
setStrData(UserTypeKey, value)
setStrData(constant.userTypeKey, value)
}
/**

View File

@ -2,7 +2,14 @@ const constant = {
avatar: 'vuex_avatar',
name: 'vuex_name',
roles: 'vuex_roles',
permissions: 'vuex_permissions'
permissions: 'vuex_permissions',
//用户权益code
userRightsKey: 'User-Rights',
// 用户当前身份code
userTypeKey: 'User-Type',
//博主
bz: '02',
//通告主
tgz: '01'
}
export default constant