2025-07-28 15:52:07 +08:00
|
|
|
<template>
|
2025-08-19 23:48:38 +08:00
|
|
|
<div>
|
|
|
|
<div class="six-action-container">
|
|
|
|
<div
|
|
|
|
style="padding: 1rem"
|
|
|
|
class="six-action-item"
|
|
|
|
v-for="(v, i) in taskList"
|
|
|
|
:key="i"
|
|
|
|
>
|
|
|
|
<div
|
|
|
|
class="bubble"
|
|
|
|
:style="{
|
|
|
|
backgroundImage: `url(${require('@/assets/index_bg/' +
|
|
|
|
(i + 1) +
|
|
|
|
'.png')})`,
|
|
|
|
}"
|
|
|
|
>
|
|
|
|
<div class="act-text">
|
|
|
|
<div class="title">{{ v.label }}·待办</div>
|
|
|
|
<div class="todo">
|
|
|
|
{{ v.value }}
|
2025-07-28 15:52:07 +08:00
|
|
|
</div>
|
2025-08-19 23:48:38 +08:00
|
|
|
</div>
|
|
|
|
<div class="bg-to" @click="toRoute(v.url)">更多☞</div>
|
2025-07-28 15:52:07 +08:00
|
|
|
</div>
|
2025-08-19 23:48:38 +08:00
|
|
|
</div>
|
2025-07-28 15:52:07 +08:00
|
|
|
</div>
|
2025-08-19 23:48:38 +08:00
|
|
|
</div>
|
2025-07-28 15:52:07 +08:00
|
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
2025-08-19 23:48:38 +08:00
|
|
|
import { countSjUnDo as countUndo } from "@/api/stuCQS/good/apply";
|
2025-07-28 15:52:07 +08:00
|
|
|
import { isEmpty } from "@/api/helpFunc";
|
|
|
|
import { checkPermi } from "@/utils/permission";
|
|
|
|
export default {
|
2025-08-19 23:48:38 +08:00
|
|
|
name: "sj-undo",
|
|
|
|
data() {
|
|
|
|
return {
|
|
|
|
hasPrem: false,
|
|
|
|
|
|
|
|
taskList: [
|
|
|
|
{
|
|
|
|
label: "书记·任务管理审核",
|
|
|
|
name: "rwgl",
|
|
|
|
value: 0,
|
|
|
|
url: "/task/todo",
|
2025-07-28 15:52:07 +08:00
|
|
|
},
|
2025-08-19 23:48:38 +08:00
|
|
|
{
|
|
|
|
label: "书记·辅导员综合绩效审核",
|
|
|
|
name: "jx",
|
|
|
|
value: 0,
|
|
|
|
url: "teacher/performance/evaluate/party",
|
2025-07-28 15:52:07 +08:00
|
|
|
},
|
2025-08-19 23:48:38 +08:00
|
|
|
// 宁博
|
|
|
|
{
|
|
|
|
label: "书记·辅导员管理-成果绩效审核",
|
|
|
|
name: "cg",
|
|
|
|
value: 0,
|
|
|
|
url: "/teacher/achievement/achievementCheck",
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|
|
|
|
},
|
|
|
|
created() {
|
|
|
|
if (checkPermi(["home:sj:undo1"])) {
|
|
|
|
this.countUndo();
|
|
|
|
this.hasPrem = true;
|
2025-07-28 15:52:07 +08:00
|
|
|
}
|
2025-08-19 23:48:38 +08:00
|
|
|
},
|
|
|
|
methods: {
|
|
|
|
async countUndo() {
|
|
|
|
let res = await countUndo();
|
|
|
|
if (res.code == 200) {
|
|
|
|
let data = [...res.data];
|
|
|
|
this.taskList.map((x) => {
|
|
|
|
let temp = data.filter((y) => y.startsWith(x.name));
|
|
|
|
if (!isEmpty(temp)) {
|
|
|
|
let result = temp[0].split("-")[1];
|
|
|
|
x.value = result;
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
},
|
2025-07-28 15:52:07 +08:00
|
|
|
|
2025-08-19 23:48:38 +08:00
|
|
|
toRoute(url) {
|
|
|
|
if (!isEmpty(url)) {
|
|
|
|
this.$router.push(url);
|
|
|
|
}
|
|
|
|
},
|
|
|
|
},
|
|
|
|
};
|
2025-07-28 15:52:07 +08:00
|
|
|
</script>
|
|
|
|
|
|
|
|
<style scoped lang="scss">
|
|
|
|
.six-action-container {
|
2025-08-19 23:48:38 +08:00
|
|
|
display: flex;
|
|
|
|
flex-wrap: wrap;
|
2025-07-28 15:52:07 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
.six-action-item {
|
2025-08-19 23:48:38 +08:00
|
|
|
flex-basis: 33.33%;
|
2025-07-28 15:52:07 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
.bubble {
|
2025-08-19 23:48:38 +08:00
|
|
|
overflow: hidden;
|
|
|
|
margin: 0 auto;
|
|
|
|
width: 100%;
|
|
|
|
height: 170px;
|
|
|
|
border-radius: 1rem;
|
|
|
|
// background-image: linear-gradient(120deg, rgb(134, 233, 98) 0%, rgb(45, 175, 92) 100%);
|
|
|
|
position: relative;
|
|
|
|
background-size: cover;
|
|
|
|
min-width: 250px;
|
2025-07-28 15:52:07 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
.act-text {
|
2025-08-19 23:48:38 +08:00
|
|
|
width: 100%;
|
|
|
|
z-index: 2;
|
|
|
|
margin: 1rem;
|
|
|
|
|
|
|
|
.title {
|
|
|
|
text-align: left;
|
|
|
|
font-size: 1.25rem;
|
|
|
|
color: #fff;
|
|
|
|
}
|
|
|
|
|
|
|
|
.todo {
|
|
|
|
margin-top: 1rem;
|
|
|
|
font-size: 6rem;
|
|
|
|
color: #fff;
|
|
|
|
}
|
2025-07-28 15:52:07 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
.bg-to {
|
2025-08-19 23:48:38 +08:00
|
|
|
cursor: pointer;
|
|
|
|
z-index: 3;
|
|
|
|
position: absolute;
|
|
|
|
bottom: 5%;
|
|
|
|
right: 3%;
|
|
|
|
margin-top: 10px;
|
|
|
|
color: white;
|
2025-07-28 15:52:07 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
.six-action-item:hover,
|
|
|
|
.fast-act:hover {
|
2025-08-19 23:48:38 +08:00
|
|
|
cursor: pointer;
|
2025-07-28 15:52:07 +08:00
|
|
|
|
2025-08-19 23:48:38 +08:00
|
|
|
transform: scale(1.1);
|
2025-07-28 15:52:07 +08:00
|
|
|
}
|
2025-08-19 23:48:38 +08:00
|
|
|
</style>
|