|
@@ -29,11 +29,20 @@
|
|
|
:value="checkAll"
|
|
|
@click.prevent.native="handleCheckAll">全部用户</Checkbox>
|
|
|
</div> -->
|
|
|
- <CheckboxGroup v-model="send.userGroupName" @on-change="checkGroup" v-show="groupData.length">
|
|
|
+ <!-- <CheckboxGroup v-model="send.userGroupName" @on-change="checkGroup" v-show="groupData.length">
|
|
|
<Checkbox v-for="item in groupData" :key="item.id" :label="item.name">
|
|
|
<span>{{item.name}}</span>
|
|
|
</Checkbox>
|
|
|
- </CheckboxGroup>
|
|
|
+ </CheckboxGroup> -->
|
|
|
+ <div class="concertlab-group-select" v-show="groupData.length">
|
|
|
+ <el-tree
|
|
|
+ ref="concertlabTree"
|
|
|
+ :data="groupData"
|
|
|
+ show-checkbox
|
|
|
+ :props="concertlabTreeConfig"
|
|
|
+ node-key="id">
|
|
|
+ </el-tree>
|
|
|
+ </div>
|
|
|
</FormItem>
|
|
|
<FormItem label="消息类型:" prop="msgType" style="width:300px">
|
|
|
<Select v-model="send.msgType" placeholder="请选择消息类型">
|
|
@@ -254,8 +263,27 @@ export default {
|
|
|
sendDate(val) {
|
|
|
this.send.sendTime = val
|
|
|
},
|
|
|
+ getSendUserGroupName() {
|
|
|
+ const tree = this.$refs.concertlabTree
|
|
|
+ let idArr = []
|
|
|
+ let nameArr = []
|
|
|
+ if (tree) {
|
|
|
+ const r = tree.getCheckedNodes()
|
|
|
+ // 遍历取最后一级(没children的那一级)
|
|
|
+ const lastLevel = r.filter(item => !item.children)
|
|
|
+ idArr = lastLevel.map(item => item.id)
|
|
|
+ nameArr = lastLevel.map(item => item.name)
|
|
|
+ }
|
|
|
+ this.send.userGroupId = idArr
|
|
|
+ this.send.userGroupName = nameArr
|
|
|
+ },
|
|
|
sendSub(name) {
|
|
|
let rout = this.$route.query.id
|
|
|
+ try {
|
|
|
+ this.getSendUserGroupName()
|
|
|
+ } catch (error) {
|
|
|
+ console.log(error)
|
|
|
+ }
|
|
|
let obj = {
|
|
|
id: rout ? rout : '',
|
|
|
userGroupId: this.send.sendway == 1 ? 'all_user' : String(this.send.userGroupId),
|
|
@@ -316,6 +344,10 @@ export default {
|
|
|
data () {
|
|
|
return {
|
|
|
isDis: false,
|
|
|
+ concertlabTreeConfig: {
|
|
|
+ label: 'name',
|
|
|
+ children: 'children',
|
|
|
+ },
|
|
|
// msgRadio: 1,
|
|
|
// showSelect: [
|
|
|
// {v: 1, n: '是'},
|
|
@@ -393,6 +425,15 @@ export default {
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
+ .concertlab-group-select {
|
|
|
+ ::v-deep {
|
|
|
+ .el-checkbox__input.is-checked .el-checkbox__inner,
|
|
|
+ .el-checkbox__input.is-indeterminate .el-checkbox__inner {
|
|
|
+ background-color: #2d8cf0;
|
|
|
+ border-color: #2d8cf0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
.send-msg {
|
|
|
display: flex;
|
|
|
flex-direction: column;
|