|
@@ -6,12 +6,13 @@
|
|
</div>
|
|
</div>
|
|
<div class="chooseSomeone_Con contentRoll">
|
|
<div class="chooseSomeone_Con contentRoll">
|
|
<!-- 单选 -->
|
|
<!-- 单选 -->
|
|
- <van-radio-group v-model="radioVal" class="chooseSomeone_radio_group" v-if="newGroupView == 1">
|
|
|
|
|
|
+ <van-radio-group v-model="radioVal" class="chooseSomeoneo_group" v-if="newGroupView == 1">
|
|
<van-radio :name="item.id" v-for="item, index in personnelList" :key="index">
|
|
<van-radio :name="item.id" v-for="item, index in personnelList" :key="index">
|
|
- <div class="chooseSomeone_radio_group_item">
|
|
|
|
|
|
+ <div class="chooseSomeone_group_item">
|
|
<div>{{ item.name }}</div>
|
|
<div>{{ item.name }}</div>
|
|
- <div class="textBeyondHiding">{{ item.workStation }}</div>
|
|
|
|
|
|
+ <div class="textBeyondHiding">{{ item.jobNumber }}</div>
|
|
</div>
|
|
</div>
|
|
|
|
+ <div class="textDepartmentName">{{ item.departmentName }}</div>
|
|
</van-radio>
|
|
</van-radio>
|
|
</van-radio-group>
|
|
</van-radio-group>
|
|
|
|
|
|
@@ -22,6 +23,7 @@
|
|
<div>{{ item.name }}</div>
|
|
<div>{{ item.name }}</div>
|
|
<div class="textBeyondHiding">{{ item.jobNumber }}</div>
|
|
<div class="textBeyondHiding">{{ item.jobNumber }}</div>
|
|
</div>
|
|
</div>
|
|
|
|
+ <div class="textDepartmentName">{{ item.departmentName }}</div>
|
|
</van-checkbox>
|
|
</van-checkbox>
|
|
</van-checkbox-group>
|
|
</van-checkbox-group>
|
|
|
|
|
|
@@ -32,7 +34,7 @@
|
|
<div class="treeBox_tree">
|
|
<div class="treeBox_tree">
|
|
<el-tree ref="tree" v-model="treeVal" show-checkbox node-key="id" :data="personnelTree" :props="defaultProps"
|
|
<el-tree ref="tree" v-model="treeVal" show-checkbox node-key="id" :data="personnelTree" :props="defaultProps"
|
|
:filter-node-method="filterNode">
|
|
:filter-node-method="filterNode">
|
|
- <span class="custom-tree-node" slot-scope="{ node, data }">
|
|
|
|
|
|
+ <span class="custom-tree-node" slot-scope="{ node }">
|
|
<span>
|
|
<span>
|
|
{{ node.label }}
|
|
{{ node.label }}
|
|
</span>
|
|
</span>
|
|
@@ -78,6 +80,10 @@ export default {
|
|
type: Array,
|
|
type: Array,
|
|
default: () => []
|
|
default: () => []
|
|
},
|
|
},
|
|
|
|
+ type:{
|
|
|
|
+ type:Number,
|
|
|
|
+ default:()=> 0//0新增 1换人
|
|
|
|
+ }
|
|
},
|
|
},
|
|
components: {},
|
|
components: {},
|
|
data() {
|
|
data() {
|
|
@@ -98,7 +104,7 @@ export default {
|
|
newGroupView: '', // 组件传过来的值
|
|
newGroupView: '', // 组件传过来的值
|
|
newGroupViewBack: '', // 组件传过来的值
|
|
newGroupViewBack: '', // 组件传过来的值
|
|
|
|
|
|
- loadingBtn: false // 确定按钮loading
|
|
|
|
|
|
+ loadingBtn: false, // 确定按钮loading
|
|
};
|
|
};
|
|
},
|
|
},
|
|
computed: {},
|
|
computed: {},
|
|
@@ -148,24 +154,30 @@ export default {
|
|
},
|
|
},
|
|
newGroupViewBackCli(flg, i) {
|
|
newGroupViewBackCli(flg, i) {
|
|
this.newGroupViewBack = flg
|
|
this.newGroupViewBack = flg
|
|
|
|
+ if(this.type != 1) {
|
|
this.newGroupView = i
|
|
this.newGroupView = i
|
|
this.$refs.tree.setCheckedKeys(this.groupVal)
|
|
this.$refs.tree.setCheckedKeys(this.groupVal)
|
|
|
|
+ } else {
|
|
|
|
+ this.getPeople()
|
|
|
|
+ }
|
|
|
|
+
|
|
},
|
|
},
|
|
// 获取所有人员
|
|
// 获取所有人员
|
|
getPeople() {
|
|
getPeople() {
|
|
this.$axios.post('/user/getSimpleActiveUserList', {})
|
|
this.$axios.post('/user/getSimpleActiveUserList', {})
|
|
.then(res => {
|
|
.then(res => {
|
|
if (res.code == "ok") {
|
|
if (res.code == "ok") {
|
|
- if (!this.peopleList) {
|
|
|
|
- this.peopleList = res.data.map(item => {
|
|
|
|
|
|
+ // if (!this.peopleList) {
|
|
|
|
+ this.personnelList = res.data.map(item => {
|
|
return {
|
|
return {
|
|
name: item.name,
|
|
name: item.name,
|
|
id: item.id,
|
|
id: item.id,
|
|
phone: item.phone,
|
|
phone: item.phone,
|
|
- jobNumber: item.jobNumber
|
|
|
|
|
|
+ jobNumber: item.jobNumber,
|
|
|
|
+ departmentName: item.departmentName
|
|
}
|
|
}
|
|
})
|
|
})
|
|
- }
|
|
|
|
|
|
+ // }
|
|
} else {
|
|
} else {
|
|
this.$toast.clear();
|
|
this.$toast.clear();
|
|
this.$toast.fail(res.msg);
|
|
this.$toast.fail(res.msg);
|
|
@@ -212,31 +224,36 @@ export default {
|
|
let newArr = this.personnelList.filter(item => {
|
|
let newArr = this.personnelList.filter(item => {
|
|
return arr.includes(item.id)
|
|
return arr.includes(item.id)
|
|
})
|
|
})
|
|
|
|
+ console.log(newArr)
|
|
|
|
+ // return
|
|
this.loadingBtn = true
|
|
this.loadingBtn = true
|
|
this.$emit('ChooseSomeoneChanhe', newArr)
|
|
this.$emit('ChooseSomeoneChanhe', newArr)
|
|
},
|
|
},
|
|
treeHandClick() {
|
|
treeHandClick() {
|
|
- console.log(this.treeVal)
|
|
|
|
- console.log(this.$refs.tree.getCheckedNodes())
|
|
|
|
- let arr = this.$refs.tree.getCheckedNodes()
|
|
|
|
- arr = arr.filter(item => {
|
|
|
|
- return !item.children
|
|
|
|
- })
|
|
|
|
- console.log(arr)
|
|
|
|
- if(arr.length <= 0) {
|
|
|
|
- this.$toast('请选择人员');
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- let newArr = arr.map(item => {
|
|
|
|
- return {
|
|
|
|
- id: item.id,
|
|
|
|
- name: item.label || '',
|
|
|
|
- phone: item.phone || '',
|
|
|
|
- jobNumber: item.jobNumber || ''
|
|
|
|
|
|
+ if(this.newGroupView == 3) {
|
|
|
|
+ let arr = this.$refs.tree.getCheckedNodes()
|
|
|
|
+ arr = arr.filter(item => {
|
|
|
|
+ return !item.children
|
|
|
|
+ })
|
|
|
|
+ console.log(arr)
|
|
|
|
+ if(arr.length <= 0) {
|
|
|
|
+ this.$toast('请选择人员');
|
|
|
|
+ return
|
|
}
|
|
}
|
|
- })
|
|
|
|
- this.loadingBtn = true
|
|
|
|
- this.$emit('ChooseSomeoneChanhe', newArr)
|
|
|
|
|
|
+ let newArr = arr.map(item => {
|
|
|
|
+ return {
|
|
|
|
+ id: item.id,
|
|
|
|
+ name: item.label || '',
|
|
|
|
+ phone: item.phone || '',
|
|
|
|
+ jobNumber: item.jobNumber || '',
|
|
|
|
+ departmentName: item.departmentName || ''
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ this.loadingBtn = true
|
|
|
|
+ this.$emit('ChooseSomeoneChanhe', newArr)
|
|
|
|
+ } else {
|
|
|
|
+ this.handClick()
|
|
|
|
+ }
|
|
}
|
|
}
|
|
},
|
|
},
|
|
};
|
|
};
|
|
@@ -246,7 +263,10 @@ export default {
|
|
* {
|
|
* {
|
|
box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+.textDepartmentName {
|
|
|
|
+ color: #999;
|
|
|
|
+ font-size: 14px;
|
|
|
|
+}
|
|
.chooseSomeone {
|
|
.chooseSomeone {
|
|
display: flex;
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
flex-wrap: wrap;
|
|
@@ -298,7 +318,7 @@ export default {
|
|
overflow-y: auto;
|
|
overflow-y: auto;
|
|
padding: 10px;
|
|
padding: 10px;
|
|
|
|
|
|
- .chooseSomeoneo_group {
|
|
|
|
|
|
+ .chooseSomeoneo_group, .chooseSomeone_radio_group {
|
|
|
|
|
|
.van-radio,
|
|
.van-radio,
|
|
.van-checkbox {
|
|
.van-checkbox {
|
|
@@ -317,7 +337,7 @@ export default {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- .chooseSomeone_group_item {
|
|
|
|
|
|
+ .chooseSomeone_group_item, .chooseSomeone_radio_group_item {
|
|
display: flex;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
justify-content: space-between;
|
|
|
|
|