mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-09 19:06:45 +08:00
feat:合并
This commit is contained in:
@@ -77,8 +77,7 @@
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="chooseLeft">
|
||||
<div class="boeTree">
|
||||
<div class="boeTreeTitle">BOE组织树</div>
|
||||
<div class="boeTree" style="margin-top: 20px">
|
||||
<a-tree
|
||||
v-model:value="valueSelectboe"
|
||||
class="treeMain"
|
||||
@@ -179,7 +178,6 @@
|
||||
</div> -->
|
||||
</div>
|
||||
<div class="boeTree">
|
||||
<div class="boeTreeTitle">BOE组织树</div>
|
||||
<a-tree
|
||||
v-if="!isSearchOrg"
|
||||
class="treeMain treeMain2"
|
||||
@@ -417,7 +415,7 @@
|
||||
<div
|
||||
class="chose"
|
||||
v-for="item in chooseorganization1"
|
||||
:key="item.key"
|
||||
:key="item.id"
|
||||
>
|
||||
<div>{{ item.name }}</div>
|
||||
<div class="ch" @click="deleteChoosePeople1(item)"></div>
|
||||
@@ -575,15 +573,11 @@
|
||||
import {reactive, toRefs, onMounted, onUnmounted, computed} from "vue";
|
||||
import elementResizeDetectorMaker from "element-resize-detector";
|
||||
import {message} from "ant-design-vue";
|
||||
// import { toDate } from "../../api/method";
|
||||
import {useStore} from "vuex";
|
||||
import {
|
||||
traverseArr,
|
||||
// deepClone,
|
||||
// batchLoadList,
|
||||
} from "../../utils/utils";
|
||||
import * as api from "../../api/index1";
|
||||
import {getStuList} from "../../api/index1";
|
||||
|
||||
export default {
|
||||
name: "ProjCheckShip",
|
||||
@@ -810,9 +804,9 @@ export default {
|
||||
};
|
||||
const afterVisibleChange = (bool) => {
|
||||
console.log("state", bool);
|
||||
if (bool) {
|
||||
props.type === 1 ? optionAuthPerm() : getStuentList()
|
||||
}
|
||||
// if (bool) {
|
||||
// props.type === 1 ? optionAuthPerm() : getStuentList()
|
||||
// }
|
||||
};
|
||||
//获取组织树
|
||||
state.treeData = computed(() => {
|
||||
@@ -1059,18 +1053,18 @@ export default {
|
||||
// if (state.isSearchOrg) {
|
||||
// searchOrg(e[0]);
|
||||
// }
|
||||
if (!k.node.treeChildList) {
|
||||
state.selectedKeys1 = e.reverse();
|
||||
if (k.selected) {
|
||||
state.chooseorganization.unshift(k.node);
|
||||
} else {
|
||||
for (let i = 0; i < state.chooseorganization.length; i++) {
|
||||
if (state.chooseorganization[i].key === k.node.key) {
|
||||
state.chooseorganization.splice(i, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
state.selectedKeys1 = e.reverse();
|
||||
state.chooseorganization = k.selectedNodes.reverse()
|
||||
state.chooseorganization1 = k.selectedNodes.reverse()
|
||||
// if (k.selected) {
|
||||
// state.chooseorganization.unshift(k.node);
|
||||
// } else {
|
||||
// for (let i = 0; i < state.chooseorganization.length; i++) {
|
||||
// if (state.chooseorganization[i].key === k.node.key) {
|
||||
// state.chooseorganization.splice(i, 1);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
console.log("选中的部门2", state.selectedKeys1, state.chooseorganization);
|
||||
};
|
||||
//点击确认添加-判断是否显示确定弹窗
|
||||
@@ -1342,15 +1336,15 @@ export default {
|
||||
closeDrawer();
|
||||
};
|
||||
//获取学员列表
|
||||
const getStuentList = () => {
|
||||
getStuList({
|
||||
refType: {learnPath: 1, project: 2, course: 3, addstudent: 2}[props.classify],
|
||||
refId: props.selectProjectId,
|
||||
extId: 0
|
||||
}).then(res => {
|
||||
initResp(res)
|
||||
})
|
||||
}
|
||||
// const getStuentList = () => {
|
||||
// getStuList({
|
||||
// refType: {learnPath: 1, project: 2, course: 3, addstudent: 2}[props.classify],
|
||||
// refId: props.selectProjectId,
|
||||
// extId: 0
|
||||
// }).then(res => {
|
||||
// initResp(res)
|
||||
// })
|
||||
// }
|
||||
|
||||
function initResp(res) {
|
||||
let studentArr = res.data.data.studentList;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<a-drawer
|
||||
:visible="visiable"
|
||||
:visible="visiableState"
|
||||
class="drawerStyle ProjCheckship"
|
||||
placement="right"
|
||||
width="45%"
|
||||
@@ -101,16 +101,16 @@
|
||||
multiple
|
||||
>
|
||||
</a-tree>
|
||||
<!-- <div>-->
|
||||
<!-- <a-table-->
|
||||
<!-- :columns="stuColumns"-->
|
||||
<!-- :data-source="stuData"-->
|
||||
<!-- :pagination="stuPagination"-->
|
||||
<!-- :loading="orgLoading"-->
|
||||
<!-- row-key="id"-->
|
||||
<!-- :row-selection="stuRowSelection"-->
|
||||
<!-- />-->
|
||||
<!-- </div>-->
|
||||
<!-- <div>-->
|
||||
<!-- <a-table-->
|
||||
<!-- :columns="stuColumns"-->
|
||||
<!-- :data-source="stuData"-->
|
||||
<!-- :pagination="stuPagination"-->
|
||||
<!-- :loading="orgLoading"-->
|
||||
<!-- row-key="id"-->
|
||||
<!-- :row-selection="stuRowSelection"-->
|
||||
<!-- />-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
</div>
|
||||
</a-tab-pane>
|
||||
@@ -181,14 +181,14 @@
|
||||
</a-drawer>
|
||||
</template>
|
||||
<script setup>
|
||||
import {computed, defineEmits, defineProps, onMounted, ref, watch} from "vue";
|
||||
import {computed, defineEmits, defineProps, onMounted, ref} from "vue";
|
||||
import {useStore} from "vuex";
|
||||
import {request, useBoeApi, useBoeApiPage} from "@/api/request";
|
||||
import {AUDIENCE_LIST, ORG_CHILD_LIST, ORG_LIST, USER_LIST} from "@/api/ThirdApi";
|
||||
import {useBoeApi, useBoeApiPage} from "@/api/request";
|
||||
import {AUDIENCE_LIST, ORG_LIST, USER_LIST} from "@/api/ThirdApi";
|
||||
import {saveStu} from "@/api/index1";
|
||||
|
||||
const store = useStore();
|
||||
const emit = defineEmits()
|
||||
const emit = defineEmits({})
|
||||
const props = defineProps({
|
||||
type: Number,
|
||||
visiable: {
|
||||
@@ -197,8 +197,9 @@ const props = defineProps({
|
||||
},
|
||||
})
|
||||
|
||||
const visiableState = computed(() => props.visiable)
|
||||
|
||||
const activeKey = ref(1)
|
||||
const visiableState = ref(false)
|
||||
const selectsData = ref({
|
||||
studentList: [],
|
||||
deptList: [],
|
||||
@@ -238,7 +239,6 @@ const {
|
||||
const {
|
||||
data: orgData,
|
||||
fetch: searchOrg,
|
||||
loading: orgLoading
|
||||
} = useBoeApi(ORG_LIST, searchOrgName.value)
|
||||
|
||||
const {
|
||||
@@ -397,13 +397,13 @@ function AuditDel(i) {
|
||||
auditSelectKeys.value = auditSelectKeys.value.filter(e => e !== selectsData.value.groupList[i].id)
|
||||
selectsData.value.groupList.splice(i, 1)
|
||||
}
|
||||
|
||||
function orgSelect(key, obj) {
|
||||
console.log(obj)
|
||||
request(ORG_CHILD_LIST, {orgId: null}).then(res => {
|
||||
console.log(res.result)
|
||||
})
|
||||
}
|
||||
//
|
||||
// function orgSelect(key, obj) {
|
||||
// console.log(obj)
|
||||
// request(ORG_CHILD_LIST, {orgId: null}).then(res => {
|
||||
// console.log(res.result)
|
||||
// })
|
||||
// }
|
||||
|
||||
function onStuSelectChange(e, l) {
|
||||
stuSelectKeys.value = e
|
||||
@@ -420,10 +420,10 @@ function onAuditSelectChange(e, l) {
|
||||
selectsData.value.groupList = l
|
||||
}
|
||||
|
||||
const stuDepartmentSelect = (e) => {
|
||||
nameSearch.value.orgId = e.join('')
|
||||
searchStu()
|
||||
};
|
||||
// const stuDepartmentSelect = (e) => {
|
||||
// nameSearch.value.orgId = e.join('')
|
||||
// searchStu()
|
||||
// };
|
||||
|
||||
//分页获取学员
|
||||
const changePagination = (page) => {
|
||||
@@ -459,13 +459,13 @@ const resetAudienceInfo = () => {
|
||||
};
|
||||
|
||||
//全部清除
|
||||
const deleteAll = () => {
|
||||
selectsData.value = {
|
||||
studentList: [],
|
||||
deptList: [],
|
||||
groupList: []
|
||||
}
|
||||
};
|
||||
// const deleteAll = () => {
|
||||
// selectsData.value = {
|
||||
// studentList: [],
|
||||
// deptList: [],
|
||||
// groupList: []
|
||||
// }
|
||||
// };
|
||||
//确定添加授权
|
||||
const submitAuth = () => {
|
||||
emit('update:visiable', false)
|
||||
@@ -192,7 +192,28 @@
|
||||
</div>
|
||||
<div class="item_inp">
|
||||
<div class="select i6_input">
|
||||
<a-select
|
||||
<a-tree-select
|
||||
:getPopupContainer="
|
||||
(triggerNode) => {
|
||||
return triggerNode.parentNode || document.body;
|
||||
}
|
||||
"
|
||||
v-model:value="fen_lei"
|
||||
show-search
|
||||
style="width: 440px"
|
||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
|
||||
placeholder="请选择"
|
||||
allow-clear
|
||||
tree-default-expand-all
|
||||
:tree-data="options2222"
|
||||
>
|
||||
<template #title="{ value: val, title }">
|
||||
<b v-if="val === '11111'" style="color: #08c">sss</b>
|
||||
<template v-else>{{ title }}</template>
|
||||
</template>
|
||||
</a-tree-select>
|
||||
|
||||
<!-- <a-select
|
||||
:getPopupContainer="
|
||||
(triggerNode) => {
|
||||
return triggerNode.parentNode || document.body;
|
||||
@@ -205,7 +226,7 @@
|
||||
:options="options2"
|
||||
allowClear
|
||||
showSearch
|
||||
/>
|
||||
/> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -408,6 +429,130 @@ export default defineComponent({
|
||||
qdms_inputV2: "",
|
||||
qdms_inputV3: "",
|
||||
fen_lei: null,
|
||||
fen_lei_neirong: null,
|
||||
options2222:[
|
||||
{
|
||||
title: '领导力',
|
||||
value: '100',
|
||||
selectable:false,
|
||||
children: [
|
||||
{
|
||||
title: '领导业务',
|
||||
value: '1001',
|
||||
},
|
||||
{
|
||||
title: '领导团队',
|
||||
value: '1002',
|
||||
},
|
||||
{
|
||||
title: '领导自我',
|
||||
value: '1003',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '专业力',
|
||||
value: '200',
|
||||
selectable:false,
|
||||
children: [
|
||||
{
|
||||
title: '研发',
|
||||
value: '2001',
|
||||
},
|
||||
{
|
||||
title: '产品和解决方案',
|
||||
value: '2002',
|
||||
},
|
||||
{
|
||||
title: '生产技术与制造',
|
||||
value: '2003',
|
||||
},
|
||||
{
|
||||
title: '供应链',
|
||||
value: '2004',
|
||||
},
|
||||
{
|
||||
title: '营销',
|
||||
value: '2005',
|
||||
},
|
||||
{
|
||||
title: '品质',
|
||||
value: '2006',
|
||||
},
|
||||
{
|
||||
title: '战略与企划',
|
||||
value: '2007',
|
||||
},
|
||||
{
|
||||
title: '流程管理',
|
||||
value: '2008',
|
||||
},
|
||||
{
|
||||
title: '业绩管理',
|
||||
value: '2009',
|
||||
},
|
||||
{
|
||||
title: '项目管理',
|
||||
value: '20010',
|
||||
},
|
||||
{
|
||||
title: '信息技术',
|
||||
value: '20011',
|
||||
},
|
||||
{
|
||||
title: '环境与安全',
|
||||
value: '20012',
|
||||
},
|
||||
{
|
||||
title: '人力资源',
|
||||
value: '20013',
|
||||
},
|
||||
{
|
||||
title: '企业文化',
|
||||
value: '20014',
|
||||
},
|
||||
{
|
||||
title: '品牌',
|
||||
value: '20015',
|
||||
},
|
||||
{
|
||||
title: '财务',
|
||||
value: '20016',
|
||||
},
|
||||
{
|
||||
title: '法务',
|
||||
value: '20017',
|
||||
},
|
||||
{
|
||||
title: '行政',
|
||||
value: '20018',
|
||||
},
|
||||
{
|
||||
title: '医工',
|
||||
value: '20019',
|
||||
}
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '通用力',
|
||||
value: '300',
|
||||
selectable:false,
|
||||
children: [
|
||||
{
|
||||
title: '职业操守与道德',
|
||||
value: '3001',
|
||||
},
|
||||
{
|
||||
title: '职业素养与技能',
|
||||
value: '3002',
|
||||
},
|
||||
{
|
||||
title: '规章制度',
|
||||
value: '3003',
|
||||
},
|
||||
],
|
||||
}
|
||||
],
|
||||
feng_mian_1: null,
|
||||
chang_jin: null,
|
||||
tags_val_single: "",
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
<a-table
|
||||
:columns="columns1"
|
||||
:data-source="tableData1"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
:loading="loading"
|
||||
expandRowByClick="true"
|
||||
@expand="expandTable"
|
||||
:scroll="{ x: 1300 }"
|
||||
@@ -269,8 +269,10 @@ export default {
|
||||
//审核记录的数据
|
||||
tableDataAudit: [],
|
||||
projAuditModal: false,
|
||||
loading:false
|
||||
});
|
||||
const getList = () => {
|
||||
state.loading=true
|
||||
let objn = {
|
||||
auditStatus: 0,
|
||||
categoryId: Number(state.valueproj),
|
||||
@@ -285,6 +287,7 @@ export default {
|
||||
console.log("获取已审核课程成功", res.data.data);
|
||||
state.total = res.data.data.total;
|
||||
setTableData(res.data.data.rows);
|
||||
state.loading=false
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("获取已审核课程失败", err);
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
<a-table
|
||||
:columns="columns1"
|
||||
:data-source="tableData1"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
:loading="loading"
|
||||
expandRowByClick="true"
|
||||
@expand="expandTable"
|
||||
:scroll="{ x: 1300 }"
|
||||
@@ -181,6 +181,7 @@ export default {
|
||||
},
|
||||
setup() {
|
||||
const state = reactive({
|
||||
loading:false,
|
||||
optionsproj: [
|
||||
{
|
||||
value: "jack",
|
||||
@@ -317,6 +318,7 @@ export default {
|
||||
.then((res) => res.data.data.rows);
|
||||
|
||||
const getFaceList = () => {
|
||||
state.loading=true
|
||||
let objn = {
|
||||
auditStatus: 1,
|
||||
categoryId: state.valueproj,
|
||||
@@ -341,6 +343,7 @@ export default {
|
||||
} else {
|
||||
setFaceData([]);
|
||||
}
|
||||
state.loading=false
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("获取面授列表失败", err);
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
<a-table
|
||||
:columns="columns1"
|
||||
:data-source="tableData1"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
:loading="loading"
|
||||
expandRowByClick="true"
|
||||
@expand="expandTable"
|
||||
:scroll="{ x: 1300 }"
|
||||
@@ -155,6 +155,7 @@ export default {
|
||||
|
||||
setup() {
|
||||
const state = reactive({
|
||||
loading:false,
|
||||
optionsproj: [
|
||||
{
|
||||
value: "jack",
|
||||
@@ -310,6 +311,7 @@ export default {
|
||||
tableData1: [],
|
||||
});
|
||||
const getProjList = () => {
|
||||
state.loading=true
|
||||
let objn = {
|
||||
beginTime: state.valueDate ? state.valueDate[0] : "",
|
||||
endTime: state.valueDate ? state.valueDate[1] : "",
|
||||
@@ -332,6 +334,7 @@ export default {
|
||||
});
|
||||
|
||||
state.tableData1 = numdata;
|
||||
state.loading=false
|
||||
});
|
||||
};
|
||||
const changePagination = (pagina) => {
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
<a-table
|
||||
:columns="columns1"
|
||||
:data-source="tableData1"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
:loading="loading"
|
||||
expandRowByClick="true"
|
||||
@expand="expandTable"
|
||||
:pagination="false"
|
||||
@@ -114,6 +114,7 @@ export default {
|
||||
components: { ProjectAudit },
|
||||
setup() {
|
||||
const state = reactive({
|
||||
loading:false,
|
||||
optionsproj: [
|
||||
{
|
||||
value: "jack",
|
||||
@@ -216,6 +217,7 @@ export default {
|
||||
state.chooseCreater = creater;
|
||||
};
|
||||
const getProjList = () => {
|
||||
state.loading=true
|
||||
let objn = {
|
||||
beginTime:
|
||||
state.valueDate == undefined ? "" : Date.parse(state.valueDate[0]),
|
||||
@@ -243,7 +245,7 @@ export default {
|
||||
});
|
||||
|
||||
state.tableData1 = numdata;
|
||||
|
||||
state.loading=false
|
||||
// setProjList(result.rows);
|
||||
})
|
||||
.catch((err) => {
|
||||
|
||||
Reference in New Issue
Block a user