feat:合并

This commit is contained in:
lixg
2022-12-10 17:51:36 +08:00
7 changed files with 224 additions and 74 deletions

View File

@@ -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;

View File

@@ -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)

View File

@@ -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: "",

View File

@@ -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);

View File

@@ -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);

View File

@@ -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) => {

View File

@@ -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) => {