mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-13 04:46:46 +08:00
Merge branch 'compulsory_professional_skills' into master_1202
This commit is contained in:
@@ -18,8 +18,8 @@ import { boeRequest } from "@/api/request";
|
|||||||
// "application/x-www-form-urlencoded";
|
// "application/x-www-form-urlencoded";
|
||||||
axios.defaults.withCredentials = true;
|
axios.defaults.withCredentials = true;
|
||||||
const http = axios.create({
|
const http = axios.create({
|
||||||
baseURL: '/growth',
|
// baseURL: '/growth',
|
||||||
// baseURL: process.env.VUE_APP_BASE_API_GROWTH,
|
baseURL: process.env.VUE_APP_BASE_API_GROWTH,
|
||||||
timeout: 1000 * 15,
|
timeout: 1000 * 15,
|
||||||
// headers: { "Content-Type": "multipart/form-data" },
|
// headers: { "Content-Type": "multipart/form-data" },
|
||||||
headers: { "Content-Type": "application/json" },
|
headers: { "Content-Type": "application/json" },
|
||||||
|
|||||||
@@ -760,6 +760,19 @@
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
if (n.indexOf("/growthpathmap") !== -1 || n.indexOf("/growthPathMap") !== -1) {
|
||||||
|
state.list = [
|
||||||
|
{
|
||||||
|
name: "报表中心",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name:'板块详细数据'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name:'专业力必修'
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
if (n.indexOf("/reportproject") !== -1 || n.indexOf("/ReportProject") !== -1) {
|
if (n.indexOf("/reportproject") !== -1 || n.indexOf("/ReportProject") !== -1) {
|
||||||
state.list = [
|
state.list = [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -668,6 +668,15 @@
|
|||||||
<div class="img"></div>
|
<div class="img"></div>
|
||||||
</template>
|
</template>
|
||||||
<template #title>版块详细数据</template>
|
<template #title>版块详细数据</template>
|
||||||
|
<!-- <a-menu-item key="sub17-2-8" v-if="checkMenu('growthpathmap')">
|
||||||
|
<span
|
||||||
|
:class="{
|
||||||
|
circleActive: selectedKeys[0] === 'sub17-2-8' ? true : false,
|
||||||
|
circle: selectedKeys[0] === 'sub17-2-8' ? false : true,
|
||||||
|
}"
|
||||||
|
></span>
|
||||||
|
<router-link to="/growthpathmap">专业力必修</router-link>
|
||||||
|
</a-menu-item> -->
|
||||||
<a-menu-item key="sub17-2-1" v-if="checkMenu('learningpathmap')">
|
<a-menu-item key="sub17-2-1" v-if="checkMenu('learningpathmap')">
|
||||||
<span
|
<span
|
||||||
:class="{
|
:class="{
|
||||||
@@ -1282,6 +1291,13 @@ export default {
|
|||||||
selectedKeys: "sub17-2-7",
|
selectedKeys: "sub17-2-7",
|
||||||
pagename: "考试",
|
pagename: "考试",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
href: "/growthpathmap",
|
||||||
|
openKeys: "sub17",
|
||||||
|
openKeys2: "sub17-2",
|
||||||
|
selectedKeys: "sub17-2-8",
|
||||||
|
pagename: "专业力必修",
|
||||||
|
},
|
||||||
{
|
{
|
||||||
href: "/overvoew",
|
href: "/overvoew",
|
||||||
openKeys: "sub17",
|
openKeys: "sub17",
|
||||||
|
|||||||
@@ -164,7 +164,7 @@ async function confirm() {
|
|||||||
|
|
||||||
.main_left {
|
.main_left {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
margin-top: 0px !important;
|
margin-top: 0px !important;
|
||||||
padding-right: 0px;
|
padding-right: 0px;
|
||||||
|
|
||||||
|
|||||||
@@ -550,7 +550,7 @@ defineExpose({ setStep });
|
|||||||
padding-right: 30px;
|
padding-right: 30px;
|
||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ function itemDel(i) {
|
|||||||
margin-left: 50px;
|
margin-left: 50px;
|
||||||
padding-right: 30px;
|
padding-right: 30px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -410,7 +410,7 @@ defineExpose({ openDrawer });
|
|||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
padding-right: 30px;
|
padding-right: 30px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -190,6 +190,10 @@ defineExpose({ openDrawer });
|
|||||||
}
|
}
|
||||||
|
|
||||||
.growth-discuss {
|
.growth-discuss {
|
||||||
|
.ant-spin-container,
|
||||||
|
.ant-spin-nested-loading {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
.drawerMain {
|
.drawerMain {
|
||||||
.header {
|
.header {
|
||||||
height: 73px;
|
height: 73px;
|
||||||
@@ -216,7 +220,7 @@ defineExpose({ openDrawer });
|
|||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
padding-right: 30px;
|
padding-right: 30px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -300,7 +300,12 @@ defineExpose({ openDrawer });
|
|||||||
min-width: 800px !important;
|
min-width: 800px !important;
|
||||||
width: 800px !important;
|
width: 800px !important;
|
||||||
}
|
}
|
||||||
|
::v-deep.ant-spin-nested-loading {
|
||||||
|
height: 100%;
|
||||||
|
.ant-spin-container {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
.growth-eval {
|
.growth-eval {
|
||||||
.drawerMain {
|
.drawerMain {
|
||||||
.header {
|
.header {
|
||||||
@@ -328,7 +333,7 @@ defineExpose({ openDrawer });
|
|||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
padding-right: 0px;
|
padding-right: 0px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -679,7 +679,7 @@ defineExpose({ openDrawer });
|
|||||||
padding-right: 30px;
|
padding-right: 30px;
|
||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ async function confirm() {
|
|||||||
formData.value.info.submitStartTime,
|
formData.value.info.submitStartTime,
|
||||||
"minutes"
|
"minutes"
|
||||||
);
|
);
|
||||||
spinning.value = true
|
spinning.value = true;
|
||||||
saveTask(formData.value)
|
saveTask(formData.value)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.data.code == 200) {
|
if (res.data.code == 200) {
|
||||||
@@ -238,6 +238,10 @@ defineExpose({ openDrawer });
|
|||||||
}
|
}
|
||||||
|
|
||||||
.growth-homework {
|
.growth-homework {
|
||||||
|
.ant-spin-container,
|
||||||
|
.ant-spin-nested-loading {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
.drawerMain {
|
.drawerMain {
|
||||||
.header {
|
.header {
|
||||||
height: 73px;
|
height: 73px;
|
||||||
@@ -262,7 +266,7 @@ defineExpose({ openDrawer });
|
|||||||
|
|
||||||
.main_left {
|
.main_left {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
padding-right: 0px;
|
padding-right: 0px;
|
||||||
|
|
||||||
|
|||||||
@@ -612,7 +612,7 @@ const beforeUpload = (file) => {
|
|||||||
.contentMain {
|
.contentMain {
|
||||||
.main_left {
|
.main_left {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
|
|||||||
@@ -191,6 +191,10 @@ defineExpose({ openDrawer });
|
|||||||
}
|
}
|
||||||
|
|
||||||
.growth-ref {
|
.growth-ref {
|
||||||
|
.ant-spin-container,
|
||||||
|
.ant-spin-nested-loading {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
.drawerMain {
|
.drawerMain {
|
||||||
.header {
|
.header {
|
||||||
height: 73px;
|
height: 73px;
|
||||||
@@ -216,7 +220,7 @@ defineExpose({ openDrawer });
|
|||||||
.main_left {
|
.main_left {
|
||||||
padding-right: 30px;
|
padding-right: 30px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
|
|||||||
@@ -138,7 +138,7 @@ const props = defineProps({
|
|||||||
// 弹框标题
|
// 弹框标题
|
||||||
const title = computed(() => {
|
const title = computed(() => {
|
||||||
if (step.value == 1) {
|
if (step.value == 1) {
|
||||||
return formData.value.info ? "编辑投票任务" : "添加投票";
|
return formData.value.id ? "编辑投票任务" : "添加投票";
|
||||||
} else if (step.value == 2) {
|
} else if (step.value == 2) {
|
||||||
return "创建投票题干";
|
return "创建投票题干";
|
||||||
}
|
}
|
||||||
@@ -277,7 +277,12 @@ defineExpose({ openDrawer });
|
|||||||
.ant-table-striped :deep(.table-striped) td {
|
.ant-table-striped :deep(.table-striped) td {
|
||||||
background-color: #fafafa !important;
|
background-color: #fafafa !important;
|
||||||
}
|
}
|
||||||
|
::v-deep.ant-spin-nested-loading {
|
||||||
|
height: 100%;
|
||||||
|
.ant-spin-container {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
.growth-vote {
|
.growth-vote {
|
||||||
.drawerMain {
|
.drawerMain {
|
||||||
.header {
|
.header {
|
||||||
@@ -304,7 +309,7 @@ defineExpose({ openDrawer });
|
|||||||
.main_left {
|
.main_left {
|
||||||
padding-right: 30px;
|
padding-right: 30px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
border-right: 1px solid #e8e8e8;
|
// border-right: 1px solid #e8e8e8;
|
||||||
margin-top: 0px;
|
margin-top: 0px;
|
||||||
|
|
||||||
.main_item {
|
.main_item {
|
||||||
|
|||||||
@@ -1131,7 +1131,7 @@ export default {
|
|||||||
codeUrl =
|
codeUrl =
|
||||||
window.location.protocol +
|
window.location.protocol +
|
||||||
process.env.VUE_APP_EXAM_DETAIL_URL +
|
process.env.VUE_APP_EXAM_DETAIL_URL +
|
||||||
item.info.examinationPaperId;
|
item.info.examinationTestId;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 直播结束时间
|
// 直播结束时间
|
||||||
|
|||||||
@@ -3,55 +3,78 @@
|
|||||||
<div class="overvoew">
|
<div class="overvoew">
|
||||||
<!-- 以下为顶部搜索框 -->
|
<!-- 以下为顶部搜索框 -->
|
||||||
<div class="filterShow">
|
<div class="filterShow">
|
||||||
<div class="select">
|
<template v-if="currentTab == 6">
|
||||||
<!-- <a-select
|
<div class="select">
|
||||||
|
<a-input
|
||||||
|
v-model:value="stdPositionDesr"
|
||||||
|
:disabled="editId"
|
||||||
|
style=" height: 40px; border-radius: 8px"
|
||||||
|
allowClear
|
||||||
|
placeholder="填写标准岗位"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="select">
|
||||||
|
<a-input
|
||||||
|
v-model:value="qualsLevelDesr"
|
||||||
|
:disabled="editId"
|
||||||
|
style=" height: 40px; border-radius: 8px"
|
||||||
|
allowClear
|
||||||
|
placeholder="填写任职资格等级"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template v-else>
|
||||||
|
<div class="select">
|
||||||
|
<!-- <a-select
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
placeholder="请选择组织"
|
placeholder="请选择组织"
|
||||||
v-model:value="orgId"
|
v-model:value="orgId"
|
||||||
:options="option"
|
:options="option"
|
||||||
allowClear
|
allowClear
|
||||||
></a-select> -->
|
></a-select> -->
|
||||||
<a-cascader
|
<a-cascader
|
||||||
change-on-select
|
change-on-select
|
||||||
:options="option"
|
:options="option"
|
||||||
v-model:value="orgId"
|
v-model:value="orgId"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
placeholder="请选择归属组织"
|
placeholder="请选择归属组织"
|
||||||
:allowClear=false
|
:allowClear="false"
|
||||||
:fieldNames="{
|
:fieldNames="{
|
||||||
label: 'orgName',
|
label: 'orgName',
|
||||||
value: 'organizationId',
|
value: 'organizationId',
|
||||||
children: 'childList',
|
children: 'childList',
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
</a-cascader>
|
</a-cascader>
|
||||||
</div>
|
</div>
|
||||||
<div class="select">
|
<div class="select">
|
||||||
<a-input
|
<a-input
|
||||||
style="width: 100%; height: 40px; border-radius: 8px"
|
style="width: 100%; height: 40px; border-radius: 8px"
|
||||||
placeholder="请输入名称"
|
placeholder="请输入名称"
|
||||||
allowClear
|
allowClear
|
||||||
showSearch
|
showSearch
|
||||||
v-model:value="name"
|
v-model:value="name"
|
||||||
>
|
>
|
||||||
</a-input>
|
</a-input>
|
||||||
</div>
|
</div>
|
||||||
<div class="select">
|
<div class="select">
|
||||||
<a-input
|
<a-input
|
||||||
style="width: 100%; height: 40px; border-radius: 8px"
|
style="width: 100%; height: 40px; border-radius: 8px"
|
||||||
placeholder="请输入创建者"
|
placeholder="请输入创建者"
|
||||||
v-model:value="creator"
|
v-model:value="creator"
|
||||||
allowClear
|
allowClear
|
||||||
showSearch
|
showSearch
|
||||||
>
|
>
|
||||||
</a-input>
|
</a-input>
|
||||||
</div>
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
<div class="select">
|
<div class="select">
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="publishTime"
|
v-model:value="publishTime"
|
||||||
type="date"
|
type="date"
|
||||||
valueFormat="YYYY-MM-DD"
|
valueFormat="YYYY-MM-DD"
|
||||||
:placeholder="['创建开始时间','结束时间']"
|
:placeholder="['创建开始时间', '结束时间']"
|
||||||
style="width: 100%; margin-right: 0px"
|
style="width: 100%; margin-right: 0px"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -75,7 +98,7 @@
|
|||||||
:class="currentTab === index ? 'tabActive' : 'tabItem'"
|
:class="currentTab === index ? 'tabActive' : 'tabItem'"
|
||||||
@click="tabClick(index)"
|
@click="tabClick(index)"
|
||||||
>
|
>
|
||||||
<a-popover v-if="index==0" trigger="hover" placement="topLeft">
|
<a-popover v-if="index == 0" trigger="hover" placement="topLeft">
|
||||||
<template #content>
|
<template #content>
|
||||||
此处数据展示全部单层项目数量,列表展示条数与此处数量可能存在差异
|
此处数据展示全部单层项目数量,列表展示条数与此处数量可能存在差异
|
||||||
</template>
|
</template>
|
||||||
@@ -306,7 +329,7 @@ import axios from "axios";
|
|||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import Cookies from "vue-cookies";
|
import Cookies from "vue-cookies";
|
||||||
import {useStore} from "vuex";
|
import { useStore } from "vuex";
|
||||||
export default {
|
export default {
|
||||||
name: "OvervoeW",
|
name: "OvervoeW",
|
||||||
setup() {
|
setup() {
|
||||||
@@ -323,17 +346,19 @@ export default {
|
|||||||
selectedRowKeys: [], // 选中的列
|
selectedRowKeys: [], // 选中的列
|
||||||
option: [],
|
option: [],
|
||||||
resetOrgId: [],
|
resetOrgId: [],
|
||||||
|
stdPositionDesr: null, // 标准岗位
|
||||||
|
qualsLevelDesr: "", //任职资格
|
||||||
allowClear: true,
|
allowClear: true,
|
||||||
type: null,
|
type: null,
|
||||||
publishTime: [], // 创建时间
|
publishTime: [], // 创建时间
|
||||||
});
|
});
|
||||||
// 获取tab数据
|
// 获取tab数据
|
||||||
const getTabData = async () => {
|
const getTabData = async () => {
|
||||||
console.log("getTabData 111111:",state.type);
|
console.log("getTabData 111111:", state.type);
|
||||||
console.log("getTabData 222222:",store.state.userInfo.roleList);
|
console.log("getTabData 222222:", store.state.userInfo.roleList);
|
||||||
var manageFlag = false;
|
var manageFlag = false;
|
||||||
for(let i=0;i<store.state.userInfo.roleList.length;i++){
|
for (let i = 0; i < store.state.userInfo.roleList.length; i++) {
|
||||||
if(store.state.userInfo.roleList[i].roleCode=="system-admin"){
|
if (store.state.userInfo.roleList[i].roleCode == "system-admin") {
|
||||||
manageFlag = true;
|
manageFlag = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -347,8 +372,14 @@ export default {
|
|||||||
name: state.name,
|
name: state.name,
|
||||||
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
creator: state.creator,
|
creator: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
},
|
},
|
||||||
headers: {
|
headers: {
|
||||||
token: Cookies.get("token"),
|
token: Cookies.get("token"),
|
||||||
@@ -361,7 +392,7 @@ export default {
|
|||||||
{ text: "课程", num: res.data.result?.courseTotal },
|
{ text: "课程", num: res.data.result?.courseTotal },
|
||||||
{ text: "考试", num: res.data.result?.examTotal },
|
{ text: "考试", num: res.data.result?.examTotal },
|
||||||
{ text: "案例", num: res.data.result?.caseTotal },
|
{ text: "案例", num: res.data.result?.caseTotal },
|
||||||
// { text: "专业力", num: 10 },
|
// { text: "专业力", num: res.data.result?.growthTotal },
|
||||||
];
|
];
|
||||||
tabData.value = list;
|
tabData.value = list;
|
||||||
});
|
});
|
||||||
@@ -373,39 +404,45 @@ export default {
|
|||||||
state.publishTime = [];
|
state.publishTime = [];
|
||||||
state.name = "";
|
state.name = "";
|
||||||
state.orgId = state.resetOrgId;
|
state.orgId = state.resetOrgId;
|
||||||
|
state.stdPositionDesr = null;
|
||||||
|
state.qualsLevelDesr = null;
|
||||||
getTableData();
|
getTableData();
|
||||||
getTabData();
|
getTabData();
|
||||||
};
|
};
|
||||||
//请求组织接口
|
//请求组织接口
|
||||||
const getOrgList = async () => {
|
const getOrgList = async () => {
|
||||||
var manageFlag = false;
|
var manageFlag = false;
|
||||||
for(let i=0;i<store.state.userInfo.roleList.length;i++){
|
for (let i = 0; i < store.state.userInfo.roleList.length; i++) {
|
||||||
if(store.state.userInfo.roleList[i].roleCode=="system-admin"){
|
if (store.state.userInfo.roleList[i].roleCode == "system-admin") {
|
||||||
manageFlag = true;
|
manageFlag = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const res = await api.userGetUserOrg({});
|
const res = await api.userGetUserOrg({});
|
||||||
if (res) {
|
if (res) {
|
||||||
if(manageFlag){
|
if (manageFlag) {
|
||||||
state.option = [{
|
state.option = [
|
||||||
orgName:"全部",
|
{
|
||||||
organizationId: null,
|
orgName: "全部",
|
||||||
childList:res.data?.result.orgTreeList
|
organizationId: null,
|
||||||
}];
|
childList: res.data?.result.orgTreeList,
|
||||||
state.orgId = [null,...res.data?.result.treeNodeList];
|
},
|
||||||
state.resetOrgId = [null,...res.data?.result.treeNodeList];
|
];
|
||||||
}else{
|
state.orgId = [null, ...res.data?.result.treeNodeList];
|
||||||
if(res.data?.result.orgTreeList!=null){
|
state.resetOrgId = [null, ...res.data?.result.treeNodeList];
|
||||||
|
} else {
|
||||||
|
if (res.data?.result.orgTreeList != null) {
|
||||||
state.option = res.data?.result.orgTreeList;
|
state.option = res.data?.result.orgTreeList;
|
||||||
state.orgId = res.data?.result.treeNodeList;
|
state.orgId = res.data?.result.treeNodeList;
|
||||||
state.resetOrgId = res.data?.result.treeNodeList;
|
state.resetOrgId = res.data?.result.treeNodeList;
|
||||||
}else{
|
} else {
|
||||||
state.option = [{
|
state.option = [
|
||||||
orgName:"无权限",
|
{
|
||||||
organizationId: "1",
|
orgName: "无权限",
|
||||||
childList:[],
|
organizationId: "1",
|
||||||
}];
|
childList: [],
|
||||||
|
},
|
||||||
|
];
|
||||||
state.orgId = ["1"];
|
state.orgId = ["1"];
|
||||||
state.resetOrgId = ["1"];
|
state.resetOrgId = ["1"];
|
||||||
}
|
}
|
||||||
@@ -506,12 +543,16 @@ export default {
|
|||||||
url: "/report/boeu/case/exportAll",
|
url: "/report/boeu/case/exportAll",
|
||||||
data: {
|
data: {
|
||||||
name: state.name,
|
name: state.name,
|
||||||
orgId: state.orgId
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
? state.orgId[state.orgId.length - 1]
|
|
||||||
: null,
|
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
},
|
},
|
||||||
responseType: "blob",
|
responseType: "blob",
|
||||||
headers: {
|
headers: {
|
||||||
@@ -526,12 +567,16 @@ export default {
|
|||||||
url: "/report/boeu/exam/exportAll",
|
url: "/report/boeu/exam/exportAll",
|
||||||
data: {
|
data: {
|
||||||
name: state.name,
|
name: state.name,
|
||||||
orgId: state.orgId
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
? state.orgId[state.orgId.length - 1]
|
|
||||||
: null,
|
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
},
|
},
|
||||||
responseType: "blob",
|
responseType: "blob",
|
||||||
headers: {
|
headers: {
|
||||||
@@ -550,8 +595,14 @@ export default {
|
|||||||
? state.orgId[state.orgId.length - 1]
|
? state.orgId[state.orgId.length - 1]
|
||||||
: null,
|
: null,
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
},
|
},
|
||||||
responseType: "blob",
|
responseType: "blob",
|
||||||
headers: {
|
headers: {
|
||||||
@@ -570,8 +621,14 @@ export default {
|
|||||||
? state.orgId[state.orgId.length - 1]
|
? state.orgId[state.orgId.length - 1]
|
||||||
: null,
|
: null,
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
},
|
},
|
||||||
responseType: "blob",
|
responseType: "blob",
|
||||||
headers: {
|
headers: {
|
||||||
@@ -586,12 +643,16 @@ export default {
|
|||||||
url: "/report/boeu/router/exportAll",
|
url: "/report/boeu/router/exportAll",
|
||||||
data: {
|
data: {
|
||||||
name: state.name,
|
name: state.name,
|
||||||
orgId: state.orgId
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
? state.orgId[state.orgId.length - 1]
|
|
||||||
: null,
|
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
},
|
},
|
||||||
responseType: "blob",
|
responseType: "blob",
|
||||||
headers: {
|
headers: {
|
||||||
@@ -608,8 +669,14 @@ export default {
|
|||||||
name: state.name,
|
name: state.name,
|
||||||
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startCreateTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startCreateTime:
|
||||||
endCreateTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endCreateTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
},
|
},
|
||||||
responseType: "blob",
|
responseType: "blob",
|
||||||
headers: {
|
headers: {
|
||||||
@@ -631,9 +698,16 @@ export default {
|
|||||||
if (state.currentTab === 6) {
|
if (state.currentTab === 6) {
|
||||||
//专业力列表
|
//专业力列表
|
||||||
const res = await api.boeuGrowthPlatePageList({
|
const res = await api.boeuGrowthPlatePageList({
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
growthName: state.name,
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
|
qualsLevelDesr: state.qualsLevelDesr,
|
||||||
|
stdPositionDesr: state.stdPositionDesr,
|
||||||
page: state.pageNo,
|
page: state.pageNo,
|
||||||
size: state.pageSize,
|
size: state.pageSize,
|
||||||
});
|
});
|
||||||
@@ -653,8 +727,14 @@ export default {
|
|||||||
//考试列表
|
//考试列表
|
||||||
const res = await api.boeuExamPageList({
|
const res = await api.boeuExamPageList({
|
||||||
creator: state.creator,
|
creator: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
testName: state.name,
|
testName: state.name,
|
||||||
page: state.pageNo,
|
page: state.pageNo,
|
||||||
@@ -675,8 +755,14 @@ export default {
|
|||||||
//案例列表
|
//案例列表
|
||||||
const res = await api.boeuCasePageList({
|
const res = await api.boeuCasePageList({
|
||||||
author: state.creator,
|
author: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
title: state.name,
|
title: state.name,
|
||||||
page: state.pageNo,
|
page: state.pageNo,
|
||||||
@@ -702,8 +788,14 @@ export default {
|
|||||||
? state.orgId[state.orgId.length - 1]
|
? state.orgId[state.orgId.length - 1]
|
||||||
: null,
|
: null,
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
});
|
});
|
||||||
const list = res.data.result.rows.map((item) => {
|
const list = res.data.result.rows.map((item) => {
|
||||||
return {
|
return {
|
||||||
@@ -721,8 +813,14 @@ export default {
|
|||||||
teachingName: state.name,
|
teachingName: state.name,
|
||||||
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
});
|
});
|
||||||
const list = res.data.result.rows?.map((item) => {
|
const list = res.data.result.rows?.map((item) => {
|
||||||
return {
|
return {
|
||||||
@@ -740,8 +838,14 @@ export default {
|
|||||||
routerName: state.name,
|
routerName: state.name,
|
||||||
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
startTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startTime:
|
||||||
endTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
});
|
});
|
||||||
const list = res.data.result.rows?.map((item) => {
|
const list = res.data.result.rows?.map((item) => {
|
||||||
return {
|
return {
|
||||||
@@ -759,8 +863,14 @@ export default {
|
|||||||
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
createName: state.creator,
|
createName: state.creator,
|
||||||
projectName: state.name,
|
projectName: state.name,
|
||||||
startCreateTime: typeof state.publishTime[0] === 'undefined' ? null : state.publishTime[0] +" 00:00:01",
|
startCreateTime:
|
||||||
endCreateTime: typeof state.publishTime[1] === 'undefined' ? null : state.publishTime[1]+" 23:59:59",
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endCreateTime:
|
||||||
|
typeof state.publishTime[1] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
});
|
});
|
||||||
if (res) {
|
if (res) {
|
||||||
const fun = (arr) => {
|
const fun = (arr) => {
|
||||||
@@ -1561,12 +1671,12 @@ export default {
|
|||||||
} else if (index === 6) {
|
} else if (index === 6) {
|
||||||
columns.value = [
|
columns.value = [
|
||||||
{
|
{
|
||||||
title: "专业力必修名称",
|
title: "专业力必修",
|
||||||
dataIndex: "growthName",
|
dataIndex: "growthName",
|
||||||
key: "growthName",
|
key: "growthName",
|
||||||
width: 120,
|
width: 200,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
align: "left",
|
align: "center",
|
||||||
fixed: "left",
|
fixed: "left",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -1637,14 +1747,6 @@ export default {
|
|||||||
width: 120,
|
width: 120,
|
||||||
align: "center",
|
align: "center",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
title: "归属人名称",
|
|
||||||
dataIndex: "attrPersonName",
|
|
||||||
ellipsis: true,
|
|
||||||
key: "attrPersonName",
|
|
||||||
width: 120,
|
|
||||||
align: "center",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
title: "状态",
|
title: "状态",
|
||||||
dataIndex: "publishedStatus",
|
dataIndex: "publishedStatus",
|
||||||
@@ -1652,6 +1754,11 @@ export default {
|
|||||||
key: "publishedStatus",
|
key: "publishedStatus",
|
||||||
width: 120,
|
width: 120,
|
||||||
align: "center",
|
align: "center",
|
||||||
|
customRender: ({ record: { publishedStatus } }) =>
|
||||||
|
({
|
||||||
|
1: "已发布",
|
||||||
|
0: "未发布",
|
||||||
|
}[publishedStatus]),
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
694
src/views/report/growthpathmap.vue
Normal file
694
src/views/report/growthpathmap.vue
Normal file
@@ -0,0 +1,694 @@
|
|||||||
|
<template>
|
||||||
|
<div class="growthpathmap">
|
||||||
|
<!-- 以下为顶部搜索框 -->
|
||||||
|
<div class="filter">
|
||||||
|
<div class="select">
|
||||||
|
<a-input
|
||||||
|
v-model:value="stdPositionDesr"
|
||||||
|
style="height: 40px; border-radius: 8px"
|
||||||
|
allowClear
|
||||||
|
placeholder="填写标准岗位"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="select">
|
||||||
|
<a-input
|
||||||
|
v-model:value="qualsLevelDesr"
|
||||||
|
style="height: 40px; border-radius: 8px"
|
||||||
|
allowClear
|
||||||
|
placeholder="填写任职资格等级"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="select">
|
||||||
|
<a-select
|
||||||
|
v-model:value="isPublished"
|
||||||
|
style="height: 40px; width: 100%"
|
||||||
|
placeholder="请选择发布状态"
|
||||||
|
:options="statusValues"
|
||||||
|
allowClear
|
||||||
|
></a-select>
|
||||||
|
</div>
|
||||||
|
<div class="select">
|
||||||
|
<a-range-picker
|
||||||
|
v-model:value="publishTime"
|
||||||
|
type="date"
|
||||||
|
valueFormat="YYYY-MM-DD"
|
||||||
|
:placeholder="['发布开始时间', '结束时间']"
|
||||||
|
style="width: 100%"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div style="display: flex; margin-bottom: 20px">
|
||||||
|
<div class="btnzx btnzx1" @click="searchData">
|
||||||
|
<div class="search"></div>
|
||||||
|
<div class="btnzText">搜索</div>
|
||||||
|
</div>
|
||||||
|
<div class="btnz btnzx2" @click="reset">
|
||||||
|
<div class="search"></div>
|
||||||
|
<div class="btnzText">重置</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 以下为导出按钮 -->
|
||||||
|
<!-- <div class="btnzs">
|
||||||
|
<div class="btnz btnz3" @click="exportAllbtnz">
|
||||||
|
<div>
|
||||||
|
<img src="../../assets/images/coursewareManage/export1.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="btnzText">导出列表信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="btnz btnz3" @click="exportbtnz" style="margin-left: 20px">
|
||||||
|
<div>
|
||||||
|
<img src="../../assets/images/coursewareManage/export1.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="btnzText">导出详细信息</div>
|
||||||
|
</div>
|
||||||
|
</div> -->
|
||||||
|
<!-- 以下为table表格 -->
|
||||||
|
<div class="tableBox">
|
||||||
|
<a-table
|
||||||
|
rowKey="boeRouterInfoId"
|
||||||
|
:columns="columns"
|
||||||
|
:data-source="tableData"
|
||||||
|
:loading="tableLoading"
|
||||||
|
:scroll="{ x: 700 }"
|
||||||
|
:pagination="false"
|
||||||
|
:row-selection="{
|
||||||
|
selectedRowKeys: selectedRowKeys,
|
||||||
|
onChange: onSelectChange,
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<template #bodyCell="{ column, record }">
|
||||||
|
<template v-if="column.key === 'publishTime'">
|
||||||
|
<a-tooltip placement="topRight">
|
||||||
|
<template #title>
|
||||||
|
<span>{{
|
||||||
|
record.publishTime &&
|
||||||
|
dayjs(record.publishTime).format("YYYY-MM-DD HH:mm:ss")
|
||||||
|
}}</span>
|
||||||
|
</template>
|
||||||
|
<span>{{
|
||||||
|
record.publishTime &&
|
||||||
|
dayjs(record.publishTime).format("YYYY-MM-DD HH:mm:ss")
|
||||||
|
}}</span>
|
||||||
|
</a-tooltip>
|
||||||
|
</template>
|
||||||
|
<template v-if="column.key === 'status'">
|
||||||
|
<span>{{
|
||||||
|
record.status == "0"
|
||||||
|
? "草稿"
|
||||||
|
: record.status == "1"
|
||||||
|
? "已发布"
|
||||||
|
: record.status == "-1"
|
||||||
|
? "停用"
|
||||||
|
: ""
|
||||||
|
}}</span>
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
</a-table>
|
||||||
|
<div class="tableBox">
|
||||||
|
<div class="pa">
|
||||||
|
<a-pagination
|
||||||
|
v-if="tableDataTotal > 10"
|
||||||
|
:showSizeChanger="false"
|
||||||
|
showQuickJumper="true"
|
||||||
|
hideOnSinglePage="true"
|
||||||
|
:pageSize="pageSize"
|
||||||
|
v-model:current="pageNum"
|
||||||
|
:total="tableDataTotal"
|
||||||
|
class="pagination"
|
||||||
|
@change="changePagination"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script lang="jsx">
|
||||||
|
import { message } from "ant-design-vue";
|
||||||
|
import * as api from "../../api/indexOvervoew";
|
||||||
|
// import * as api from "../../api/indexWay";
|
||||||
|
import { ref, toRefs, reactive, onMounted } from "vue";
|
||||||
|
import downLoad from "../../utils/downLoad";
|
||||||
|
import Cookies from "vue-cookies";
|
||||||
|
import axios from "axios";
|
||||||
|
import {
|
||||||
|
listData,
|
||||||
|
} from "@/api/growthpath";
|
||||||
|
import dayjs from "dayjs";
|
||||||
|
import { useStore } from "vuex";
|
||||||
|
export default {
|
||||||
|
name: "growthpathmap",
|
||||||
|
setup() {
|
||||||
|
const store = useStore();
|
||||||
|
const state = reactive({
|
||||||
|
tableLoading: false, // table加载图标
|
||||||
|
tableDataTotal: 0, // 数据总条数
|
||||||
|
pageSize: 10, // 每页条数
|
||||||
|
pageNum: 1, //当前页码
|
||||||
|
orgId: null, // 状态值
|
||||||
|
createName: "", // 创建者名称
|
||||||
|
startTime: "", // 开始时间
|
||||||
|
endTime: "", // 结束时间
|
||||||
|
publishTime: "", // 创建时间
|
||||||
|
option: [], // 组织列表
|
||||||
|
boeRouterInfoName: "", // 路径名称
|
||||||
|
selectedRowKeys: [], // 选中的列
|
||||||
|
routerId: [],
|
||||||
|
allowClear: true,
|
||||||
|
resetOrgId: [],
|
||||||
|
routerIdList: [],
|
||||||
|
stdPositionDesr: "",
|
||||||
|
qualsLevelDesr: "",
|
||||||
|
isPublished: null,
|
||||||
|
});
|
||||||
|
const statusValues = ref([
|
||||||
|
{ value: true, label: "已发布" },
|
||||||
|
{ value: false, label: "未发布" },
|
||||||
|
]);
|
||||||
|
// 表格数据
|
||||||
|
let tableData = ref([]);
|
||||||
|
// table选中
|
||||||
|
const onSelectChange = (selectedRowKeys, record) => {
|
||||||
|
state.selectedRowKeys = selectedRowKeys;
|
||||||
|
state.routerId = record?.map((item) => {
|
||||||
|
return item.boeRouterInfoId;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
const searchData = () => {
|
||||||
|
state.pageNum = 1;
|
||||||
|
state.pageSize = 10;
|
||||||
|
getTableData();
|
||||||
|
};
|
||||||
|
// cloumns 表头
|
||||||
|
const columns = ref([
|
||||||
|
{
|
||||||
|
title: "标准岗位",
|
||||||
|
dataIndex: "stdPositionDesr",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "stdPositionDesr",
|
||||||
|
align: "center",
|
||||||
|
width: 240,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "任职资格等级",
|
||||||
|
dataIndex: "qualsLevelDesr",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "qualsLevelDesr",
|
||||||
|
align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Band职级",
|
||||||
|
dataIndex: "band",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "band",
|
||||||
|
align: "center",
|
||||||
|
width: 90,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "总人数",
|
||||||
|
dataIndex: "learnNum",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "learnNum",
|
||||||
|
align: "center",
|
||||||
|
width: 90,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "学习人数",
|
||||||
|
dataIndex: "learningNum",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "learningNum",
|
||||||
|
align: "center",
|
||||||
|
width: 90,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "参与率",
|
||||||
|
dataIndex: "learningRatio",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "learningRatio",
|
||||||
|
align: "center",
|
||||||
|
width: 90,
|
||||||
|
customRender: ({ record: { learningRatio } }) =>
|
||||||
|
`${learningRatio * 100}%`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "完成人数",
|
||||||
|
dataIndex: "comLearnNum",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "comLearnNum",
|
||||||
|
align: "center",
|
||||||
|
width: 90,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "完成率",
|
||||||
|
ellipsis: true,
|
||||||
|
align: "center",
|
||||||
|
width: 90,
|
||||||
|
customRender: ({ record: { comLearnNum, learnNum } }) =>
|
||||||
|
`${((comLearnNum / learnNum) * 100).toFixed()}%`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "发布时间",
|
||||||
|
dataIndex: "publishTime",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "publishTime",
|
||||||
|
align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "发布状态",
|
||||||
|
dataIndex: "isPublished",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "isPublished",
|
||||||
|
align: "center",
|
||||||
|
width: 120,
|
||||||
|
customRender: ({ record: { isPublished } }) =>
|
||||||
|
isPublished ? "已发布" : "未发布",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "创建时间",
|
||||||
|
dataIndex: "createTime",
|
||||||
|
ellipsis: true,
|
||||||
|
key: "createTime",
|
||||||
|
align: "center",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// title: "操作",
|
||||||
|
// dataIndex: "operation",
|
||||||
|
// key: "operation",
|
||||||
|
// width: 200,
|
||||||
|
// align: "center",
|
||||||
|
// fixed: "right",
|
||||||
|
// customRender: (record) => {
|
||||||
|
// return (
|
||||||
|
// <div>
|
||||||
|
// <a
|
||||||
|
// key="export"
|
||||||
|
// onClick={() => {
|
||||||
|
// oneCurrentExport(record);
|
||||||
|
// }}
|
||||||
|
// >
|
||||||
|
// 导出学习记录
|
||||||
|
// </a>
|
||||||
|
// </div>
|
||||||
|
// );
|
||||||
|
// },
|
||||||
|
// },
|
||||||
|
]);
|
||||||
|
|
||||||
|
// 导出当前数据
|
||||||
|
const oneCurrentExport = (record) => {
|
||||||
|
axios({
|
||||||
|
method: "post",
|
||||||
|
url: "/report/boeu/router/exportCurrentRecord",
|
||||||
|
data: { routerId: `${record.record.boeRouterInfoId}` },
|
||||||
|
responseType: "blob",
|
||||||
|
headers: {
|
||||||
|
token: Cookies.get("token"),
|
||||||
|
},
|
||||||
|
}).then((res) => {
|
||||||
|
downLoad(res.data, "专业力当前学习数据.xlsx");
|
||||||
|
});
|
||||||
|
};
|
||||||
|
//table 分页事件
|
||||||
|
const changePagination = (page) => {
|
||||||
|
state.pageNum = page;
|
||||||
|
getTableData();
|
||||||
|
};
|
||||||
|
// 获取数据
|
||||||
|
const getTableData = async () => {
|
||||||
|
state.tableLoading = true;
|
||||||
|
const res = await listData({
|
||||||
|
pageNum: state.pageNum,
|
||||||
|
pageSize: state.pageSize,
|
||||||
|
stdPositionDesr: state.stdPositionDesr,
|
||||||
|
qualsLevelDesr: state.qualsLevelDesr,
|
||||||
|
isPublished: state.isPublished,
|
||||||
|
startTime:
|
||||||
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] == "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
|
});
|
||||||
|
if (res) {
|
||||||
|
state.tableDataTotal = res.data.data.total;
|
||||||
|
const list = res.data.data.records?.map((item) => {
|
||||||
|
return {
|
||||||
|
key: item.id,
|
||||||
|
...item,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
tableData.value = list;
|
||||||
|
state.tableLoading = false;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
// 重置按钮
|
||||||
|
const reset = async () => {
|
||||||
|
state.tableLoading = true;
|
||||||
|
state.stdPositionDesr = "";
|
||||||
|
state.publishTime = [];
|
||||||
|
state.qualsLevelDesr = "";
|
||||||
|
state.isPublished = null;
|
||||||
|
state.selectedRowKeys = [];
|
||||||
|
getTableData();
|
||||||
|
};
|
||||||
|
//导出详细信息
|
||||||
|
const exportbtnz = async () => {
|
||||||
|
if (state.selectedRowKeys?.length > 0) {
|
||||||
|
axios({
|
||||||
|
method: "post",
|
||||||
|
url: "/report/boeu/router/exportCurrentRecord",
|
||||||
|
data: { routerIdList: state.selectedRowKeys },
|
||||||
|
responseType: "blob",
|
||||||
|
headers: {
|
||||||
|
token: Cookies.get("token"),
|
||||||
|
},
|
||||||
|
}).then((res) => {
|
||||||
|
downLoad(res.data, "专业力详细信息.xlsx");
|
||||||
|
}),
|
||||||
|
(err) => {
|
||||||
|
message.error(err);
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
const params = {
|
||||||
|
createName: state.createName,
|
||||||
|
// publishTime: state.publishTime,
|
||||||
|
startTime:
|
||||||
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] == "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
|
routerName: state.routerName,
|
||||||
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
|
};
|
||||||
|
axios({
|
||||||
|
method: "post",
|
||||||
|
url: "/report/boeu/router/exportCurrentRecord",
|
||||||
|
data: params,
|
||||||
|
responseType: "blob",
|
||||||
|
headers: {
|
||||||
|
token: Cookies.get("token"),
|
||||||
|
},
|
||||||
|
}).then((res) => {
|
||||||
|
if (res.data.status && res.data.status == 600) {
|
||||||
|
message.error(res.data.status);
|
||||||
|
} else {
|
||||||
|
downLoad(res.data, "专业力必修详细信息.xlsx");
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
(err) => {
|
||||||
|
message.error(err);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
};
|
||||||
|
// 导出列表信息
|
||||||
|
const exportAllbtnz = async () => {
|
||||||
|
if (state.selectedRowKeys?.length > 0) {
|
||||||
|
axios({
|
||||||
|
method: "post",
|
||||||
|
url: "/report/boeu/router/exportList",
|
||||||
|
data: { routerIdList: state.selectedRowKeys },
|
||||||
|
responseType: "blob",
|
||||||
|
headers: {
|
||||||
|
token: Cookies.get("token"),
|
||||||
|
},
|
||||||
|
}).then((res) => {
|
||||||
|
downLoad(res.data, "专业力必修列表信息.xlsx");
|
||||||
|
}),
|
||||||
|
(err) => {
|
||||||
|
message.error(err);
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
const params = {
|
||||||
|
createName: state.createName,
|
||||||
|
// publishTime: state.publishTime,
|
||||||
|
startTime:
|
||||||
|
typeof state.publishTime[0] === "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[0] + " 00:00:01",
|
||||||
|
endTime:
|
||||||
|
typeof state.publishTime[1] == "undefined"
|
||||||
|
? null
|
||||||
|
: state.publishTime[1] + " 23:59:59",
|
||||||
|
routerName: state.routerName,
|
||||||
|
orgId: state.orgId ? state.orgId[state.orgId.length - 1] : null,
|
||||||
|
};
|
||||||
|
axios({
|
||||||
|
method: "post",
|
||||||
|
url: "/report/boeu/router/exportList",
|
||||||
|
data: params,
|
||||||
|
responseType: "blob",
|
||||||
|
headers: {
|
||||||
|
token: Cookies.get("token"),
|
||||||
|
},
|
||||||
|
}).then((res) => {
|
||||||
|
downLoad(res.data, "专业力必修信息.xlsx");
|
||||||
|
}),
|
||||||
|
(err) => {
|
||||||
|
message.error(err);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
};
|
||||||
|
onMounted(() => {
|
||||||
|
state.tableLoading = true;
|
||||||
|
getTableData();
|
||||||
|
});
|
||||||
|
return {
|
||||||
|
exportAllbtnz,
|
||||||
|
onSelectChange,
|
||||||
|
exportbtnz,
|
||||||
|
reset,
|
||||||
|
getTableData,
|
||||||
|
...toRefs(state),
|
||||||
|
tableData,
|
||||||
|
statusValues,
|
||||||
|
columns,
|
||||||
|
changePagination,
|
||||||
|
dayjs,
|
||||||
|
searchData,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
.growthpathmap {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
.filter {
|
||||||
|
margin-left: 38px;
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-top: 30px;
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
.select {
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
width: calc((100% - 76px - 240px) / 4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnz {
|
||||||
|
padding: 0px 26px 0px 26px;
|
||||||
|
height: 38px;
|
||||||
|
background: rgba(64, 158, 255, 0);
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.search {
|
||||||
|
background-size: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: rgba(64, 158, 255, 1);
|
||||||
|
line-height: 36px;
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzx {
|
||||||
|
padding: 0px 26px 0px 26px;
|
||||||
|
height: 38px;
|
||||||
|
background: #4ea6ff;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
.search {
|
||||||
|
background-size: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #ffffff;
|
||||||
|
line-height: 36px;
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzx1 {
|
||||||
|
.search {
|
||||||
|
width: 15px;
|
||||||
|
height: 17px;
|
||||||
|
background-image: url("../../assets/images/courseManage/search0.png");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzx2 {
|
||||||
|
margin-right: 0px !important;
|
||||||
|
background: #4ea6ff;
|
||||||
|
.search {
|
||||||
|
width: 16px;
|
||||||
|
height: 18px;
|
||||||
|
|
||||||
|
background-image: url("../../assets/images/courseManage/reset0.png");
|
||||||
|
}
|
||||||
|
.btnzText {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzx1:hover {
|
||||||
|
background: rgba(64, 158, 255, 0.76);
|
||||||
|
|
||||||
|
.search {
|
||||||
|
background-image: url("../../assets/images/courseManage/search0.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzText {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.btnzx2:hover {
|
||||||
|
background: rgba(64, 158, 255, 0.76);
|
||||||
|
|
||||||
|
.search {
|
||||||
|
background-image: url("../../assets/images/courseManage/reset0.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzText {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.btnzx1:active,
|
||||||
|
.btnzx2:active {
|
||||||
|
background: #0982ff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.tabbtnz {
|
||||||
|
width: 100%;
|
||||||
|
height: 40px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
.tab {
|
||||||
|
margin-left: 38px;
|
||||||
|
display: flex;
|
||||||
|
background: #ecf5ff;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
border-radius: 8px;
|
||||||
|
.tabItem {
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 18px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.tabActive {
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 18px;
|
||||||
|
background: #387df7;
|
||||||
|
color: white;
|
||||||
|
border-radius: 8px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.btnzs {
|
||||||
|
display: flex;
|
||||||
|
margin-left: 38px;
|
||||||
|
// flex-wrap: wrap;
|
||||||
|
.btnz {
|
||||||
|
padding: 0px 26px 0px 26px;
|
||||||
|
height: 38px;
|
||||||
|
background: white;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid rgba(64, 158, 255, 1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
cursor: pointer;
|
||||||
|
justify-content: center;
|
||||||
|
margin-right: 14px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
|
||||||
|
.search {
|
||||||
|
background-size: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnzText {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #4ea6ff;
|
||||||
|
line-height: 36px;
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnz3 {
|
||||||
|
margin-right: 0px;
|
||||||
|
background: #4ea6ff;
|
||||||
|
.search {
|
||||||
|
width: 17px;
|
||||||
|
height: 18px;
|
||||||
|
background-image: url("../../assets/images/courseManage/add0.png");
|
||||||
|
}
|
||||||
|
.btnzText {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnz3:hover {
|
||||||
|
// background: rgba(64, 158, 255, 0.76);
|
||||||
|
background: rgba(64, 158, 255, 0.76);
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnz3:active {
|
||||||
|
background: #0982ff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.tableBox {
|
||||||
|
margin: 20px 38px 30px;
|
||||||
|
|
||||||
|
.ant-table-thead > tr > th {
|
||||||
|
background-color: #eff4fc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.tableBox {
|
||||||
|
padding-bottom: 20px;
|
||||||
|
|
||||||
|
.pa {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -18,16 +18,16 @@ module.exports = defineConfig({
|
|||||||
overlay: false,// 解决代码抛出异常
|
overlay: false,// 解决代码抛出异常
|
||||||
},
|
},
|
||||||
proxy: {
|
proxy: {
|
||||||
// "/professional": {
|
"/professional": {
|
||||||
// target: 'http://192.168.31.211:32002',
|
target: 'http://192.168.31.211:32002',
|
||||||
// // target: 'http://192.168.50.195:32002',
|
// target: 'http://192.168.50.195:32002',
|
||||||
// // target: 'http://192.168.86.195:32002',
|
// target: 'http://192.168.86.195:32002',
|
||||||
// changeOrigin: true,
|
|
||||||
// },
|
|
||||||
"/growth": {
|
|
||||||
target: 'https:' + process.env.VUE_APP_BOE_API_URL,
|
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
},
|
},
|
||||||
|
// "/growth": {
|
||||||
|
// target: 'https:' + process.env.VUE_APP_BOE_API_URL,
|
||||||
|
// changeOrigin: true,
|
||||||
|
// },
|
||||||
"/manageApi": {
|
"/manageApi": {
|
||||||
target: 'https:' + process.env.VUE_APP_PROXY_URL,
|
target: 'https:' + process.env.VUE_APP_PROXY_URL,
|
||||||
changeOrigin: true, //表示是否改变原域名
|
changeOrigin: true, //表示是否改变原域名
|
||||||
@@ -53,6 +53,13 @@ module.exports = defineConfig({
|
|||||||
// "^/manageApi": "",
|
// "^/manageApi": "",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
// "/report": {
|
||||||
|
// target: 'http://192.168.31.211:18878',
|
||||||
|
// changeOrigin: true, //表示是否改变原域名
|
||||||
|
// pathRewrite: {
|
||||||
|
// "^/report": "",
|
||||||
|
// },
|
||||||
|
// },
|
||||||
"/activityApi": {
|
"/activityApi": {
|
||||||
target: 'https:' + process.env.VUE_APP_BOE_API_URL,
|
target: 'https:' + process.env.VUE_APP_BOE_API_URL,
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
|
|||||||
Reference in New Issue
Block a user