Browse Source

token过期跳转问题、权限问题

zln
donghaolin 2 months ago
parent
commit
5d46dd961e
  1. 2
      gold-system/src/util/http.js
  2. 38
      gold-system/src/views/index.vue
  3. 19
      gold-system/src/views/login.vue
  4. 96
      gold-system/src/views/workspace/index.vue

2
gold-system/src/util/http.js

@ -34,7 +34,7 @@ export default function (options) {
// 清除localStorage中的token
localStorage.removeItem('token');
// // 执行重新登录的逻辑,例如跳转到登录页面
window.location.href = '/login';
window.location.href = '/jtzy/Product/crm/hwjb2.0/index.html#/login';
// 可以在这里返回一个特定的值或者对象,以便调用者知道需要重新登录
return { needsLogin: true };
} else {

38
gold-system/src/views/index.vue

@ -46,6 +46,8 @@ function logout() {
localStorage.removeItem("token");
localStorage.clear();
router.push("/login");
//
window.location.reload();
ElMessage.success("退出成功");
}
@ -82,7 +84,8 @@ onMounted(async function () {
v-if="
adminData.permission == 1 ||
adminData.permission == 2 ||
adminData.permission == 3
adminData.permission == 3 ||
adminData.permission == 5
"
>
<el-icon>
@ -93,7 +96,11 @@ onMounted(async function () {
<el-sub-menu
index="2"
v-if="adminData.permission == 1 || adminData.permission == 2"
v-if="
adminData.permission == 1 ||
adminData.permission == 2 ||
adminData.permission == 5
"
>
<template #title>
<el-icon>
@ -107,7 +114,11 @@ onMounted(async function () {
<el-sub-menu
index="3"
v-if="adminData.permission == 1 || adminData.permission == 2"
v-if="
adminData.permission == 1 ||
adminData.permission == 2 ||
adminData.permission == 5
"
>
<template #title>
<el-icon>
@ -121,7 +132,11 @@ onMounted(async function () {
<el-sub-menu
index="4"
v-if="adminData.permission == 1 || adminData.permission == 3"
v-if="
adminData.permission == 1 ||
adminData.permission == 3 ||
adminData.permission == 5
"
>
<template #title>
<el-icon>
@ -136,7 +151,11 @@ onMounted(async function () {
<el-sub-menu
index="5"
v-if="adminData.permission == 1 || adminData.permission == 3"
v-if="
adminData.permission == 1 ||
adminData.permission == 3 ||
adminData.permission == 5
"
>
<template #title>
<el-icon>
@ -150,7 +169,11 @@ onMounted(async function () {
<el-sub-menu
index="6"
v-if="adminData.permission == 1 || adminData.permission == 3"
v-if="
adminData.permission == 1 ||
adminData.permission == 3 ||
adminData.permission == 5
"
>
<template #title>
<el-icon>
@ -167,7 +190,8 @@ onMounted(async function () {
v-if="
adminData.permission == 1 ||
adminData.permission == 2 ||
adminData.permission == 3
adminData.permission == 3 ||
adminData.permission == 5
"
>
<el-icon>

19
gold-system/src/views/login.vue

@ -5,20 +5,37 @@ import axios from "axios";
import { useRouter } from "vue-router";
import { VscGlobe } from "vue-icons-plus/vsc";
//
var url = window.location.href; //
//machineId=
var machineId = null;
// machineId
function getMachineId() {
var parts = url.split("machineId=");
if (parts.length > 1) {
machineId = parts[1].split("&")[0]; // &
}
// machineId = decodeURIComponent(machineId); //machineId
console.log("MachineId字符串:", machineId); // machineId
}
getMachineId();
const router = useRouter(); //
let formData = new FormData();
// FormData
// formData.append("jwcode", form.value.jwcode);
// formData.append("password", form.value.password);
const form = ref({ jwcode: "", password: "", token: "" });
const form = ref({ jwcode: "", password: "", token: "", machineId: machineId });
//
const login = async function () {
try {
const result = await axios.post(
"http://54.251.137.151:10702/admin/login",
form.value
);
if (result.data.code == 200) {
localStorage.setItem("token", result.data.msg);
localStorage.setItem("permission", result.data.data.permission);

96
gold-system/src/views/workspace/index.vue

@ -144,20 +144,15 @@ const get = async function () {
option3Data.value = [
{
value: Math.abs(statistics.value.rechargeSumCoin),
name:
"永久金币" +
" | " +
formatNum(statistics.value.rechargeSumCoin / 100),
name: "永久金币" + " | " + formatNum(statistics.value.rechargeSumCoin),
},
{
value: Math.abs(statistics.value.freeSumCoin),
name:
"免费金币" + " | " + formatNum(statistics.value.freeSumCoin / 100),
name: "免费金币" + " | " + formatNum(statistics.value.freeSumCoin),
},
{
value: Math.abs(statistics.value.taskSumCoin),
name:
"任务金币" + " | " + formatNum(statistics.value.taskSumCoin / 100),
name: "任务金币" + " | " + formatNum(statistics.value.taskSumCoin),
},
];
@ -167,23 +162,21 @@ const get = async function () {
name:
"永久金币" +
" | " +
formatNum(
Math.abs(getYearConsumeCoin.value.yearSumRechargeCoin / 100)
),
formatNum(Math.abs(getYearConsumeCoin.value.yearSumRechargeCoin)),
},
{
value: Math.abs(getYearConsumeCoin.value.yearSumFreeCoin),
name:
"免费金币" +
" | " +
formatNum(Math.abs(getYearConsumeCoin.value.yearSumFreeCoin / 100)),
formatNum(Math.abs(getYearConsumeCoin.value.yearSumFreeCoin)),
},
{
value: Math.abs(getYearConsumeCoin.value.yearSumTaskCoin),
name:
"任务金币" +
" | " +
formatNum(Math.abs(getYearConsumeCoin.value.yearSumTaskCoin / 100)),
formatNum(Math.abs(getYearConsumeCoin.value.yearSumTaskCoin)),
},
];
console.log("option4Data", option4Data.value);
@ -191,16 +184,15 @@ const get = async function () {
option5Data.value = [
{
value: Math.abs(getSumCoin.value.todayRecharge),
name:
"永久金币" + " | " + formatNum(getSumCoin.value.todayRecharge / 100),
name: "永久金币" + " | " + formatNum(getSumCoin.value.todayRecharge),
},
{
value: Math.abs(getSumCoin.value.todayFree),
name: "免费金币" + " | " + formatNum(getSumCoin.value.todayFree / 100),
name: "免费金币" + " | " + formatNum(getSumCoin.value.todayFree),
},
{
value: Math.abs(getSumCoin.value.todayTask),
name: "任务金币" + " | " + formatNum(getSumCoin.value.todayTask / 100),
name: "任务金币" + " | " + formatNum(getSumCoin.value.todayTask),
},
];
console.log("option5Data", option5Data.value);
@ -387,14 +379,14 @@ const getMiddleBar = async function () {
middleCategory.value = getMiddleBarData.value.map((item) =>
item.day == null ? item.month : item.day.substring(5, 10)
);
middleRecharge.value = getMiddleBarData.value.map(
(item) => Math.abs(item.rechargeSumCoin) / 100
middleRecharge.value = getMiddleBarData.value.map((item) =>
Math.abs(item.rechargeSumCoin)
);
middleFree.value = getMiddleBarData.value.map(
(item) => Math.abs(item.freeSumCoin) / 100
middleFree.value = getMiddleBarData.value.map((item) =>
Math.abs(item.freeSumCoin)
);
middleTask.value = getMiddleBarData.value.map(
(item) => Math.abs(item.taskSumCoin) / 100
middleTask.value = getMiddleBarData.value.map((item) =>
Math.abs(item.taskSumCoin)
);
middleTotalRecharge.value = 0;
middleTotalFree.value = 0;
@ -999,7 +991,7 @@ onMounted(async function () {
{
name:
"全年累计金币数(个)\n" +
formatNum(Math.abs(statistics.value.totalSumCoin / 100)),
formatNum(Math.abs(statistics.value.totalSumCoin)),
type: "pie",
radius: ["60%", "80%"],
avoidLabelOverlap: false,
@ -1043,7 +1035,7 @@ onMounted(async function () {
{
name:
"全年累计消耗金币数(个)\n" +
formatNum(Math.abs(getYearConsumeCoin.value.yearsumCoin / 100)),
formatNum(Math.abs(getYearConsumeCoin.value.yearsumCoin)),
type: "pie",
radius: ["60%", "80%"],
avoidLabelOverlap: false,
@ -1097,7 +1089,7 @@ onMounted(async function () {
{
name:
"当前金币余量(个)\n" +
formatNum(Math.abs(getSumCoin.value.todayTotalCoin / 100)),
formatNum(Math.abs(getSumCoin.value.todayTotalCoin)),
type: "pie",
radius: ["60%", "80%"],
avoidLabelOverlap: false,
@ -1147,15 +1139,12 @@ onMounted(async function () {
<el-card style="height: 260px">
<p>当前金币余量</p>
<p class="head-mid-font">
{{ formatNum(getSumCoin.todayTotalCoin / 100) }}
{{ formatNum(getSumCoin.todayTotalCoin) }}
</p>
<p>
<span v-if="getSumCoin.coinDifference > 0">
<div class="comparedWithYesterday">
<span
>较前一天
{{ formatNum(getSumCoin.coinDifference / 100) }}</span
>
<span>较前一天 {{ formatNum(getSumCoin.coinDifference) }}</span>
<span
class="red-triangle"
style="margin: 6px 0px 0px 7px"
@ -1164,10 +1153,7 @@ onMounted(async function () {
</span>
<span v-if="getSumCoin.coinDifference < 0">
<div class="comparedWithYesterday">
<span
>较前一天
{{ formatNum(getSumCoin.coinDifference / 100) }}</span
>
<span>较前一天 {{ formatNum(getSumCoin.coinDifference) }}</span>
<span
class="green-triangle"
style="margin: 6px 0px 0px 7px"
@ -1176,10 +1162,7 @@ onMounted(async function () {
</span>
<span v-if="getSumCoin.coinDifference == 0">
<div class="comparedWithYesterday">
<span
>较前一天
{{ formatNum(getSumCoin.coinDifference / 100) }}</span
>
<span>较前一天 {{ formatNum(getSumCoin.coinDifference) }}</span>
<span
class="grey-triangle"
style="margin: 6px 0px 0px 7px"
@ -1189,15 +1172,15 @@ onMounted(async function () {
</p>
<template #footer>
<span
>永久{{ formatNum(getSumCoin.todayRecharge / 100) }} 免费{{
>永久{{ formatNum(getSumCoin.todayRecharge) }} 免费{{
formatNum(getSumCoin.todayFree)
}}
任务{{ formatNum(getSumCoin.todayTask) }}
</span>
<p style="font-size: 12px">
免费金币6月到期 |
{{ formatNum(statistics.free6SumCoin / 100) }} ; 12月到期 |
{{ formatNum(statistics.free12SumCoin / 100) }}
{{ formatNum(statistics.free6SumCoin) }} ; 12月到期 |
{{ formatNum(statistics.free12SumCoin) }}
</p>
</template>
</el-card>
@ -1206,17 +1189,17 @@ onMounted(async function () {
<el-card style="height: 260px">
<p>全年累计金币数</p>
<p class="head-mid-font">
{{ formatNum(Math.abs(statistics.totalSumCoin) / 100) }}
{{ formatNum(Math.abs(statistics.totalSumCoin)) }}
</p>
<p>
折合新币累计金额
{{ formatNum(Math.abs(statistics.rechargeSumCoin) / 100) }}
{{ formatNum(Math.abs(statistics.rechargeSumCoin)) }}
</p>
<template #footer
>昨日新增
{{ formatNum(Math.abs(statistics.totalYesterdaySumCoin) / 100) }}
{{ formatNum(Math.abs(statistics.totalYesterdaySumCoin)) }}
其中充值{{
formatNum(Math.abs(statistics.rechargeYesterdaySumCoin) / 100)
formatNum(Math.abs(statistics.rechargeYesterdaySumCoin))
}}</template
>
</el-card>
@ -1225,23 +1208,20 @@ onMounted(async function () {
<el-card style="height: 260px">
<p>全年累计消耗金币数</p>
<p class="head-mid-font">
{{ formatNum(Math.abs(getYearConsumeCoin.yearsumCoin) / 100) }}
{{ formatNum(Math.abs(getYearConsumeCoin.yearsumCoin)) }}
</p>
<p>
消费
{{ formatNum(Math.abs(getYearConsumeCoin.yearConsumeCoin) / 100) }};
退款
{{ formatNum(Math.abs(getYearConsumeCoin.yearRefundCoin) / 100) }}
{{ formatNum(Math.abs(getYearConsumeCoin.yearConsumeCoin)) }}; 退款
{{ formatNum(Math.abs(getYearConsumeCoin.yearRefundCoin)) }}
</p>
<template #footer
>昨日新增消耗{{
formatNum(Math.abs(getDayConsumeCoin.daysumCoin) / 100)
}}
; 消费{{
formatNum(Math.abs(getDayConsumeCoin.dayConsumeCoin) / 100)
formatNum(Math.abs(getDayConsumeCoin.daysumCoin))
}}
; 退款{{
formatNum(Math.abs(getDayConsumeCoin.dayRefundCoin) / 100)
; 消费{{ formatNum(Math.abs(getDayConsumeCoin.dayConsumeCoin)) }} ;
退款{{
formatNum(Math.abs(getDayConsumeCoin.dayRefundCoin))
}}</template
>
</el-card>
@ -1436,7 +1416,7 @@ onMounted(async function () {
}}</span>
<span style="margin-left: 10px">{{ item.name }}</span>
<span style="margin-left: auto; margin-right: 10px">{{
formatNum(item.value / 100)
formatNum(item.value)
}}</span>
</div>
</el-scrollbar>
@ -1505,7 +1485,7 @@ onMounted(async function () {
}}</span>
<span style="margin-left: 10px">{{ item.name }}</span>
<span style="margin-left: auto; margin-right: 10px">{{
formatNum(item.value / 100)
formatNum(item.value)
}}</span>
</div>
</el-scrollbar>

Loading…
Cancel
Save