feat(待办模块): 添加辅导员成果绩效审核功能

在xw-undo.vue、sj-undo.vue和jwc-undo.vue三个组件中新增了辅导员管理-成果绩效审核的待办项,用于支持相关审核流程
This commit is contained in:
2025-08-19 23:48:38 +08:00
parent db4461c386
commit a4e8abfdc8
4 changed files with 407 additions and 374 deletions

View File

@@ -1,15 +1,22 @@
<template> <template>
<div> <div>
<div class="six-action-container"> <div class="six-action-container">
<div style="padding: 1rem;" class="six-action-item" v-for="(v, i) in taskList" :key="i"> <div
<div class="bubble" style="padding: 1rem"
:style="{ backgroundImage: `url(${require('@/assets/index_bg/' + (i + 1) + '.png')})` }"> 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="act-text">
<div class="title">{{ v.label }}·待办</div>
<div class="title">
{{ v.label }}·待办
</div>
<div class="todo"> <div class="todo">
{{ v.value }} {{ v.value }}
</div> </div>
@@ -22,7 +29,6 @@
</template> </template>
<script> <script>
import { isEmpty } from "@/api/helpFunc"; import { isEmpty } from "@/api/helpFunc";
import { countDeptUnTodo as getUndo } from "@/api/workstudy/post"; import { countDeptUnTodo as getUndo } from "@/api/workstudy/post";
@@ -34,19 +40,20 @@ export default {
data() { data() {
return { return {
hasPrem: false, hasPrem: false,
taskList: [ taskList: [],
],
myChartStyle: {
float: "left",
width: "400px",
height: "300px",
margin: 0,
}, //图表样式
myChartStyle: { float: "left", width: "400px", height: "300px", margin: 0 },//图表样式 init_park_list: [],
};
init_park_list: []
}
}, },
created() { created() {
if (checkPermi(['home:dept:qgzx'])) { if (checkPermi(["home:dept:qgzx"])) {
this.getUndo(); this.getUndo();
this.hasPrem = true; this.hasPrem = true;
} }
@@ -62,13 +69,13 @@ export default {
label: "部门·学生岗位审核", label: "部门·学生岗位审核",
name: "post", name: "post",
value: data.post, value: data.post,
url: "/workstudy/post/dept" url: "/workstudy/post/dept",
}); });
this.taskList.push({ this.taskList.push({
label: "部门·薪资审核", label: "部门·薪资审核",
name: "money", name: "money",
value: data.money, value: data.money,
url: "/workstudy/money/dept" url: "/workstudy/money/dept",
}); });
} }
}, },
@@ -78,10 +85,8 @@ export default {
this.$router.push(url); this.$router.push(url);
} }
}, },
} },
};
}
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
@@ -111,7 +116,6 @@ export default {
z-index: 2; z-index: 2;
margin: 1rem; margin: 1rem;
.title { .title {
text-align: left; text-align: left;
font-size: 1.25rem; font-size: 1.25rem;

View File

@@ -1,13 +1,22 @@
<template> <template>
<div> <div>
<div class="six-action-container"> <div class="six-action-container">
<div style="padding: 1rem;" class="six-action-item" v-for="(v, i) in taskList" :key="i"> <div
<div class="bubble" style="padding: 1rem"
:style="{ backgroundImage: `url(${require('@/assets/index_bg/' + (i + 1) + '.png')})` }"> 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="act-text">
<div class="title"> <div class="title">{{ v.label }}·待办</div>
{{ v.label }}·待办
</div>
<div class="todo"> <div class="todo">
{{ v.value }} {{ v.value }}
</div> </div>
@@ -20,12 +29,10 @@
</template> </template>
<script> <script>
import { countJwcUnDo as countUndo } from "@/api/stuCQS/good/apply"; import { countJwcUnDo as countUndo } from "@/api/stuCQS/good/apply";
import { isEmpty } from "@/api/helpFunc"; import { isEmpty } from "@/api/helpFunc";
import { checkPermi } from "@/utils/permission"; import { checkPermi } from "@/utils/permission";
export default { export default {
name: "jwc-undo", name: "jwc-undo",
data() { data() {
@@ -36,56 +43,56 @@ export default {
label: "学工·评优评先审核", label: "学工·评优评先审核",
name: "good", name: "good",
value: 0, value: 0,
url: "/stuGood/about-good/jwc" url: "/stuGood/about-good/jwc",
}, },
{ {
label: "学工·静湖之星审核", label: "学工·静湖之星审核",
name: "lake", name: "lake",
value: 0, value: 0,
url: "/stuGood/about-lake/jwc" url: "/stuGood/about-lake/jwc",
}, },
{ {
label: "学工·优秀毕业生审核", label: "学工·优秀毕业生审核",
name: "biye", name: "biye",
value: 0, value: 0,
url: "/stuGood/good-graduate/jwc" url: "/stuGood/good-graduate/jwc",
}, },
{ {
label: "学工·困难认定审核", label: "学工·困难认定审核",
name: "kn", name: "kn",
value: 0, value: 0,
url: "/hard/pks/jwc" url: "/hard/pks/jwc",
}, },
{ {
label: "学工·助学金审核", label: "学工·助学金审核",
name: "zx", name: "zx",
value: 0, value: 0,
url: "/hard/zxj/jwc" url: "/hard/zxj/jwc",
}, },
{ {
label: "学工·宿舍管理审核", label: "学工·宿舍管理审核",
name: "dms", name: "dms",
value: 0, value: 0,
url: "/dormitory/stuDormitoryManage/final" url: "/dormitory/stuDormitoryManage/final",
}, },
{ {
label: "学工·任务管理审核", label: "学工·任务管理审核",
name: "rwgl", name: "rwgl",
value: 0, value: 0,
url: "/task/todo" url: "/task/todo",
}, },
{ {
label: "学工·困难资助审核", label: "学工·困难资助审核",
name: "knzz", name: "knzz",
value: 0, value: 0,
url: "hard/tufa/xg" url: "hard/tufa/xg",
}, },
// 宁博 // 宁博
{ {
label: "学工·国家励志奖学金审核", label: "学工·国家励志奖学金审核",
name: "knzzgl", name: "knzzgl",
value: 0, value: 0,
url: "/hard/gl/xg" url: "/hard/gl/xg",
}, },
// 陈冠元 // 陈冠元
{ {
@@ -98,33 +105,39 @@ export default {
label: "学工·学生证补办审核", label: "学工·学生证补办审核",
name: "xszb", name: "xszb",
value: 0, value: 0,
url: "/routine/sicr/learningIndustrialProductionAudit" url: "/routine/sicr/learningIndustrialProductionAudit",
}, },
{ {
label: "学工·在校证明审核", label: "学工·在校证明审核",
name: "zxzm", name: "zxzm",
value: 0, value: 0,
url: "/routine/school/learning" url: "/routine/school/learning",
}, },
//知无涯 学工·中职升高职补助审核 //知无涯 学工·中职升高职补助审核
{ {
label: "学工·中职升高职补助审核", label: "学工·中职升高职补助审核",
name: "zsg", name: "zsg",
value: 0, value: 0,
url: "/hard/zsg/xg" url: "/hard/zsg/xg",
}, },
{ {
label: "学·辅导员综合绩效审核初审", label: "学·辅导员综合绩效审核初审",
name: "jx", name: "jx",
value: 0, value: 0,
url: "teacher/performance/evaluate/learn" url: "teacher/performance/evaluate/learn",
}, },
] // 宁博
{
} label: "学工·辅导员管理-成果绩效审核",
name: "cg",
value: 0,
url: "/teacher/achievement/achievementCheck",
},
],
};
}, },
created() { created() {
if (checkPermi(['home:xg:undo1'])) { if (checkPermi(["home:xg:undo1"])) {
this.countUndo(); this.countUndo();
this.hasPrem = true; this.hasPrem = true;
} }
@@ -134,8 +147,8 @@ export default {
let res = await countUndo(); let res = await countUndo();
if (res.code == 200) { if (res.code == 200) {
let data = [...res.data]; let data = [...res.data];
this.taskList.map(x => { this.taskList.map((x) => {
let temp = data.filter(y => y.startsWith(x.name)); let temp = data.filter((y) => y.startsWith(x.name));
if (!isEmpty(temp)) { if (!isEmpty(temp)) {
let result = temp[0].split("-")[1]; let result = temp[0].split("-")[1];
x.value = result; x.value = result;
@@ -149,10 +162,8 @@ export default {
this.$router.push(url); this.$router.push(url);
} }
}, },
} },
};
}
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
@@ -182,7 +193,6 @@ export default {
z-index: 2; z-index: 2;
margin: 1rem; margin: 1rem;
.title { .title {
text-align: left; text-align: left;
font-size: 1.25rem; font-size: 1.25rem;

View File

@@ -1,13 +1,22 @@
<template> <template>
<div> <div>
<div class="six-action-container"> <div class="six-action-container">
<div style="padding: 1rem;" class="six-action-item" v-for="(v, i) in taskList" :key="i"> <div
<div class="bubble" style="padding: 1rem"
:style="{ backgroundImage: `url(${require('@/assets/index_bg/' + (i + 1) + '.png')})` }"> 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="act-text">
<div class="title"> <div class="title">{{ v.label }}·待办</div>
{{ v.label }}·待办
</div>
<div class="todo"> <div class="todo">
{{ v.value }} {{ v.value }}
</div> </div>
@@ -20,7 +29,6 @@
</template> </template>
<script> <script>
import { countSjUnDo as countUndo } from "@/api/stuCQS/good/apply"; import { countSjUnDo as countUndo } from "@/api/stuCQS/good/apply";
import { isEmpty } from "@/api/helpFunc"; import { isEmpty } from "@/api/helpFunc";
import { checkPermi } from "@/utils/permission"; import { checkPermi } from "@/utils/permission";
@@ -41,14 +49,20 @@ export default {
label: "书记·辅导员综合绩效审核", label: "书记·辅导员综合绩效审核",
name: "jx", name: "jx",
value: 0, value: 0,
url: "teacher/performance/evaluate/party" url: "teacher/performance/evaluate/party",
}, },
] // 宁博
{
} label: "书记·辅导员管理-成果绩效审核",
name: "cg",
value: 0,
url: "/teacher/achievement/achievementCheck",
},
],
};
}, },
created() { created() {
if (checkPermi(['home:sj:undo1'])) { if (checkPermi(["home:sj:undo1"])) {
this.countUndo(); this.countUndo();
this.hasPrem = true; this.hasPrem = true;
} }
@@ -58,8 +72,8 @@ export default {
let res = await countUndo(); let res = await countUndo();
if (res.code == 200) { if (res.code == 200) {
let data = [...res.data]; let data = [...res.data];
this.taskList.map(x => { this.taskList.map((x) => {
let temp = data.filter(y => y.startsWith(x.name)); let temp = data.filter((y) => y.startsWith(x.name));
if (!isEmpty(temp)) { if (!isEmpty(temp)) {
let result = temp[0].split("-")[1]; let result = temp[0].split("-")[1];
x.value = result; x.value = result;
@@ -73,9 +87,8 @@ export default {
this.$router.push(url); this.$router.push(url);
} }
}, },
} },
};
}
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
@@ -105,7 +118,6 @@ export default {
z-index: 2; z-index: 2;
margin: 1rem; margin: 1rem;
.title { .title {
text-align: left; text-align: left;
font-size: 1.25rem; font-size: 1.25rem;

View File

@@ -102,6 +102,13 @@ export default {
value: 0, value: 0,
url: "/hard/zzq/xw", url: "/hard/zzq/xw",
}, },
// 宁博
{
label: "学务·辅导员管理-成果绩效审核",
name: "cg",
value: 0,
url: "/teacher/achievement/achievementCheck",
},
], ],
}; };
}, },