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> --> </div> -->
<div class="chooseLeft"> <div class="chooseLeft">
<div class="boeTree"> <div class="boeTree" style="margin-top: 20px">
<div class="boeTreeTitle">BOE组织树</div>
<a-tree <a-tree
v-model:value="valueSelectboe" v-model:value="valueSelectboe"
class="treeMain" class="treeMain"
@@ -179,7 +178,6 @@
</div> --> </div> -->
</div> </div>
<div class="boeTree"> <div class="boeTree">
<div class="boeTreeTitle">BOE组织树</div>
<a-tree <a-tree
v-if="!isSearchOrg" v-if="!isSearchOrg"
class="treeMain treeMain2" class="treeMain treeMain2"
@@ -417,7 +415,7 @@
<div <div
class="chose" class="chose"
v-for="item in chooseorganization1" v-for="item in chooseorganization1"
:key="item.key" :key="item.id"
> >
<div>{{ item.name }}</div> <div>{{ item.name }}</div>
<div class="ch" @click="deleteChoosePeople1(item)"></div> <div class="ch" @click="deleteChoosePeople1(item)"></div>
@@ -575,15 +573,11 @@
import {reactive, toRefs, onMounted, onUnmounted, computed} from "vue"; import {reactive, toRefs, onMounted, onUnmounted, computed} from "vue";
import elementResizeDetectorMaker from "element-resize-detector"; import elementResizeDetectorMaker from "element-resize-detector";
import {message} from "ant-design-vue"; import {message} from "ant-design-vue";
// import { toDate } from "../../api/method";
import {useStore} from "vuex"; import {useStore} from "vuex";
import { import {
traverseArr, traverseArr,
// deepClone,
// batchLoadList,
} from "../../utils/utils"; } from "../../utils/utils";
import * as api from "../../api/index1"; import * as api from "../../api/index1";
import {getStuList} from "../../api/index1";
export default { export default {
name: "ProjCheckShip", name: "ProjCheckShip",
@@ -810,9 +804,9 @@ export default {
}; };
const afterVisibleChange = (bool) => { const afterVisibleChange = (bool) => {
console.log("state", bool); console.log("state", bool);
if (bool) { // if (bool) {
props.type === 1 ? optionAuthPerm() : getStuentList() // props.type === 1 ? optionAuthPerm() : getStuentList()
} // }
}; };
//获取组织树 //获取组织树
state.treeData = computed(() => { state.treeData = computed(() => {
@@ -1059,18 +1053,18 @@ export default {
// if (state.isSearchOrg) { // if (state.isSearchOrg) {
// searchOrg(e[0]); // searchOrg(e[0]);
// } // }
if (!k.node.treeChildList) {
state.selectedKeys1 = e.reverse(); state.selectedKeys1 = e.reverse();
if (k.selected) { state.chooseorganization = k.selectedNodes.reverse()
state.chooseorganization.unshift(k.node); state.chooseorganization1 = k.selectedNodes.reverse()
} else { // if (k.selected) {
for (let i = 0; i < state.chooseorganization.length; i++) { // state.chooseorganization.unshift(k.node);
if (state.chooseorganization[i].key === k.node.key) { // } else {
state.chooseorganization.splice(i, 1); // 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); console.log("选中的部门2", state.selectedKeys1, state.chooseorganization);
}; };
//点击确认添加-判断是否显示确定弹窗 //点击确认添加-判断是否显示确定弹窗
@@ -1342,15 +1336,15 @@ export default {
closeDrawer(); closeDrawer();
}; };
//获取学员列表 //获取学员列表
const getStuentList = () => { // const getStuentList = () => {
getStuList({ // getStuList({
refType: {learnPath: 1, project: 2, course: 3, addstudent: 2}[props.classify], // refType: {learnPath: 1, project: 2, course: 3, addstudent: 2}[props.classify],
refId: props.selectProjectId, // refId: props.selectProjectId,
extId: 0 // extId: 0
}).then(res => { // }).then(res => {
initResp(res) // initResp(res)
}) // })
} // }
function initResp(res) { function initResp(res) {
let studentArr = res.data.data.studentList; let studentArr = res.data.data.studentList;

View File

@@ -1,6 +1,6 @@
<template> <template>
<a-drawer <a-drawer
:visible="visiable" :visible="visiableState"
class="drawerStyle ProjCheckship" class="drawerStyle ProjCheckship"
placement="right" placement="right"
width="45%" width="45%"
@@ -101,16 +101,16 @@
multiple multiple
> >
</a-tree> </a-tree>
<!-- <div>--> <!-- <div>-->
<!-- <a-table--> <!-- <a-table-->
<!-- :columns="stuColumns"--> <!-- :columns="stuColumns"-->
<!-- :data-source="stuData"--> <!-- :data-source="stuData"-->
<!-- :pagination="stuPagination"--> <!-- :pagination="stuPagination"-->
<!-- :loading="orgLoading"--> <!-- :loading="orgLoading"-->
<!-- row-key="id"--> <!-- row-key="id"-->
<!-- :row-selection="stuRowSelection"--> <!-- :row-selection="stuRowSelection"-->
<!-- />--> <!-- />-->
<!-- </div>--> <!-- </div>-->
</div> </div>
</div> </div>
</a-tab-pane> </a-tab-pane>
@@ -181,14 +181,14 @@
</a-drawer> </a-drawer>
</template> </template>
<script setup> <script setup>
import {computed, defineEmits, defineProps, onMounted, ref, watch} from "vue"; import {computed, defineEmits, defineProps, onMounted, ref} from "vue";
import {useStore} from "vuex"; import {useStore} from "vuex";
import {request, useBoeApi, useBoeApiPage} from "@/api/request"; import {useBoeApi, useBoeApiPage} from "@/api/request";
import {AUDIENCE_LIST, ORG_CHILD_LIST, ORG_LIST, USER_LIST} from "@/api/ThirdApi"; import {AUDIENCE_LIST, ORG_LIST, USER_LIST} from "@/api/ThirdApi";
import {saveStu} from "@/api/index1"; import {saveStu} from "@/api/index1";
const store = useStore(); const store = useStore();
const emit = defineEmits() const emit = defineEmits({})
const props = defineProps({ const props = defineProps({
type: Number, type: Number,
visiable: { visiable: {
@@ -197,8 +197,9 @@ const props = defineProps({
}, },
}) })
const visiableState = computed(() => props.visiable)
const activeKey = ref(1) const activeKey = ref(1)
const visiableState = ref(false)
const selectsData = ref({ const selectsData = ref({
studentList: [], studentList: [],
deptList: [], deptList: [],
@@ -238,7 +239,6 @@ const {
const { const {
data: orgData, data: orgData,
fetch: searchOrg, fetch: searchOrg,
loading: orgLoading
} = useBoeApi(ORG_LIST, searchOrgName.value) } = useBoeApi(ORG_LIST, searchOrgName.value)
const { const {
@@ -397,13 +397,13 @@ function AuditDel(i) {
auditSelectKeys.value = auditSelectKeys.value.filter(e => e !== selectsData.value.groupList[i].id) auditSelectKeys.value = auditSelectKeys.value.filter(e => e !== selectsData.value.groupList[i].id)
selectsData.value.groupList.splice(i, 1) selectsData.value.groupList.splice(i, 1)
} }
//
function orgSelect(key, obj) { // function orgSelect(key, obj) {
console.log(obj) // console.log(obj)
request(ORG_CHILD_LIST, {orgId: null}).then(res => { // request(ORG_CHILD_LIST, {orgId: null}).then(res => {
console.log(res.result) // console.log(res.result)
}) // })
} // }
function onStuSelectChange(e, l) { function onStuSelectChange(e, l) {
stuSelectKeys.value = e stuSelectKeys.value = e
@@ -420,10 +420,10 @@ function onAuditSelectChange(e, l) {
selectsData.value.groupList = l selectsData.value.groupList = l
} }
const stuDepartmentSelect = (e) => { // const stuDepartmentSelect = (e) => {
nameSearch.value.orgId = e.join('') // nameSearch.value.orgId = e.join('')
searchStu() // searchStu()
}; // };
// //
const changePagination = (page) => { const changePagination = (page) => {
@@ -459,13 +459,13 @@ const resetAudienceInfo = () => {
}; };
// //
const deleteAll = () => { // const deleteAll = () => {
selectsData.value = { // selectsData.value = {
studentList: [], // studentList: [],
deptList: [], // deptList: [],
groupList: [] // groupList: []
} // }
}; // };
// //
const submitAuth = () => { const submitAuth = () => {
emit('update:visiable', false) emit('update:visiable', false)

View File

@@ -192,7 +192,28 @@
</div> </div>
<div class="item_inp"> <div class="item_inp">
<div class="select i6_input"> <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=" :getPopupContainer="
(triggerNode) => { (triggerNode) => {
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
@@ -205,7 +226,7 @@
:options="options2" :options="options2"
allowClear allowClear
showSearch showSearch
/> /> -->
</div> </div>
</div> </div>
</div> </div>
@@ -408,6 +429,130 @@ export default defineComponent({
qdms_inputV2: "", qdms_inputV2: "",
qdms_inputV3: "", qdms_inputV3: "",
fen_lei: null, 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, feng_mian_1: null,
chang_jin: null, chang_jin: null,
tags_val_single: "", tags_val_single: "",

View File

@@ -65,7 +65,7 @@
<a-table <a-table
:columns="columns1" :columns="columns1"
:data-source="tableData1" :data-source="tableData1"
:loading="tableDataTotal === -1 ? true : false" :loading="loading"
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:scroll="{ x: 1300 }" :scroll="{ x: 1300 }"
@@ -269,8 +269,10 @@ export default {
//审核记录的数据 //审核记录的数据
tableDataAudit: [], tableDataAudit: [],
projAuditModal: false, projAuditModal: false,
loading:false
}); });
const getList = () => { const getList = () => {
state.loading=true
let objn = { let objn = {
auditStatus: 0, auditStatus: 0,
categoryId: Number(state.valueproj), categoryId: Number(state.valueproj),
@@ -285,6 +287,7 @@ export default {
console.log("获取已审核课程成功", res.data.data); console.log("获取已审核课程成功", res.data.data);
state.total = res.data.data.total; state.total = res.data.data.total;
setTableData(res.data.data.rows); setTableData(res.data.data.rows);
state.loading=false
}) })
.catch((err) => { .catch((err) => {
console.log("获取已审核课程失败", err); console.log("获取已审核课程失败", err);

View File

@@ -64,7 +64,7 @@
<a-table <a-table
:columns="columns1" :columns="columns1"
:data-source="tableData1" :data-source="tableData1"
:loading="tableDataTotal === -1 ? true : false" :loading="loading"
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:scroll="{ x: 1300 }" :scroll="{ x: 1300 }"
@@ -181,6 +181,7 @@ export default {
}, },
setup() { setup() {
const state = reactive({ const state = reactive({
loading:false,
optionsproj: [ optionsproj: [
{ {
value: "jack", value: "jack",
@@ -317,6 +318,7 @@ export default {
.then((res) => res.data.data.rows); .then((res) => res.data.data.rows);
const getFaceList = () => { const getFaceList = () => {
state.loading=true
let objn = { let objn = {
auditStatus: 1, auditStatus: 1,
categoryId: state.valueproj, categoryId: state.valueproj,
@@ -341,6 +343,7 @@ export default {
} else { } else {
setFaceData([]); setFaceData([]);
} }
state.loading=false
}) })
.catch((err) => { .catch((err) => {
console.log("获取面授列表失败", err); console.log("获取面授列表失败", err);

View File

@@ -81,7 +81,7 @@
<a-table <a-table
:columns="columns1" :columns="columns1"
:data-source="tableData1" :data-source="tableData1"
:loading="tableDataTotal === -1 ? true : false" :loading="loading"
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:scroll="{ x: 1300 }" :scroll="{ x: 1300 }"
@@ -155,6 +155,7 @@ export default {
setup() { setup() {
const state = reactive({ const state = reactive({
loading:false,
optionsproj: [ optionsproj: [
{ {
value: "jack", value: "jack",
@@ -310,6 +311,7 @@ export default {
tableData1: [], tableData1: [],
}); });
const getProjList = () => { const getProjList = () => {
state.loading=true
let objn = { let objn = {
beginTime: state.valueDate ? state.valueDate[0] : "", beginTime: state.valueDate ? state.valueDate[0] : "",
endTime: state.valueDate ? state.valueDate[1] : "", endTime: state.valueDate ? state.valueDate[1] : "",
@@ -332,6 +334,7 @@ export default {
}); });
state.tableData1 = numdata; state.tableData1 = numdata;
state.loading=false
}); });
}; };
const changePagination = (pagina) => { const changePagination = (pagina) => {

View File

@@ -71,7 +71,7 @@
<a-table <a-table
:columns="columns1" :columns="columns1"
:data-source="tableData1" :data-source="tableData1"
:loading="tableDataTotal === -1 ? true : false" :loading="loading"
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:pagination="false" :pagination="false"
@@ -114,6 +114,7 @@ export default {
components: { ProjectAudit }, components: { ProjectAudit },
setup() { setup() {
const state = reactive({ const state = reactive({
loading:false,
optionsproj: [ optionsproj: [
{ {
value: "jack", value: "jack",
@@ -216,6 +217,7 @@ export default {
state.chooseCreater = creater; state.chooseCreater = creater;
}; };
const getProjList = () => { const getProjList = () => {
state.loading=true
let objn = { let objn = {
beginTime: beginTime:
state.valueDate == undefined ? "" : Date.parse(state.valueDate[0]), state.valueDate == undefined ? "" : Date.parse(state.valueDate[0]),
@@ -243,7 +245,7 @@ export default {
}); });
state.tableData1 = numdata; state.tableData1 = numdata;
state.loading=false
// setProjList(result.rows); // setProjList(result.rows);
}) })
.catch((err) => { .catch((err) => {